@charset "utf-8";
/*	ヘッダー
---------------------------------*/
:root{
	--header: 60px;
	scroll-padding: var(--header);
}
@media screen and (min-width: 768px){
    :root{
        --header: 90px;
    }
}
@media screen and (min-width: 1024px){
    :root{
        --header: 117px;
    }
}
@media screen and (min-width: 1230px){
    :root{
        --header: 137px;
    }
}
.dn{
    display: none;
}
.gjs-dashed .dn{
    display: block;
}
.hd-h1{
    display: none;
}
.click_event{
    pointer-events: none;
}
.gjs-dashed .click_event{
    pointer-events: auto;
}
.header{
    width: 100%;
    background: -moz-linear-gradient(top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, 0) 100%);
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, 0) 100%);
    background: linear-gradient(to bottom, rgba(0, 0, 0, .6) 0%, rgba(0, 0, 0, 0) 100%);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 48;
    transition: all .3s;
}
.header.open{
    z-index: 50;
}
.header.header-color{
}
.hd-inr{
    height: 60px;
    padding: 5px 10px;
    position: relative;
}
.hd-inr__cont{
    height: 100%;
    margin-right: 50px;
}
.hd-logo{
    width: 150px;
    position: relative;
    z-index: 99;
}
.hd-logo a{
    display: block;
    position: relative;
}
.hd-inr__cont__btn{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 0 15px;
}
.hd-inr__cont__btn__item{
    width: 40px;
    height: 40px;
    background-color: #fff;
    border-radius: 50%;
}
.hd-inr__cont__btn__item__a{
    width: 100%;
    height: 100%;
    
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.hd-inr__cont__btn__item__a img{
    max-width: max-content;
    width: 55%;
}

.hd-nav__item__cont{
    display: none;
    padding-left: 20px;
    transition: all .3s;
}
.gjs-dashed .hd-nav__item__cont{
    display: block;
}
.nav-item p.hd-nav__item__txt{
    color: rgba(0, 0, 0, .65);
}
.hd-nav__item__txt{
    display: inline;
    padding-right: 35px;
    position: relative;
}
.hd-nav__item__txt:before{
    content: "";
    width: 20px;
    height: 1px;
    background-color: rgba(0, 0, 0, .65);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.hd-nav__item__txt:after{
    content: "";
    width: 1px;
    height: 20px;
    background-color: rgba(0, 0, 0, .65);
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(50%, -50%);
    transition: all .3s;
}
.hd-nav__item__cont__a__p{
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6rem;
    line-height: 2.5;
}
.hd-nav__item.open .hd-nav__item__cont{
}
.hd-nav__item.open .hd-nav__item__txt:after{
    transform: translate(50%, -50%) rotate(90deg);
}
@media screen and (min-width: 768px){
    .hd-inr{
        height: 90px;
        padding: 15px 20px;
    }
    .hd-inr__cont{
        margin-right: 70px;
    }
    .hd-logo{
        width: auto;
    }
    .hd-inr__cont__btn{
        gap: 0 20px;
    }
    .hd-inr__cont__btn__item{
        width: 60px;
        height: 60px;
    }
    .hd-nav__item__cont__a__p{
        font-size: 1.8rem;
    }
}
@media screen and (min-width: 1024px){
    .hd-inr{
        height: auto;
        padding: 20px 0;
    }
    .hd-inr__cont{
        margin-right: 120px;
    }
    .hd-logo{
        padding-left: 30px;
    }
    .hd-nav{
        height: auto;
        margin-right: 30px;
    }
    .hd-nav .li{
        padding-left: 20px;
    }
    .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-weight: 500;
        letter-spacing: 0.05em;
        line-height: 16px;
    }
}
@media screen and (min-width: 1230px){
    .hd-inr{
        padding: 30px 0;
    }
}
@media screen and (min-width: 1800px){
    .header{
    }
    .hd-inr{
    }
}

/*---------- ハンバーガーメニュー ----------*/
.bg-hum{
    background-color: #142a58;
    position: absolute;
    top: 0;
    right: 0px;
    width: 60px;
    height: 60px;
}
.gjs-dashed .hd-hum{
    background-color: #fff;
    max-width: 100%;
    max-height: none;
    height: 42vw;
    overflow: scroll;
    top: 180px;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
}
.hd-hum{
    max-width: 60px;
    width: 100%;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 1;
}
.hd-hum.open{
    background-color: #fff;
    max-width: 500px;
    height: 100vh;
    padding-bottom: 30px;
    overflow: scroll;
    top: 0;
    left: auto;
    right: 0;
    transform: translateX(0);
    z-index: 100;
}
.hd-hum01{
    padding-bottom: 30px;
}
.flex-cnt.hd-hum-inr{
    display: block;
}
.hd-hum-inr{
    max-width: 350px;
    margin: 0 auto 30px;
}
.navbar-nav{
    flex: 1;
}
.hd-hum-left{
    display: none;
    text-align: center;
    position: relative;
}
.hd-nav{
    height: 100vh;
}
.gjs-dashed .navbar{
    max-width: 100%;
    width: 100%;
}
.navbar{
    max-width: 50px;
    width: 100%;
    padding: 0;
    margin: 0 auto;
    z-index: 100;
}
.navbar.open{
    max-width: 100%;
    border-radius: 0;
    padding: 18px 10px 12px;
}
.gjs-dashed .navbar .navbar-right{
    display: block;
}
.navbar .navbar-right{
    display: none;
}
.navbar.open .navbar-right{
    display: block;
}
.navbar-dark .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
    border: none;
    padding: 0px;
    width: 40px;
    height: 40px;
    padding-bottom: 20px;
    margin: auto;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
}
.navbar-dark.open .navbar-toggler{
    margin: 0 5px 0 auto;
}

.navbar-dark .navbar-toggler-icon {
    background-image:none;
    background-color: #fff;
    width: 40px;
    height: 2px;
    display: block;
    position: absolute;
    transition: ease .5s;
}
.navbar-toggler-icon:nth-of-type(1) {
    top: 0;
    right: 0;
    transform: translateY(-50%);
}
.navbar-toggler-icon:nth-of-type(2) {
    width: 30px;
    top: calc((100% - 20px) / 2 );
    transform: translateY(-50%);
    right: 0;
}
.navbar-toggler-icon:nth-of-type(3) {
    width: 20px;
    bottom: 20px;
    right: 0;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon{
    background-color: #000;
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1) {
    width: 30px;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0) rotate(45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2) {
    display: block;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0) rotate(-45deg);
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:last-of-type {
    display: none;
}
button:focus{
    outline: none;
}
.navbar-collapse{
    padding-top: 80px;
}
.hum-menu-p{
    font-family: "Josefin Sans", sans-serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1;
    position: absolute;
    bottom: 0;
    right: 5px;
    z-index: 1;
}
.hd-hum.open .hum-menu-p{
    color: #000;
    bottom: auto;
    top: 35px;
    right: 15px;
}
.hd-hum .navbar-collapse{
    display: none;
}
.hd-hum.open .navbar-collapse{
    display: block;
}
.navbar-collapse.show{
    height: 100vh;
}
.nav-item{
    padding: 0;
    cursor: pointer;
}
.nav-item:first-of-type{
}
.nav-item p{
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    color: #000;
    line-height: 50px;
}
.nav-item__child{
    padding-left: 10px;
}
.hd-menu.nav-item{
}
.nav-item.hd-menu p{
    line-height: 1;
    padding: 10px 0 10px 20px;
    position: relative;
}
.nav-item.hd-menu p:before{
    content: "»";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.hd-hum__info{
    max-width: 350px;
    width: 100%;
    margin: 0 auto 30px;
}
.hd-hum__info__phone.hd-phone{
    text-align: left;
}
.hd-hum__info__phone{
    margin-bottom: 20px;
}
.hd-hum__info__time__p{
    color: #fff;
}
.hd-hum01__sns__list{
    max-width: 350px;
    width: 100%;
    margin: 0 auto 40px;
}
.hd-hum01__sns__item{
    margin-right: 15px;
}
.hd-hum01__sns__item:last-of-type{
    margin-right: 0;
}
.hd-sns{
    margin-bottom: 40px;
}
.hd-sns__item{
    margin-right: 15px;
}
.hd-sns__item:last-of-type{
    margin-right: 0;
}
.hd-btn-sp{
    max-width: 320px;
    width: 100%;
    background-color: #e68224;
    border-radius: 30px;
    margin: 0 auto 20px;
    position: relative;
}
.hd-btn-sp:last-of-type{
    margin-bottom: 0;
}
.hd-btn-sp a{
    display: block;
    text-align: center;
}
.hd-btn-sp p{
    display: inline;
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 3.33;
    padding-left: 40px;
    position: relative;
}
.hd-btn-sp p:before{
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.hd-btn-sp.reserve p:before{
    width: 26px;
    height: 26px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_reserve02.png);
}
.hd-btn-sp.mail p:before{
    width: 25px;
    height: 18px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_mail02.png);
}
@media screen and (min-width: 768px){
    .bg-hum{
        width: 90px;
        height: 90px;
    }
    .hd-hum{
        max-width: 90px;
    }
    .hum-menu-p{
    }
    .hd-hum.open .hum-menu-p{
        color: #000;
        top: 55px;
        right: 20px;
    }
    .hd-hum-inr{
        margin-bottom: 60px;
    }
    .navbar{
        max-width: 70px;
        padding: 0 5px;
    }
    .navbar.open{
        padding: 30px 15px;
    }
    .navbar-dark .navbar-toggler{
        width: 60px;
        height: 50px;
        padding-bottom: 25px;
        margin: 0 auto;
    }
    .navbar-dark.open .navbar-toggler{
        width: 40px;
        height: 40px;
    }
    .navbar-dark .navbar-toggler-icon{
        width: 100%;
        height: 2px;
    }
    .navbar-toggler .navbar-toggler-icon:nth-of-type(2){
        width: 45px;
        top: calc((100% - 25px) / 2 );
    }
    .navbar-toggler .navbar-toggler-icon:nth-of-type(3){
        width: 30px;
        bottom: 25px;
    }
    .navbar-collapse{
        padding-top: 30px;
    }
    .navbar-collapse.show{
        height: calc(100vh - 90px);
    }
    .navbar-toggler-icon:nth-of-type(1) {
    }
    .navbar-toggler-icon:last-of-type {
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(1){
        width: 40px;
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(2){
        width: 40px;
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:last-of-type{
    }
    .hd-hum__info{
        margin-bottom: 50px;
    }
    .hd-hum01__sns__list{
        margin-bottom: 70px;
    }
    .hd-sns{
        margin-bottom: 60px;
    }
    .hd-btn-sp{
    }
    .hd-btn-sp p{
        font-size: 1.8rem;
    }
}
@media screen and (min-width: 1024px){
    .bg-hum{
        width: 120px;
        height: 120px;
        right: 0;
    }
    .hd-hum{
        max-width: 120px;
        max-height: 150px;
        right: 0;
    }
    .hd-hum.open{
        max-width: 640px;
        max-height: none;
        width: 100%;
    }
    .gjs-dashed .hd-hum-left{
        display: block;
    }
    .flex-cnt.hd-hum-inr{
        display: flex;
        gap: 0 50px;
    }
    .navbar{
        max-width: 70px;
    }
    .navbar.open{
        padding: 40px 15px;
    }
    .navbar-collapse{
        padding-top: 120px;
    }
    .hd-hum.open .hum-menu-p{
        top: 65px;
        right: 35px;
    }
    .hd-hum.open .hd-hum-left{
        display: block;
        padding-top: 50px;
    }
    .navbar-right{
        width: calc(230px + 2.5vw);
        padding-left: 2.5vw;
    }
    .nav-item:first-of-type{
        border-top: none;
    }
    .nav-item{
        border-bottom: none;
    }
    .nav-item p{
        font-size: 1.8rem;
        line-height: 60px;
    }

    .navbar-dark .navbar-toggler{
    }
    .navbar-dark.open .navbar-toggler{
        margin: 0 25px 0 auto;
    }
    .navbar-dark .navbar-toggler-icon{
    }
    .navbar-toggler-icon:nth-of-type(1) {
    }
    .navbar-toggler-icon:last-of-type {
    }
    .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:nth-of-type(3){
    }
}
@media screen and (min-width: 1024px){
    .gjs-dashed .hd-hum{
        top: 200px;
    }
    .navbar{
    }
    .hum-menu-p{
    }
    .hd-hum.open .hum-menu-p{
    }
}

/*	フッター共通コンテンツ
---------------------------------*/
.ft-box{
}
.ft-box__inr.flex-btw{
    display: block;
}
.ft-box__inr{
    max-width: 1100px;
    width: 100%;
    margin: 0 auto;
    position: relative;
}
.ft-box__inr__border{
    max-width: 500px;
    width: 100%;
    height: 1px;
    background-color: #505e82;
    margin: 30px auto;
}
.ft-box__inr__item{
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
}
.ft-box__inr__item__top{
    margin-bottom: 30px;
}
.ft-box__inr__item__top__ttl01{
    max-width: max-content;
    width: 46vw;
}
.ft-box__inr__item__txt{
    color: #fff;
    margin-bottom: 30px;
}
.ft-box__inr__item__txt strong{
    font-size: 1.3rem;
    font-weight: 400;
}
.ft-box__inr__item__map{
    width: 100%;
    height: 200px;
}
.ft-box__inr__item__map iframe{
    width: 100%;
    height: 200px;
}
@media screen and (min-width: 768px){
    .ft-box__inr__item__top{
        margin-bottom: 40px;
    }
    .ft-box__inr__item__txt{
        margin-bottom: 40px;
    }
    .ft-box__inr__item__txt strong{
        font-size: 1.6rem;
    }
    .ft-box__inr__item__map{
        height: 250px;
    }
    .ft-box__inr__item__map iframe{
        height: 250px;
    }
}
@media screen and (min-width: 1024px){
    .ft-box__inr.flex-btw{
        display: flex;
        gap: 0 20px;
    }
    .ft-box__inr__border{
        width: 1px;
        height: auto;
        margin: 0;
    }
    .ft-box__inr__item{
        width: calc((100% - 41px) / 2);
        margin: 0;
    }
    .ft-box__inr__item__map{
        height: 360px;
    }
    .ft-box__inr__item__map iframe{
        height: 360px;
    }
}
@media screen and (min-width: 1080px){
}

/*	フッター
---------------------------------*/
.ft__border{
    border-top: solid 1px #ccc;
}
.ft-nav{
    display: none;
}
.ft-logo{
    width: 150px;
    text-align: center;
    margin: 0 auto;
}
.ft-sns{
    margin-top: 30px;
}
.ft-sns__item{
    margin-right: 15px;
}
.ft-sns__item:last-of-type{
    margin-right: 0;
}
@media screen and (min-width:768px){
}
@media screen and (min-width:1024px){
    .ft-logo{
        width: auto;
    }
    .ft-nav__wrap{
        margin-bottom: 50px;
    }
    .ft-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    }
    .ft-nav .li{
        padding-right: 15px;
        margin-bottom: 15px;
        position: relative;
    }
    .ft-nav .li:first-of-type{
    }
    .ft-nav:first-of-type .li:last-of-type{
        padding-right: 15px;
    }
    .ft-nav .li:last-of-type{
        padding-right: 0;
    }
    .ft-nav .li p{
        font-family: "Zen Kaku Gothic New", serif;
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 1;
        color: #fff;
    }
    .ft-sns{
        margin-top: 50px;
    }
}
@media screen and (min-width:1080px){
    .ft-nav .li{
    }
}

/*	マップ
---------------------------------*/
.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: 450px;
    }
    .access-map iframe{
        height: 450px;
    }
}

/*	ページトップへ戻るボタン
---------------------------------*/
.btn-pagetop {
    width: 50px;
    cursor: pointer;
}
@media screen and (min-width:1024px){
    .btn-pagetop{
    }
}
.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;
    }
}

/*コピーライト（ｐタグ）*/
.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;
    }
}

/*	メイン画像
---------------------------------*/
.top-mv{
    position: relative;
}
.main-img-otr{
    position: relative;
}
.main-img{
    max-height: 700px;
    height: 70vh;
}
.main-img.ojf:before{
    content: none;
}
.main-catch{
    max-width: max-content;
    width: 80%;
    position: absolute;
    top: 45%;
    left: 15px;
    transform: translate(0, -50%);
}
@media screen and (min-width:768px){
    .top-mv{
    }
    .main-img-otr{
    }
    .main-img{
        max-height: 900px;
        height: 90vh;
    }
    .main-catch{
        width: 70%;
    }
}
@media screen and (min-width:1024px){
    .top-mv{
    }
    .main-img-otr{
    }
    .main-img{
        max-height: 1080px;
        height: min(70vw, 90vh);
    }
    .main-catch{
        width: 50%;
        top: 55%;
        left: 150px;
    }
}
@media screen and (min-width:1080px){
    .main-img{
    }
    .main-catch{
    }
}
@media screen and (min-width:1740px){
    .top-mv{
    }
    .main-catch{
        left: calc((100vw - 1440px) / 2);
    }
}

/*	スクロールバー
---------------------------------*/
.scrolldown{
    height: 150px;
    position:absolute;
    left: 1.5%;
    bottom: 0;
    transform: translateY(20%);
}
.scrolldown__p{
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.075em;
    color: #000;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    top: 0;
    left: 10px;
}
.scrolldown::before{
    content: "";
    background: #ccc;
    width: 2px;
    height: 150px;
    position: absolute;
    top: 0;
    left: 0;
}
.scrolldown::after{
    width: 2px;
    height: 37.5px;
    content: "";
    background: #000;
    position: absolute;
    top: 0;
    left: 0;
    animation: pathmove 2.5s ease-in-out infinite;
}
@keyframes pathmove{
    0%{
    }
    100%{
        transform: translateY(300%);
    }
}
@media screen and (min-width:768px){
    .scrolldown__p{
        font-size: 1.8rem;
    }
}
@media screen and (min-width:1024px){
    .scrolldown{
        height: 200px;
        left: 15px;
    }
    .scrolldown::before{
        height: 200px;
    }
    .scrolldown::after{
        height: 50px;
    }
}
@media screen and (min-width:1230px){
    .scrolldown{
        left: min(calc((100% - 1200px) / 2), 90px);
    }
}

/*	固定スクロール
---------------------------------*/
.scroll__band{
    height: 250px;
}
.scroll__band__cont{
    width: 100%;
    height: 250px;
    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;
    }
    .gjs-dashed .scroll__band__cont{
        height: 100%;
        position: relative;
        z-index: 0;
    }
    .scroll__band__cont.ojf:before{
        padding-top: 52.083%;
    }
}

/*	追従ボタン
---------------------------------*/
.reserve__btn__wrap{
    width: 100%;
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 50;
}
.reserve__btn__wrap__item{
    width: 100%;
    background-color: #771a1a;
    text-align: center;
}
.reserve__btn__wrap__item__a{
    display: block;
    padding: 0 15px;
}
.reserve__btn__wrap__item__a__p{
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    color: #fff;
    line-height: 60px;
}
@media screen and (min-width:768px){
    .reserve__btn__wrap{
        width: auto;
        top: 60%;
        bottom: auto;
        right: 0;
        transform: translateY(-50%);
    }
    .reserve__btn__wrap__item{
    }
    .reserve__btn__wrap__item__a{
        padding: 40px 0;
    }
    .reserve__btn__wrap__item__a__p{
        width: 100px;
        min-height: 200px;
        font-size: 1.8rem;
        line-height: 100px;
        writing-mode: vertical-rl;
        text-orientation: upright;
    }
}
@media screen and (min-width:1024px){
}
@media screen and (min-width:1080px){
}


/*	トップページ
---------------------------------*/
.por{
    position: relative;
}
.top-overflow{
    overflow: hidden;
}
.bg-blue{
    background-color: #233562;
}
.bg-gray{
    background-color: #f4f3f3;
}
.bg-white{
    width: 100%;
    height: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -4;
}
.top-ttl{
    text-align: center;
    padding-bottom: 80px;
    margin-bottom: 40px;
    position: relative;
    z-index: 1;
}
.top-ttl:before{
    content: '';
    width: 1px;
    height: 60px;
    background-color: #233562;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}
.top-ttl.left{
    text-align: left;
}
.top-ttl .ttl-cmn01{
    line-height: 1;
    position: relative;
}
.top-ttl.small-txt .ttl-cmn01{
    font-size: min(9vw, 4rem);
}
.top-ttl.white .ttl-cmn01{
    color: #fff;
}
.top-ttl.mb0{
    margin-bottom: 0;
}
.top-ttl.vertical{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0;
}
.top-ttl.vertical .ttl-cmn01{
    width: 30px;
    writing-mode: vertical-rl;
}
.top-news{
    max-width: 1200px;
    width: 80%;
    background-color: #fff;
    padding: 30px 15px;
    margin: -30px 0 0 auto;
    position: relative;
}
.top-news__inr.flex-btw{
    display: block;
}
.top-news__inr{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.top-news__left{
    margin-bottom: 30px;
    
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.top-news__left__ttl{
    font-family: "Josefin Sans", sans-serif;
    font-size: 2.6rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #233562;
}
.top-news__right{
}
.top-news__right .webgene-item{
    border-top: solid 1px #ccc;
}
.top-news__right .webgene-item:last-of-type{
    border-bottom: solid 1px #ccc;
}
.top-news__right .webgene-item a{
    display: block;
    padding: 10px 0;
}
.top-news__right .webgene-item .blogdate{
    font-family: "Josefin Sans", sans-serif;
    font-weight: 500;
    color: #666;
}
.top-news__right .webgene-item .cate-box{
    min-width: 130px;
    padding-right: 15px;
    margin-left: 20px;
}
.top-news__right .webgene-item .blogcate{
    font-family: "Josefin Sans", sans-serif;
    color: #666;
    padding-left: 20px;
    position: relative;
}
.top-news__right .webgene-item .blogcate:before{
    content: "";
    width: 1px;
    height: 1.4rem;
    background-color: #666;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.top-news__right .webgene-item .blogttl{
    width: 100%;
    letter-spacing: 0.05em;
}
.top-about{
    padding: 60px 0 80px;
    position: relative;
}
.top-about__bg{
    width: 100%;
    height: 150px;
    background-color: #f4f3f3;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.top-about__inr__info{
    position: relative;
}
.top-about__inr__info__icon{
    max-width: max-content;
    width: 30%;
    position: absolute;
    bottom: -20px;
    left: 0;
    z-index: -1;
}
.top-about__inr__info__ttl{
    text-align: center;
    margin-bottom: 30px;
}
.top-about__inr__info__ttl__jp{
    margin-bottom: 30px;
}
.top-about__inr__info__ttl__en{
    background: linear-gradient(90deg, #e6e047 0%, #c7b95b 19%, #c1b24d 46%, #a6a402 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.top-about__inr__info__txt{
    line-height: 2.78;
    margin-bottom: 40px;
}
.top-about__img{
    padding-top: 40px;
    position: relative;
}
.top-about__img:before{
    content: "";
    width: 250px;
    height: 1px;
    background: linear-gradient(to bottom, #e6e047 0%, #c7b95b 19%, #c1b24d 46%, #a6a402 100%);
    position: absolute;
    top: 40%;
    right: 0;
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: 100% 50%;
    z-index: 0;
}
.top-about__img__item{
    max-width: max-content;
    z-index: 1;
}
.top-about__img__item01{
    width: 45%;
    margin-left: 15px;
    position: relative;
}
.top-about__img__item02{
    width: 45%;
    position: absolute;
    top: 20px;
    right: 15px;
}
.top-about__img__item03{
    width: 40%;
    margin: 7% 0 0 20%;
    position: relative;
}
.top-service{
    padding: 70px 0 80px;
    position: relative;
}
.top-service__cont{
    gap: 0 30px;
    max-width: 1470px;
    width: 100%;
    padding: 0 15px;
    margin: 0 auto;
    position: relative;
}
.top-service__cont__nav__ul{
    position: sticky;
    top: 80px;
}
.top-service__cont__nav__li{
    margin-bottom: 15px;
}
.top-service__cont__nav__li__a{
    display: block;
    border-left: solid 3px #ccc;
    height: 70px;
    padding-left: 5px;
}
.top-service__cont__nav__li__a__p{
    font-family: "Josefin Sans", sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #ccc;
}
.top-service__cont__nav__li.current .top-service__cont__nav__li__a{
    border-left: solid 3px #233562;
}
.top-service__cont__nav__li.current .top-service__cont__nav__li__a__p{
    color: #233562;
}
.top-service__cont__list{
    flex: 1;
}
.top-service__cont__list__item.flex-btw{
    display: block;
}
.top-service__cont__list__item{
    margin-bottom: 60px;
}
.top-service__cont__list__item:last-of-type{
    margin-bottom: 0;
}
.top-service__cont__list__item__info__inr{
    padding-left: 20px;
    margin-bottom: 40px;
}
.top-service__cont__list__item__info__ttl{
    padding-top: 20px;
    margin-bottom: 30px;
    position: relative;
    z-index: 0;
}
.top-service__cont__list__item__info__ttl:before{
    content: "";
    width: 120px;
    height: 67px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_top_semicircle01.png);
    position: absolute;
    top: 0;
    left: -20px;
    z-index: -1;
}
.top-service__cont__list__item__info__ttl__en{
    color: #233562;
}
.top-service__cont__list__item__info__txt{
    font-family: "Zen Kaku Gothic New", serif;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
}
.top-service__cont__list__item__info__img{
    max-width: 500px;
    width: 100%;
    text-align: right;
    margin-left: auto;
    position: relative;
}
.top-service__cont__list__item__info__img:before{
    content: "";
    width: 250px;
    height: 1px;
    background: linear-gradient(to bottom, #e6e047 0%, #c7b95b 19%, #c1b24d 46%, #a6a402 100%);
    position: absolute;
    top: 40%;
    left: 0;
    transform: translateY(-50%) rotate(45deg);
    transform-origin: 0 50%;
    z-index: 0;
}
.top-service__cont__list__item__info__img__inr{
    max-width: max-content;
    width: 90%;
    margin-left: auto;
    position: relative;
}
.top-service__cont__list__item__img{
    margin-bottom: 30px;
}
.top-gallery{
    padding-bottom: 120px;
    position: relative;
}
.top-gallery__inr{
    padding: 60px 0;
    position: relative;
}
.top-gallery__inr__bg{
    width: 75%;
    height: 100%;
    background-color: #f4f3f3;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
}
.top-gallery__inr__top{
    max-width: 1730px;
    width: 100%;
    padding: 0 15px;
    margin: 0 auto 40px;
}
.top-gallery__inr__top__ttl__str{
    line-height: 1;
}
.top-gallery__item{
    margin: 0 10px;
}
.top-gallery__inr__icon{
    max-width: max-content;
    width: 30%;
    position: absolute;
    bottom: 0;
    right: 19%;
    transform: translateY(50%);
    z-index: -1;
}
@media screen and (min-width:768px){
    .top-ttl{
        margin-bottom: 50px;
    }
    .top-ttl{
        padding-bottom: 100px;
    }
    .top-ttl:before{
        height: 80px;
    }
    .top-ttl.small-txt .ttl-cmn01{
        font-size: 5rem;
    }
    .top-ttl.vertical .ttl-cmn01{
        width: 40px;
    }
    .top-news{
        padding: 40px 15px;
        margin: -70px 0 0 auto;
    }
    .top-news__left__ttl{
        font-size: 3rem;
    }
    .top-news__right .webgene-item a{
        padding: 15px 0;
    }
    .top-news__right .webgene-item .blogcate:before{
        height: 1.6rem;
    }
    .top-news__right .webgene-item .blogttl{
        flex: 1;
        width: auto;
        padding: 0 15px 0 0;
    }
    .top-about{
        padding: 100px 0 150px;
    }
    .top-about__bg{
        height: 215px;
    }
    .top-about__inr__info__icon{
        bottom: 0;
    }
    .top-about__inr__info__ttl{
        margin-bottom: 40px;
    }
    .top-about__inr__info__ttl__jp{
        margin-bottom: 40px;
    }
    .top-about__inr__info__txt{
        text-align: center;
        margin-bottom: 60px;
    }
    .top-about__img:before{
        width: min(40vw, 440px);
    }
    .top-service{
        padding: 140px 0 160px;
    }
    .top-service__cont{
        gap: 0 60px;
    }
    .top-service__cont__nav__ul{
        top: 120px;
    }
    .top-service__cont__nav__li{
        margin-bottom: 20px;
    }
    .top-service__cont__nav__li__a{
        height: 90px;
    }
    .top-service__cont__list__item{
        margin-bottom: 200px;
    }
    .top-service__cont__list__item__info__inr{
        padding-left: 50px;
        margin-bottom: 60px;
    }
    .top-service__cont__list__item__info__ttl{
        padding-top: 50px;
        margin-bottom: 40px;
    }
    .top-service__cont__list__item__info__ttl:before{
        width: 180px;
        height: 100px;
        left: -50px;
    }
    .top-service__cont__list__item__info__txt{
        margin-bottom: 40px;
    }
    .top-service__cont__list__item__info__img:before{
        width: min(40vw, 440px);
    }
    .top-gallery{
        padding-bottom: 200px;
    }
    .top-gallery__inr{
        padding: 100px 0;
    }
    .top-gallery__inr__top{
        margin-bottom: 60px;
    }
    .top-gallery__item{
        margin: 0 20px;
    }
}
@media screen and (min-width:1024px){
    .top-news{
    }
    .top-news__inr.flex-btw{
        display: flex;
        gap: 0 50px;
    }
    .top-news__left{
        display: block;
        flex: 1;
        margin-bottom: 0;
    }
    .top-news__left__ttl{
        margin-bottom: 20px;
    }
    .top-news__right{
        max-width: 730px;
        width: 80%;
        margin-bottom: 0;
    }
    .top-news__right .webgene-item .blogttl{
        padding: 0 10px 0 0;
    }
    .top-about__img{
        padding-top: min(13vw, 230px);
    }
    .top-about__img__item01{
        width: 32%;
        margin: 0;
        position: absolute;
        top: 30px;
        left: 30px;
    }
    .top-about__img__item02{
        width: 32%;
        top: -50px;
        right: 3.125%;
    }
    .top-about__img__item03{
        width: 25%;
        margin: 0 0 0 37%;
    }
    .top-about__img:before{
        width: min(25vw, 440px);
        top: 50%;
        right: 15px;
    }
    .top-service__cont__list__item.flex-btw{
        display: flex;
        gap: 0 40px;
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .top-service__cont__list__item__info{
        width: 500px;
    }
    .top-service__cont__list__item__info__btn.btn-cmn01{
        margin-left: 0;
    }
    .top-service__cont__list__item__info__img:before{
        width: min(25vw, 440px);
        top: 20%;
    }
    .top-service__cont__list__item__img{
        max-width: 720px;
        flex: 1;
        margin: 0;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .top-service__cont__nav__ul{
        top: 140px;
    }
}
@media screen and (min-width:1470px){
    .top-service__cont__list__item__img__inr{
        margin-right: max(calc((1470px - 100vw) / 2), -210px);
    }
}

/*	下層ヘッダー
---------------------------------*/
.subhd{
    position: relative;
}
.subhd__img{
    max-height: 480px;
    height: 80vw;
}
.subhd__img.ojf:before{
    content: none;
}
.subhd-ttl{
    position: absolute;
    top: 60%;
    left: 15px;
    transform: translate(0, -50%);
}
.subhd-ttl.flex-nml{
    display: block;
}
.subttl__en{
    font-family: "Josefin Sans", sans-serif;
    font-size: 4rem;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1;
    color: #fff;
}
.subttl__jp{
    font-family: "Zen Old Mincho", serif;
    font-size: 1.8rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #fff;
}
@media screen and (min-width:768px){
    .subhd{
    }
    .subhd__img{
    }
    .subhd-ttl.flex-nml{
        display: flex;
    }
    .subhd-ttl{
        left: 50px;
    }
    .subttl__en{
        font-size: 6rem;
        margin-right: 25px;
    }
    .subttl__jp{
        font-size: 2.1rem;
    }
}
@media screen and (min-width:1024px){
    .subhd{
    }
    .subhd__img{
    }
    .subhd-ttl{
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1460px){
    .subhd{
    }
    .subhd-ttl{
        left: max(calc(100vw - 1460px) / 2, 50px);
    }
}

/*	わたしたちのこと
---------------------------------*/
.about-catch{
    padding-top: 80px;
}
.about-catch__ttl{
    margin-bottom: 40px;
}
.about-catch__ttl__jp{
    margin-bottom: 30px;
}
.about-catch__ttl__en{

}
.about-catch__cont.flex-btw{
    display: block;
}
.about-catch__cont__img{
    max-width: 600px;
    width: 100%;
    margin: 0 auto 30px;
    position: relative;
}
.about-catch__cont__img.ojf:before{
    padding-top: 83.33%;
}
.about-catch__cont__img:after{
    content: "";
    max-width: 440px;
    width: 72%;
    height: 1px;
    background: linear-gradient(to bottom, #e6e047 0%, #c7b95b 19%, #c1b24d 46%, #a6a402 100%);
    position: absolute;
    top: 50%;
    right: -15px;
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: 100% 50%;
    z-index: -1;
}
.about-catch__cont__info__txt{
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 2.78;
}
.about-cont{
    padding: 60px 0;
    position: relative;
}
.about-cont__bg{
    width: 75%;
    height: 80%;
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}
.about-cont__list__item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    gap: 0 20px;
    margin-bottom: 60px;
    position: relative;
}
.about-cont__list__item:last-of-type{
    margin-bottom: 0;
}
.about-cont__list__item__ttl{
    width: 30px;
}
.about-cont__list__item__ttl__str{
    font-weight: 700;
    color: #233562;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: relative;
}
.about-cont__list__item__ttl__str:before{
    content: "";
    width: 1px;
    height: 250px;
    background-color: #233562;
    position: absolute;
    top: 0;
    left: 0;
}
.about-cont__list__item__info.flex-btw{
    display: block;
}
.about-cont__list__item__info{
    flex: 1;
}
.about-cont__list__item__info__img{
    max-width: 500px;
    margin: 0 auto 30px;
}
.about-cont__list__item__info__img.ojf:before{
    padding-top: 72%;
}
.about-cont__list__item__info__img__inr{
    position: relative;
}
.about-cont__list__item__info__img__01{
    max-width: 280px;
    width: 80%;
}
.about-cont__list__item__info__img__02{
    max-width: 200px;
    width: 60%;
    margin-top: -30px;
    margin-left: auto;
}
.about-cont__list__item__info__txt__str{
    line-height: 2.78;
}
.about-cont__list__item__icon{
    max-width: max-content;
    width: 40%;
    position: absolute;
    bottom: -40px;
    right: -15px;
}
.about-cont__list__item:nth-of-type(2n){
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.about-feature{
    padding: 60px 0 120px;
}
.about-feature__list__item.flex-btw{
    display: block;
}
.about-feature__list__item{
    margin-bottom: 60px;
}
.about-feature__list__item:last-of-type{
    margin-bottom: 0;
}
.about-feature__list__item__img{
    margin-bottom: 30px;
}
.about-feature__list__item__img__inr{
    max-width: 910px;
    margin: 0 auto;
    position: relative;
}
.about-feature__list__item__img__inr.ojf:before{
    padding-top: 66%;
}
.about-feature__list__item__img__inr:after{
    content: "";
    max-width: 440px;
    width: 45%;
    height: 1px;
    background: linear-gradient(to bottom, #e6e047 0%, #c7b95b 19%, #c1b24d 46%, #a6a402 100%);
    position: absolute;
    top: 60%;
    right: -15px;
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: 100% 50%;
    z-index: -1;
}
.about-feature__list__item__info{
    position: relative;
}
.about-feature__list__item__info__inr{
    position: relative;
}
.about-feature__list__item__info__ttl{
    margin-bottom: 30px;
}
.about-feature__list__item__info__ttl__en{
    color: #233562;
}
.about-feature__list__item__info__txt{
    letter-spacing: 0.05em;
    margin-bottom: 30px;
}
.about-feature__list__item__info__icon{
    max-width: max-content;
    width: 50%;
    position: absolute;
    bottom: 0;
    right: -15px;
    transform: translateY(75%);
    z-index: -1;
}
.about-feature__list__item:nth-of-type(2n + 1) .about-feature__list__item__info__icon{
    left: -15px;
    right: auto;
}
.about-feature__list__item:nth-of-type(2n) .about-feature__list__item__img__inr:after{
    right: auto;
    left: -15px;
    transform: translateY(-50%) rotate(45deg);
    transform-origin: 0 50%;
}
@media screen and (min-width:768px){
    .about-catch{
        padding-top: 150px;
    }
    .about-catch__cont__img:after{
        right: -50px;
    }
    .about-catch__cont__info__txt{
        font-size: 1.8rem;
    }
    .about-cont{
        padding: 100px 0;
    }
    .about-cont__list__item{
        margin-bottom: 100px;
    }
    .about-cont__list__item__ttl{
        width: 35px;
    }
    .about-cont__list__item__ttl__str:before{
        height: 350px;
    }
    .about-cont__list__item__info__img__inr{
        padding-bottom: 70px;
    }
    .about-cont__list__item__info__img__02{
        margin: 0;
        position: absolute;
        bottom: 0;
        right: 0;
    }
    .about-cont__list__item__icon{
        bottom: -60px;
    }
    .about-feature{
        padding: 100px 0 200px;
    }
    .about-feature__list__item{
        margin-bottom: 100px;
    }
    .about-feature__list__item__info__txt{
        margin-bottom: 50px;
    }
}
@media screen and (min-width:1024px){
    .about-catch__ttl{
        margin-bottom: 60px;
    }
    .about-catch__ttl__jp{
        margin-bottom: 40px;
    }
    .about-catch__cont.flex-btw{
        display: flex;
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
        gap: 0 40px;
    }
    .about-catch__cont__img{
        width: 50%;
        margin: 0;
    }
    .about-catch__cont__img:after{
        right: -15px;
    }
    .about-catch__cont__info{
        flex: 1;
        padding-top: 30px;
    }
    .about-cont__list__item{
        gap: 0 50px;
    }
    .about-cont__list__item__ttl{
        width: 50px;
    }
    .about-cont__list__item__info.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .about-cont__list__item__info{
        max-width: 1000px;
        width: 100%;
    }
    .about-cont__list__item__info__img{
        width: 50%;
        margin: 0;
    }
    .about-cont__list__item__info__img__01{
        width: 56%;
    }
    .about-cont__list__item__info__img__02{
        width: 40%;
    }
    .about-cont__list__item__info__txt{
        flex: 1;
        padding-top: 40px;
    }
    .about-cont__list__item:nth-of-type(2n) .about-cont__list__item__info.flex-btw{
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .about-feature__list__item.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .about-feature__list__item__img{
        width: 50%;
        margin: 0;
    }
    .about-feature__list__item__img__inr:after{
        width: 55%;
    }
    .about-feature__list__item__info{
        max-width: 500px;
        flex: 1;
        padding-top: 40px;
        padding-right: 50px;
    }
    .about-feature__list__item__info .btn-cmn01{
        margin-left: 0;
    }
    .about-feature__list__item__info__icon{
        width: auto;
        right: -65px;
    }
    .about-feature__list__item:nth-of-type(2n + 1).flex-btw{
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
    }
    .about-feature__list__item:nth-of-type(2n + 1) .about-feature__list__item__info{
        padding-right: 0;
        padding-left: 50px;
    }
    .about-feature__list__item:nth-of-type(2n + 1) .about-feature__list__item__info__icon{
        right: auto;
        left: -65px;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .about-catch__cont__img:after{
        right: max(calc((1200px - 100vw) / 2), -120px);
    }
    .about-cont__list__item__icon{
        right: max(calc((1200px - 100vw) / 2), -120px);
    }
    .about-feature__list__item__img__inr{
        margin: 0 0 0 max(calc((1230px - 100vw) / 2), -310px);
    }
    .about-feature__list__item__info__icon{
        right: max(calc(((1200px - 100vw) / 2) - 50px), -50px);
    }
    .about-feature__list__item:nth-of-type(2n + 1) .about-feature__list__item__img__inr{
        margin: 0 max(calc((1230px - 100vw) / 2), -310px) 0 0;
    }
    .about-feature__list__item:nth-of-type(2n + 1) .about-feature__list__item__info__icon{
        left: max(calc(((1200px - 100vw) / 2) - 50px), -50px);
    }
}

/*	金継ぎワークショップ
---------------------------------*/
.kintsugi-catch{
    padding-top: 80px;
}
.kintsugi-catch__cont{
    text-align: center;
}
.kintsugi-catch__cont__ttl{
    font-size: min(5vw, 2rem);
    margin-bottom: 30px;
}
.kintsugi-catch__cont__ttl strong{
    font-weight: 400;
}
.kintsugi-catch__cont__en{
    margin-bottom: 30px;
}
.kintsugi-catch__cont__txt{
    font-family: "Zen Kaku Gothic New", serif;
    letter-spacing: 0.05em;
}
.kintsugi-nav{
    padding-top: 60px;
}
.kintsugi-nav__list.flex-nml{
    display: block;
}
.kintsugi-nav__list__item{
    max-width: 280px;
    width: 100%;
    border: solid 1px #233562;
    margin: 0 auto 20px;
}
.kintsugi-nav__list__item:last-of-type{
    margin-bottom: 0;
}
.kintsugi-nav__list__item__a{
    display: block;
    text-align: center;
    padding: 17px 0 23px;
    position: relative;
}
.kintsugi-nav__list__item__a__p{
    font-family: "Zen Kaku Gothic New", serif;
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #233562;
}
.kintsugi-nav__list__item__a:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow03.png);
    width: 15px;
    height: 6px;
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
}
.workshop-cont{
    padding-top: 60px;
}
.workshop-cont__list{
    padding-bottom: 60px;
    position: relative;
}
.workshop-cont__list__bg{
    width: 75%;
    height: calc(100% - 100px);
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}
.workshop-cont__list__item.flex-btw{
    display: block;
}
.workshop-cont__list__item{
    margin-bottom: 40px;
}
.workshop-cont__list__item:last-of-type{
    margin-bottom: 0;
}
.workshop-cont__list__item__img{
    max-width: 600px;
    width: 100%;
    margin: 0 auto 30px;
}
.workshop-cont__list__item__img__inr.ojf:before{
    padding-top: 83.3%;
}
.workshop-cont__list__item__info__inr{
    position: relative;
}
.workshop-cont__list__item__info__inr__ttl{
    margin-bottom: 30px;
}
.workshop-cont__list__item__info__inr__txt{
    font-family: "Zen Kaku Gothic New", serif;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
}
.workshop-cont__list__item__info__inr__icon{
    max-width: max-content;
    width: 50%;
    position: absolute;
    bottom: 0;
    left: -15px;
    transform: translateY(75%);
    z-index: -1;
}
.workshop-cont__list__item:nth-of-type(2n + 1).flex-btw{
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.workshop-cont__list__item:nth-of-type(2n) .workshop-cont__list__item__info__inr__icon{
    left: auto;
    right: -15px;
}
.workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n).flex-btw{
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n + 1).flex-btw{
    -webkit-flex-direction: row;
    flex-direction: row;
}
.workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n) .workshop-cont__list__item__info__inr__icon{
    left: -15px;
    right: auto;
}
.workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n + 1) .workshop-cont__list__item__info__inr__icon{
    left: auto;
    right: -15px;
}
.workshop-atelier{
    padding-top: 60px;
}
.workshop-atelier__cont{
    border: solid 1px #233562;
    padding: 60px 15px;
    margin-top: -30px;
}
.workshop-atelier__cont__inr{
    max-width: 1060px;
    width: 100%;
    margin: 0 auto;
}
.workshop-atelier__cont__info.flex-nml{
    display: block;
}
.workshop-atelier__cont__info{
    margin-bottom: 30px;
}
.workshop-atelier__cont__info__img{
    margin-bottom: 20px;
}
.workshop-atelier__cont__info__add{
    letter-spacing: 0.05em;
}
.workshop-atelier__cont__info__add strong{
    font-weight: 400;
}
.workshop-atelier__cont__item.flex-btw{
    display: block;
}
.workshop-atelier__cont__item__img{
    max-width: 500px;
    width: 100%;
    margin: 0 auto 30px;
}
.workshop-atelier__cont__item__map{
    max-width: 500px;
    width: 100%;
    height: 100%;
    aspect-ratio: 10 / 7;
    margin: 0 auto;
}
.workshop-atelier__cont__item__map iframe{
    width: 100%;
    height: 100%;
}
.workshop-reserve{
    padding: 60px 0 80px;
    position: relative;
}
.workshop-reserve__txt{
    font-size: min(3.5vw, 1.4rem);
    text-align: center;
    margin-bottom: 30px;
}
.workshop-reserve__txt strong{
    font-weight: 400;
}
.workshop-reserve__bg{
    width: 100%;
    height: calc(100% - 150px);
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}
.workshop-reserve__cont.flex-btw{
    display: block;
}
.workshop-reserve__cont__item{
    margin-bottom: 40px;
}
.workshop-reserve__cont__item:last-of-type{
    margin-bottom: 0;
}
.workshop-reserve__cont__item__txt{
    font-size: 1.6rem;
    text-align: center;
    margin-bottom: 20px;
}
.workshop-reserve iframe{
    width: 100%;
    height: 700px;
}
@media screen and (min-width:768px){
    .kintsugi-catch{
        padding-top: 150px;
    }
    .kintsugi-catch__cont__ttl{
        font-size: 3rem;
        margin-bottom: 50px;
    }
    .kintsugi-catch__cont__en{
        margin-bottom: 50px;
    }
    .kintsugi-nav{
        padding-top: 80px;
    }
    .kintsugi-nav__list.flex-nml{
        display: flex;
        gap: 20px;
        max-width: 580px;
        width: 100%;
        margin: 0 auto;
    }
    .kintsugi-nav__list__item{
        width: calc((100% - 20px) / 2);
        margin: 0;
    }
    .workshop-cont{
        padding-top: 100px;
    }
    .workshop-cont__list{
        padding-bottom: 100px;
    }
    .workshop-cont__list__item__info__inr__ttl{
        margin-bottom: 40px;
    }
    .workshop-cont__list__item__info__inr__txt{
        margin-bottom: 50px;
    }
    .workshop-cont__list__item__info__inr__icon{
        width: auto;
    }
    .workshop-atelier{
        padding-top: 100px;
    }
    .workshop-atelier__cont{
        padding: 80px 15px;
        margin-top: -40px;
    }
    .workshop-atelier__cont__info.flex-nml{
        display: flex;
    }
    .workshop-atelier__cont__info{
        margin-bottom: 50px;
    }
    .workshop-atelier__cont__info__img{
        margin: 0;
    }
    .workshop-atelier__cont__info__add{
        padding-left: 40px;
    }
    .workshop-atelier__cont__info__add strong br{
        display: none;
    }
    .workshop-atelier__cont__item.flex-btw{
        display: flex;
        gap: 0 30px;
    }
    .workshop-atelier__cont__item__img{
        width: calc((100% - 30px) / 2);
        margin: 0;
    }
    .workshop-atelier__cont__item__map{
        width: calc((100% - 30px) / 2);
        margin: 0;
    }
    .workshop-reserve{
        padding: 100px 0 150px;
    }
    .workshop-reserve__txt{
        font-size: 1.6rem;
        margin-bottom: 40px;
    }
    .workshop-reserve__txt strong br{
        display: none;
    }
    .workshop-reserve__bg{
        height: calc(100% - 210px);
    }
    .workshop-reserve__cont__item__txt{
        font-size: 1.8rem;
    }
}
@media screen and (min-width:1024px){
    .kintsugi-catch__cont__ttl{
        font-size: min(2.5vw, 3rem);
    }
    .kintsugi-catch__cont__ttl strong br{
        display: none;
    }
    .kintsugi-nav__list.flex-nml{
        max-width: none;
        gap: 25px;
    }
    .kintsugi-nav__list__item{
        width: calc((100% - 75px) / 4);
    }
    .workshop-cont__list__item.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .workshop-cont__list__item{
        margin-bottom: 70px;
    }
    .workshop-cont__list__item__img{
        width: 50%;
        margin: 0;
    }
    .workshop-cont__list__item__info{
        max-width: 500px;
        flex: 1;
        padding-top: 40px;
    }
    .workshop-cont__list__item__info__inr__ttl--small.ttl-cmn02{
        font-size: min(2.6vw, 3rem);
    }
    .workshop-cont__list__item__info__inr .btn-cmn03{
        margin-left: 0;
    }
    .workshop-atelier__cont__info__add{
        padding-left: 80px;
    }
    .workshop-reserve__cont.flex-btw{
        display: flex;
        gap: 0 50px;
    }
    .workshop-reserve__cont__item{
        width: calc((100% - 50px) / 2);
    }
}
@media screen and (min-width:1230px){
    .workshop-cont__list__item__info__inr__icon{
        left: max(calc((1200px - 100vw) / 2), -50px);
    }
    .workshop-cont__list__item:nth-of-type(2n) .workshop-cont__list__item__info__inr__icon{
        right: max(calc((1200px - 100vw) / 2), -50px);
    }
    .workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n) .workshop-cont__list__item__info__inr__icon{
        left: max(calc((1200px - 100vw) / 2), -50px);
    }
    .workshop-cont__list__reverse .workshop-cont__list__item:nth-of-type(2n + 1) .workshop-cont__list__item__info__inr__icon{
        right: max(calc((1200px - 100vw) / 2), -50px);
    }
}

/*	お問い合わせ
---------------------------------*/
.contact-page__ttl{
    text-align: center;
    margin-bottom: 30px;
}
.contact-page-tel__info{
    max-width: 600px;
    width: 100%;
    border-top: solid 1px #000;
    border-bottom: solid 1px #000;
    text-align: center;
    padding: 30px 0;
    margin: 0 auto 60px;
}
.contact-page-tel__info__num{
    display: inline;
    font-family: "Josefin Sans", sans-serif;
    font-size: 3rem;
    font-weight: 500;
    letter-spacing: 0.025em;
    color: #000;
    line-height: 1;
    padding-left: 40px;
    position: relative;
}
.contact-page-tel__info__num:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_phone01.png);
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.contact-page-tel__btn.flex-cnt{
    display: block;
}
.contact-page-tel__btn__item{
    max-width: 550px;
    width: 100%;
    background-color: #e68224;
    border-radius: 50px;
    margin: 0 auto 30px;
}
.contact-page-tel__btn__item:last-of-type{
    margin-bottom: 0;
}
.contact-page-tel__btn__item__a{
    display: block;
    text-align: center;
}
.contact-page-tel__btn__item__a__p{
    display: inline;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    line-height: 4.76;
    color: #fff;
    padding-left: 45px;
    position: relative;
}
.contact-page-tel__btn__item__a__p:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_reserve02.png);
    width: 26px;
    height: 26px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.contact-page-tel__btn__item.repair .contact-page-tel__btn__item__a__p:before{
    width: 25px;
    height: 18px;
    background-image: url(/system_panel/uploads/images/icon_mail02.png);
}
.contact-page-form{
    background-color: #f4f3f3;
}
.contact-page-form__txt{
    text-align: center;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
}
@media screen and (min-width:768px){
    .contact-page__ttl{
        margin-bottom: 40px;
    }
    .contact-page-tel__info{
        padding: 40px 0;
        margin: 0 auto 100px;
    }
    .contact-page-tel__btn__item__a__p{
        font-size: 2.1rem;
    }
    .contact-page-form__txt{
        margin-bottom: 40px;
    }
}
@media screen and (min-width:1024px){
    .contact-page-tel__btn.flex-cnt{
        display: flex;
        gap: 30px;
    }
    .contact-page-tel__btn__item{
        width: calc((100% - 30px) / 2);
        margin: 0;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
}

/*	補修サービス
---------------------------------*/
.repair-service{
    padding: 60px 0;
    position: relative;
}
.repair-service__bg{
    width: 100%;
    height: calc(100% - 150px);
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}
.repair-service__list__item{
    background-color: #fff;
    padding: 40px 15px;
    margin-bottom: 40px;
    position: relative;
}
.repair-service__list__item:last-of-type{
    margin-bottom: 0;
}
.repair-service__list__item__ttl{
    text-align: center;
    margin-bottom: 30px;
}
.repair-service__list__item__img--type01{
    gap: 0 40px;
}.repair-service__list__item__img__cont{
    max-width: max-content;
    position: relative;
    z-index: 1;
}
.repair-service__list__item__img--type01 .repair-service__list__item__img__cont{
    width: calc((100% - 40px) / 2);
}
.repair-service__list__item__img__cont:before{
    content: '';
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_arrow04.png);
    width: 25px;
    height: 28px;
    position: absolute;
    top: 50%;
    right: -20px;
    transform: translate(50%, -50%);
    z-index: 1;
}
.repair-service__list__item__img__cont:last-of-type:before{
    content: none;
}
.repair-service__list__item__icon{
    max-width: max-content;
    width: 30%;
    position: absolute;
    bottom: 20px;
    right: -15px;
}
.repair-service__list__item:nth-of-type(2n) .repair-service__list__item__icon{
    right: auto;
    left: -15px;
}
.repair-service__list__item__img--type02{
    gap: 10px;
}
.repair-service__list__item__img--type02 .repair-service__list__item__img__cont{
    width: calc((100% - 20px) / 3);
}
.repair-company{
    padding-top: 60px;
}
.repair-company__list{
    padding-bottom: 40px;
    position: relative;
}
.repair-company__list__bg{
    width: 75%;
    height: calc(100% - 90px);
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1;
}
.repair-company__list__item.flex-btw{
    display: block;
}
.repair-company__list__item__img{
    margin-bottom: 30px;
}
.repair-company__list__item__img__inr{
    padding-bottom: 40px;
    position: relative;
}
.repair-company__list__item__img__inr__01{
    max-width: 600px;
    width: 62.5%;
    margin-left: auto;
}
.repair-company__list__item__img__inr__02{
    max-width: 400px;
    width: 42%;
    position: absolute;
    bottom: 0;
    left: 0;
}
.repair-company__list__item__info{
    position: relative;
    z-index: 1;
}
.repair-company__list__item__info__ttl{
    margin-bottom: 30px;
    position: relative;
    z-index: 1;
}
.repair-company__list__item__info__txt{
    margin-bottom: 40px;
}
.repair-company__list__item__info__icon{
    max-width: max-content;
    width: 30%;
    position: absolute;
    bottom: -20px;
    right: 0;
    z-index: -1;
}
.repair-flow{
    padding: 80px 0;
}
.repair-flow__ttl{
    margin-bottom: 30px;
}
.repair-flow__list{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.repair-flow__inr.flex-btw{
    display: block;
}
.repair-flow__list__item{
    border: solid 1px #233562;
    padding: 30px 15px;
    margin-bottom: 30px;
}
.repair-flow__list__item:last-of-type{
    margin-bottom: 0;
}
.repair-flow__list__item__inr{
    max-width: 880px;
    width: 100%;
    gap: 0 20px;
    margin: 0 auto;
}
.repair-flow__list__item__inr__num__str{
    font-family: "Josefin Sans", sans-serif;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #233562;
    line-height: 1.2;
}
.repair-flow__list__item__inr__info{
    flex: 1;
}
.repair-flow__list__item__inr__info__ttl{
    margin-bottom: 20px;
}
.repair-flow__list__item__inr__info__txt{
    letter-spacing: 0.05em;
}
.repair-contact-row{
    width: 100%;
    margin-bottom: 15px;
}
.repair-contact-row__txt{
    margin-bottom: 10px;
}
.repair-contact-row__list{
    max-width: 475px;
    width: 100%;
    gap: 15px;
    margin: 0 auto;
}
.repair-contact-row__list__txt{
    width: 100%;
}
.repair-contact-row__item{
    width: calc((100% - 15px) / 2);
}
.repair-contact-row__item__img.ojf:before{
    padding-top: 80%;
}
@media screen and (min-width:768px){
    .repair-service{
        padding: 100px 0;
    }
    .repair-service__bg{
        height: calc(100% - 210px);
    }
    .repair-service__list__item{
        padding: 50px 15px;
        margin-bottom: 50px;
    }
    .repair-service__list__item__ttl{
        margin-bottom: 40px;
    }
    .repair-service__list__item__img--type01{
        gap: 0 80px;
    }
    .repair-service__list__item__img--type01 .repair-service__list__item__img__cont{
        width: calc((100% - 80px) / 2);
    }
    .repair-service__list__item__img__cont:before{
        width: 35px;
        height: 39px;
    }
    .repair-service__list__item__img__cont:before{
        right: -40px;
    }
    .repair-service__list__item__icon{
        bottom: 40px;
    }
    .repair-service__list__item__img--type02{
        gap: 20px;
    }
    .repair-service__list__item__img--type02 .repair-service__list__item__img__cont{
        width: calc((100% - 40px) / 3);
    }
    .repair-company{
        padding-top: 100px;
    }
    .repair-company__list{
        padding-bottom: 60px;
    }
    .repair-company__list__item__info__ttl{
        margin-bottom: 40px;
    }
    .repair-company__list__item__info__txt{
        margin-bottom: 50px;
    }
    .repair-company__list__item__info__icon{
        bottom: -30px;
    }
    .repair-flow{
        padding: 120px 0;
    }
    .repair-flow__inr.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .repair-flow__ttl{
        width: 130px;
        margin-bottom: 0;
    }
    .repair-flow__list{
        width: auto;
        flex: 1;
        margin: 0;
    }
    .repair-flow__list__item{
        padding: 50px 15px;
    }
    .repair-flow__list__item__inr{
        gap: 0 30px;
    }
    .repair-flow__list__item__inr__num__str{
        font-size: 3.6rem;
    }
    .repair-contact-row{
    }
    .repair-contact-row__list{
        max-width: 720px;
    }
    .repair-contact-row__item{
        width: calc((100% - 30px) / 3);
    }
}
@media screen and (min-width:1024px){
    .repair-service__list__item__img--type01{
        gap: 0 120px;
    }
    .repair-service__list__item__img--type01 .repair-service__list__item__img__cont{
        width: calc((100% - 120px) / 2);
    }
    .repair-service__list__item__img__cont:before{
        right: -60px;
    }
    .repair-company__list__item.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .repair-company__list__item__img{
        width: 50%;
        margin: 0;
    }
    .repair-company__list__item__info{
        max-width: 500px;
        flex: 1;
        padding-top: 40px;
    }
    .repair-company__list__item__img__inr{
        margin-left: -15px;
    }
    .repair-company__list__item__info__btn.btn-cmn03{
        margin-left: 0;
    }
    .repair-company__list__item__info__icon{
        width: 60%;
    }
}
@media screen and (min-width:1080px){
}
@media screen and (min-width:1230px){
    .repair-service__list__item__icon{
        right: max(calc((1200px - 100vw) / 2), -50px);
    }
    .repair-service__list__item:nth-of-type(2n) .repair-service__list__item__icon{
        left: max(calc((1200px - 100vw) / 2), -50px);
    }
    .repair-company__list__item__img__inr{
        margin-left: max(calc((1200px - 100vw) / 2), -360px);
    }
}

/*	金継ぎキット
---------------------------------*/
.kit-list__cont__item{
    padding-bottom: 60px;
    margin-bottom: 60px;
    position: relative;
}
.kit-list__cont__item:last-of-type{
    margin-bottom: 0;
}
.kit-list__cont__item__head.flex-btw{
    display: block;
}
.kit-list__cont__item__head{
    margin-bottom: 60px;
}
.kit-list__cont__item__head__info{
    margin-bottom: 30px;
}
.kit-list__cont__item__head__info__inr{
    padding-left: 20px;
}
.kit-list__cont__item__head__info__ttl{
    padding-top: 20px;
    margin-bottom: 30px;
    position: relative;
}
.kit-list__cont__item__head__info__ttl:before{
    content: "";
    width: 120px;
    height: 67px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_top_semicircle01.png);
    position: absolute;
    top: 0;
    left: -20px;
    z-index: -1;
}
.kit-list__cont__item__head__info__ttl__txt{
    margin-bottom: 20px;
}
.kit-list__cont__item__head__info__ttl__txt.ttl-cmn04{
    font-weight: 500;
    letter-spacing: 0.05em;
    color: #233562;
}
.kit-list__cont__item__head__info__ttl__txt strong{
    font-weight: 500;
}
.kit-list__cont__item__head__img{
    text-align: center;
}
.kit-list__cont__item__feature{
    background-color: #fff;
    padding: 30px 15px;
    margin-bottom: 40px;
}
.kit-list__cont__item__feature__inr{
    max-width: 1060px;
    width: 100%;
    gap: 0 20px;
    margin: 0 auto;
}
.kit-list__cont__item__feature__ttl{
    margin-top: -60px;
}
.kit-list__cont__item__feature__ttl__str{
    width: 35px;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding-left: 5px;
    position: relative;
}
.kit-list__cont__item__feature__ttl__str.ttl-cmn03{
    font-weight: 700;
}
.kit-list__cont__item__feature__ttl__str:before{
    content: "";
    width: 1px;
    height: 150px;
    background-color: #233562;
    position: absolute;
    top: 0;
    left: 0;
}
.kit-list__cont__item__feature__box.flex-cnt{
    display: block;
}
.kit-list__cont__item__feature__box{
    max-width: 960px;
    flex: 1;
}
.kit-list__cont__item__feature__box__info{
    max-width: 300px;
    width: 100%;
    margin: 0 auto 40px;
}
.kit-list__cont__item__feature__box__info__img{
    margin-bottom: 20px;
}
.kit-list__cont__item__feature__box__info__txt__ttl{
    margin-bottom: 20px;
}
.kit-list__cont__item__feature__box__info__txt__ttl__num{
    font-family: "Josefin Sans", sans-serif;
    font-size: 3rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #233562;
    line-height: 1.2;
}
.kit-list__cont__item__feature__box__info__txt__ttl__str{
    flex: 1;
    padding-left: 15px;
}
.kit-list__cont__item__feature__box__info__txt__ttl__str.ttl-cmn05{
    letter-spacing: 0.05em;
}
.kit-list__cont__item__btn{
    max-width: 550px;
    width: 100%;
    background-color: #e68224;
    border-radius: 50px;
    margin: 0 auto;
}
.kit-list__cont__item__btn__a{
    display: block;
    text-align: center;
}
.kit-list__cont__item__btn__a__p{
    display: inline;
    font-family: "Zen Old Mincho", serif;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 4.76;
    padding-right: 40px;
    position: relative;
}
.kit-list__cont__item__btn__a__p:before{
    content: "";
    width: 20px;
    height: 20px;
    background: no-repeat center center / contain;
    background-image: url(/system_panel/uploads/images/icon_other01.png);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.kit-list__cont__item__bg{
    width: 100%;
    height: 85%;
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.kit-share__catch{
    margin-bottom: 60px;
}
.kit-share__catch__ttl{
    text-align: center;
    margin-bottom: 20px;
}
.kit-share__catch__desc{
    letter-spacing: 0.05em;
}
.kit-share__event{
    border: solid 1px #233562;
    padding: 30px 15px;
    margin-bottom: 50px;
}
.kit-share__event__ttl{
    text-align: center;
    margin-bottom: 20px;
}
.kit-share__event__ttl__icon{
    margin-bottom: 10px;
}
.kit-share__event__ttl__str{
    font-family: "Zen Old Mincho", serif;
    font-size: 2rem;
    letter-spacing: 0.05em;
    color: #233562;
}
@media screen and (min-width:768px){
    .kit-list__cont__item{
        padding-bottom: 100px;
        margin-bottom: 100px;
    }
    .kit-list__cont__item__head{
        margin-bottom: 100px;
    }
    .kit-list__cont__item__head__info__inr{
        padding-left: 50px;
    }
    .kit-list__cont__item__head__info__ttl{
        padding-top: 50px;
        margin-bottom: 40px;
    }
    .kit-list__cont__item__head__info__ttl:before{
        width: 180px;
        height: 100px;
        left: -50px;
    }
    .kit-list__cont__item__head__info__ttl__txt{
        margin-bottom: 30px;
    }
    .kit-list__cont__item__head__info__ttl__txt strong br{
        display: none;
    }
    .kit-list__cont__item__feature{
        padding: 50px 15px;
        margin-bottom: 50px;
    }
    .kit-list__cont__item__feature__ttl{
        margin-top: -100px;
    }
    .kit-list__cont__item__feature__ttl__str{
        width: 40px;
    }
    .kit-list__cont__item__feature__ttl__str:before{
        height: 200px;
    }
    .kit-list__cont__item__feature__box__info__img{
        margin-bottom: 30px;
    }
    .kit-list__cont__item__feature__box__info__txt__ttl__num{
        font-size: 3.6rem;
    }
    .kit-list__cont__item__feature__box__info__txt__ttl{
        margin-bottom: 30px;
    }
    .kit-list__cont__item__btn__a__p{
        font-size: 2.1rem;
    }
    .kit-list__cont__item__btn__a__p:before{
        width: 20px;
        height: 20px;
    }
    .kit-share__catch{
        margin-bottom: 100px;
    }
    .kit-share__catch__ttl{
        margin-bottom: 30px;
    }
    .kit-share__catch__desc{
        text-align: center;
    }
    .kit-share__event{
        padding: 50px 15px;
        margin-bottom: 70px;
    }
    .kit-share__event__ttl{
        margin-bottom: 30px;
    }
    .kit-share__event__ttl__str{
        font-size: 2.4rem;
    }
    .kit-share__event__desc{
        text-align: center;
    }
}
@media screen and (min-width:1024px){
    .kit-list__cont__item__head.flex-btw{
        display: flex;
        gap: 0 40px;
    }
    .kit-list__cont__item__head__img{
        width: 50%;
    }
    .kit-list__cont__item__head__info{
        max-width: 500px;
        flex: 1;
        margin: 0;
    }
    .kit-list__cont__item__head__info__ttl__txt.kit-list__cont__item__head__info__ttl__txt--small.ttl-cmn04{
        font-size: min(1.6vw, 1.8rem);
    }
    .kit-list__cont__item__feature__box.flex-cnt{
        display: flex;
        gap: 30px;
    }
    .kit-list__cont__item__feature__box__info{
        width: calc((100% - 60px) / 3);
        margin: 0;
    }
    .kit-list__cont__item__bg{
        height: 75%;
    }
}
@media screen and (min-width:1080px){
}

/*	会社情報
---------------------------------*/
.company-greeting{
    position: relative;
}
.company-greeting__desc{
    line-height: 2.78;
    margin-bottom: 50px;
}
.company-greeting__info{
    text-align: center;
}
.company-greeting__info__img{
    max-width: 400px;
    width: 100%;
    margin: 0 auto 10px;
}
.company-greeting__icon{
    width: 95%;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
.company-overview{
    position: relative;
}
.company-overview__table{
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}
.company-overview__bg{
    width: 100%;
    height: calc(100% - 150px);
    background-color: #f4f3f3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
}
@media screen and (min-width:768px){
    .company-greeting__desc{
        margin-bottom: 70px;
    }
    .company-greeting__icon{
        width: 87.5%;
    }
    .company-overview__bg{
        height: calc(100% - 210px);
    }
}
@media screen and (min-width:1024px){
    .company-greeting__desc{
        text-align: center;
    }
}
@media screen and (min-width:1080px){
}