html {
font-family: "Jost", "BIZ UDPGothic", sans-serif;
font-size: 16px;
line-height: 1.8;
height: 100%;
color: #403834;
background-color: #F2EDE9;
-webkit-appearance: none;
-webkit-tap-highlight-color: transparent;
margin: 0;
padding: 0;
scroll-behavior: smooth;
}
body {
font-size: 1rem;
margin: 0 5;
background-color: #F2EDE9;
color: #403834;
height: 100%;
}
a{
color: #403834;
text-decoration: none;
}
main {
height: 100vh;
}
h2.topic {
font-family: "Jost", "BIZ UDPGothic", sans-serif;
color: #403834;
font-size: 3rem;
}
h2.topic span{
font-family: "BIZ UDPGothic", sans-serif;
display: block;
font-size: 1.1rem;
letter-spacing: .3rem;
color: #8C7E72;
}
p > samll{
font-size: .8rem;
}
p.c-right a{
font-size:.7rem;
color: #8C7E72;
padding: 0;
line-height: normal;
}
h3 > span{
font-size: 70%;
}
h3.column{
background-color: transparent;
}
h3.column > span{
font-size: 65%;
display: block;
padding: 10px 0 0;
}
h4.column {
  background-color: transparent;
  border-bottom: solid 3px #8C7E72;
  position: relative;
}
h4.column:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #00aabb;
  bottom: -3px;
  width: 20%;
}

/* ナビバー
-------------------------------------------- */
.navbar{
width:100%;
background-color: rgba(242, 237, 233, .8);
}
img.nav-logo {
width: auto;
max-height: 50px;
}
a.navbar-brand{
font-family: "Jost", "BIZ UDPGothic", serif;
font-weight: 500;
color: #403834;
}
.nav-item .nav-link {
font-family: "Jost", "BIZ UDPGothic", serif;
font-weight: 500;
color: #59514C;
padding: 10px 0;
font-size: 1.2rem;
line-height: 1rem;
letter-spacing: .05em;
}
.nav-item .nav-link a{
color: #59514C;
}
.nav-item .nav-link.active {
color: #403834;
}
.nav-item .nav-link span,
.dropdown-menu .dropdown-item span{
font-size: .7rem;
}
button.navbar-toggler{
box-shadow: none !important;
border: none!important;
outline: none!important;
}
.navbar-toggler.navbar-toggler-icon {
background-image: url("data:image/svg+xml;charset=utf8,%3csvg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' width='150' height='150' viewBox='0 0 50 50'%3e%3cpath fill='%23403834' stroke='%23403834' d='M 5 9 L 5 11 L 45 11 L 45 9 L 5 9 z M 5 24 L 5 26 L 45 26 L 45 24 L 5 24 z M 5 39 L 5 41 L 45 41 L 45 39 L 5 39 z'/%3e%3c/svg%3e");
width: 2rem;
height: 2rem;
background-repeat: no-repeat;
background-position: center;
background-size: 100% 100%;
box-shadow: none !important;
border: none!important;
outline: none!important;
padding-right: 5px;
}
.navbar-toggler[aria-expanded="true"] > .navbar-toggler-icon{
background-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' x='0px' y='0px' width='150' height='150' viewBox='0 0 50 50' fill='%23403834'><path d='M 10 10 L 40 40 M 40 10 L 10 40' stroke='%23403834' stroke-width='2' stroke-linecap='square'/></svg>");
width: 2rem;
height: 2rem;
background-repeat: no-repeat;
background-position: center;
background-size: 100% 100%;
box-shadow: none !important;
border: none!important;
outline: none!important;
}
a.nav-link.dropdown-toggle.show,
a.nav-link.dropdown-toggle.show:hover,
a.nav-link.dropdown-toggle.show:active,
a.nav-link.dropdown-toggle.show:focus{
color:#403834!important;
}
ul.dropdown-menu{
background-color: #F2EDE9;
color: #8C7E72;
border-radius: 0!important;
box-shadow: none !important;
border: none!important;
outline: none!important;
}
.brochure-info{
text-align: center;
top: 0;
left: 0;
box-sizing: border-box;
width: 100%;
height: 50px;
line-height: 50px;
background-color: #59514C;
}
.brochure-info p {
margin: 0;
font-size: 1.1rem;
}
.brochure-info a{
color: #F2EDE9;
font-weight: bold;
}
@media (max-width:768px){
.brochure-info {
width: 100%;
}
.brochure-info p span {
display: none;
}
}
.contact-info{
width: 200px;
height: 45px;
font-family: "Jost", "BIZ UDPGothic", serif;
color: #F2EDE9;
background-color: #403834;
line-height: 40px;
text-align: center;
}
.contact-info a{
color: #F2EDE9;
}


/* スライダー
-------------------------------------------------- */
[class*=swiper]:focus {
outline: none;
}
.slide-media{
position: relative;
overflow: hidden;
}
.slide-media img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}
.mv .slide-media {
height: 900px;
}
.mv .slide-media img {
-webkit-transition: 3s;
transition: 3s;
}
.mv .slide-media.clip {
position: absolute;
z-index: 1;
top: 0;
left: 0;
width: 100%;
-webkit-filter: contrast(1.1);
filter: contrast(1.1);
}
.mv .swiper-slide {
overflow: hidden;
}
.mv .swiper-slide[class*=-active] .slide-media.clip img {
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
.mv .swiper-slide[class*=-prev] .slide-media img {
-webkit-transform: translateX(80vw);
transform: translateX(80vw);
}
.mv .swiper-slide[class*=-next] .slide-media img {
-webkit-transform: translateX(-80vw);
transform: translateX(-80vw);
}
.mv .content {
position: absolute;
z-index: 2;
top: 0;
bottom: 0;
height: -webkit-max-content;
height: -moz-max-content;
height: max-content;
margin: auto;
pointer-events: none;
font-family: "Jost", "BIZ UDPGothic", sans-serif;
}
.mv .content-title {
font-size: 6rem;
font-weight: normal;
line-height: 1.1;
color: #D9D2CC;
font-family: "Jost", "BIZ UDPGothic", sans-serif;
}
.mv .content-text {
font-size: 1.2rem;
margin: 4rem 0;
color: #fff;
font-family: "Jost", "BIZ UDPGothic", sans-serif;
}
.mv .content-button {
font-size: 1.1rem;
font-weight: bold;
display: inline-block;
color: #D9D2CC;
font-family: "Jost", "BIZ UDPGothic", sans-serif;
}
.mv .content-button::before {
display: inline-block;
width: 6rem;
height: 1px;
margin: -2px 1.6rem 0 0;
content: "";
vertical-align: middle;
background-color: currentColor;
}
.mv .content.anm-started .content-button {
pointer-events: auto;
}
.mv .marker {
position: relative;
display: inline-block;
-webkit-clip-path: inset(0 100% 0 0);
clip-path: inset(0 100% 0 0);
}
.mv .marker::after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
background-color: #fff;
}

/* anm-started (アニメーション開始) */
.mv .anm-started .marker {
-webkit-animation: mv-marker 1s 0.5s both;
animation: mv-marker 1s 0.5s both;
}
.mv .anm-started .marker::after {
-webkit-animation: mv-markerBg 1s 0.5s both;
animation: mv-markerBg 1s 0.5s both;
}
.mv .anm-started .content-text .marker,
.mv .anm-started .content-text .marker::after {
-webkit-animation-delay: 0.6s;
animation-delay: 0.6s;
}
.mv .anm-started .content-link .marker,
.mv .anm-started .content-link .marker::after {
-webkit-animation-delay: 0.7s;
animation-delay: 0.7s;
}
.mv .content.anm-finished .marker {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
.mv .content.anm-finished .marker::after {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}
.mv .anm-finished .marker {
-webkit-animation: mv-markerHide 0.5s both;
animation: mv-markerHide 0.5s both;
}
.mv .anm-finished .marker::after {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}

@-webkit-keyframes mv-marker {
60%, 100% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
}

@keyframes mv-marker {
60%, 100% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
}
@-webkit-keyframes mv-markerBg {
60% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
100% {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}
}
@keyframes mv-markerBg {
60% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
100% {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}
}
@-webkit-keyframes mv-markerHide {
0% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
100% {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}
}
@keyframes mv-markerHide {
0% {
-webkit-clip-path: inset(0);
clip-path: inset(0);
}
100% {
-webkit-clip-path: inset(0 0 0 100%);
clip-path: inset(0 0 0 100%);
}
}

@media only screen and (max-width: 1024px) {
.mv .slide-media {
height: max(70vh, 70vw);
}
.mv .content {
top: calc(20% + 2rem);
right: 2rem;
bottom: auto;
left: 2rem;
}
.mv .content-title {
font-size: 3.5rem;
}
.mv .content-text {
font-size: 1rem;
margin: 1rem 0;
}
}
@media only screen and (min-width: 1025px) {
.swiper-button-prev::before, .swiper-button-next::before {
-webkit-transition: .8s translate cubic-bezier(.2, 1, .2, 1);
transition: .8s translate cubic-bezier(.2, 1, .2, 1);
}
.swiper-button-prev:hover::before, .swiper-button-next:hover::before {
-webkit-transform: scale(1.2);
transform: scale(1.2);
}
.mv .content {
left: 24rem;
}
}
/* フェードイン
-------------------------------------------------- */
.fade-in {
opacity: 0;
transform: translateY(80px);
transition: opacity 1.5s ease-out, transform 1.5s ease-out;
}

.fade-in.scroll-in {
opacity: 1;
transform: translateY(0);
}
/* main内画像
---------------------------------------------------*/
.vimg img{
object-fit: cover;
}
/* Cookie同意
-------------------------------------------------- */
.toast-body{
font-family: "BIZ UDPGothic", serif; 
color: #403834;
}
.btn-agree{
background-color: #403834;
font-weight: bold;
color: #fff;
}
.btn-agree:active,
.btn-agree:hover,
.btn-agree:focus{
background-color: #8C7E72;
font-weight: bold;
color: #fff;
}


/* お知らせ
--------------------------------------------*/
.news{
min-height: 200px;
}
.news .card{
background-color: #D9D2CC;
color: #59514C;
min-hight: 100px;
border-radius: 0!important;
}
.news .card:hover,
.news .card:focus,
.news .card:active{
background-color: #F2EDE9;
}
.news .card-title{
font-family: "Radley", serif;
font-weight: 400;
font-style: italic;
}
.news .card a{
color: #59514C;
}

/* プラン
--------------------------------------------*/
.plan .planA{
background-color: #D9D2CC;
}
.plan .planB{
background-color: #59514C;
color: #D9D2CC;
}
.plan .planA h2.topic {
color: #403834;
font-size: 2rem;
letter-spacing: .3rem;
line-height: 2.4rem;
}
.plan .planA h2.topic span{
color:#59514C;
font-size: .9rem;
}
.plan .planB h2.topic {
color: #F2EDE9;
font-size: 2rem;
letter-spacing: .3rem;
line-height: 2.4rem;
}
.plan .planB h2.topic span{
color: #D9D2CC;
font-size: .9rem;
}
.gallery {
overflow: hidden;
}
.gallery .swiper {
max-width: 720px;
max-height: 720px;
min-height: 600px;
width: 100%;
}
.gallery .slide-media {
position: relative;
overflow: hidden;
}
.gallery .swiper-main {
overflow: visible;
}
.gallery .swiper-fade .swiper-slide {
-webkit-transition-property: opacity, -webkit-transform !important;
transition-property: opacity, -webkit-transform !important;
transition-property: opacity, transform !important;
transition-property: opacity, transform, -webkit-transform !important;
pointer-events: none;
}
.gallery .swiper-fade .swiper-slide-active {
pointer-events: auto;
}
.gallery .swiper-controller {
position: absolute;
top: 0;
left: 0;
width: 100%;
padding-top: 62.5%;
}
.gallery .swiper-button-prev, .gallery .swiper-button-next {
position: absolute;
top: 0;
bottom: 0;
color: rgba(225, 225, 225, 0.8);
margin: auto;
}
.gallery .slide {
display: block;
overflow: hidden;
}
.gallery .slide-media {
padding-top: 62.5%;
border-radius: 0;
}
.gallery .slide-media img {
-o-object-fit: contain;
 object-fit: contain;
}
.gallery .slide-title {
font-weight: bold;
line-height: 1.6;
padding: 2rem 0 0;
}
@media only screen and (max-width: 720px) {
.plan .planA h2.topic,
.plan .planB h2.topic {
line-height: normal;
}
.gallery .swiper-button-prev, .gallery .swiper-button-next {
font-size: 16px;
}
.gallery .swiper {
width: calc(100% - 5px);
height: auto;
min-height: 300px;
}
}

/* スペック
--------------------------------------------*/
.spec{
background-color: #F2EDE9;
}
.spec .swiper-a{
background-color: #403834;
}
.spec .swiper-wrapper {
-webkit-transition-timing-function: linear !important;
transition-timing-function: linear !important;
}
.spec .swiper-slide {
width: -webkit-max-content;
width: -moz-max-content;
width: max-content;
}
.spec .slide {
width: var(--slide-width);
--slide-width: 500px;
-webkit-transition: .8s translate cubic-bezier(.2, 1, .2, 1);
transition: .8s translate cubic-bezier(.2, 1, .2, 1);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.spec .slide-media {
height: var(--slide-width);
}
.spec .slide-media img{
width: auto;
height: 600px;
object-fit: cover;
}
.spec .slide-content {
position: absolute;
right: 0;
bottom: 0;
left: 0;
-webkit-transition: .8s translate cubic-bezier(.2, 1, .2, 1);
transition: .8s translate cubic-bezier(.2, 1, .2, 1);
opacity: 0;
olor: #fff;
background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(50%, rgba(0, 0, 0, 0.3)));
 background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%);
}
.spec .slide-title {
font-size: 1rem;
color: #f6ebe3;
line-height: 1.4;
padding: 1rem;
display: inline-block;
overflow: hidden;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}
.spec .slide:hover {
 width: calc(500px * 1.5);
}
.spec .slide:hover .slide-content {
opacity: 1;
}
@media only screen and (max-width: 599px) {
.spec .slide {
--slide-width: 250px;
}
.spec .slide-media img{
width: 400px;
height: auto;
}
.spec .slide:hover,
.spec .slide:active,
.spec .slide:focus{
 width: calc(250px * 1.5);
}
}
table{
border-collapse: collapse;
width: 100%;
}
th, td {
border-bottom: 2px solid #8C7E72;
padding: 1em;
}
th {
border-bottom: 1px dotted #8C7E72;
font-weight: bold;
text-align: center;
width: 30%;
min-width: 4em;
}
@media (max-width:599px){
th, td {
	display:block;
	}
th {
	text-align: left;
	width: 50%;
	}
}

/* お問い合わせ
--------------------------------------------*/
.contact {
background-color: #D9D2CC;
}
.contact h2.topic {
font-family: "Jost", "BIZ UDPGothic", sans-serif;
font-weight: 400;
font-size: 3rem;
letter-spacing: .3rem;
}
.contact h2.topic span{
font-family: "BIZ UDPGothic", sans-serif;
display: block;
font-size: 1.1rem;
letter-spacing: .3rem;
}
.contact th {
width: 30%;
}
.submit{
text-align: center;
font-size: 1.2rem;
max-width: 250px;
min-height: 30px;
width: 100%;
height: auto;
background-color: #403834;
color: #F2EDE9;
padding: .9rem;
font-family: "BIZ UDPGothic", sans-serif;
font-weight: 700;
border: none;
}
::placeholder{
color: #ddd;
}
.return{
text-align: center;
font-size: 1.2rem;
max-width: 250px;
min-height: 30px;
width: 100%;
height: auto;
background-color: #8C7E72;
color: #F2EDE9;
padding: .9rem;
font-family: "BIZ UDPGothic", sans-serif;
font-weight: 700;
border: none;
}
.grecaptcha-badge {
visibility: hidden;
}
.textarea {
width: 80%;
min-height: 80px;
overflow: hidden;
}
@media (max-width:599px){
.contact th,.contact td {
	display:block;
	}
.contact th {
	text-align: left;
	width: 50%;
	}
input[type=text] {
	width: 100%;
	box-sizing: border-box;
	}
.textarea {
width: 100%;
}
}
/* コラム
--------------------------------------------*/
.column{
background-color: #D9D2CC;
}
.card-c{
min-height: 200px;
border-radius: 0;
border: none;
}
.card-c img{
width: 100%;
height: 200px;
object-fit: cover;
}
.card-c:hover
.card-c img:hover{
transform: scale(1.05);
}
.headimg img{
 width:100%;
 height:400px;
 object-fit: cover;
}
.menu{
background-color: #F2EDE9;
}
.c-menu{
background-color: rgba(242, 224, 208, .2);
}
.c-menu .nav-link{
font-family: "Jost", "BIZ UDPGothic", sans-serif;
font-size: 1.1rem;
font-weight: bold;
}
.nav-item .nav-topic{
font-family: "Jost", "BIZ UDPGothic", sans-serif;
font-size: 1rem;
letter-spacing: .8;
}
.c-menu .nav-topic::before{
content:" - ";
}
.cimg{
width: 100%;
max-height: 600px;
object-fit: cover;
}
.plan h4{
font-size: 1.2rem;
}
notes{
font-size:.7rem; 
vertical-align:top;
}
.index-tit {
  font-size: 1.2rem;
  font-weight: bold;
  margin: 0;
}
.index-box{
border: 1px solid #8C7E72;
}
.index-box ul{
list-style: none;
padding-left: 0;
}
.index-box li{
list-style-type: none;
}
li.num{
font-size: 1.1rem;
font-weight: bold;
list-style-type: decimal-leading-zero;
}
.index-box ul > li > ul,
.index-box ul > li > ul >li{
text-indent: 0!important;
font-size: 1rem;
}
#IndexList li a.active,
#IndexList ul li a.active{
background: linear-gradient(transparent 0%, transparent 50%, rgba(78, 194, 183, .3) 50%, rgba(78, 194, 183, .3) 100%);
}
@media (max-width: 1199px){
.index-box{
	display: none;
	}
}
.scrollspy{
height: 100vh;
overflow-y: scroll;
-ms-overflow-style: none;
scrollbar-width: none;
}
.scrollspy::-webkit-scrollbar {
  display: none;
}
img.column-img{
width: 100%;
max-width: 900px;
height: auto;
}
p > small{
font-size: .8rem;
line-height: 1rem;
}
nav[aria-label="breadcrumb"]{
--bs-breadcrumb-divider: '>';
font-size: .9rem;
}
nav[aria-label="breadcrumb"] > ol.breadcrumb > li.breadcrumb-item.active[aria-current="page"]{
font-weight: bold;
color: #00aabb;
}

/*　フッター
--------------------------------------------*/
footer{
width: 100%;
min-height: 100px;
background-color: #F2EDE9;
color: #403834;
}
a.share-link{
font-size: 18px;
}
.copy {
width: 100%;
height: auto;
min-height: 50px;
bottom: 0;
background-color: #403834;
}
.copy p{
font-family: "Jost", sans-serif;
width: 90%;
margin: 0 auto;
padding-top: 5px;
text-align: center;
color: #D9D2CC;
}
.copy a{
color: #D9D2CC;
}
@media (min-width: 425px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}
@media (max-width:768px){
.copy p{
font-size: .7rem;
}
}