@charset "UTF-8";

article{ position: relative; margin: 0 auto; padding: 205px 0 0; width: 1100px; line-height: 1;}
article header{ display: flex; height: auto; letter-spacing: .1em; font-family: "Noto Serif JP", serif; justify-content: space-between; align-items: center;}
article header h1{ display: flex; flex-direction: column; color: #b48e3a; letter-spacing: .12em; font-weight: 400; font-size: 28px;}
article header h1 span{  margin: 1em 0 0; color: #000; font-size: 13px;}
article header nav ul{ display: flex; border-left: 1px solid #e9e1d1; font-size: 14px;}
article header nav ul > li{ padding: 20px 40px; border-right: 1px solid #e9e1d1;}
article header nav a{ display: inline; padding: 0 0 5px;}
article header nav .current a{ border-bottom: 1px solid; color: #b48e3a;}

article .content{ overflow: inherit;}
.lead{ letter-spacing: .1em; font-size: 14px; font-family: "Noto Serif JP", serif; line-height: 2.14;}
.list-tab{ position: relative; display: flex; margin: 0 calc(50% - 50vw); padding: 45px 0 0; border-bottom: 1px solid #e9e1d1; justify-content: center;}
.list-tab > li{ margin: 0 5px; padding: 15px 30px; border: 1px solid #e9e1d1; border-bottom: none; border-radius: 5px 5px 0 0; letter-spacing: .1em; font-size: 13px; font-family: "Noto Serif JP", serif; cursor: pointer;}
.list-tab > li.current{ background: #e9e1d1;}
.tab-content{ display: none;}
.tab-content.current{ display: block;}

.block{ margin: 50px 0 0; padding: 68px 0 0; background: url("/img/blt.gif") no-repeat top left;}
.tab-content > .block:first-of-type{ padding: 0; background: none;}

.block > h2{ color: #b48e3a; text-align: center; letter-spacing: .1em; font-size: 24px; font-family: "Noto Serif JP", serif;}
.block > h2 span{ display: block; padding: 1em 0 0; font-size: 14px;}
.block > h3{ margin: 75px 0 0; color: #b48e3a; letter-spacing: .1em; font-size: 22px; font-family: "Noto Serif JP", serif;}
.block .cap2{ position: relative; display: inline-block; margin: 1em 0 0; padding: .5em 1em; letter-spacing: normal;font-size: 12px; line-height: 1.5; }
.block .cap2:before,
.block .cap2:after{ position: absolute; top: 50%; display: block; width: 5px; height: 100%; border: 1px solid #e0c898; content: ""; transform: translate(0,-50%);}
.block .cap2:before{ left: 0; border-right: none;}
.block .cap2:after{ right: 0; border-left: none;}
.block figure:before,
.block figure:after{ display: block; overflow: hidden; content: "";}
.block figure:after{ clear: both;}
.block figure{ margin: 25px 0 0; zoom: 1;}
.photo-main-honten,
.photo-main-ginza,
.photo-main-yokohama,
.photo-main-sendai,
.photo-main-resort{ float: left; width: 870px;}
.photo-main-honten img,
.photo-main-ginza img,
.photo-main-yokohama img,
.photo-main-sendai img,
.photo-main-resort img{ width: 100%;}
.photo-thumb{ float: right; width: 200px;}
.photo-thumb ul li{ margin: 0 0 15px;}
.photo-thumb ul li img{ width: 100%;}
.ctr2:before,
.ctr2:after{ display: block; overflow: hidden; content: "";}
.ctr2:after{ clear: both;}
.ctr2{ margin: 25px 0 0; font-size: 14px; line-height: 1.8; zoom: 1;}
.ctr2-left{ float: left; width: 500px;}
.ctr2-right{ float: left; width: 500px;}
.ctr2 h3{ font-weight: bold;}
.ctr2 h4{ margin: 15px 0 0; font-weight: bold;}
.ctr2 table{ margin: 25px 0; width: 75%; border-top: 3px double #e0c898; border-bottom: 3px double #e0c898; font-size: 12px;}
.ctr2 table th{ padding: 10px 15px; width: 25%; border-top: 1px solid #e0c898; vertical-align: top; text-align: left; white-space: nowrap; font-weight: normal;}
.ctr2 table td{ padding: 10px 15px; border-top: 1px solid #e0c898; border-left: 1px solid #e0c898;}
.ctr2 p a{ color: #ff5400; text-decoration: underline;}
.ctr2 p a:hover{ text-decoration: none;}
.ctr2 .list-access li a{ position: relative; display: block; padding: 0 0 0 15px; font-weight: bold;}
.ctr2 .list-access li a:after{ position: absolute; top: 9px; left: 0; display: block; width: 4px; height: 4px; border-right: 2px solid #000; border-bottom: 2px solid #000; content: ""; transform: rotate(-45deg);}
.ctr2 .list-bus{ margin: 0 0 0 1.4em;}
.ctr2 .list-bus li{ position: relative;}
.ctr2 .list-bus li:after{ position: absolute; top: .7em; left: -1em; display: block; width: 3px; height: 3px; border-radius: 100%; background: #000; content: '';}
.ctr2 .list-info{ margin: 25px 0 0;}
.ctr2s{ margin: 50px 0 0;}
.ctr2s .list-info{ margin: 0;}
.ctr2 .list-info li{ position: relative; padding: 0 0 0 15px;}
.ctr2 .list-info li:after{ position: absolute; top: 9px; left: 0; display: block; width: 4px; height: 4px; border-right: 2px solid #000; border-bottom: 2px solid #000; content: ""; transform: rotate(-45deg);}
.ctr2 .list-info li a{ font-weight: bold;}
.ctr2 .btn{ margin: 25px 0 0;}
.ctr2 .btn + .btn{ margin: 10px 0 0;}
.ctr2 .btn a{ display: block; width: 365px; height: 45px; background: #b28c39; color: #fff; text-align: center; font-size: 14px; line-height: 45px;}
.ctr2 .btn a:hover,
.ctr2 .btn a:active{ background: #fff; color: #b28c39;}
.ctr2 .btn span{ display: block; width: 365px; height: 45px; background: #fff; color: #b28c39; text-align: center; font-size: 14px; line-height: 45px;}
.ctr2 .btn + p{ margin: 10px 0 0;}
.ctr2 .ind{ padding: 0 10em 0 1em; text-indent: -1em;}
.other h2{ padding: 0 0 25px;}
.other ul{ margin: 25px 0 0; text-align: center;}
.other li{ display: inline-block; padding: 0 25px; border-left: 1px solid #e9e1d1; font-size: 14px;}
.other li:first-child{ border: none;}

.dl{ display: flex; margin: 40px auto 0; width: 50%; font-size: 14px; flex-wrap: wrap; align-items: center;}
.dl > dt{ display: flex; padding: 0 2em; width: 50%; height: 60px; border-bottom: 1px solid #e9e1d1; align-items: center;}
.dl > dd{ display: flex; padding: 0 2em; width: 25%; height: 60px; border-bottom: 1px solid #e9e1d1; align-items: center; justify-content: flex-end;}
.dl a{ color: #b28c39; text-decoration: underline;}
.dl a:hover{ text-decoration: none;}
.cap{ margin: 0 auto; padding: 2em; width: 50%; text-align: right;}

.dl-faq{ margin: 0 auto; padding: 2em 0 1em; width: 100%; border-bottom: 1px solid #e9e1d1; font-size: 14px; line-height: 1.75;}
.dl-faq:first-of-type{ margin: 25px auto 0;}
.dl-faq > dt{ padding: 0 0 0 1em; font-weight: bold; cursor: pointer;}
.dl-faq > dt:before{ margin: 0 .5em 0 0; color: #b28c39; content: "Q.";}
.dl-faq > dd{ padding: 1em 1em 1em 2.5em;}

.list-tab2{ display: flex; margin: 50px 0 0; justify-content: center;}
.list-tab2 > li{ padding: 20px 40px; border-right: 1px solid #e9e1d1; letter-spacing: .1em; font-size: 13px; font-family: "Noto Serif JP", serif; cursor: pointer;}
.list-tab2 > li:first-child{ border-left: 1px solid #e9e1d1;}
.list-tab2 span{ display: inline; padding: 0 0 5px;}
.list-tab2 .current span{ border-bottom: 1px solid; color: #b48e3a;}

.tab-content2{ display: none;}
.tab-content2.current{ display: flex; flex-direction: column;}

.list-item{ display: flex; margin: 25px 0 0; justify-content: center; flex-wrap: wrap;}
.list-item > li{ padding: 2px 1px 0; width: calc(100% / 3);}
.list-item a{ position: relative; display: block; overflow: hidden;}
.list-item img{ width: 100%;}
.list-item .caption{ position: absolute; top: 0; left: 0; display: flex; flex-direction: column; width: 100%; height: 100%; background: rgba(0,0,0,.5); color: #fff; text-align: center; letter-spacing: .1em; font-size: 12px; font-family: "Noto Serif JP", serif; line-height: 1.5; opacity: 0; transition: all .5s ease; align-items: center; justify-content: center;}
.list-item .caption small{ font-size: 12px;}
.list-item .caption em{ color: #fff; font-size: 18px;}
.list-item .caption span{ margin: 1em 0 0; font-family: 'Noto Sans JP', sans-serif;}
.list-item a:hover .caption{ opacity: 1;}
.list-item .new:before{ position: absolute; top: 6px; left: -16%; z-index: 10; padding: .5em 0; width: 50%; height: auto; background: #b48e3a; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); color: #fff; content: "NEW"; text-align: center; letter-spacing: .1em; font-family: "Noto Serif JP", serif; line-height: 1; transform: rotate(-30deg);}

.tab-content2 .more{ margin: 50px 0 0;}
.tab-content2 .more a{ display: flex; margin: 0 auto; width: 220px; height: 45px; background: #b28c39; color: #fff; letter-spacing: .1em; justify-content: center; align-items: center;}
.tab-content2 .more a:hover,
.tab-content2 .more a:active{ background: #fff; color: #b28c39;}

.list-point{ display: flex; padding: 30px 0 0; flex-wrap: wrap; justify-content: center;}
.list-point > li{ margin: 30px 0 0; padding: 0 30px; width: 25%; text-align: center;}
.list-point a{ position: relative; display: flex; flex-direction: column; border-radius: 100%; background: #fff; font-size: 13px; line-height: 1.5; filter: drop-shadow(0px 6px 6px rgba(0, 0, 0, 0.08)); align-items: center; justify-content: center; aspect-ratio: 1/1;}
.list-point span{ padding: .125em 0; font-weight: 500; color: #b48e3a; font-size: 150%; font-family: "Noto Serif JP", serif;}
.list-point i{ margin: 0 0 1em; display: block; width: 12px; height: 18px; transform: translate(-50%,0); transform: scale(1.5);}
.list-point i:after,
.list-point i:before{ position: absolute; display: block; border: 1px solid; content: "";}
.list-point i:before{ top: 0; left: 50%; width: 8px; height: 8px; border-radius: 100%; transform: translate(-50%,0);}
.list-point i:after{ top: 9px; width: 12px; height: 9px; border-bottom: 0; border-radius: 100% 100% 0 0;}