@charset "UTF-8";
/* CSS Document */

/* reset.css */
caption,td,th{text-align:left}dd,div,dl,dt,form,h1,h2,h3,h4,h5,h6,li,ol,p,table,th,tr,ul{margin:0;padding:0;font-size:100%}blockquote,dd,div,dl,dt,h1,h2,h3,h4,h5,h6,li,ol,p,pre,span,td,th,ul{margin:0;padding:0}code,kbd,pre,samp,tt{font-family:monospace;line-height:100%}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}ol,ul{list-style-type:none}q:after,q:before{content:''}button,fieldset,form,input,label,legend,select,textarea{margin:0;padding:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;vertical-align:baseline}table{border-collapse:collapse;border-spacing:0;font-size:100%}td,th{vertical-align:top}input[type=submit]::-moz-focus-inner{border:0}

/*-----------------------------
共通スタイル
-----------------------------*/
:root{
    --base-color: #000;
    --base-font: "Noto Sans JP", sans-serif;
    --mincho: "Noto Serif JP", serif;
    --mv-font: sans-serif;
    --mv-mincho: serif;
    --cormorant:"Cormorant", serif;;
    --orange:#db824c;
    --blue:#66a8ae;
    --red:#651719;
}

div,a,span{
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    color: var(--base-color);
    font-family: var(--base-font);
    font-style: normal;
    position: relative;
    overflow: hidden;
}

a{
    transition: 0.3s;
}

a:hover,a:focus{
    opacity: 0.7;
    transition: 0.3s;
}

a[href^="tel:"] {
    pointer-events: none;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.index-page img{
  /*width: 100%;*/
  height: auto;
  vertical-align: bottom;
}

.inbl,.br{
    display: inline-block;
}

.block{
    display: block;
}

.sp-none{
    display: none;
}




@media screen and (max-width: 767px){
    a[href^="tel:"] {
        pointer-events:all;
    }

    .pc-none{
        display: none;
    }

    .sp-none{
        display: block;
    }
}


  /*** 共通 ***/
.index-page{
  color: #000;
  font-family: var(--base-font);
  line-height: 1.5;
  letter-spacing: 0.04em;
}
div.index-page{
    width: 100%;
    height: 100%;
    overflow: auto;
}
/*.index-page p{
	color: #2e2e2e;
	margin-bottom: 0;
	line-height: 1.5;
}*/

.page-inner{
  width: 90%;
  /*max-width: 1000px;*/
  max-width: 52.083vw;
  margin: 0 auto;
}
.index-page section{
  /*padding: 140px 0;*/
  padding: 7.291666vw 0;
}
.index-page h2{
  font-family: var(--mincho);
  color: #030303;
  /*font-size: 36px;*/
  /*font-size: 1.875vw;*/
  font-size: clamp(32px, 1.875vw, 36px);
  /*margin-bottom: 100px;*/
  margin-bottom: 5.20833vw;
  text-align: center;
  line-height: 1.5;
  font-weight: 700;
  position: relative;
}
.index-page h2::before{
    content: attr(data-text);
    /*font-size: 72px;*/
    /*font-size: 3.75vw;*/
    font-size: clamp(66px, 3.75vw, 72px);
    color: #dcd9d5;
    position: absolute;
    /*top:-80px;*/
    top: -4.16666vw;
    left: 0;
    width: 100%;
    font-weight: 600;
    line-height: 1;
}


.index-page h3,.index-page h4{
  font-family: var(--mincho);
  font-weight: 500;
}
.index-page h3{
	font-weight: 600;
}
.index-page h3 .txt-red,
p.section-omakase-infobox-title .txt-red{
	font-weight: 700;
}
.txt-orange{color: var(--orange);}
.txt-blue{color: var(--blue);}
.txt-red{color: var(--red);}
.txt-bold{font-weight: 600;}
.marker{
  background-color: #fddad7;
  padding: 0 3px;
  font-weight: 600;
}
.dot{
  display: inline-block;
  width: 0.4em;
}

.txt-box{
  font-size: 18px;
  font-weight: 400;
  text-align: justify;
  line-height: 2;
}
.txt-box p{
	font-size: 18px;
}
.txt-box p + p{
  margin-top: 1.5em;
}

@media screen and (min-width: 1921px){
    .page-inner{
        max-width: 1000px;
    }
    .index-page section{
        padding: 140px 0;
    }
}
@media screen and (max-width: 1536px){
    .page-inner{
        max-width: 60vw;
    }
    .index-page h2{
        /*font-size: 36px;*/
        /*font-size: 2.34375vw;*/
        font-size: clamp(30px, 2.2vw, 36px);
        /*margin-bottom: 100px;*/
        margin-bottom: 6.5vw;
    }
    .index-page h2::before{
        /*font-size: 72px;*/
        /*font-size: 4.5vw;*/
        font-size: clamp(60px, 4.3vw, 72px);
        /*top:-80px;*/
        top: -5vw;
    }

}
@media screen and (max-width: 1336px){
    .page-inner{
        max-width: 70vw;
    }
    .index-page h2{
        /*font-size: 36px;*/
        /*font-size: 2.5vw;*/
        font-size: clamp(28px, 2.4vw, 36px);
        /*margin-bottom: 100px;*/
        margin-bottom: 7vw;
    }
    .index-page h2::before{
        /*font-size: 72px;*/
        /*font-size: 5vw;*/
        font-size: clamp(56px, 4.8vw, 72px);
        /*top:-80px;*/
        top: -5.5vw;
    }

}
@media screen and (max-width: 1280px){
  .index-page section{
    /*padding: 100px 0;*/
    padding: 8.5vw 0;
  }
    .page-inner{
        max-width: 75vw;
    }
    .index-page h2{
        /*font-size: 36px;*/
        /*font-size: 2.8vw;*/
        font-size: clamp(30px, 3vw, 34px);
        /*margin-bottom: 100px;*/
        margin-bottom: 7vw;
    }
    .index-page h2::before{
        /*font-size: 72px;*/
        font-size: 5.5vw;
        font-size: clamp(50px, 5.5vw, 64px);
        /*top:-80px;*/
        top: -6vw;
    }


}
@media screen and (max-width: 767px){
    .page-inner{
        max-width: 90vw;
    }
  .index-page section{
    /*padding: 80px 0;*/
    padding: 10vw 0;
  }
  .txt-box p{
    font-size: 16px;
  }
    .index-page h2{
        /*font-size: 5vw;*/
        font-size: clamp(28px, 5vw, 30px);
        margin-bottom: 10vw;
    }
    .index-page h2::before{
        font-size: 9vw;
        top: -10vw;
    }




}
@media screen and (max-width: 499px){
  .index-page section{
    /*padding: 60px 0;*/
    padding: 12vw 0;
  }
    .index-page h2{
        font-size: 7vw;
        margin-bottom: 12vw;
    }
    .index-page h2::before{
        font-size: 12vw;
        top: -12vw;
    }

}

/* header */
header{
    /*position: absolute;*/
    position: fixed;
    top:0;
    left: 0;
    width: 100%;
    /*height: 80px;*/
    height: 4.166666vw;
    z-index: 100;
    transition: 0.3s;
}
header.scrolled{
    background: #edeae5;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
    transition: 0.3s;
}

.header-flex{
    /*max-width: 1840px;*/
    max-width: 95.8333333vw;
    width: 98%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}
.header-list{
    display: flex;
    /*gap: 50px;*/
    gap:2.604166vw;
    font-family: var(--mincho);
    /*font-size: 18px;*/
    font-size: 0.9375vw;
    font-weight: 700;
}

.header-list a{
    color: #343434;
}

.header-list a:hover{
	color:#651719!important;
}

.header-list .header-contact a{
    /*font-size: 16px;*/
    font-size: 0.833333333vw;
    border: 1px solid #181817;
    border-radius: 100px;
    padding: 0.2em 1.2em 0.24em;
}
.header-list .header-contact a:hover{
    color: #fff!important;
    opacity: 1;
    background-color: #181817;
}
ul.header-list > li {
    position: relative;
}
.sub-menu {
    display: none; /* jQueryでスライド表示 */
    padding: 15px 20px;
    border-radius: 8px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    /*background: #edeae5;*/
    background: rgba(237, 234, 229, 100);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
	font-size: clamp(12px, 1vw, 16px);
}
.sub-menu a{
    width: fit-content;
    white-space: nowrap;
    cursor: pointer;
}
.sub-menu li + li{
    margin-top: 5px;
}





.header-logo{
    /*width: 375px;
    height: 23px;*/
    width: 19.53125vw;
    height: 1.1979166vw;
}
.header-logo img{
    width: 100%;
    height: auto;
    vertical-align: baseline;
}
.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  /*gap: 1vw;*/
  cursor: pointer;
  position: absolute;
  top:2.5vw;
  right: 4.5vw;
  width: 3.5vw;
  height: 4vw;
  z-index: 200;
}
.hamburger span {
 position: absolute;
 left: 0;
  width: 25px;
  /*width: 100%;*/
  height: 2px;
  /*height: 0.3vw;*/
  background: #000;
  border-radius: 2px;
  transition: all 0.3s ease;
}
.hamburger span:nth-child(1) { top: 0; }
.hamburger span:nth-child(2) { top: 10px; }
.hamburger span:nth-child(3) { top: 20px; }
/*
.hamburger span:nth-child(2) { top: 1.3vw; }
.hamburger span:nth-child(3) { top: 2.6vw; }
*/

/* アクティブ状態で×に変化 */
.hamburger.active span:nth-child(1) {
  transform: rotate(45deg);
  top: 1.3vw;
  transition: 0.3s;
}
.hamburger.active span:nth-child(2) {
  opacity: 0;
}
.hamburger.active span:nth-child(3) {
  transform: rotate(-45deg);
  top: 1.3vw;
  transition: 0.3s;
}

@media screen and (max-width: 1536px){
    header{
        height: 5.2083333vw;
    }
    .header-list{
        gap:3vw;
        font-size: 1.171875vw;
    }
    .header-list .header-contact a{
        font-size: 1vw;
    }
    .header-logo{
        width: 24.4140625vw;
        height: 1.4973958vw;
    }
}
@media screen and (max-width: 1366px){
    header{
        height: 5.988023vw;
    }
    .header-list{
        gap:3.5vw;
        font-size: 1.347305vw;
    }
    .header-list .header-contact a{
        font-size: 1.1vw;
    }
    .header-logo{
        width: 28.0688622vw;
        height: 1.7215568vw;
    }
}
@media screen and (max-width: 1280px){
    header{
        height: 5vw;
    }
    .header-list{
        gap:3vw;
        font-size: 1.5vw;
    }
    .header-list .header-contact a{
        font-size: 1.25vw;
    }
    .header-logo{
        width: 30vw;
        height: 1.8vw;
        margin-top: -0.2em;
    }
}
@media screen and (max-width: 1280px){
    header{
        height: 55px;
    }
    .header-logo{
        height: 20px;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        width: fit-content;
        position: absolute;
        top:50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
    }
    .header-logo img{
        width: fit-content;
    }
    .header-list a{
        gap:3vw;
        /*font-size: 2.5vw;*/
        font-size: clamp(16px, 3vw, 20px);
        width: 100%;
        display: inline-block;
    }
    .header-list .header-contact a{
        /*font-size: 2.2vw;*/
        font-size: clamp(14px, 2.5vw, 18px);
    }
    .sub-menu{
        position: unset;
        transform: translateX(0);
        background: none;
        box-shadow: none;
        padding: 15px 0 0;
    }

    li.has-sub{
        position: relative;
    }
    li.has-sub::before {
        content: "";
        display: inline-block;
        width: 9px;
        height: 9px;
        border-left: 2px solid #000;
        border-bottom: 2px solid #000;
        position: absolute;
        right: 0;
        top: 5px;
        transform: rotate(-45deg);
        transition: 0.3s;
        transform-origin: left;
    }
    li.has-sub.is-open::before{
        transform: rotate(-225deg);
        transition: 0.3s;
    }

  .nav {
    display: block;
    position: fixed;
    top: 0;
    right: -100%; /* 最初は画面外（右） */
    height: 100%;
    background: rgba(255, 255, 255, 0.9);
    padding-top: 60px;
    transition: right 0.4s ease;
    z-index: 150;
  }
  ul.header-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 20px 30px;
    width: max-content; /* ulの内容幅に合わせる */
    padding-top: 10vw;
    /*min-width: 185px;*/
  }
  .hamburger{
    top:18px;
    right: 15px;
    width: 25px;
    height: 20px;
  }
    /* メニューが開いたとき */
    .nav.open {
        right: 0;
    }
    .hamburger {
        display: flex;
    }
    .hamburger.active{
        position: fixed;
    }
}
@media screen and (max-width: 499px){
    header{
        height: 45px;
    }
    .header-logo {
        height: 16px;
    }
    ul.header-list{
        padding-top: 60px;
        /*min-width: 150px;*/
    }
    .header-list{
        gap:3vw;
    }
    .header-list a{
        font-size: clamp(16px, 3.5vw, 20px);
    }
    .header-list .header-contact a{
        font-size: clamp(14px, 3.2vw, 18px);
    }

    li.has-sub::before {
        top:4px;
    }

    .hamburger {
        /*top:4vw;*/
        right: 20px;
        /*width: 3.5vw;*/
        /*height: 4vw;*/
        z-index: 200;
        top: 12px;
    }
    /*
    .hamburger{
        width: 4.5vw;
    }
    .hamburger span {
        height: 0.4vw;
    }
    .hamburger span:nth-child(2) { top: 1.5vw; }
    .hamburger span:nth-child(3) { top: 3vw; }
    */

    /* アクティブ状態で×に変化 */
    .hamburger.active span:nth-child(1) {
    transform: rotate(45deg);
    top: 2vw;
    transition: 0.3s;
    }
    .hamburger.active span:nth-child(2) {
    opacity: 0;
    }
    .hamburger.active span:nth-child(3) {
    transform: rotate(-45deg);
    top: 2vw;
    transition: 0.3s;
    }

}
@media screen and (max-width: 399px){
    .header-logo {
        height: 12px;
    }
    .hamburger {
        right: 15px;
    }
}

/* footer */
.page-footer{
    background: #271712;
    padding: 160px 0 50px;
}
.page-footer .page-inner{
    max-width: 1200px;
}
.page-footer-flex{
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.footer-logo{
    background: url("../images/index/logo-wh.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 374px;
    height: 25px;
}
.page-footer-list{
    display: flex;
    gap: 40px;
    padding-bottom: 40px;
    margin-bottom: 30px;
    border-bottom: 1px solid #fff;
}
.page-footer-list li a{
    font-family: var(--mincho);
    font-size: 18px;
    color: #fff;
    font-weight: 600;
    display: inline-block;
    line-height: 1.2;
}
.page-footer-list li.fotter-contact a{
    background-color: #fff;
    border-radius: 100px;
    font-size: 16px;
    color: #000;
    padding: 5px 20px;
    font-weight: 700;
}
.page-footer-list02{
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}
.page-footer-list02 li a{
    color: #fff;
    font-family: var(--mincho);
    font-size: 14px;
    font-weight: 600;
}
.copylight{
    color: #fff;
    font-family: var(--mincho);
    font-size: 12px;
    letter-spacing: 0.08em;
    margin-top: 60px;
}
@media screen and (max-width: 1536px){

}
@media screen and (max-width: 1336px){

}
@media screen and (max-width: 1280px){
    .page-footer{
        padding: 120px 0 40px;
    }
    .footer-logo{
        width: 282px;
        height: 19px;
    }
    .page-footer-list{
        gap: 30px;
        padding-bottom: 30px;
        margin-bottom: 20px;
    }
    .page-footer-list li a{
        font-size: 16px;
    }
    .page-footer-list li.fotter-contact a{
        font-size: 14px;
        padding: 5px 15px;
    }
    .copylight{
        margin-top: 40px;
    }
}
@media screen and (max-width: 1023px){
    .page-footer{
        padding: 80px 0 40px;
    }
    .page-footer-flex{
        flex-direction: column;
        align-items: flex-start;
        gap: 30px;
        width: fit-content;
        margin: 0 auto;
    }
    .page-footer-list{
        gap: 30px;
        padding-bottom: 25px;
        margin-bottom: 15px;
    }
    .copylight{
        max-width: 585px;
        margin: 30px auto 0;
    }
}
@media screen and (max-width: 767px){
    .page-footer{
        padding: 60px 0 30px;
    }
    .footer-logo{
        margin: 0 auto;
    }
    .page-footer-flex{
        width: 100%;
    }
    .page-footer-list {
        justify-content: space-between;
        gap: 0;
        padding-bottom: 15px;
        margin-bottom: 15px;
    }
    .page-footer-flex-content{
        width: 100%;
    }
    .copylight{
        max-width: 100%;
        text-align: center;
    }
}
@media screen and (max-width: 629px){
    .page-footer-list02{
        gap: 0;
        justify-content: space-between;
    }
}
@media screen and (max-width: 599px){
    .page-footer-list02 li a{
        font-size: 12px;
    }
}
@media screen and (max-width: 569px){
    .page-footer-list li a {
        font-size: 14px;
    }
    .page-footer-list li.fotter-contact a{
        font-size: 12px;
        padding: 5px 12px;
    }
}
@media screen and (max-width: 499px){
    .page-footer{
        padding: 40px 0 30px;
    }
    .page-footer-flex{
        gap: 20px;
    }
    .page-footer-list{
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px 0;
        position: relative;
    }
    .page-footer-list li{
        width: 33%;
        text-align: center;
    }
    .page-footer-list::after{
        content: "";
        width: 33%;
    }
    .page-footer-list02 li{
        width: 100%;
    }
    .copylight{
        margin-top: 25px;
    }
}
@media screen and (max-width: 349px){
    .page-footer-list li{
        width: 50%;
    }
    .page-footer-list::after{
        display: none;
    }
}




/* CV */
.cv{
    /*padding: 60px 0;*/
    padding: 3.125vw 0;
    /*background: linear-gradient(to right, #261511 0%, #7b6151 100%);*/
    background: linear-gradient(95deg,  rgba(38,21,17,1) 0%,rgba(38,21,17,1) 20%,rgba(123,97,81,1) 70%,rgba(123,97,81,1) 100%);
    color: #fff;
}
.cv .page-inner{
    /*max-width: 880px;*/
    max-width: 45.83333vw;
}
.cv-title{
    text-align: center;
    font-family: var(--mincho);
    /*font-size: 26px;*/
    font-size: clamp(22px, 1.354166vw, 26px);
    /*margin-bottom: 20px;*/
    margin-bottom: 1vw;
    line-height: 1.8;
    font-weight: 700;
}
.cv-flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    /*margin-bottom: 30px;*/
    margin-bottom: 1.5vw;
}
.cv-flex-tel-btn{
    color: #fff;
    font-family: var(--mincho);
    /*font-size: 66px;*/
    font-size: clamp(46px, 3.4375vw, 66px);
    font-weight: 600;
    display: inline-block;
    line-height: 1;
    position: relative;
    letter-spacing: 0.08em;
    white-space: nowrap;
}
.cv-flex-tel-btn::before{
    content: "";
    background: url("../images/index/icon-tel.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 0.75em;
    height: 0.75em;
    display: inline-block;
}
.cv-flex-tel-info{
    text-align: center;
    border: 1px solid #fff;
    padding:3px 10px;
    font-family: var(--mincho);
    font-size: 18px;
    font-size: clamp(16px, 0.9375vw, 18px);
    font-weight: 600;
    /*margin-top: 10px;*/
    margin-top: 0.5vw;
}
.cv-flex-mail{
    /*max-width: 315px;*/
    max-width: 16.40625vw;
    width: 100%;
    /*height: 65px;*/
    height: 3.38541vw;
    border-radius: 100px;
    background: linear-gradient(to right, #a84707 0%, #ae6e35 100%);
    color: #fff;
    font-family: var(--mincho);
    display: flex;
    align-items: center;
    justify-content: center;
    /*font-size: 20px;*/
    font-size: clamp(18px, 1.04166vw, 20px);
    position: relative;
    font-weight: 600;
}
.cv-flex-mail::before{
    content: "";
    background: url("../images/index/icon-mail.svg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    width: 1em;
    height: 1em;
    display: inline-block;
    margin-right: 0.2em;
}
.cv-note{
    font-size: 14px;
    text-align: center;
    letter-spacing: 0;
}
.cv-note a{
    color: #fff;
}
@media screen and (max-width: 1536px){
    .cv .page-inner{
        max-width: 52vw;
    }
    .cv-flex-tel-btn{
        font-size: clamp(46px, 3.8vw, 66px);
    }
    .cv-flex-mail{
        max-width: 19vw;
        height: 3.8vw;
        font-size: clamp(18px, 1.3vw, 20px);
    }
}
@media screen and (max-width: 1336px){
    .cv .page-inner{
        max-width: 58vw;
    }
    .cv-flex-tel-btn{
        font-size: clamp(46px, 4.2vw, 66px);
    }
    .cv-flex-mail{
        max-width: 21vw;
        height: 4.2vw;
        font-size: clamp(18px, 1.5vw, 20px);
    }
}
@media screen and (max-width: 1280px){
    .cv{
        padding: 4vw 0;
    }
    .cv .page-inner{
        max-width: 64vw;
    }
    .cv-flex-tel-btn{
        font-size: clamp(40px, 4.8vw, 66px);
    }
    .cv-flex-mail{
        max-width: 23vw;
        height: 4.6vw;
        font-size: clamp(18px, 1.7vw, 20px);
    }
}
@media screen and (max-width: 1023px){
    .cv .page-inner{
        max-width: 72vw;
    }
    .cv-flex-tel-btn{
        font-size: clamp(40px, 5.2vw, 66px);
    }
    .cv-flex-mail{
        max-width: 27vw;
        height: 5.2vw;
        font-size: clamp(18px, 1.9vw, 20px);
    }
}
@media screen and (max-width: 767px){
    .cv{
        padding: 6vw 0;
    }
    .cv .page-inner{
        max-width: 90vw;
    }
    .cv-title{
        font-size: clamp(20px, 4vw, 22px);
        margin-bottom: 4vw;
        line-height: 1.4;
    }
    .cv-flex{
        flex-direction: column;
        gap: 3vw;
        margin-bottom: 4vw;
        text-align: center;
    }
    .cv-flex-tel-btn{
        font-size: 9vw;
    }
    .cv-flex-mail{
        max-width: 48vw;
        height: 9vw;
        font-size: 3.5vw;
    }
    .cv-note{
        font-size: 12px;
    }
}
@media screen and (max-width: 499px){
    .cv{
        padding: 8vw 0;
    }
    .cv-title{
        font-size: clamp(20px, 5.5vw, 20px);
        margin-bottom: 6vw;
    }
    .cv-flex{
        gap: 4vw;
        margin-bottom: 6vw;
    }
    .cv-flex-tel-btn{
        font-size: 10.5vw;
    }
    .cv-flex-tel-info{
        padding:3px 10px;
        font-size: clamp(14px, 3vw, 16px);
        margin-top: 1vw;
    }
    .cv-flex-mail{
        max-width: 60vw;
        height: 12vw;
        font-size: 4.5vw;
    }
    .cv-note{
        font-size: 12px;
        text-align: left;
    }
}














/* MV */
.index-page .mv,.webp .index-page .mv{
    width: 100%;
    /*height: 730px;*/
    height: 38vw;
    background: url("../images/index/mv-bg.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    overflow: hidden;
    box-sizing: content-box;
    font-family: var(--mv-font);
}
.webp .index-page .mv{
    background: url("../images/index/mv-bg.jpg.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.index-page .mv .page-inner{
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    /*padding-top: 70px;*/
    max-width: 52.083vw;
    padding-top: 6.6458vw;
}
.index-page .mv h1{
    font-family: var(--mv-mincho);
    /*font-size: 60px;*/
    font-size: clamp(42px,3.125vw,60px);
    font-weight: 600;
    line-height: 1.4;
    /*margin-bottom: 50px;*/
    margin-bottom: 2.604vw;
    white-space: nowrap;
    letter-spacing: 0.02em;
    text-shadow: 0 0 6px #edeae4,0 0 7px #edeae4,0 0 8px #edeae4,0 0 9px #edeae4,0 0 10px #edeae4;
}
.index-page .mv h1 .txt-small{
    /*font-size: 50px;*/
    font-size: clamp(40px,2.7vw,50px);
    letter-spacing: 0.06em;
}
.index-page .mv h1 .txt-bg{
    background-color: #401616;
    color: #fff;
    display: inline-block;
    line-height: 1.2;
    padding: 0.1em 0.2em;
    letter-spacing: 0.06em;
    text-shadow: none;
}
.index-page .mv h1 span.txt-bg:first-of-type {
  padding-right: 0;
}
.index-page .mv h1 span.txt-bg:nth-of-type(2) {
  padding-left: 0;
}
@media screen and (max-width: 767px){
	.index-page .mv h1 span.txt-bg:first-of-type,.index-page .mv h1 span.txt-bg:nth-of-type(2) {
 	 	padding: 0.1em 0.2em;
        margin-bottom: 0.2em;
	}
}

.index-page .mv .mv-txt{
     font-family: var(--mv-mincho);
    font-size: 16px;
    /*font-size: 0.8333vw;*/
    font-weight: 600;
    line-height: 1.8;
     text-shadow: 0 0 2px #edeae4,0 0 3px #edeae4,0 0 4px #edeae4,0 0 5px #edeae4,0 0 6px #edeae4;
}
@media screen and (max-width: 1536px){
    .index-page .mv,.webp .index-page .mv{
        height: 42vw;
    }
    .index-page .mv .page-inner{
        max-width: 65.104vw;
        padding-top: 4.55729vw;
    }
    .index-page .mv h1{
        /*font-size: 3.90625vw;*/
        margin-bottom: 3.255208vw;
    }
    /*.index-page .mv h1 .txt-small{
        font-size:3.255208vw;
    }*/
    .index-page .mv .mv-txt{
        font-size: 1.041666vw;
    }
}
@media screen and (max-width: 1366px){
    .index-page .mv,.webp .index-page .mv{
        height: 44vw;
    }
    .index-page .mv .page-inner{
        max-width: 73.2064vw;
        padding-top: 4vw;
    }
    .index-page .mv h1{
        /*font-size: 4.392386vw;*/
        margin-bottom: 3vw;
    }
    /*.index-page .mv h1 .txt-small{
        font-size:3.660322vw;
    }*/
    .index-page .mv .mv-txt{
        font-size: 1.171303vw;
    }
}
@media screen and (max-width: 1280px){
    .index-page .mv,.webp .index-page .mv{
        height: auto;
        min-height: 35vw;
        padding-top: 4vw;
        padding-bottom: 5vw;
        display: flex;
        align-items: center;
        background: url("../images/index/mv-bg.jpg");
        background-size: cover;
        background-position: center right;
        background-repeat: no-repeat;
    }
    .webp .index-page .mv{
        background: url("../images/index/mv-bg.jpg.webp");
        background-size: cover;
        background-position: center right;
        background-repeat: no-repeat;
    }
    .index-page .mv .page-inner{
        max-width: 80vw;
        /*padding-top: 2vw;*/
    }
    .index-page .mv h1{
        /*font-size: 4.8vw;*/
        font-size: clamp(30px,4.8vw,42px);
        margin-bottom: 3vw;
    }
    .index-page .mv h1 .txt-small{
        font-size:4vw;
        font-size: clamp(24px,4vw,36px);
    }
    .index-page .mv .mv-txt{
        font-size: clamp(14px,2.2vw,16px);
    }
}
@media screen and (max-width: 1049px){
    .index-page .mv,.webp .index-page .mv{
        background: url("../images/index/mv-bg.jpg");
        background-size: cover;
        background-position: center right -50px;
        background-repeat: no-repeat;
    }
    .webp .index-page .mv{
        background: url("../images/index/mv-bg.jpg.webp");
        background-size: cover;
        background-position: center right -50px;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 1023px){
    .index-page .mv,.webp .index-page .mv{
        background: url("../images/index/mv-bg-left.jpg"),url("../images/index/mv-bg-right.jpg"),#edeae5;
        background-size: contain;
        background-position: bottom left -80px,bottom 4vw right -100px;
        background-repeat: no-repeat;
        min-height: 40vw;
        padding-top: 4vw;
        padding-bottom: 2vw;
    }
    .webp .index-page .mv{
        background: url("../images/index/mv-bg-left.jpg.webp"),url("../images/index/mv-bg-right.jpg.webp"),#edeae5;
        background-size: contain;
        background-position: bottom left -80px,bottom 4vw right -100px;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 929px){
    .index-page .mv,.webp .index-page .mv{
        min-height: 44vw;
        padding-top: 16vw;
        padding-bottom: 2vw;
    }
}
@media screen and (max-width: 829px){
    .index-page .mv,.webp .index-page .mv{
        min-height: 52vw;
        padding-top: 24vw;
        padding-bottom: 2vw;
    }
}
@media screen and (max-width: 767px){
    .index-page .mv,.webp .index-page .mv{
        /*height: 108vw;*/
        height: 112vw;
        background: url("../images/index/mv-bg-sp.jpg");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        padding-top: 0;
        padding-bottom: 0;
    }
    .webp .index-page .mv{
        background: url("../images/index/mv-bg-sp.jpg.webp");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    .index-page .mv .page-inner{
        max-width: 90vw;
        padding-top: 0;
    }
    .index-page .mv h1{
        font-size: 7.8vw;
        margin-bottom: 5vw;
        white-space:unset;
        letter-spacing: 0.04em;
    }
    .index-page .mv h1 .box{
        display: block;
    }
    .index-page .mv h1 .txt-small{
        font-size:7.5vw;
    }
    .index-page .mv .mv-txt{
        /*font-size: 2.5vw;*/
        font-size: clamp(12px,2.5vw,16px);
    }
    .index-page .mv .mv-txt .txt01,.index-page .mv .mv-txt .txt02{
        width: 80%;
        display: inline-block;
    }
}
@media screen and (max-width: 499px){
    .index-page .mv,.webp .index-page .mv{
        height: auto;
        min-height: 94vw;
        padding-top: 16vw;
        padding-bottom: 10vw;
    }
    /*.index-page .mv .mv-txt{
        font-size: 3vw;
    }*/
    .index-page .mv h1{
        margin-bottom: 2vw;
    }
}

/* この時期がどれほどストレスフルで、途方に暮れることか、私たちは理解しています。 */
.section-mv-info{
    background-color: #edeae5;
    overflow: hidden;
}
.mv-info-info{
    display: flex;
    justify-content: space-between;
    /*margin-bottom: 140px;*/
    margin-bottom: 7.291666vw;
}
.mv-info-info-btn{
    /*max-width: 460px;*/
    max-width: 23.95833vw;
    width: 46%;
    /*height: 100px;*/
    height: 5.208333vw;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
.mv-info-info-btn.btn01{
    background: url("../images/index/section-mv-info-img01.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.mv-info-info-btn.btn02{
    background: url("../images/index/section-mv-info-img02.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.webp .mv-info-info-btn.btn01{
    background: url("../images/index/section-mv-info-img01.png.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.webp .mv-info-info-btn.btn02{
    background: url("../images/index/section-mv-info-img02.png.webp");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.mv-info-info-btn .txt{
    font-family: var(--mincho);
    color: #fff;
    /*font-size: 26px;*/
    font-size: 1.354166vw;
    line-height: 1.3;
    font-weight: 600;
    text-shadow: 0 0 14px #252330,0 0 18px #252330;
}
.mv-info-info-btn::before{
    content: "";
    background: url("../images/index/section-mv-info-arw.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    /*width: 24px;
    height: 24px;*/
    width: 1.25vw;
    height: 1.25vw;
    position: absolute;
    top:50%;
    /*right: 15px;*/
    right: 0.78125vw;
    transform: translateY(-50%);
}
.section-mv-info-bg{
    position: relative;
    padding-bottom: 7vw;
}
.section-mv-info-bg::before,.webp .section-mv-info-bg::before{
    content: "";
    background: url("../images/index/section-mv-info-bg.jpg");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: cover;
    width: 606px;
    height: 498px;
    width: 31.5625vw;
    height: 25.9375vw;
    position: absolute;
    top: 0;
    right: 0;
    /*box-shadow: 0 0 35px rgba(0, 0, 0, 0.3);*/
    box-shadow: 0 0 1.822916vw rgba(0, 0, 0, 0.3);
}
.webp .section-mv-info-bg::before{
    background: url("../images/index/section-mv-info-bg.jpg.webp");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-mv-info-content{
    /*width: calc(100% - 250px);*/
    width: calc(100% - 13.0208333vw);
    position: relative;
}
.section-mv-info-title{
    font-family: var(--mincho);
    /*font-size: 24px;*/
    font-size: clamp(20px, 1.25vw, 24px);
    /*padding-left: 20px;*/
    padding-left: 1vw;
    border-left: 3px solid #651719;
    /*margin-bottom: 50px;*/
    margin-bottom: 2.604166vw;
    font-weight: 700;
    line-height: 1.8;
}
.section-mv-info-content .txt-box p{
    letter-spacing: 0;
    font-weight: 400;
}
@media screen and (max-width: 1536px){
    .mv-info-info-btn{
        max-width: 28vw;
        height: 6vw;
    }
    .mv-info-info-btn .txt{
        font-size: 1.6vw;
    }
    .mv-info-info-btn::before{
        width: 1.4vw;
        height: 1.4vw;
        right: 0.9vw;
    }
    .section-mv-info-content{
        width: calc(100% - 16vw);
    }
    .section-mv-info-title{
        /*font-size: 1.5625vw;*/
        font-size: clamp(20px, 1.5625vw, 22px);
        padding-left: 1vw;
        margin-bottom: 3vw;
    }
}
@media screen and (max-width: 1336px){
    .mv-info-info-btn{
        max-width: 32vw;
        height: 6.8vw;
    }
    .mv-info-info-btn .txt{
        font-size: 1.8vw;
    }
    .mv-info-info-btn::before{
        width: 1.6vw;
        height: 1.6vw;
        right: 1vw;
    }
    .section-mv-info-content{
        width: calc(100% - 20vw);
    }
    .section-mv-info-title{
        /*font-size: 1.8vw;*/
        font-size: clamp(18px, 1.8vw, 20px);
        padding-left: 1vw;
        margin-bottom: 3vw;
    }
}
@media screen and (max-width: 1280px){
    .mv-info-info{
        margin-bottom: 8vw;
    }
    .mv-info-info-btn{
        max-width: 35vw;
        height: 7.2vw;
    }
    .mv-info-info-btn .txt{
        font-size: 2vw;
    }
    .mv-info-info-btn::before{
        width: 1.7vw;
        height: 1.7vw;
        right: 1.1vw;
    }
    .section-mv-info-bg::before,.webp .section-mv-info-bg::before{
        width: 37.875vw;
        height: 31.125vw;
        box-shadow: 0 0 1.822916vw rgba(0, 0, 0, 0.3);
    }
    .section-mv-info-content{
        width: calc(100% - 28vw);
    }
    .section-mv-info-title{
        font-size: clamp(22px, 2.6vw, 24px);
        padding-left: 1vw;
        margin-bottom: 3vw;
    }
    .section-mv-info-bg{
        padding-bottom: 3vw;
    }
}
@media screen and (max-width: 767px){
    .mv-info-info{
        margin-bottom: 10vw;
    }
    .mv-info-info-btn{
        max-width: 49vw;
        width: 49%;
        height: 9vw;
        padding-right: 1vw;
        box-sizing: border-box;
    }
    .mv-info-info-btn .txt{
        font-size: 2.8vw;
    }
    .mv-info-info-btn::before{
        width: 2.2vw;
        height: 2.2vw;
        right: 1.2vw;
    }
    .section-mv-info-bg{
        width: 90%;
        margin: 0 auto;
        padding-top: 45vw;
    }
    .section-mv-info-bg::before,.webp .section-mv-info-bg::before{
        background: url("../images/index/section-mv-info-bg-sp.jpg");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
        height: 40vw;
        box-shadow: 0 0 1.822916vw rgba(0, 0, 0, 0.3);
    }
    .webp .section-mv-info-bg::before{
        background: url("../images/index/section-mv-info-bg-sp.jpg.webp");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .section-mv-info-content{
        width: 100%;
    }
    .section-mv-info-bg .page-inner{
        max-width: 100vw;
        width: 100%;
    }
    .section-mv-info-title{
        font-size: clamp(18px, 4vw, 22px);
        padding-left: 2vw;
        margin-bottom: 5vw;
    }
    .section-mv-info-bg{
        padding-bottom: 0;
    }
}
@media screen and (max-width: 499px){
    .mv-info-info{
        flex-wrap: wrap;
        gap: 3vw;
    }
    .mv-info-info-btn{
        max-width: 100vw;
        width: 100%;
        height: 14vw;
        padding-right:0;
    }
    .mv-info-info-btn .txt{
        font-size: 4.5vw;
    }
    .mv-info-info-btn::before{
        width: 4vw;
        height: 4vw;
        right: 2.5vw;
    }
    .section-mv-info-title{
        font-size: clamp(18px, 5vw, 22px);;
        padding-left: 2vw;
        margin-bottom: 6vw;
    }
}

/* わたしたちが選ばれる理由 */
.section-reason{
    background-color: #edeae5;
}
.section-reason-flex-box{
    /*margin-bottom: 100px;*/
    margin-bottom: 5vw;
    position: relative;
    /*min-height: 400px;*/
    min-height: 20.8vw;
}
.section-reason-flex-box.box03{
    margin-bottom: 0;
}
.section-reason-flex-box::before{
    content: "";
    position: absolute;
    top:0;
    left: 0;
    /*width: 680px;
    height: 400px;*/
    width: 35.41666666666667vw;
    height: 20.833333333333336vw;
}
.section-reason-flex-box.box01::before{
    background: url("../images/index/section-reason-img01.jpg");
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-reason-flex-box.box02::before{
    background: url("../images/index/section-reason-img02-okamoto-shukiko-sakuma-akihiko.jpg");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: cover;
    left: unset;
    right: 0;
}
.section-reason-flex-box.box03::before{
    background: url("../images/index/section-reason-img03.jpg");
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
}
.webp .section-reason-flex-box.box01::before{
    background: url("../images/index/section-reason-img01.jpg.webp");
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
}
.webp .section-reason-flex-box.box02::before{
    background: url("../images/index/section-reason-img02-okamoto-shukiko-sakuma-akihiko.jpg.webp");
    background-position: top right;
    background-repeat: no-repeat;
    background-size: cover;
    left: unset;
    right: 0;
}
.webp .section-reason-flex-box.box03::before{
    background: url("../images/index/section-reason-img03.jpg.webp");
    background-position: top left;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-reason-flex .page-inner{
    position: relative;
}
.section-reason-flex-box-content{
    /*width: calc(100% - 260px);*/
    width: calc(100% - 13.5416vw);
    margin-left: auto;
}
.section-reason-flex-box.box02 .section-reason-flex-box-content{
    margin-left: 0;
    margin-right: auto;
}
.section-reason-flex-box-reason{
    position: relative;
    margin-bottom: 20px;
    font-family: var(--mincho);
    font-size: 14px;
    font-weight: 700;
    padding-left: 15px;
}
.section-reason-flex-box-reason .txt-big{
    font-size: 18px;
}
.section-reason-flex-box-reason .txt{
    border-bottom: 2px solid #bebebe;
    padding-bottom: 2px;
}
.section-reason-flex-box-reason::before{
    content: "";
    background: url("../images/index/section-reason-flex-box-reason.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 31px;
    height: 25px;
    position: absolute;
    top:5px;
    left: -20px;
}
.section-reason-flex-box h3{
    /*font-size: 28px;*/
    font-size: 1.45833vw;
    font-weight: 700;
    /*margin-bottom: 30px;*/
    margin-bottom: 1.5vw;
}
@media screen and (max-width: 1536px){
    .section-reason-flex-box-content{
        width: calc(100% - 18vw);
    }
    .section-reason-flex-box h3{
        /*font-size: 28px;*/
        font-size: 1.6vw;
        /*margin-bottom: 30px;*/
        margin-bottom: 2vw;
    }
}
@media screen and (max-width: 1336px){
    .section-reason-flex-box-content{
        width: calc(100% - 23vw);
    }
    .section-reason-flex-box h3{
        /*font-size: 28px;*/
        font-size: 2vw;
        /*margin-bottom: 30px;*/
        margin-bottom: 2.5vw;
    }
}
@media screen and (max-width: 1280px){
    .section-reason-flex-box::before{
        width: 42.4992vw;
        height: 24.99996vw;
    }
    .section-reason-flex-box-content{
        width: calc(100% - 32vw);
    }
    .section-reason-flex-box-reason{
        padding-left: 20px;
    }
    .section-reason-flex-box-reason::before{
        left: -15px;
    }
    .section-reason h2{
        font-size:clamp(30px, 2.8vw, 32px);
    }
    .section-reason-flex-box h3{
        /*font-size: 2.2vw;*/
        font-size: clamp(22px, 2.6vw, 24px);
        margin-bottom: 2.8vw;
    }
}
@media screen and (max-width: 1100px){
    .section-reason-flex .page-inner{
        max-width: 94vw;
    }
    .section-reason-flex-box-content {
        width: calc(100% - 40vw);
    }
}
@media screen and (max-width: 767px){
    .section-reason-flex-box{
        width: 90%;
        max-width: 90vw;
        margin: 0 auto 10vw;
        min-height: auto;
        padding-top: 32vw;
    }
    .section-reason-flex-box::before {
        width: 100%;
        height: 30vw;
    }
    .section-reason-flex-box.box01::before{
        background: url("../images/index/section-reason-img01-sp.jpg");
        background-position: top left;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .section-reason-flex-box.box02::before{
        background: url("../images/index/section-reason-img02-okamoto-shukiko-sakuma-akihiko-sp.jpg");
        background-position: top right;
        background-repeat: no-repeat;
        background-size: cover;
        left: unset;
        right: 0;
    }
    .section-reason-flex-box.box03::before{
        background: url("../images/index/section-reason-img03-sp.jpg");
        background-position: top left;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .webp .section-reason-flex-box.box01::before{
        background: url("../images/index/section-reason-img01-sp.jpg.webp");
        background-position: top left;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .webp .section-reason-flex-box.box02::before{
        background: url("../images/index/section-reason-img02-okamoto-shukiko-sakuma-akihiko-sp.jpg.webp");
        background-position: top right;
        background-repeat: no-repeat;
        background-size: cover;
        left: unset;
        right: 0;
    }
    .webp .section-reason-flex-box.box03::before{
        background: url("../images/index/section-reason-img03-sp.jpg.webp");
        background-position: top left;
        background-repeat: no-repeat;
        background-size: cover;
    }
    .section-reason-flex-box .page-inner {
        max-width: 100vw;
        width: 100%;
    }
    .section-reason-flex-box-content{
        width: 100%;
    }
    .section-reason-flex-box-reason{
        padding-left: 35px;
    }
    .section-reason-flex-box-reason::before{
        left: 0;
    }
    .section-reason h2{
        font-size: 4.5vw;
    }
    .section-reason-flex-box h3{
        font-size: clamp(20px, 3.65vw, 24px);
        margin-bottom: 3.5vw;
    }
}
@media screen and (max-width: 499px){
    .section-reason-flex-box{
        padding-top: 38vw;
        margin: 0 auto 15vw;
    }
    .section-reason-flex-box::before {
        height: 35vw;
    }
    .section-reason-flex-box-reason{
        margin-bottom: 15px;
    }
    .section-reason h2{
        font-size: 7vw;
    }
    .section-reason-flex-box h3{
        font-size: clamp(20px, 4.5vw, 22px);
        margin-bottom: 3.5vw;
    }

}

/* ハーグ条約とは？ */
.index-page section.section-about,.webp .index-page section.section-about{
    background: url("../images/index/section-about-bg01.jpg"),url("../images/index/section-about-bg02.jpg"),#edeae5;
    background-position: top left,bottom left;
    background-repeat: no-repeat;
    /*padding-top: 180px;*/
    padding-top: 9.375vw;
}
.webp .index-page section.section-about{
    background: url("../images/index/section-about-bg01.jpg.webp"),url("../images/index/section-about-bg02.jpg.webp"),#edeae5;
    background-position: top left,bottom left;
    background-repeat: no-repeat;
}
h3.section-about-info{
    text-align: center;
    /*font-size: 28px;*/
    font-size: clamp(24px, 1.45833vw, 28px);
    font-weight: 700;
    /*margin-bottom: 40px;*/
    margin-bottom: 2.0833vw;
}
.section-about-list{
    /*margin: 100px 0 130px;*/
    margin: 5.20833vw 0 6.77083vw;
}
.section-about-list-box{
    background-color: #fff;
    box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
    /*margin-bottom: 50px;*/
    margin-bottom: 2.60416vw;
    padding: 45px 0 50px;
    padding: 2.34375vw 0 2.60416vw;
}
.section-about-list-box:last-of-type{
    margin-bottom: 0;
}
.section-about-list .box-inner{
    /*max-width: 880px;*/
    max-width: 45.83333vw;
    width: 94%;
    margin: 0 auto;
}
.section-about-list-box h3{
    /*font-size: 28px;*/
    font-size: clamp(24px, 1.45833vw, 28px);
    color: #651719;
    border-bottom: 3px solid #651719;
    width: fit-content;
    font-weight: 700;
    /*margin-bottom: 30px;*/
    margin-bottom: 1.5625vw;
}
.section-about-btnlist{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /*gap: 30px 0;*/
    gap: 1.5625vw 0;
}
.section-about-btnlist li{
    /*max-width: 320px;*/
    max-width: 16.66666vw;
    width: 32%;
}
.section-about-btnlist li a{
    background: linear-gradient(to bottom, #7b6151 0%, #291914 100%);
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    /*padding: 15px 0;*/
    padding: 0.78125vw 0;
}
.section-about-btnlist li a::before{
    content: "";
    background: url("../images/index/section-about-arw.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 11px;
    height: 12px;
    position: absolute;
    bottom: 8px;
    right: 8px;
}
.section-about-btnlist li .icon{
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    /*min-height: 100px;*/
    min-height: 5.208333vw;
}
.section-about-btnlist li .icon img{
    width: 50%;
}
.section-about-btnlist li .txt{
    /*font-size: 20px;*/
    font-size: clamp(18px, 1.04166vw, 20px);
    font-family: var(--mincho);
    color: #fff;
    text-align: center;
    line-height: 1.3;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}
.section-about h2,h3.section-about-info,.section-about .txt-box.section-top{
    text-shadow: 0 0 2px #edeae4, 0 0 3px #edeae4, 0 0 6px #edeae4, 0 0 8px #edeae4, 0 0 10px #edeae4;
}
.section-about h2::before{
    text-shadow: none;
}
@media screen and (max-width: 1536px){
    h3.section-about-info{
        font-size: clamp(24px, 1.6vw, 28px);
        margin-bottom: 2.4vw;
    }
    .section-about-list{
        margin: 6vw 0 7.5vw;
    }
    .section-about-list .box-inner{
        max-width: 52vw;
    }
    .section-about-list-box h3{
        font-size: clamp(24px, 1.6vw, 28px);
        margin-bottom: 2vw;
    }
    .section-about-btnlist{
        gap: 1.8vw 0;
    }
    .section-about-btnlist li{
        max-width: 19vw;
    }
    .section-about-btnlist li a{
        padding: 0.9vw 0;
    }
    .section-about-btnlist li .icon{
        min-height: 6vw;
    }
    .section-about-btnlist li .txt{
        font-size: clamp(18px, 1.4vw, 20px);
    }
}
@media screen and (max-width: 1336px){
    h3.section-about-info{
        font-size: clamp(24px, 2vw, 28px);
        margin-bottom: 2.4vw;
    }
    .section-about-list .box-inner{
        max-width: 60vw;
    }
    .section-about-list-box h3{
        font-size: clamp(24px, 2vw, 28px);
        margin-bottom: 2vw;
    }
    .section-about-btnlist{
        gap: 2.2vw 0;
    }
    .section-about-btnlist li{
        max-width: 22vw;
    }
    .section-about-btnlist li a{
        padding: 1vw 0;
    }
    .section-about-btnlist li .icon{
        min-height: 7vw;
    }
    .section-about-btnlist li .txt{
        font-size: clamp(18px, 1.6vw, 20px);
    }

}
@media screen and (max-width: 1280px){
    .index-page section.section-about, .webp .index-page section.section-about{
        padding-top: 15vw;
        position: relative;
    }
    .index-page section.section-about::before, .webp .index-page section.section-about::before{
        content: "";
        width: 100vw;
        height: 100%;
        background: rgba(237, 234, 229, 0.85);
        display: block;
        position: absolute;
        top: 0;
    }
    .index-page section .page-inner{
        position: relative;
    }
    .section-about-list{
        margin: 8vw 0 9vw;
    }
    h3.section-about-info{
        font-size: clamp(22px, 2.5vw, 26px);
        margin-bottom: 3vw;
    }
    .section-about-list .box-inner{
        max-width: 66vw;
    }
    .section-about-list-box h3{
        font-size: clamp(22px, 2.5vw, 26px);
        margin-bottom: 2vw;
    }
    .section-about-btnlist{
        gap: 2.2vw 0;
    }
    .section-about-btnlist li{
        max-width: 23.5vw;
    }
    .section-about-btnlist li a{
        padding: 1vw 0 1.3vw;
    }
    .section-about-btnlist li .icon{
        min-height: 8vw;
    }
    .section-about-btnlist li .txt{
        font-size: clamp(18px, 1.8vw, 20px);
    }
}
@media screen and (max-width: 767px){
    .index-page section.section-about, .webp .index-page section.section-about{
        padding-top: 18vw;
    }
    h3.section-about-info{
        font-size: clamp(20px, 3vw, 24px);
        margin-bottom: 3vw;
    }
    .section-about-list .box-inner{
        max-width: 76vw;
    }
    .section-about-list-box h3{
        font-size: clamp(20px, 3vw, 24px);
        margin-bottom: 2.5vw;
    }
    .section-about-list-box{
        margin-bottom: 4vw;
        padding: 3vw 0 3.5vw;
    }
    .section-about-btnlist li{
        max-width: 48.5vw;
        width: 48.5%;
    }
    .section-about-btnlist li a{
        padding: 1.3vw 0 1.6vw;
    }
    .section-about-btnlist li .icon{
        min-height: 10vw;
        margin-bottom: 1.5vw;
    }
    .section-about-btnlist li .txt{
        font-size: clamp(18px, 2.4vw, 20px);
    }
}
@media screen and (max-width: 499px){
    .index-page section.section-about, .webp .index-page section.section-about{
        padding-top: 25vw;
    }
    h3.section-about-info{
        font-size: clamp(20px, 5vw, 22px);
        margin-bottom: 4vw;
    }
    .section-about-list .box-inner{
        max-width: 78vw;
    }
    .section-about-list-box h3{
        font-size: clamp(20px, 5vw, 22px);
        margin-bottom: 3vw;
    }
    .section-about-list-box{
        margin-bottom: 6vw;
        padding: 4vw 0 4.5vw;
    }
    .section-about-btnlist li a{
        padding: 4vw 0 6vw;
    }
    .section-about-btnlist li .icon{
        min-height: 12vw;
        margin-bottom: 1.5vw;
    }

}
@media screen and (max-width: 399px){
    .section-about-btnlist li{
        max-width: 100vw;
        width: 100%;
    }
    .section-about-btnlist {
        gap: 3vw 0;
    }
    .section-about-btnlist li a{
        padding: 4vw 0 4vw;
    }
    .section-about-btnlist li .icon{
        min-height: 12vw;
        margin-bottom: 2vw;
    }
    .section-about-btnlist li .txt{
        font-size: clamp(18px, 4vw, 20px);
    }

}

/* 国内外拠点＋連携事務所 */
.index-page section.section-office{
    background: url("../images/index/section-office-bg.jpg");
    background-position: center bottom;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 10vw;
}
.index-page section.section-office h2{
    margin-bottom: 3vw;
}


.slider {
  width: 100%;
  margin: 0 auto;
}
.slick-track{
    padding: 25px 0;
}
.slide-item {
  /*background: #ddd;
  border-radius: 8px;*/
  background-color: #fff;
  box-shadow: 0 0 25px rgba(0, 0, 0, 0.3);
  padding: 20px;
  font-size: 20px;
  margin: 0 25px;
}
/*※センターを有効にした時に左右半分見切れを出すため*/
.slick-list {
  overflow: visible;
}

.slick-slide {
  /*opacity: 0.5;
  transition: opacity 0.3s;*/
}

.slick-center {
  opacity: 1;
}

.slide-item-box{
    display: flex;
    justify-content: space-between;
}
.slide-item-box-img{
    /*width: 300px;*/
    width: 15.625vw;
}
.slide-item-box-img img{
    width: 100%;
}
.slide-item-box-content{
    /*width: calc(100% - 340px);*/
    width: calc(100% - 17.70833333vw);
    padding-right: 3%;
    box-sizing: border-box;
}
.slide-item-box-title{
    font-family: var(--mincho);
    /*font-size: 20px;*/
    font-size: clamp(18px, 4vw, 20px);
    border-bottom: 1px solid #000;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    font-weight: 600;
}
.slide-item-box-title .txt-small{
    font-size: clamp(16px, 3.5vw, 18px);
}


.slide-item-box-txt{
    font-size: 16px;
    font-weight: 500;
}
button.slick-prev.slick-arrow{
    position: absolute;
    top:50%;
    left: 29.8vw;
    transform: translateY(-50%);
    z-index: 1;
    background: url("../images/index/slider_arrow_left.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 35px;
    height: 35px;
    border: 0;
    font-size: 0;
    cursor: pointer;
}
button.slick-next.slick-arrow{
    position: absolute;
    top:50%;
    right: 29.8vw;
    transform: translateY(-50%);
    z-index: 1;
    background: url("../images/index/slider_arrow_right.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 35px;
    height: 35px;
    border: 0;
    font-size: 0;
    cursor: pointer;
}
    .slick-track{
        display: flex !important;
    }
    .slide-item.slick-slide{
        flex: 1;
        height: auto;
    }
 
@media screen and (max-width: 1536px){
    .index-page section.section-office{
        padding-top: 14vw;
    }
    button.slick-prev.slick-arrow{
        left: 27.5vw;
    }
    button.slick-next.slick-arrow{
        right: 27.5vw;
    }
}
@media screen and (max-width: 1336px){

}
@media screen and (max-width: 1280px){
    .index-page section.section-office{
        padding-top: 16vw;
    }
    .slide-item-box{
        height: 100%;
    }
    .slide-item-box-img{
        width: 18vw;
        overflow: hidden;
        position: relative;
    }
    .slide-item-box-img img{
        height: 100% !important;
        width: auto;
        vertical-align: bottom;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }
    .slide-item-box-content{
        width: calc(100% - 20vw);
    }
    button.slick-prev.slick-arrow{
        left: 20.5vw;
    }
    button.slick-next.slick-arrow{
        right: 20.5vw;
    }
}
@media screen and (max-width: 1023px){
    button.slick-prev.slick-arrow{
        left: 15.5vw;
    }
    button.slick-next.slick-arrow{
        right: 15.5vw;
    }
}
@media screen and (max-width: 767px){
    .index-page section.section-office{
        padding-top: 20vw;
    }
    .slide-item {
        padding: 20px;
        margin: 0 2vw;
    }
    .slide-item-box-img{
        width: 24vw;;
    }
    .slide-item-box-content{
        width: calc(100% - 26vw);
        padding-right: 2%;
    }
    .slide-item-box-title{
        font-size: clamp(16px, 5vw, 18px);
        padding-top: 8px;
        padding-bottom: 8px;
        margin-bottom: 15px;
    }
    .slide-item-box-txt{
        font-size: 14px;
    }
    button.slick-prev.slick-arrow{
        left: 4.5vw;
    }
    button.slick-next.slick-arrow{
        right: 4.5vw;
    }
}
@media screen and (max-width: 499px){
    .index-page section.section-office{
        padding-top: 25vw;
    }
    .slide-item-box{
        flex-direction: column;
        height: auto;
    }
    .slide-item-box-img{
        width: 50%;
        height: 100%;
        margin: 0 auto 10px;
        position: unset;
    }
    .slide-item-box-img img{
        height: auto !important;
        width: 100%;
        position: unset;
        left: 0;
        transform: translateX(0);
    }
    .slide-item-box-content{
        width: 100%;
        padding-right: 0;
    }
    .slick-track{
        display: flex !important;
    }
    .slide-item.slick-slide{
        flex: 1;
        height: auto;
    } 
    button.slick-prev.slick-arrow{
        left: 0
    }
    button.slick-next.slick-arrow{
        right: 0;
    }
}
@media screen and (max-width: 399px){
    .slide-item-box-img{
        width: 65%;
        margin: 0 auto 10px;
    }
}