@charset "utf-8";
/*	ヘッダーa
---------------------------------*/
:root{
	--header: 60px;
	scroll-padding: var(--header);
    --mc: #7B692A;
}
@media screen and (min-width: 768px){
    :root{
        --header: 90px;
    }
}
@media screen and (min-width: 1024px){
    :root{
        --header: 118px;
    }
}
.dn{
    display: none;
}
.gjs-dashed .dn{
    display: block;
}

.page{
    margin-top: 60px;
}
@media screen and (min-width: 768px){
    .page{
        margin-top: 90px;
    }
}
@media screen and (min-width: 1024px){
    .page{
        margin-top: 118px;
    }
}

.hd-h1{
    display: none;
}
.click_event{
    pointer-events: none;
}
.gjs-dashed .header{
}
.header{
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 98;
}
.header.open{
    z-index: 101;
}
.hd-inr{
    height: 60px;
    padding: 5px 10px;
    position: relative;
}
.hd-logo{
    width: 180px;
    position: relative;
    align-items: center;
    z-index: 1000;
}
.hd-logo a{
    display: block;
    position: relative;
}
.hd-right{
    display: none;
}
.sp-phone{
    margin-bottom: 30px;
}
.sp-phone__txt{
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
}
.sp-phone__num{
    font-family: "Noto Sans JP", sans-serif;
    font-size: 3rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
    text-align: center;
}
.hd-nav{
    height: 100vh;
}
@media screen and (min-width: 768px){
    .hd-inr{
        height: 90px;
        padding: 15px 20px;
    }
    .hd-logo{
        display: block;
        width: 220px;
    }
    .hd-phone01{
        font-size: 3rem;
    }
    .hd-phone01:before{
        width: 22px;
    }
}
@media screen and (min-width: 1024px){
    .hd-inr{
        height: auto;
        padding: 20px;
    }
    .hd-logo{
        width: auto;
    }
    .hd-right{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap: wrap;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        -webkit-align-items: center;
        align-items: center;
    }
    .hd-phone{
    }
    .hd-nav{
        height: auto;
    }
    .hd-nav .li{
        padding-left: 30px;
    }
    .hd-nav .li:first-of-type{
        padding-left: 0;
    }
    .hd-nav .li a{
        display: block;
        text-align: center;
        cursor: pointer;
    }
    .hd-nav .li a p{
        font-size: 1.6rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        line-height: 1;
    }
    .hd-nav .li a p.hd-nav__jp{
        margin-bottom: 5px;
    }
    .hd-nav .li a p.hd-nav__en{
        color: var(--mc);
    }
    .hd-btn{
        width: 270px;
        background-color: var(--mc);
        border-radius: 10px;
        text-align: center;
        padding: 20px 15px;
        margin-left: 40px;
    }
    .hd-btn a{
        display: block;
    }
    .hd-btn p{
    }
    .hd-btn__txt{
        font-size: 1.6rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        color: #fff;
    }
    .hd-btn__num{
        font-family: "Noto Sans JP", sans-serif;
        font-size: 3rem;
        font-weight: 900;
        line-height: 1;
        color: #fff;
    }
}
@media screen and (min-width: 1400px){
    .hd-inr{
        padding: 20px 30px;
    }
    .hd-logo{
        width: auto;
    }
    .hd-nav .li a p{
        font-size: 1.8rem;
    }
    .hd-btn{
    }
}

/*ハンバーガーボタン*/
.navToggle {
	display: block;
	position: absolute;
	right: 0px;
	top: 0px;
	margin: auto;
	width: 50px;
	height: 50px;
	cursor: pointer;
    z-index: 9999;
}
.navToggle div {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	width: 25px;
	height: 16px;
}
.navToggle span {
	display: block;
	position: absolute;
	height:2px;
	width:100%;
	background: #ffffff;
	left:0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
.navToggle span:nth-child(1) {
	top: 0;
}
.navToggle span:nth-child(2) {
	top: 7px;
}
.navToggle span:nth-child(3) {
	top: 14px;
}
/* ハンバーガーボタン 切り替えアニメーション */
.open .navToggle {
	position: fixed;
    z-index: 10002;
}
.open .navToggle span{
    background: #333333;
}
.open .navToggle span:nth-child(1) {
	top: 7px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open .navToggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open .navToggle span:nth-child(3) {
	top: 7px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}

/*---------- ハンバーガーメニュー ----------*/
.bg-hum-blue{
    background-color: #f99103;
    position: absolute;
    top: 0;
    right: 0;
    width: 50px;
    height: 50px;
}
.gjs-dashed .navbar{
    background-color: #fff;
    overflow: scroll;
    height: 100vh;
}
.hd-hum{
    max-width: 500px;
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
}
.hd-hum.open{
    height: 100vh;
    overflow: scroll;
    background-color: #fff;
}
.gjs-dashed .hd-hum{
    width: 100%;
}
.navbar{
    background: transparent;
    max-width: 500px;
    width: 100%;
    padding: 22.5px 10px;
    margin-left: auto;
}
.navbar.open{
}
.navbar-dark .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border: none;
    padding: 0px;
    width: 20px;
    height: 15px;
    margin: auto;
    margin-right: 5px;
    box-sizing: border-box;
    position: relative;
}

.navbar-dark .navbar-toggler-icon {
    background-image:none;
    background-color: #000;
    width: 20px;
    height: 2px;
    display: block;
    position: absolute;
    transition: ease .5s;
}

.navbar-toggler-icon:nth-of-type(1) {
    top: 0px;
}

.navbar-toggler-icon:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
}

.navbar-toggler-icon:nth-of-type(3) {
    bottom: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon{
    background-color: #000;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
    top:8px;
    transform: rotate(45deg);
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
    opacity: 0;
}

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3) {
    top: 8px;
    transform: rotate(-45deg);
}
button:focus{
    outline: none;
}
.navbar-collapse{
    padding-top: 30px;
    transition: all .5s;
}
.navbar-collapse.show{
    background-color: #fff;
}
.gjs-dashed .navbar-collapse{
}
.navbar-nav{
    margin-bottom: 30px;
}
.nav-item{
    padding: 0 15px;
    border-bottom: solid 1px #ADC6E1;
}
.nav-item:first-of-type{
    border-top: solid 1px #ADC6E1;
}
.nav-item p{
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 50px;
}
.sp-nav__info{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_hd_sp.jpg);
    padding: 40px 10px;
    margin: 0 -10px -22.5px;
}
.sp-nav__info__ttl{
    text-align: center;
    margin-bottom: 40px;
}
.sp-nav__info__ttl__en{
    font-family: "Zen Old Mincho", serif;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1;
}
.sp-nav__info__ttl__jp{
    font-family: "Shippori Mincho B1", serif;
    font-size: 4rem;
    font-weight: 600;
    color: #fff;
    margin-bottom: 10px;
}
.sp-nav__info__btn__item{
    max-width: 320px;
    width: 100%;
    background-color: #fff;
    border-radius: 50px;
    margin: 0 auto 30px;
}
.sp-nav__info__btn__item:last-of-type{
    margin-bottom: 0;
}
.sp-nav__info__btn__item a{
    display: block;
    text-align: center;
}
.sp-nav__info__btn__item p{
    display: inline;
    font-family: "Shippori Mincho B1", serif;
    font-size: 2rem;
    font-weight: 500;
    color: #7B692A;
    line-height: 3.33;
    position: relative;
}
.sp-nav__info__btn__item--line p,
.sp-nav__info__btn__item--mail p{
    padding-left: 50px;
}
.sp-nav__info__btn__item--line p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/img_line.png);
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.sp-nav__info__btn__item--mail p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/img_email.png);
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
@media screen and (min-width: 768px){
    .navbar{
        padding: 30px 15px;
    }
    .navbar-dark .navbar-toggler{
        width: 40px;
        height: 30px;
        margin-right: 10px;
    }
    .navbar-dark .navbar-toggler-icon{
        width: 100%;
    }
    .navbar-collapse.show{
        height: calc(100vh - 90px);
    }
    .bg-hum-blue{
        width: 90px;
        height: 90px;
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1){
        top: 13px;
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3){
        top: 13px;
    }
    .hd-nav__item__cont__a__p{
        font-size: 1.8rem;
    }
    .sp-nav__info{
        padding: 50px 15px;
        margin: 0 -15px -30px;
    }
}
@media screen and (min-width: 1024px){
    .bg-hum-blue{
        display: none;
    }
    .navbar{
        padding: 44px 15px;
    }
    .navbar-dark .navbar-toggler{
        width: 60px;
    }
    .navbar-dark.open .navbar-toggler{
        width: 40px;
    }
}

/*	フッター共通コンテンツ
---------------------------------*/
.ft-contact{
    padding: 80px 0 60px;
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_ft.jpg);
}
.ft-contact__inr.flex-btw{
    display: block;
}
.ft-contact__cont__txt{
    font-weight: 500;
    color: #fff;
    margin-bottom: 40px;
}
.ft-contact__cont__txt strong{
    font-weight: 500;
}
.ft-contact__cont__txt strong br{
    display: none;
}
.ft-contact__cont__icon{
    max-width: max-content;
    width: 70%;
    margin: 0 auto;
}
.ft-contact__info{
    padding-top: 40px;
}
.ft-contact__phone{
    text-align: center;
    margin-bottom: 60px;
}
.ft-contact__phone__ttl{
    color: #fff;
    margin-bottom: 20px;
}
.ft-contact__phone__num{
    font-family: "Noto Sans JP", sans-serif;
    font-size: 4rem;
    font-weight: 900;
    color: #fff;
    line-height: 1;
}
.ft-contact__mail__ttl{
    color: #fff;
    text-align: center;
    margin-bottom: 30px;
}
.ft-contact__mail__btn{
    max-width: 400px;
    width: 100%;
    background-color: #fff;
    border-radius: 5px;
    margin: 0 auto 30px;
}
.ft-contact__mail__btn:last-of-type{
    margin-bottom: 0;
}
.ft-contact__mail__btn a{
    display: block;
    text-align: center;
}
.ft-contact__mail__btn p{
    display: inline-block;
    font-weight: 700;
    color: var(--mc);
    line-height: 5;
    padding-left: 60px;
    position: relative;
}
.ft-contact__mail__btn p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_top_contact01.png);
    width: 40px;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.ft-contact__mail__btn.ft-contact__mail__btn--02 p:before{
    background-image: url(/system_panel/uploads/images/icon_top_contact02.png);
}
.ft-access{
    background-color: #F2F4F7;
}
.ft-access__cont{
    position: relative;
}
.ft-access__cont.flex-btw{
    display: block;
}
.ft-access__cont__ttl{
    display: none;
}
.ft-access__cont__info .access-map{
    width: 100vw;
    margin: 0 -15px 30px;
}
.ft-access__cont__info__txt{
    letter-spacing: 0.05em;
    margin-bottom: 20px;
}
.ft-access__cont__icon{
    max-width: max-content;
    width: 70%;
    margin: 0 auto;
}
.ft-copy{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_ft.jpg);
    padding: 20px 0;
}
@media screen and (min-width: 768px){
    .ft-contact{
        padding: 150px 0 100px;
    }
    .ft-contact__cont .top-ttl .top-ttl__en{
        font-size: min(13vw, 16rem);
    }
    .ft-contact__cont__txt{
        margin-bottom: 60px;
    }
    .ft-contact__phone{
        margin-bottom: 100px;
    }
    .ft-contact__phone__num{
        font-size: 5.6rem;
    }
    .ft-contact__mail__ttl{
        margin-bottom: 40px;
    }
    .ft-contact__mail__btn{
        margin-bottom: 40px;
    }
    .ft-contact__mail__btn p{
        padding-left: 80px;
    }
    .ft-contact__mail__btn p:before{
        width: 56px;
    }
    .ft-access{
        padding: 150px 0;
    }
    .ft-access__cont.flex-btw{
        display: flex;
        gap: 0 100px;
    }
    .ft-access__cont__ttl{
        display: block;
    }
    .ft-access__cont__info{
        flex: 1;
    }
    .ft-access__cont__info .access-map{
        width: 100%;
        margin-bottom: 40px;
    }
    .ft-access__cont__info__txt{
        margin-bottom: 0;
    }
    .ft-access__cont__icon{
        width: auto;
        margin: 0;
        position: absolute;
        bottom: -150px;
        left: -15px;
    }
    .ft-copy{
        padding: 30px 0;
    }
}
@media screen and (min-width: 1024px){
    .ft-contact__inr.flex-btw{
        display: flex;
        gap: 0 90px;
    }
    .ft-contact__cont{
        width: 50%;
    }
    .ft-contact__cont__txt strong br{
        display: block;
    }
    .ft-contact__cont__icon{
        margin: 0 0 0 auto;
    }
    .ft-contact__info{
        flex: 1;
        padding-top: 60px;
    }
}
@media screen and (min-width: 1230px){
    .ft-access__cont__icon{
        left: max(calc((1200px - 100vw) / 2), -90px);
    }
}

/*	フッター
---------------------------------*/
.ft_reservation{
    position: relative;
    background-image: url("/system_panel/uploads/images/img_footer01.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: 65%;
}
.ft_reservation::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(123, 105, 42, 0.6);
    z-index: 0;
}
.ft-reservation-inr{
    max-width: 1230px;
    width: 100%;
    padding: 100px 15px;
    margin-right: auto;
    margin-left: auto;
}
.ft-reservationFlexbox{
    position: relative;
    z-index: 1;
}
.ft-reservation-title__ja{
    font-size: 4.8rem;
    font-weight: 600;
    color: #fff;
}
.ft-reservation-title__en{
    margin-bottom: 50px;
    font-size: 1.8rem;
    font-weight: 600;
    color: #fff;
}
.ft-reservationText{
    width: 100%;
    margin-bottom: 50px;
    color: #fff;
}
.ft-reservationLink{
    position: relative;
    display: block;
    width: 80%;
    max-width: 380px;
    height: 75px;
    margin: 0 auto 30px auto;
    background-color: #fff;
    border-radius: 50px;
    text-align: center;
}
.ft-reservationLink:last-child{
    margin-bottom: 0;
}
.ft-reservationLink p{
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 7.6rem;
    color: #7B692A;
}
.LINE p::before {
    position: absolute;
    top: 50%;
    left: 70px;
    transform: translateY(-50%);
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url('/system_panel/uploads/images/img_line.png');
    background-position: center;
    background-size: contain;
}
.email p::before {
    position: absolute;
    top: 50%;
    left: 70px;
    transform: translateY(-50%);
    content: "";
    display: inline-block;
    width: 30px;
    height: 30px;
    background-image: url('/system_panel/uploads/images/img_email.png');
    background-position: center;
    background-size: contain;
}
@media screen and (min-width:768px){
}
@media screen and (min-width:1024px){
    .ft-reservationFlexbox{
        display: flex;
        align-items: center;
    }
    .ft-reservationText-wrap{
        width: 50%;
        margin-bottom: 0;
    }
    .ft-reservation-title__en{
        margin-bottom: 80px;
    }
    .ft-reservationLink-wrap {
        flex: 1;
        text-align: center
    }
    .ft-reservationLink{
        width: 300px;
        margin: 0 auto 30px auto;
    }
    .LINE p::before {
        left: 65px;
        }
    .email p::before {
        left: 65px;
    }
}
@media screen and (min-width:1080px){
}


.ft_info{
    background-color: #CDC7B4;
    padding: 100px 0;
}
.ft_info-logo{
    margin-bottom: 20px;
}
.ft_info-address{
    margin-bottom: 30px;
}
.ft_info-contents{
    margin-bottom: 40px;
}
.ft_info-payBox{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.ft_info-payTitle{
    margin-bottom: 20px;
}
@media screen and (min-width:768px){
}
@media screen and (min-width:1024px){
    .ft_info {
        padding: 170px 0;
    }
    .ft_info-flexBox{
        display: flex;
    }
    .ft_info-left{
        width: 50%;
    }
    .ft_info-address{
        margin-bottom: 0px;
    }
    .ft_info-right{
        flex: 1;
    }
    .ft_info-logo{
        margin-bottom: 40px;
    }
}
@media screen and (min-width:1080px){
}
.ft_googlemap{
    height: 300px;
    width: 100%;
}
.ft_googlemap iframe{
    width: 100%;
    height: 100%;
}
@media screen and (min-width:768px){
    .ft_googlemap{
        height: 400px;
    }
}
@media screen and (min-width:1024px){
    .ft_googlemap{
        height: 640px;
    }
}
@media screen and (min-width:1080px){
}

/*	マップ
---------------------------------*/
.access-map{
    width: 100%;
    height: 250px;
}
.access-map iframe{
    width: 100%;
    height: 250px;
}
@media screen and (min-width:768px){
    .access-map{
        height: 400px;
    }
    .access-map iframe{
        height: 400px;
    }
}
@media screen and (min-width:1024px){
    .access-map{
        height: 600px;
    }
    .access-map iframe{
        height: 600px;
    }
}

/*ページトップへ戻るボタン*/
.btn-pagetop {
    width: 50px;
    cursor: pointer;
}
@media screen and (max-width:1023px){
    .btn-pagetop{
        display: none !important;
    }
}
.pagetop-sp{
    display: block;
}
.pagetop-sp a {
    display: block;
    height: 67.5px;
    background-color: #000;
    text-align: center;
    position: relative;
}
.pagetop-sp a div {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 25px;
    height: 25px;
}
.pagetop-sp a div:before {
    content: '';
    border-top: solid 1px #fff;
    border-left: solid 1px #fff;
    width: 25px;
    height: 25px;
    transform: rotate(45deg);
    position: absolute;
    top: 10px;
    left: 0;
}
@media screen and (min-width:1024px) {
    .pagetop-sp {
        display: none;
    }
}

/*コピーライト（ｐタグ）*/
.ft_copy{
    background-color: #7B692A;
    padding: 10px 0;
}
.copyright {
    font-size: 1rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-align: center;
    color: #fff;
}
@media screen and (min-width:768px) {
    .copyright {
        font-size: 1.2rem;
    }
}

/*	固定スクロール
---------------------------------*/
.scroll__band{
}
.scroll__band__cont{
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    z-index: -5;
}
@media screen and (min-width: 768px) {
    .scroll__band{
        height: 600px;
    }
    .scroll__band__cont{
        height: 100vh;
        position: fixed;
    }
    .scroll__band__cont.ojf:before{
        content: none;
    }
    .gjs-dashed .scroll__band__cont{
        height: auto;
        position: relative;
        z-index: 0;
    }
    .gjs-dashed .scroll__band__cont.ojf:before{
        content: "";
        padding-top: 600px;
    }
}
/*	ボタン
---------------------------------*/
.link_btn_wrap .link_btn{
    margin: 0 auto;
}
.link_btn{
    display: block;
    position: relative;
    width: 250px;
    margin: 0 auto;
    padding: 10px 0 10px 30px;
    border: solid 1px #303030;
    border-radius: 50px;
    background-color: #ffffff;
}
.link_btn::after{
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 30px;
    width: 70px;
    height: 10px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_btnArrow.png);

}
.link_btn p {
    margin-bottom: 0;
    font-size: 2.0rem;
    color: #303030;
}
@media screen and (min-width:1024px){
    .link_btn{
        width: 300px;
        margin: 0;
        padding: 20px 0 20px 45px;
    }
    .link_btn p {
        font-size: 2.0rem;
        color: #303030;
    }
}

/*	ホーム
---------------------------------*/
.top_wordsImage{
    max-width: max-content;
    margin: 0 auto 20px auto;
    object-fit: contain;
}
.top_sliderBox {
    position: relative;
    z-index: -1;
}
.top_image{
    display: block;
    height: 600px;
    text-align: center;
    object-fit: contain;
}
.top_image{
    height: 600px;
    object-fit: cover;
}
.top_image img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.section-catch{
    padding: 100px 0;
}
.catch-title{
    margin: 0 auto 100px auto;
    font-size: 3.6rem;
    font-weight: 600;
    color: #7B692A;
}
.catch-title strong{
    font-weight: 600;
}
.catch-img{
    margin-bottom: 100px;
}
.catch-catchcopy{
    text-align: center;
    font-size: min(5.5vw, 2.4rem);
    color: #7B692A;
    margin-bottom: 50px;
}
.catch-text{
    margin-bottom: 30px;
}
@media screen and (min-width:768px){
    .top_wordsImage{
        margin-bottom: 30px;
    }
}
@media screen and (min-width:1024px){
    .top_image{
        height: max-content;
    }
    .top_sliderBox{
    }
    .section-catch{
        padding: 200px 0;
    }
    .catch-title{
        margin-bottom: 160px;
        font-weight: 600;
        font-size: 5.6rem;
        text-align: center;
    }
    .catch-title strong br{
        display: none;
    }
    .catch-flexBox{
        display: flex;
        gap: 80px;
    }
    .catch-img{
        max-width: 50vw;
        margin: 0 0 0 -15px;
    }
    catch-img img{
        width: 100%;
    }
    .catch-textBox{
        flex: 1;
    }
    .catch-catchcopy{
        font-size: 3.2rem;
        text-align: left;
    }
    .catch-text{
        margin-bottom: 60px;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .catch-img{
        margin: 0 0 0 max(calc((1200px - 100vw) / 2), -360px)
    }
}
.section-first{
    background-color: #CDC7B4;
    padding-bottom: 100px;
}
.first-img{
    margin: 0 -15px 50px -15px;
    -webkit-mask-image: linear-gradient(to bottom, #CDC7B4 70%, transparent 100%);
    mask-image: linear-gradient(to bottom, #CDC7B4 70%, transparent 100%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
}
.first-textBox{
    position: relative;
}
.first-title{
    font-size: 2.0rem;
    color: #7B692A;
    margin-bottom: 50px;
}
.first-text{
    margin-bottom: 30px;
}
.first-icon{
    display: none;
    position: absolute;
    bottom: -100px;
    right: 0;
    width: 65px;
}
@media screen and (min-width:768px){

}
@media screen and (min-width:1024px){
    .section-first{
        padding-bottom: 0px;
    }
    .first-flexBox{
        display: flex;
        gap: 30px;
    }
    .first-img{
        max-width: 50vw;
        margin: 0 0 0 -15px;

        -webkit-mask-image: linear-gradient(to left, transparent, #CDC7B4 30%);
        mask-image: linear-gradient(to left, transparent, #CDC7B4 30%);

        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;

        -webkit-mask-size: 100% 100%;
        mask-size: 100% 100%;
    }
    .first-img img{
        height: 100%;
        object-fit: cover;
    }
    .first-textBox{
        flex: 1;
        padding: 120px 0;
    }
    .first-title{
        font-size: min(2.5vw, 3.2rem);
    }
    .first-text{
        margin-bottom: 60px;
    }
    .first-icon{
        display: block;
        position: absolute;
        bottom: 0;
        width: auto;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .first-img{
        margin: 0 0 0 max(calc((1200px - 100vw) / 2), -360px)
    }
}
.section-service {
    padding: 100px 0;
}
.service-title{
    font-size: 3.0rem;
    font-weight: 600;
    color: #7B692A;
}
.service-title__en{
    color: #7B692A;
}
.service-titleFlexbox{
    margin-bottom: 30px;
}
.service-titleBox{
    margin-bottom: 50px;
}
.service-nameBox{
    position: relative;
    margin-bottom: 30px;
}
.service-name{
    margin-bottom: 20px;
    font-size: 2.4rem;
    font-weight: 500;
    color: #7B692A;
}
.service-bgWord01{
    position: absolute;
    top: 0;
    right: 0;
    font-size: 50px;
    font-family: "Mrs Saint Delafield", cursive;
    color: #F0F0F0;
}
.service-bgWord02{
    position: absolute;
    top: 0;
    right: 0;
    font-size: 50px;
    font-family: "Mrs Saint Delafield", cursive;
    color: #F0F0F0;
}
.service-img{
    margin-bottom: 20px;
}
.service-text{
    margin-bottom: 50px;
}
.service-gridBox{
    margin-bottom: 100px;
}
.service-gridBox:last-child{
    margin-bottom: 0px;
}
@media screen and (min-width:768px){
    .service-title{
        font-size: 4.8rem;
    }

}
@media screen and (min-width:1024px){
    .section-service {
        padding: 160px 0;
    }
    .service-titleBox{
        margin-bottom: 0px;
    }
    .service-titleFlexbox{
        display: flex;
        justify-content: space-between;
        margin-bottom: 100px;
    }
    .service-nameBox{
        margin-bottom: 0px;
    }
    .service-name{
        margin-bottom: 0;
        padding: 100px 30px 40px 30px;
        font-size: 3.2rem;
    }
    .service-name::after {
        position: absolute;
        content: "";
        top: 175px;
        left: 30px;
        width: 90%;
        height: 1px;
        background-color: #EBDFBE;
    }
    .service-bgWord01{
        font-size: 100px;
    }
    .service-bgWord02{
        left: 0;
        right: auto;
        font-size: 100px;
    }
    .service-img{
        margin-bottom: 0px;
    }
    .service-gridBox{
        display: grid;
        margin-bottom: 0px;
        grid-template-rows: auto;
        grid-template-columns: 1fr 45%;
        grid-template-areas:
        "service-img01 service-header01"
        "service-img01 service-text01";
    }
    .service-gridBox:nth-child(odd){
        grid-template-areas:
        "service-header01 service-img01"
        "service-text01 service-img01";
    }
    .service-name {
        grid-area: service-header01;
    }
    .service-name02{
        text-align: end;
    }
    .service-img {
        grid-area: service-img01;
    }
    .service-img img{
        height: 100%;
        object-fit: cover;
    }
    .service-img01{
        margin: 0 0 0 -15px;
        text-align: end;
    }
    .service-img02{
        margin-right: -15px;
    }
    .service-textBox {
        padding: 0 30px 50px 30px;
        grid-area: service-text01;
    }
    .service-text02 {
        text-align: end;
    }
    .service-linkRight{
        float: right;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .service-img01{
        margin: 0 0 0 max(calc((1200px - 100vw) / 2), -360px);
    }
    .service-img02{
        margin-right: max(calc((1200px - 100vw) / 2), -360px);
    }
}
.image-img{
    height: 540px;
    text-align: center;
}
.image-img img{
    object-fit: cover;
    height: 100%;

}
.section-info{
    padding: 100px 0 80px 0;
}
.info-titleBox {
    margin-bottom: 30px;
}
.info-title{
    font-size: 3.0rem;
    font-weight: 600;
    color: #7B692A;
}
.info-title__en{
    color: #7B692A;
}
.info-img{
    margin-bottom: 30px;
}
.info-text{
    margin-bottom: 50px;
}
@media screen and (min-width:768px){
    .info-title{
        font-size: 4.8rem;
    }
}
@media screen and (min-width:1024px){
    .section-info{
        padding: 200px 0 160px 0;
    }
    .info-gridBox{
        display: grid;
        margin-bottom: 0px;
        grid-gap: 30px 0;
        grid-template-rows: auto;
        grid-template-columns: 1fr 45%;
        grid-template-areas:
        "info-header01 info-img01"
        "info-text01 info-img01";
        align-items: center;
    }
    .info-titleBox {
        grid-area: info-header01;
        margin-bottom: 0;
    }
    .info-title__en{
        margin-bottom: 0;
    }
    .info-img {
        grid-area: info-img01;
        margin: 0 -15px 0 0;
    }
    .info-textBox{
        grid-area: info-text01;
    }
    .info-img{
        margin-bottom: 0;
    }
    .info-text{
        margin-bottom: 50px;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .info-img{
        margin-right: max(calc((1200px - 100vw) / 2), -360px);
    }
}
.section-news{
    padding: 100px 0 80px 0;
    background-color: #F0F0F0;
}
.news-titleBox{
    margin-bottom: 30px;
}
@media screen and (min-width:768px){

}
@media screen and (min-width:1024px){
    .section-news{
        padding: 200px 0 160px 0;
    }
    .news-gridBox{
        display: grid;
        grid-template-rows: auto;
        grid-template-columns: 1fr auto;
        grid-template-areas:
        "news-title01 news-link01"
        "news-area01 news-area01";
    }
    .news-titleBox {
        grid-area: news-title01;
        margin-bottom: 0;
    }
    .news-linkBox {
        grid-area: news-link01;
    }
    .info-list{
        grid-area: news-area01;
        width: 100%;
    }

}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){

}
/*
ホーム新着情報欄

*/
.info-list{
    width: 100%;
    margin-bottom: 50px;
}
.info-list .webgene-item{
    border-bottom: solid 1px #CDC7B4;
}
.info-list .webgene-item a{
    display: block;
    padding: 20px 0;
}
.info-list .blog-item .blogdate{
    color: #303030;
}
.info-list .blog-item__cate{
    margin-left: 20px;
}
.info-list .blog-item .blogcate{
    min-width: 100px;
    color: #fff;
    position: relative;
    background-color: #7B692A;
    text-align: center;
    border-radius: 5px;
}
.info-list .blog-item .blogcate:before{
}
.info-list .blogttl{
    width: 100%;
    letter-spacing: 0.05em;
    margin-top: 15px;
}
@media screen and (min-width: 768px){
    .cate-box{
        padding-top: 80px;
    }
    .info-list .webgene-item a{
        padding: 40px 15px;
    }
    .info-list .blog-item .blogdate{
    }
    .info-list .blog-item .blogcate{
    }
    .info-list .blog-item .blogcate:before{
        font-size: 1.6rem;
    }
    .info-list .blog-item .blogttl{
    }
    .info-list .blog-item__cate{
        margin-left: 80px;
    }
}
@media screen and (min-width: 1024px){
    .cate-box{
        width: 20%;
        text-align: left;
        padding-top: 15px;
        margin: 0;
    }
    .category{
        font-size: 1.8rem;
    }
    .info-list{
        width: 100%;
        margin-bottom: 0px;
    }
    .info-list .webgene-item a{
        padding: 40px 15px;
    }
    .info-list .blog-item .blogdate{
    }
    .info-list .blog-item .blogttl{
    }

}
@media screen and (min-width: 1080px){
    .info-list .blog-item .blogdate{
    }
    .info-list .blog-item .blogttl{
    }
}

/*

装飾

*/
.webgene-item-main-image{
    width: 100%;
}
.blog-line{
    height: 1px;
    width: 100%;
    color: #CDC7B4;
    margin-bottom: 20px;
}
.btn-news01{
    position: relative;
    display: block;
    padding: 30px;
    border: solid 1px #344E7C;
    width: 250px;
    margin: 0 auto;
}
.btn-news01::after{
    position: absolute;
    width: 70px;
    height: 10px;
    top: 50%;
    transform: translateY(-50%);
    right: -35px;
    content: "";
    display: inline-block;
    background-image: url(/system_panel/uploads/images/recruit-arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
}
@media screen and (min-width:768px){
    .btn-news01 p {
        font-size: 1.8rem;
    }
}
@media screen and (min-width:1024px){
    .blog-line{
        margin-bottom: 50px;
    }
}
@media screen and (min-width:1061px){
    .info-detail .webgene-item{
        /* padding: 60px 0; */
    }
}

/*
about 私たちについて
*/
.about-titleWrap{
    display: flex;
    justify-content: center;
    padding: 40px 0 60px;
}
.about-title{
    position: relative;
    writing-mode: vertical-rl;
    color: #7B692A;
    font-size: 3.2rem;
    font-weight: 600;
}
.about-title::after {
    position: absolute;
    content: "";
    bottom: -100px;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 80px;
    background-color: #7B692A;
}
.about-topImg{
    width: 100%;
    height: 250px;
    margin: 0 auto;
}
.about-topImg img{
    height: 100%;
    object-fit: cover;
}
.section-catchAbout{
    padding: 100px 0;
}
.catch-titleAbout{
    margin: 0 auto;
    text-align: center;
    font-size: 3.0rem;
    font-weight: 600;
    color: #7B692A;
}
.catch-titleAbout strong{
    font-weight: 600;
}
.catch-imgAbout{
    margin-bottom: 100px;
}
.catch-catchcopyAbout{
    font-size: 3.2rem;
    color: #7B692A;
    margin-bottom: 50px;
}
.catch-textAbout{
    margin-bottom: 30px;
}

.aboutCatch-title{
    margin: 0 auto 80px auto;
    text-align: center;
    font-size: 3.2rem;
    font-weight: 600;
    color: #7B692A;
}
.aboutCatch-title.aboutCatch-title--small{
    font-size: min(7vw, 3.2rem);
}
.section-care{
    padding: 60px 0;
    background-image: url("/system_panel/uploads/images/img_aboutCatch_bg.png");
    background-size: cover;
}

.care-img{
    text-align: center;
    margin-bottom: 100px;
}
.care-title{
    font-size: 3.0rem;
    color: #7B692A;
    margin-bottom: 50px;
}
.catch-text{
    margin-bottom: 30px;
}
@media screen and (min-width:768px){
    .about-titleWrap{
        padding: 50px 0 100px;
    }
    .about-topImg{
        height: 450px;
    }
    .about-title::after{
        bottom: -150px;
        height: 100px;
    }
    .aboutCatch-subtext{
        text-align: center;
    }
}
@media screen and (min-width:1024px){
    .about-topImg{
        height: auto;
    }
    .section-care{
        padding: 115px 0;
    }
    .aboutCatch-title{
        font-size: 4.8rem;
    }
    .aboutCatch-title.aboutCatch-title--small{
        font-size: 4.8rem;
    }
    .care-flexBox{
        display: flex;
        gap: 80px;
    }
    .care-img{
        flex: 1;
        max-width: 50vw;
        margin: 0 0 0 -15px;
    }
    .care-img img{
        width: 100%;
    }
    .care-textBox{
        width: 50%;
    }
    .care-catchcopy{
        font-size: 3.2rem;
        text-align: left;
    }
    .care-text{
        margin-bottom: 0px;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .care-img{
        margin: 0 0 0 max(calc((1200px - 100vw) / 2), -360px)
    }
}
.section-feature {
    padding: 80px 0;
    }
.feature-service {
    padding: 100px 0;
}
.feature-title{
    font-size: 2.8rem;
    font-weight: 600;
    color: #7B692A;
    text-align: center;
}
.feature-title_en{
    margin-bottom: 40px;
    color: #7B692A;
    text-align: center;
}
.feature-titleFlexbox{
    margin-bottom: 30px;
}
.feature-titleBox{
    margin-bottom: 30px;
}
.feature-nameBox{
    border-bottom: solid 1px #EBDFBE;
    padding-bottom: 20px;
    margin-bottom: 20px;
    position: relative;
}
.feature-name{
    position: relative;
    font-size: 2.4rem;
    font-weight: 500;
    color: #7B692A;
    z-index: 1;
}
.feature-bgWord01{
    position: absolute;
    bottom: -20px;
    right: 0;
    font-size: 7rem;
    font-family: "Mrs Saint Delafield", cursive;
    color: #F0F0F0;
    line-height: 1;
}
.feature-bgWord02{
    position: absolute;
    bottom: -20px;
    right: 0;
    font-size: 7rem;
    font-family: "Mrs Saint Delafield", cursive;
    color: #F0F0F0;
    line-height: 1;
}
.feature-img{
    margin-bottom: 20px;
}
.feature-text{
    margin-bottom: 50px;
}
.feature-text:last-child{
    margin-bottom: 0;
}
.feature-gridBox{
    margin-bottom: 100px;
}
.feature-gridBox:last-child{
    margin-bottom: 0px;
}
@media screen and (min-width:768px){
    .feature-name{
        font-size: 3.2rem;
    }
    .feature-title{
        font-size: min(6vw, 4.8rem);
    }
    .feature-nameBox{
        padding-bottom: 40px;
        margin-bottom: 40px;
    }
    .feature-bgWord01{
        font-size: 10rem;
    }
    .feature-bgWord02{
        font-size: 10rem;
    }
}
@media screen and (min-width:1024px){
    .section-feature {
        padding: 160px 0;
    }
    .feature-titleBox{
        margin-bottom: 0px;
    }
    .feature-title.feature-title--small{

    }
    .feature-title_en{
        margin-bottom: 80px;
    }
    .feature-titleFlexbox{
        display: flex;
        justify-content: space-between;
        margin-bottom: 100px;
    }
    .feature-name{
        position: relative;
        margin-bottom: 0;
    }
    .feature-bgWord02{
        left: 0;
        right: auto;
        font-size: 100px;
    }
    .feature-img{
        margin-bottom: 0px;
    }
    .feature-gridBox{
        display: grid;
        grid-template-rows: auto 1fr;
        grid-template-columns: 1fr calc(50% - 40px);
        grid-template-areas:
        "feature-img01 feature-header01"
        "feature-img01 feature-text01";
        gap: 0 40px;
        margin-bottom: 0px;
    }
    .feature-gridBox:nth-child(odd){
        grid-template-columns: calc(50% - 40px) 1fr;
        grid-template-areas:
        "feature-header01 feature-img01"
        "feature-text01   feature-img01";
    }
    .feature-nameBox {
        grid-area: feature-header01;
        padding: min(7vw, 100px) 30px 30px 30px;
        margin-bottom: 30px;
    }
    .feature-name02{
        text-align: end;
    }
    .feature-img {
        grid-area: feature-img01;
    }
    .feature-img img{
        height: 100%;
        object-fit: cover;
    }
    .feature-img01{
        margin: 0 0 0 -15px;
        text-align: end;
    }
    .feature-img02{
        margin-right: -15px;
    }
    .feature-textBox {
        padding: 0 30px 50px 30px;
        grid-area: feature-text01;
    }
    .feature-text02 {
    }
    .feature-linkRight{
        float: right;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .feature-img01{
        margin: 0 0 0 max(calc((1200px - 100vw) / 2), -360px);
    }
    .feature-img02{
        margin-right: max(calc((1200px - 100vw) / 2), -360px);
    }
}
.point-box{
    width: 330px;
    height: 330px;
    padding: 70px 0;
    background-image: url("/system_panel/uploads/images/box_beginnerPoint.png");
    background-repeat: no-repeat;
    background-size: contain;
    }
    .point-flexBox{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px;
    }
    .point-number{
        margin: 0 auto;
        font-family: "Mrs Saint Delafield", cursive;
        font-size: 4.0rem;
        color: #7B692A;
        text-align: center;
    }
    .point-text{
        margin: 0 auto;
        color: #7B692A;
        font-size: 2.4rem;
        text-align: center;
    }
@media screen and (min-width:1024px){

}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){

}
.section-flow{
    padding-bottom: 80px;
}
.flow-titleBox{
    text-align: center;
    margin-bottom: 40px;
}
.flow_title{
    font-size: 3.0rem;
    font-weight: 600;
    color: #7B692A;
}
.flow-title__en{
    color: #7B692A;
}
.flow-gridBox{
    margin-bottom: 100px;
}
.flow-step {
    font-family: "Mrs Saint Delafield", cursive;
    color: #7B692A;
    font-size: 3.2rem;
    text-align: center;
}
.flow-step::before{
    content: "・";
    color: #7B692A;
}
.flow-gridImg {
    text-align: center;
    margin-bottom: 30px;
}
.flow-top{
    margin-bottom: 30px;
}
.flow-top{
    text-align: center;
    font-size: 2.4rem;
    color: #7B692A;
}
.flow-text{
    text-align: center;
}
@media screen and (min-width:768px){
    .flow_title{
        font-size: 4.8rem;
    }
}
@media screen and (min-width:1024px){
    .section-flow{
        padding-bottom: 160px;
    }
    .flow-titleBox{
        margin-bottom: 80px;
    }
    .flow-title__en{
        text-align: center;
    }
    .flow-gridBox{
        display: grid;
        margin-bottom: 50px;
        grid-template-rows: auto;
        grid-template-columns: 200px 60% auto;
        grid-template-areas:
        "flow-step01 flow-text01 flow-img01";
    }
    .flow-gridBox:last-child{
        margin-bottom: 0;
    }
    .flow-gridStep {
        grid-area: flow-step01;
    }
    .flow-gridImg {
        grid-area: flow-img01;
        margin-bottom: 0;
    }
    .flow-gridText{
        grid-area: flow-text01;
        margin-bottom: 0;
    }
    .flow-step {
        text-align: center;
    }
    .flow-top{
        margin-bottom: 30px;
        text-align: left;
        font-size: 2.4rem;
    }
    .flow-text{
        text-align: left;
    }
}
@media screen and (min-width:1080px){
    
}
@media screen and (min-width:1230px){

}
.section-faq{
    padding-bottom: 80px;
}
.faq__box{
    padding-top: 60px;
}
.faq-wrap{
    margin-bottom: 80px;
}
.faq-list{
    margin-bottom: 0;
}
.faq-item{
    margin-bottom: 50px;
}
.faq-item:last-of-type{
    margin-bottom: 0;
}
.faq-item__cont__inr{
    max-width: 1140px;
    width: 100%;
    margin: 0 auto;
    gap: 0 20px;
}
.faq-item__cont__inr__img{
    padding-top: 5px;
}
.faq-item__cont__inr__txt{
    flex: 1;
    padding-right: 35px;
    position: relative;
}
.faq-item__cont--q .faq-item__cont__inr__txt:before{
    content: "";
    width: 20px;
    height: 3px;
    background-color: #7B692A;
    position: absolute;
    top: 10px;
    right: 0;
    transform: translateY(-50%);
}
.faq-item__cont--q .faq-item__cont__inr__txt:after{
    content: "";
    width: 3px;
    height: 20px;
    background-color: #7B692A;
    position: absolute;
    top: 0;
    right: 10px;
    transform: translateX(50%);
    transition: all 0.3s;
}
.faq-item__cont__inr__txt__p{
    font-size: 1.6rem;
    letter-spacing: 0.05em;
}
.faq-item__cont--a{
    display: none;
    border-top: solid 1px #7B692A;
    padding-top: 20px;
    margin-top: 20px;
}
.faq-item.is-active .faq-item__cont--q .faq-item__cont__inr__txt:after{
    transform: translateX(50%) rotate(-90deg);
}
.gjs-dashed .faq-item__cont.faq-item__cont--a{
    display: block;
}
.faq-message p{
    text-align: center;
}
@media screen and (min-width:768px){
    .section-faq{
        padding-bottom: 160px;
    }
    .faq__box{
        padding-top: 100px;
    }
    .faq-wrap{
        margin-bottom: 160px;
    }
    .faq-item__cont__inr{
        gap: 0 60px;
    }
    .faq-item__cont__inr__img{
        padding-top: 7px;
    }
    .faq-item__cont__inr__txt{
        padding-right: 45px;
    }
    .faq-item__cont__inr__txt__p{
        font-size: 1.8rem;
    }
    .faq-item__cont--q .faq-item__cont__inr__txt:before{
        width: 30px;
        top: 15px;
    }
    .faq-item__cont--q .faq-item__cont__inr__txt:after{
        height: 30px;
        right: 15px;
    }
    .faq-item__cont--a{
        padding-top: 30px;
    }
}
@media screen and (min-width:1024px){
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	整体について
---------------------------------*/
.aboutCatch-title.seitaiCatch-title strong{
    font-weight: 600;
}
.seitai-worry{
    padding-bottom: 100px;
}
.seitai-worry__ttl{
    text-align: center;
    margin-bottom: 60px;
}
.seitai-worry__list{
}
.seitai-worry__item{
    max-width: 380px;
    width: 100%;
    margin: 0 auto 40px;
}
.seitai-worry__item:last-of-type{
    margin-bottom: 0;
}
.seitai-worry__item--img{
    margin-bottom: 20px;
}
.seitai-worry__item--img.ojf:before{
    padding-top: 84.2%;
}
.seitai-worry__item--txt{
    font-family: "Shippori Mincho B1", serif;
    font-weight: 500;
}
.seitai-commit{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_beige.jpg);
    padding: 100px 0;
}
.seitai-commit__ttl{
    text-align: center;
    margin-bottom: 80px;
}
.seitai-commit__ttl strong{
    font-weight: 600;
}
.seitai-commit__txt{
    font-weight: 500;
}
.seitai-menu{
    padding-top: 100px;
}
.seitai-menu__item{
    max-width: 380px;
    width: 100%;
    margin: 0 auto 40px;
}
.seitai-menu__item:last-of-type{
    margin-bottom: 0;
}
.seitai-menu__info--ttl{
    color: var(--mc);
    text-align: center;
    margin-bottom: 20px;
}
.seitai-menu__info--txt{
    font-weight: 500;
}
.seitai-menu__img{
    margin-bottom: 30px;
}
.seitai-menu__img.ojf:before{
    padding-top: 84.2%;
}
.seitai-menu__info--txt{
    font-weight: 500;
}
@media screen and (min-width:768px){
    .aboutCatch-title.seitaiCatch-title strong br{
        display: none;
    }
    .seitai-worry{
        padding-bottom: 160px;
    }
    .seitai-worry__list{
        display: flex;
        flex-wrap: wrap;
        gap: 80px 30px;
    }
    .seitai-worry__item{
        width: calc((100% - 60px) / 3);
        margin: 0;
    }
    .seitai-worry__item--img{
        margin-bottom: 30px;
    }
    .seitai-commit{
        padding: 160px 0;
    }
    .seitai-commit__ttl{
        margin-bottom: 120px;
    }
    .seitai-commit__ttl.ttl-cmn01{
        font-size: min(5vw, 4.8rem);
    }
    .seitai-commit__ttl strong br{
        display: none;
    }
    .seitai-commit__txt{
        text-align: center;
    }
    .seitai-menu{
        padding-top: 160px;
    }
    .seitai-menu__list{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 50px 30px;
        max-width: 790px;
        width: 100%;
        margin: 0 auto;
    }
    .seitai-menu__item{
        width: calc((100% - 30px) / 2);
        margin: 0;
    }
    .seitai-menu__info--ttl{
        margin-bottom: 30px;
    }
    .seitai-menu__img{
        margin-bottom: 40px;
    }
}
@media screen and (min-width:1024px){
    .aboutCatch-title.seitaiCatch-title{
        font-size: min(4vw, 3.2rem);
    }
    .seitai-worry__ttl{
        margin-bottom: 80px;
    }
    .seitai-menu__list{
        gap: 80px 30px;
        max-width: none;
        margin: 0;
    }
    .seitai-menu__item{
        width: calc((100% - 30px) / 3);
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	ページ内リンク
---------------------------------*/
.page-btn{
    padding-top: 100px;
}
.page-btn__list{
}
.page-btn__item{
    max-width: 360px;
    width: 100%;
    background-color: #F0F0F0;
    border: solid 3px #EBDFBE;
    border-radius: 5px;
    margin: 0 auto 20px;
}
.page-btn__item a{
    display: block;
    text-align: center;
}
.page-btn__item p{
    font-size: 2rem;
    font-weight: 500;
    padding: 22px 0;
}
@media screen and (min-width:768px){
    .page-btn{
        padding-top: 160px;
    }
    .page-btn__item p{
        font-size: 2.4rem;
    }
}
@media screen and (min-width:1024px){
    .page-btn__list{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 40px;
    }
    .page-btn__item{
        width: calc((100% - 80px) / 3);
        margin: 0;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}


/*	共通コンテント
---------------------------------*/
.cmn-service{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/img_aboutCatch_bg.png);
    padding: 100px 0;
}
.cmn-service__ttl{
    text-align: center;
    margin-bottom: 50px;
}
.cmn-service__img{
    max-width: 640px;
    width: 100%;
    margin: 0 auto 30px;
}
.cmn-service__img.ojf:before{
    padding-top: 75%;
}
.cmn-service__video{
    max-width: 640px;
    width: 100%;
    aspect-ratio: 16 / 9;
    margin: 0 auto 30px;
}
.cmn-service__video iframe{
    width: 100%;
    height: 100%;
}
.cmn-service__info--txt{
    font-weight: 500;
}
.cmn-service__info--btn{
    margin-top: 30px;
}
.cmn-price{
    padding: 100px 0;
}
.cmn-price__txt{
    font-weight: 700;
    text-align: center;
    margin-bottom: 40px;
}
.cmn-price__table{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.cmn-price__table .cmn-table--type02__td{
    text-align: right;
}
.cmn-service__btn{
    margin-top: 30px;
}
@media screen and (min-width:768px){
    .cmn-service{
        padding: 160px 0;
    }
    .cmn-service__ttl{
        margin-bottom: 80px;
    }
    .cmn-service__ttl.cmn-service__ttl--small.ttl-cmn01{
        font-size: min(5vw, 4.8rem);
    }
    .cmn-price{
        padding: 160px 0;
    }
    .cmn-price__txt{
        margin-bottom: 50px;
    }
    .cmn-price__table .cmn-table--type02__th{
        width: 500px;
    }
    .cmn-price__table .cmn-table--type02__td{
        text-align: left;
    }
    .cmn-service__btn{
        margin-top: 50px;
    }
}
@media screen and (min-width:1024px){
    .cmn-service__cont{
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 0 50px;
    }
    .cmn-service__img{
        width: 50%;
        margin: 0;
    }
    .cmn-service__video{
        width: 50%;
        margin: 0;
    }
    .cmn-service__info{
        flex: 1;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	エステについて
---------------------------------*/
.esthetic-btn.page-btn{
    padding: 0;
}
.esthetic-service{
    padding: 100px 0;
}
.esthetic-service.esthetic-service--pt{
    padding: 100px 0 0;
}
.esthetic-service .feature-title{
    font-size: min(6vw, 2.8rem);
}
.esthetic-service__img{
    max-width: 960px;
    width: 100%;
    margin-bottom: 40px;
}
.esthetic-service__img--inr{
    margin-left: -15px;
}
.esthetic-service__img--inr.ojf:before{
    padding-top: 66.7%;
}
.esthetic-service__info--ttl{
    font-size: min(5.5vw, 2.4rem);
    margin-bottom: 30px;
}
.esthetic-recommend{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_esthetic_recommend.jpg);
    padding: 40px 15px;
    margin-top: 50px;
}
.esthetic-recommend__icon{
    max-width: max-content;
    width: 70%;
    margin: 0 auto 40px;
}
.esthetic-recommend__ttl{
    text-align: center;
    margin-bottom: 40px;
}
.esthetic-recommend__info--p{
    font-weight: 500;
    padding-left: 35px;
    margin-bottom: 5px;
    position: relative;
}
.esthetic-recommend__info--p:last-of-type{
    margin-bottom: 0;
}
.esthetic-recommend__info--p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_check01.png);
    width: 20px;
    height: 20px;
    position: absolute;
    top: 5px;
    left: 0;
}
.esthetic-bna{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_esthetic-bna.jpg);
    padding: 100px 0;
}
.esthetic-bna__ttl{
    text-align: center;
    margin-bottom: 50px;
}
@media screen and (min-width:768px){
    .esthetic-service{
        padding: 160px 0;
    }
    .esthetic-service.esthetic-service--pt{
        padding: 160px 0 0;
    }
    .esthetic-service .feature-title{
        font-size: min(6vw, 4.8rem);
    }
    .esthetic-service__info--ttl{
        font-size: 3.2rem;
    }
    .esthetic-service__info--ttl--br br{
        display: none;
    }
    .esthetic-recommend{
        padding: 80px 15px;
        margin-top: 70px;
    }
    .esthetic-recommend__ttl{
        margin-bottom: 60px;
    }
    .esthetic-recommend__cont{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 min(10%, 120px);
    }
    .esthetic-recommend__icon{
        flex: 1;
        width: auto;
        margin: 0;
    }
    .esthetic-recommend__info{
        width: 350px;
    }
    .esthetic-recommend__ttl.ttl-cmn02{
        font-size: min(3.5vw, 3.2rem);
    }
    .esthetic-recommend__info--p{
        padding-left: 45px;
        margin-bottom: 10px;
    }
    .esthetic-recommend__info--p:before{
        top: 9px;
    }
    .esthetic-bna{
        padding: 160px 0;
    }
    .esthetic-bna__ttl{
        margin-bottom: 80px;
    }
}
@media screen and (min-width:1024px){
    .esthetic-btn .page-btn__item p{
        font-size: min(2vw, 2.4rem);
    }
    .esthetic-service__cont{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 0 40px;
    }
    .esthetic-service__img{
        width: 50%;
        margin: 0;
    }
    .esthetic-service__info{
        flex: 1;
    }
    .esthetic-service__info{
        padding-top: min(7%, 80px);
    }
    .esthetic-service__info--ttl{
        margin-bottom: 40px;
    }
    .esthetic-service__info--ttl.ttl-cmn02{
        font-size: min(2.5vw, 3.2rem);
    }
    .esthetic-service__info--ttl--br br{
        display: block;
    }
    .esthetic-recommend__info{
        width: 450px;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .esthetic-service__img--inr{
        margin-left: max(calc((1230px - 100vw) / 2), -360px);
    }
    .esthetic-service__info--ttl--br br{
        display: none;
    }
}

/*	よくあるご質問
---------------------------------*/
.faq-cont{
    padding: 100px 0;
}
.faq-cont__item{
    padding-top: 100px;
}
.faq-cont__item:first-of-type{
    padding-top: 0;
}
.faq-cont__ttl{
    margin-bottom: 50px;
}
.faq-box{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (min-width:768px){
    .faq-cont{
        padding: 160px 0;
    }
    .faq-cont__item{
        padding-top: 160px;
    }
    .faq-cont__ttl{
        margin-bottom: 80px;
    }
}
@media screen and (min-width:1024px){
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}


/*	店舗情報
---------------------------------*/
.salon-greeting{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_esthetic-bna.jpg);
    padding: 100px 0;
}
.salon-catch__ttl{
    text-align: center;
    margin-bottom: 50px;
}
.salon-catch__ttl.ttl-cmn01{
    font-size: min(7vw, 3rem);
}
.salon-catch__ttl strong{
    font-weight: 600;
}
.salon-greeting__img{
    max-width: 480px;
    width: 100%;
    margin: 0 auto 30px;
}
.salon-greeting__img__inr.ojf:before{
    padding-top: 117%;
}
.salon-greeting__ttl{
    margin-bottom: 30px;
}
.salon-greeting__txt{
    font-weight: 500;
}
.salon-overview{
    padding-top: 100px;
}
.salon-overview__table{
    margin-bottom: 50px;
}
.salon-gallery{
    padding: 100px 0;
}
.salon-gallery__list{
    display: flex;
    flex-wrap: wrap;
    gap: 20px 10px;
}
.salon-gallery__item{
    max-width: 380px;
    width: calc((100% - 20px) / 3);
}
.salon-gallery__img.ojf:before{
    padding-top: 73.7%;
}
@media screen and (min-width:768px){
    .salon-greeting{
        padding: 160px 0;
    }
    .salon-catch__ttl{
        margin-bottom: 80px;
    }
    .salon-catch__ttl.ttl-cmn01{
        font-size: 4.8rem;
    }
    .salon-greeting__ttl{
        margin-bottom: 40px;
    }
    .salon-overview{
        padding-top: 160px;
    }
    .salon-overview__table{
        margin-bottom: 80px;
    }
    .salon-gallery{
        padding: 160px 0;
    }
    .salon-gallery__list{
        gap: 60px 30px;
    }
    .salon-gallery__item{
        width: calc((100% - 60px) / 3);
    }
}
@media screen and (min-width:1024px){
    .salon-catch__ttl strong br{
        display: none;
    }
    .salon-greeting__cont{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 0 60px;
    }
    .salon-greeting__img{
        max-width: 480px;
        width: 50%;
        margin: 0;
    }
    .salon-greeting__info{
        max-width: 600px;
        flex: 1;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	新着情報
---------------------------------*/
.news-cont{
    padding: 100px 0;
}
.news-btn .link_btn{
    margin: 0 auto;
}
@media screen and (min-width:768px){
    .news-cont{
        padding: 160px 0;
    }
}
@media screen and (min-width:1024px){
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	お問い合わせ
---------------------------------*/
.contact-reserve{
    padding: 100px 0;
}
.contact-reserve__txt{
    margin-bottom: 60px;
}
.contact-reserve__btn--item{
    max-width: 380px;
    width: 100%;
    border-radius: 50px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    margin: 0 auto 30px;
}
.contact-reserve__btn--item:last-of-type{
    margin-bottom: 0;
}
.contact-reserve__btn--item a{
    display: block;
    text-align: center;
}
.contact-reserve__btn--item p{
    display: inline;
    font-size: 2rem;
    font-weight: 700;
    line-height: 4.17;
    color: var(--mc);
    position: relative;
}
.contact-reserve__btn--item.contact-reserve__btn--item--line p,
.contact-reserve__btn--item.contact-reserve__btn--item--mail p{
    padding-left: 45px;
}
.contact-reserve__btn--item.contact-reserve__btn--item--line p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/img_line.png);
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.contact-reserve__btn--item.contact-reserve__btn--item--mail p:before{
    content: "";
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/img_email.png);
    width: 32px;
    height: 32px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.contact-cont{
    background: no-repeat center center / cover;
    background-image: url(/system_panel/uploads/images/bg_esthetic-bna.jpg);
    padding: 100px 0;
}
.contact-cont__txt{
    text-align: center;
    margin-bottom: 50px;
}
.contact-privacy{
    margin-top: 80px;
}
.contact-privacy__ttl{
    text-align: center;
    margin-bottom: 30px;
}
.contact-privacy__ttl.ttl-cmn02{
    font-size: min(5.5vw, 2.4rem);
}
@media screen and (min-width:768px){
    .contact-reserve{
        padding: 160px 0;
    }
    .contact-reserve__txt{
        text-align: center;
        margin-bottom: 80px;
    }
    .contact-reserve__btn--item p{
        font-size: 2.4rem;
    }
    .contact-cont{
        padding: 160px 0;
    }
    .contact-cont__txt{
        margin-bottom: 80px;
    }
    .contact-privacy{
        margin-top: 120px;
    }
    .contact-privacy__ttl{
        margin-bottom: 40px;
    }
    .contact-privacy__ttl.ttl-cmn02{
        font-size: 3.2rem;
    }
}
@media screen and (min-width:1024px){
    .contact-reserve__btn{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0 30px;
    }
    .contact-reserve__btn--item{
        width: calc((100% - 60px) / 3);
        margin: 0;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}