@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css");
@import url('https://fonts.googleapis.com/css2?family=Gilda+Display&family=Noto+Serif+Display:ital,wdth,wght@0,62.5..100,100..900;1,62.5..100,100..900&family=Shippori+Mincho:wght@400;500;600;700;800&display=swap');

:root {
  --base-color: #f5f1eb;
  --base-color2: #e5e1dc;
  --text-c1: #36302A;
  --text-c2: #121212;
  --first-color: /*#dbd6cf #e8e0d4*/ #ece4da;
  --second-color: #b9a590;
  --third-color: #c8ac94;
  --fourth-color: #a0a0a0;
  --point-c1: #413931;
  --point-c2: #b99a00;
  --Yu-gothic: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  --midashi-eg: "Noto Serif Display";
  --mincho: "Shippori Mincho";
  --font-eg: "Gilda Display";
  --font-S: clamp(13px, 12.648px + 0.094vw, 14px);
  --font-M: clamp(15px, 14.648px + 0.094vw, 16px);
  --font-ML: clamp(18px, 16.844px + 0.308vw, 20px);
  --font-L: clamp(20px, 17.689px + 0.616vw, 24px);
  --font-LL: clamp(24px, 21.689px + 0.616vw, 28px);
  --font-XL: clamp(28px, 26.844px + 0.308vw, 30px);
  --font-h3: clamp(34px, 29.070px + 1.315vw, 48px);
}

/* Windows 用 Medium 指定の游ゴシック */
@font-face {
	font-family: "Yu Gothic M";
	src: local("Yu Gothic Medium");
}
/* font-weight: bold の時は通常どおり Bold 書体を使わせる */
@font-face {
	font-family: "Yu Gothic M";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}

/*-------------------------------------------
レスポンシブ02 ブラウン 1カラム
-------------------------------------------*/
html {
    cursor: default;
  }
body {
  	/*font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;*/
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", sans-serif;
  	color: var(--text-c1);
  	letter-spacing: 0.08em;
  	line-height: 2;
}
#wrap {
  	background: var(--base-color);
}
a {
  	color: var(--second-color);
  	text-decoration: none;
  	transition: 0.3s all;
}
a:hover {
 	opacity: 0.6; 
}
strong {
    font-weight: bold;
    font-family: var(--font-eg),var(--Yu-gothic);
}
i { /* insta&fb icons */
 	color: var(--text-c1); 
}
.mb0 {
  	margin-bottom: 0!important;
  	padding-bottom: 0!important;
}
.bg {
 	background: white!important;
}
.article.beige,.gallery.beige {
    background: var(--first-color) !important;
}
#mainArticles .envelope, #mainBlogCommentForm .envelope {
    background: var(--base-color2);
    border-radius: 4px;
  	text-align: left;
}
.article.max {
    padding-top: 0;
}
.article.full, .gallery.full {
    /* margin: 40px calc(50% - 50vw) 40px; */
    padding-top: 40px;
    padding-bottom: 40px;
}
.article .article_body.article_right .image {
    margin-top: 64px;
}
/*-----------------------
グローバルメニュー
-----------------------*/
#topMenu_outer .topMenu li a {
  	color: var(--text-c2);
  	font-size: var(--font-S);
  	font-weight:normal;
  	letter-spacing: 0.15em;
}
#topMenu_outer .topMenu li a:hover {
    background: none;
    color: #555;
}
#topMenu_outer .topMenu li a:after {
  	/* content: none; */
}
/*-----------------------
ヘッダー
-----------------------*/
#title {
  	height: 100px;
}
#title h1 {
  	width: 400px;
  	height:100px;
  	float: none;
}
#title h1 a {
  	display: flex;
  	height: 100%;
  	width: 80%;
  	background: url("/materials/175930984375601.png") center no-repeat;
  	background-size: 100%;
  	text-indent: -9000px;
  	margin: 0 auto;
  	float:none;
}
#title #title_outer {
  	height: auto;
  	display: block;
}
/*----------------------
最新情報
----------------------*/
ul.topics li h3 a {
    color: var(--text-c1);
}
/*-----------------------
見出し
-----------------------*/
/* h2 */
#mainArticles h2, #listTopics h2 {
    font-size: var(--font-XL);
    font-weight: normal;
    align-items: center;
    background: transparent;
    color: var(--text-c1);
    font-family: var(--font-eg), var(--Yu-gothic);
}
#mainArticles h2 strong, #listTopics h2 strong {
	font-size:inherit;
	font-weight: bold;
}
/*---#mainArticles h2 strong::before, #listTopics h2 strong::before {
	content: "/";
	font-size: 20px;
	margin: 0 14px;
}---*/
/* h3 */
#mainTopics h2, #mainArticles .article h2, .article h3, .gallery h3, .freeHtml h3 {
    font-size: var(--font-h3);
    text-align: left;
    display: inline-block;
    font-family: var(--mincho), var(--font-eg), serif;
    line-height: 1.5;
    margin-bottom: 20px;
    width: auto;
}
#mainTopics h2 strong, #mainArticles .article h2 strong, .article h3 strong, .gallery h3 strong, .freeHtml h3 strong {
  	font-size: var(--font-S);
  	position: absolute;
    display: block;
    left: 70%;
    font-family: var(--Yu-gothic);
    width: fit-content;
    text-wrap: nowrap;
}
#mainTopics h2:after, #mainArticles .article h2:after, .article h3:after, .gallery h3:after, .freeHtml h3:after {
	content: none;
}
/* h4 */
.article h4 {
    color: var(--text-c2);
    background: none;
    border: none;
    position: relative;
    padding: 16px 16px 24px 16px;
    font-size: 26px;
    text-align: center;
    margin-bottom: 32px;
  	font-family: var(--font-eg),var(--Yu-gothic);
}
.article h4::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 2px;
	background-color: var(--point-c2);
}
.article h4::before {
	content:none;
}

/* h5 */
.article h5 {
    border: none;
    position: relative;
    padding: 0.5em 1em;
  	width: fit-content;
    font-size: var(--font-L);
    font-family: var(--font-eg),var(--Yu-gothic);
    text-wrap: wrap;
  	letter-spacing: 0.22rem;
  	font-weight: normal;
  	text-align: center;
}
.article h5::before, .article h5::after {
	content: '';
    width: 20px;
    height: 30px;
    position: absolute;
    display: inline-block;
}
.article h5::before {
    border-left: var(--point-c2) solid 1px;
    border-top: var(--point-c2) solid 1px;
    top: 0;
    left: 0;
}
.article h5::after {
    border-right: var(--point-c2) solid 1px;
    border-bottom: var(--point-c2) solid 1px;
    bottom: 0;
    right: 0;
}

/* h6*/
.article h6 {
  	color: var(--text-c2);
    background: none;
}
.article h6:before {
    color: var(--point-c2);
}

/* h6 番号アリ */
.article.number h6 {
	position: relative;
	font-size: var(--font-ML);
  	font-style: normal;
    font-family: inherit;
  	padding: 0;
}
.article.number h6::before {
    counter-increment: number 1;
    content: counter(number) " ";
    display: inline-block;
    margin-right: 20px;
    color: var(--point-c2);
    font-size: 30px;
    border-bottom: 1px solid var(--point-c2);
    font-family: var(--midashi-eg);
  	transform: unset;
}
.article.number h6::after {
  	content:none;
}
/*-----------------------
ボタン
-----------------------*/
a.btn {
    color: #fff;
    background: var(--text-c1);
    border-radius: 999px;
    max-width: 500px;
    margin: 16px auto 0;
    border: 2px solid var(--text-c1);
    font-weight: normal;
  	font-size: var(--font-M);
}
a.btn:hover {
    background: transparent;
    color: var(--text-c1);
  	opacity: 1;
}
a.btn::after,a.btn2::after {
    content: "＞";
    font-weight: normal;
    margin-left: 10px;
  	transition: 0.3s all;
}
a.btn2 {
    background: transparent;
    border: 2px solid var(--text-c1);
    max-width: 500px;
    display: block;
    border-radius: 999px;
    padding: 8px 24px;
    color: var(--text-c1);
    text-decoration: none;
  	text-align: center;
  	margin: 0 auto;
}
a.btn2:hover {
    background: var(--text-c1);
    color: white;
  	opacity: 1;
}
/*-----------------------
電話番号
-----------------------*/
a.tel {
    color: var(--point-c2);
    font-size: var(--font-L);
  	text-decoration: none;
  	margin-left: 0.3em;
  	display: block;
  	font-weight: bold;
}
a.tel:hover {
    opacity: 0.5;
}
a.tel::before {
    content:"\f095";
    font-family: "Font awesome 7 Free";
    font-weight: bold;
  	display: inline-block;
 	padding-right: 0.3em;
}
/*-----------------------
リスト
-----------------------*/
ul.simpleList {
    padding-left: 2em;
}
ul.simpleList li {
    list-style-type: disc;
    padding: 5px;
  	font-size: 90%;
}
ul.check {
    display: flex;
    flex-direction: column;
    padding-left: 2em;
}
ul.check li {
    position: relative;
    font-weight: normal;
    line-height: 2;
    padding: 0.25em 0;
    display: block;
  	font-size: inherit;
}
ul.check li:before {
    display: block;
    content: "";
    position: absolute;
    top: 0.8em;
    left: -1.5em;
    width: 1em;
    height: 0.5em;
    border-left: 2px solid var(--point-c2);
    border-bottom: 2px solid var(--point-c2);
    transform: rotate(-45deg);
}
ul.maru li strong {
  	font-family: inherit;
}
/*-----------------------
テーブル
-----------------------*/
/* th たてよこ */
.article table.priceTbl {
    border-top: none !important;
    border-left: none;
  	width: 100%;
  	margin: 10px auto;
  	border-spacing: 0;
  	border-collapse: collapse;
  	filter: drop-shadow(0px 0px 3px #c9c2b9)
}
.article table.priceTbl tbody tr:last-child td, .article tbody table.normalTbl tr:last-child th {
  	border-bottom: none;
}
.article table.priceTbl th {
    background: var(--text-c2);
    color: white;
    text-align: center;
    font-weight: bold;
    height: auto;
    padding: 10px;
    vertical-align: middle;
    font-feature-settings : "palt";
  	border-bottom: 1px dotted #ccc;
  	border-right: none;
}
.article table.priceTbl.ver2 th {
    background: var(--point-c1);
}
.article table.priceTbl td {
    width: auto;
    background: white;
    height: auto;
    line-height: 150%;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
  	border-bottom: 1px dotted #ccc;
  	border-right: none;
}
.article table.priceTbl thead tr:first-child th:first-child {
    border-radius: 4px 0 0 0;
}
.article table.priceTbl thead tr:first-child th:last-child {
    border-radius: 0 4px 0 0;
}
.article table.priceTbl tbody tr:last-child th {
    border-radius:  0 0 0 4px;
}
.article table.priceTbl tbody tr:last-child td:last-child {
    border-radius:  0 0 4px 0;
}

/* ノーマル */
.article table.normalTbl {
    border-top: solid 1px var(--text-c2);
}
.article table.normalTbl th {
    background: none;
  	text-align: center;
  	letter-spacing: 0.2em;
  	font-weight: bold;
}
.article table.normalTbl tr:last-child td,
.article table.normalTbl tr:last-child th {
  	border-bottom: solid 1px var(--text-c2);
}
.article table.normalTbl td, .article table.normalTbl th {
    border-bottom: dotted 1px var(--fourth-color);
}
.article table.normalTbl td, .article table.normalTbl th {
    border-bottom: dashed 1px var(--fourth-color);
}
/*-----------------------
ギャラリー　コメントが上に乗る
-----------------------*/
.gallery.textOnTop .galleryGrid_body {
    position: relative;
}
.gallery.textOnTop .gallery_grid li.galleryGrid .image {
    background-color: var(--point-c1);
    mix-blend-mode: multiply;
}
.gallery.textOnTop .gallery_grid li.galleryGrid .image img {
    max-width: 100%;
  	opacity: 1;
  	height: auto; /*追加*/
  	width: 100%; /*追加*/
}
.gallery.textOnTop ul.galleryGrids .comment {
    font-size: 3.5vw;
    text-align: center;
    font-weight: normal;
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    color: white;
    font-family: var(--font-eg);
    margin: 0 auto;
    transform: translate(-50%, -50%);
    text-wrap: nowrap;
  	line-height: 1.5;
    text-align: center;
    letter-spacing: 0.2rem;
}
.gallery.textOnTop ul.galleryGrids .comment p {
    font-size: var(--font-S);
}
/*-----------------------
お客様の声 
-----------------------*/
.article.voice .article_left .image {
    float: none;
  	margin-right:0;
}
.article.voice.right .article_outer .article_body {
  	justify-content: right;
}
.article.voice .article_outer .article_body {
    display: flex;
    flex-direction:row;
    align-items: center;
    justify-content: center;
    gap: 0 4%;
  	margin-bottom: 40px;
}
.article.voice .image {
    display: block;
  	width: 20%;
}
.article.voice .image img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 999px;
  	object-position: top 30% left 50%;
  	width: 100%;/*追加*/
}
.article.voice p {
    width: 50%;
    display: flex;
  	flex-direction: column;
}
.article.voice p span {
  	font-weight: bold;
    margin-left: auto;
}
/*-----------------------
お客様の声 横ならび before-after
-----------------------*/
.gallery.remakeImg .gallery_grid li.galleryGrid .image img {
    width: 100%;
    height: auto;
    aspect-ratio: 3/4;
    object-fit: cover;
}
/*-----------------------
フロー
-----------------------*/
.article table#flowTbl {
  	counter-reset: number 0;
}
.article.number table#flowTbl td {
    border: solid 2px var(--text-c2);
    background: rgba(255, 255, 255, 0.6);
    padding: 8px 24px;
    border-radius: 4px;
}
.article.number table#flowTbl td::after {
    color: var(--text-c2);
  	content: "▼";
    font-family: monospace;
    font-size: 48px;
    left: 0;
    right: 0;
    bottom: 0;
    top: 98%;
    position: absolute;
    text-align: center;
    transform: scaleY(0.5);
    font-weight: 600;
    margin-left: 0;
}
/*-----------------------
contact form
-----------------------*/
#mainArticles form, #mainBlogCommentForm form {
  	border-radius: 4px;
  	padding: 2px;
  	background: var(--text-c2);
  	font-size: var(--font-M);
}
#mainArticles table.contactTable, #mainBlogCommentForm table.contactTable {
    border: none;
}
#mainArticles table.contactTable tr th, #mainArticles table.contactTable tr td, #mainBlogCommentForm table.contactTable tr th, #mainBlogCommentForm table.contactTable tr td {
    border-bottom: solid 1px var(--fourth-color);
    border-right: none;
}
#mainArticles table.contactTable tr th, #mainBlogCommentForm table.contactTable tr th {
    background: white;
}
#mainArticles table.contactTable tr td, #mainBlogCommentForm table.contactTable tr td {
    background: var(--base-color2);
}
#mainArticles table.contactTable tr td.th_headline, #mainBlogCommentForm table.contactTable tr td.th_headline {
    background: var(--text-c2);
    color: #fff;
}
#mainArticles table.contactTable .validator-form .validator-message-invalid, #mainArticles table.contactTable p.contact-note, #mainBlogCommentForm table.contactTable .validator-form .validator-message-invalid, #mainBlogCommentForm table.contactTable p.contact-note {
    color: var(--second-color);
}
#mainArticles table.contactTable input.button, #mainBlogCommentForm table.contactTable input.button {
    background: var(--text-c2);
}
#mainArticles table.contactTable input.button:hover, #mainBlogCommentForm table.contactTable input.button:hover {
    background: #555;
}
#mainArticles table.contactTable input.button, #mainArticles table.contactTable input[type=button], #mainBlogCommentForm table.contactTable input.button, #mainBlogCommentForm table.contactTable input[type=button] {
  	width: 50%;
}
#mainArticles table.contactTable input[type="text"],#mainArticles table.contactTable input[type="password"], #mainArticles table.contactTable textarea, #mainArticles table.contactTable select, #mainBlogCommentForm table.contactTable input[type="text"], #mainBlogCommentForm table.contactTable input[type="password"], #mainBlogCommentForm table.contactTable textarea, #mainBlogCommentForm table.contactTable select {
  width:100%;
}
select, select option {
	width: 100%;
	font-size: 90%;
}
/*-----------------------
自由HTML上 お問い合わせ
-----------------------*/
#sideContents_outer {
  	width: 100vw
}
.sideContents {
   padding-bottom: 0;
}
.contact_us {
    display: flex;
    text-align: center;
    justify-content: center;
  	margin-bottom: 40px;
  	align-items: center;
    padding-left: 4%;
    padding-right: 4%;
    width: 100%;
}
.contact_us .contact_image {
  	width: 32%;
}
.contact_us .contact_image img {
	width: 80%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 999px;
    text-align: center;
}
.contact_us .contact_box {
  	width: 40%;
}
.freeHtml .contact_box h3 {
    margin: 0 auto 16px;
    display: block;
    text-align: center;
    padding-top: 0;
}
.freeHtml .contact_box h3 strong {
    left: 50%;
    right: 50%;
    transform: translateX(-50%);
    display: block;
    width: 100%;
}

/*-----------------------
自由HTML下 会社概要
-----------------------*/
.side_address {
    display: flex;
  	flex-direction: column;
    width: 100%;
    justify-content:  center;
    gap: 0 2rem;
    align-items:  center;
  	font-size: var(--font-S);
  	background: var(--first-color);
    padding: 40px 4% 24px;
  	
}
.side_address .txtblock {
    width: 100%;
    text-align:center;
}
p.logo {
    width: 100%;
    text-align: center;
}
p.logo img {
    max-width: 300px;
  	width: 100%;
  	margin-bottom: 16px;
}
p.sitename {
    font-size: var(--font-L);
    font-family:  var(--mincho);
}
/*-----------------------
サイドコンテンツ
-----------------------*/
.sideContents #sideServices h2:before, .sideContents #sideBlogCategories h2:before, .sideContents #sideBlogDates h2:before, .sideContents #sideMobile h2:before {
    background: var(--text-c1);
}
.sideContents ul li a, .sideContents dt a {
    color: var(--text-c2);
}
.sideContents ul li a:hover, .sideContents dt a:hover {
    background: transparent;
    color: #555;
}
.sideContents ul li, .sideContents dl dt {
  	border-top: dotted 1px #555;
}
.sideContents ul li:last-child, .sideContents dl dt:last-child {
  	border-bottom: dotted 1px #555;
}
/*-----------------------
Footer
-----------------------*/
#footer * {
    color: var(--text-c1);
}
#footer {
    background: var(--first-color);
}
#footer_body {
    padding-top: 16px;
}
#footer_body .copyright {
    background: var(--first-color);
  	font-size: 12px;
  	color: var(--text-c1);
}
#footer_body .topMenu li a, #footer_body .services li a {
    color: var(--text-c2);
    background: transparent;
  	font-weight: normal;
}
#footer_body .topMenu li a:hover, #footer_body .services li a:hover {
    background-color: transparent;
    color: #555;
}
#footer_body .topMenu li a:before, #footer_body .services li a:before {
  	content: none;
}
#footer_body .topMenu, #footer_body .services {
  	width: 100%;
  	flex-wrap: wrap;
  	flex-direction: row;
  	justify-content:center;
}
#footer_body .services {
    font-size: 80%;
}
/*-----------------------
bottomLink　スマホ下部固定バナー
-----------------------*/
@media only screen and (max-width: 600px) {
    #bottomLink {
        position: fixed;
        left: 0;
        bottom: 0;
        width: 100%;
        text-align: center;
        z-index: 1000;
        height: 50px;
        overflow: hidden;
        display: flex;
        align-items:center;
      	justify-content:center;
      	border-top: 1px solid white;
    }
    #bottomLink a {
        display: block;
        padding: 5px 0;
        color: #fff;
        background: var(--point-c2);
        text-decoration: none;
        font-size: 13px;
        line-height: 1.3;
        height: 100%;
      	width: 50%;
    }
    #bottomLink a span {
        font-size: 18px;
        display: block;
    }
    #bottomLink a.bottom_mail {
      	background: var(--text-c2);
  	}
  	#bottomLink a.bottom_mail span::before, #bottomLink a.bottom_tel span::before {
      	font-family: "Font Awesome 7 Free";
        font-weight: bold;
  	}
    #bottomLink a.bottom_mail span::before {
		content: "\f0e0";
    }
   	#bottomLink a.bottom_tel span::before {
		content: "\f095";
        margin-right: 0.3em;
    }
}
/*-----------------------
レスポンシブ
-----------------------*/
@media only screen and (max-width: 1300px) {
    .article.voice .image {
        width: 30%;
    }
}
@media only screen and (max-width: 1024px) {
  	body {
    	line-height: 1.8;
  	}
    #mainTopics h2 strong, #mainArticles .article h2 strong, .article h3 strong, .gallery h3 strong, .freeHtml h3 strong {
		left: 0;
    }
  	.article.voice .article_left .image {
      	margin: 0;
  	}
 	.article.voice.right .article_outer .article_body {
    	justify-content: center;  
  	}
  	.article.voice .article_outer .article_body .image {
      	width: 80%;
      	max-width: 100%;
  	}
  	#sideContents_outer {
     	padding-left: 0;
      	padding-right: 0;
  	}
  	.contact_us .contact_image {
    	width: 40%;
	}
    .contact_us .contact_box {
        width: 60%;
    }
  	.article.full, .article.max {
      	padding-bottom: 40px;
      	margin: 24px 0;
  	}
}
@media only screen and (max-width: 800px) {
  	.article.voice .article_outer .article_body {
     	flex-direction: column;
      	gap: 1.5em 0;
  	}
  	.article.voice .article_outer .article_body p {
    	width: 100%;
  	}
}
@media only screen and (max-width: 600px) {
  	.article.max {
    	padding-bottom: 0;
	}
    .article .article_body.article_right .image {
      	margin-top: 0;
  	}
  	#title {
    	height: 56px;
	}
    #title h1 {
      	width: 200px;
      	height: 56px;
      	float: left;
  	}
  	#title #title_outer {
      	height: 56px;
  	}
  	#toggle {
      	background-color:transparent;
      	filter: brightness(0) saturate(100%) invert(12%) sepia(25%) saturate(455%) hue-rotate(349deg) brightness(98%) contrast(81%);
  	}
  	.active #toggle {
      	background-color:transparent;
      	filter: brightness(0) saturate(100%) invert(12%) sepia(25%) saturate(455%) hue-rotate(349deg) brightness(98%) contrast(81%);
  	}
    #sideContents_outer {
      	width: 100%;
  	}
  	.sideContents {
      	padding: 0;
  	}
  	.contact_us {
  		flex-direction: column;
  	}
    .contact_us .contact_image {
		display: none;
    }
    .contact_us .contact_box {
      	width: 100%;
  	}
  	.side_address {
      	flex-direction: column;
		margin: 4% 0 0;
      	padding-bottom: 40px;
  	}
    .side_address .txtblock {
      	width: 100%;
    }
  	p.logo {
      	width: 100%;
      	border-right: none;
      	/* border-bottom: 1px dotted #555555; */
  	}
    .article.number table#flowTbl td::after {
          top: 100%;
    }
    .article table.priceTbl {
          border: none;
    }
    .article table.priceTbl thead {
          display: none;
    }
    .article table.priceTbl tr {
          display: block;
          margin-bottom: 20px;
    }
    .article table.priceTbl tbody tr:last-child td,
    .article tbody table.normalTbl tr:last-child th {
          border-bottom: 1px dotted #ccc;
   	}
    .article table.priceTbl th {
          border-bottom: 1px solid #ccc;
          display: block;
          padding: 10px;
          text-align: right;
          border-radius: 4px 4px 0 0!important;
    }
    .article table.priceTbl th::before {
          content: attr(data-label);
          float: left;
          font-weight: bold;
    }
    .article table.priceTbl tbody td {
          border-bottom: 1px dotted #ccc;
          display: block;
          padding: 10px;
          text-align: right;
    }
    .article table.priceTbl tbody td:last-child {
          border-radius: 0 0 4px 4px!important;
          border-bottom: none;
    }
    .article table.priceTbl tbody tr:last-child td:last-child {
          border-bottom: none;
    }
    .article table.priceTbl tbody td::before {
          content: attr(data-label);
          float: left;
          font-weight: bold;
    }
    .article table.normalTbl td, .article table.normalTbl th {
          border-top: none;
    }
    .article table.normalTbl tr:last-child th {
          border-bottom: 1px dashed var(--fourth-color);
    }
    .gallery.textOnTop .gallery_grid2 li.galleryGrid, .gallery.textOnTop .gallery_grid3 li.galleryGrid, .gallery.textOnTop .gallery_grid4 li.galleryGrid, .gallery.textOnTop .gallery_grid5 li.galleryGrid {
          width: 100%;
    }
    .gallery.textOnTop .gallery_grid li.galleryGrid .image img {
		  object-fit: cover;
    	  aspect-ratio: 16 / 9;
    }
    .gallery.textOnTop ul.galleryGrids .comment {
		  font-size: 5vw;
    }
  	.gallery.textOnTop.normalImg .gallery_grid li.galleryGrid .image img {
          object-fit: fill;
          aspect-ratio: auto;
    }
  	.gallery.textOnTop.normalImg .gallery_grid2 li.galleryGrid, .gallery.textOnTop.normalImg .gallery_grid3 li.galleryGrid, .gallery.textOnTop.normalImg .gallery_grid4 li.galleryGrid, .gallery.textOnTop.normalImg .gallery_grid5 li.galleryGrid {
  		  width: 50%;
  	}
    #footer {
          margin-bottom: 49px;  
    }
}

/*TOPギャラリー
.gallery.max ul.galleryGrids {
  display: flex;
  position: static !important;
  height: auto !important;
}
.gallery.max ul.galleryGrids li.galleryGrid {
  float: none !important;
  position: static !important;
  left: unset !important;
  top: unset !important;
} */