@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&family=Zen+Kaku+Gothic+New&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap');


:root {

/* Colors: */
--unnamed-color-2c8819: #2C8819;
--unnamed-color-fdf4ea: #FDF4EA;
--unnamed-color-f5f5f0: #F5F5F0;
--unnamed-color-d0b10b: #D0B10B;
--unnamed-color-e3dcb8: #E3DCB8;
--unnamed-color-02a29e: #02A29E;
--unnamed-color-000000: #000000;
--unnamed-color-d66b00: #D66B00;
--unnamed-color-575757: #575757;
--unnamed-color-356e29: #356E29;
--unnamed-color-999999: #999999;
--unnamed-color-ffffff00: #FFFFFF00;
--unnamed-color-e62525: #E62525;
--unnamed-color-eeeeee: #EEEEEE;
--unnamed-color-413123: #413123;
--unnamed-color-391e14: #391E14;
--unnamed-color-ffffff: #FFFFFF;

/* Font/text values */
--unnamed-font-family-zen-old-mincho: Zen Old Mincho;
--unnamed-font-family-roboto: Roboto;
--unnamed-font-family-zen-kaku-gothic-antique: Zen Kaku Gothic New;
--unnamed-font-style-normal: normal;
--unnamed-font-weight-bold: bold;
--unnamed-font-weight-normal: normal;
--unnamed-font-weight-medium: 500;
--unnamed-font-size-14: 14rem;
--unnamed-font-size-18: 18rem;
--unnamed-font-size-21: 21rem;
--unnamed-font-size-25: 25rem;
--unnamed-font-size-12: 12rem;
--unnamed-font-size-13: 13rem;
--unnamed-font-size-15: 15rem;
--unnamed-font-size-16: 16rem;
--unnamed-font-size-17: 17rem;
--unnamed-font-size-20: 20rem;
--unnamed-font-size-24: 24rem;
--unnamed-font-size-28: 28rem;
--unnamed-font-size-30: 30rem;
--unnamed-font-size-32: 32rem;
--unnamed-font-size-34: 34rem;
--unnamed-font-size-40: 40rem;
--unnamed-character-spacing-0: 0rem;
--unnamed-character-spacing-0-34: 0.34rem;
--unnamed-character-spacing-0-3: 0.3rem;
--unnamed-character-spacing-0-24: 0.24rem;
--unnamed-character-spacing-1-8: 1.8rem;
--unnamed-character-spacing-2-25: 2.25rem;
--unnamed-character-spacing-4-5: 4.5rem;
--unnamed-character-spacing-0-26: 0.26rem;
--unnamed-character-spacing-0-32: 0.32rem;
--unnamed-character-spacing-0-34: 0.34rem;
--unnamed-character-spacing-0-4: 0.4rem;
--unnamed-line-spacing-18: 18rem;
--unnamed-line-spacing-27: 27rem;
--unnamed-line-spacing-30: 30rem;
--unnamed-line-spacing-34: 34rem;
--unnamed-line-spacing-34: 34rem;
--unnamed-line-spacing-36: 36rem;
--unnamed-line-spacing-51: 51rem;
--unnamed-line-spacing-54: 54rem;
--unnamed-line-spacing-60: 60rem;
--unnamed-line-spacing-25-200000762939453: 25.200000762939453rem;
--unnamed-line-spacing-28-899999618530273: 28.899999618530273rem;
--unnamed-line-spacing-30-6: 30.6rem;
--unnamed-line-spacing-32-400001525878906: 32.400001525878906rem;
--unnamed-line-spacing-31-5: 31.5rem;
--unnamed-line-spacing-37-5: 37.5rem;
--unnamed-line-spacing-43-20000076293945: 43.20000076293945rem;
--unnamed-line-spacing-50-4: 50.4rem;
--unnamed-line-spacing-54-4: 54.4rem;
--unnamed-line-spacing-25-200000762939453: 25.200000762939453rem;
--unnamed-line-spacing-28-8: 28.8rem;
}


html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote,
pre,abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size: 1px;
letter-spacing: var(--unnamed-character-spacing-0);
vertical-align:baseline;
background:transparent;
}

body {
line-height:1.2;
color: var(--unnamed-color-413123);
font-family: Kaku Gothic New;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
ul {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
text-decoration: none;
background:transparent;
color:#333;
transition: all .3s ease;
}
.clearfix::after {
content:"";
display: block;
clear: both;
font-size: 0;
}
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
mark {
background-color:#ff9;
color:#000;
font-style:italic;
font-weight:bold;
}
del {
text-decoration: line-through;
}
abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}
table {
border-collapse:collapse;
border-spacing:0;
}
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}
input, select {
vertical-align:middle;
}
img {
Width:100%;
}
*,*::after,*::before{
Box-sizing:border-box;
}
p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-16)/var(--unnamed-line-spacing-28-8) var(--unnamed-font-family-zen-kaku-gothic-antique);
    letter-spacing: var(--unnamed-character-spacing-0-32);
    color: var(--unnamed-color-413123);
}
a:hover{
    cursor: pointer;
}
section{
    padding: 180rem 0 190rem;
}
body{
    min-width: 1215rem;
}
img{
    height: auto;
}

/* header */
header{
    position: fixed;
    top: 0;
    left: 0;
    height: 100rem;
    width: 100%;
    background: var(--unnamed-color-ffffff) 0% 0% no-repeat padding-box;
    display: flex;
    justify-content: space-between;
    z-index: 5;
    border-bottom: 2rem solid var(--unnamed-color-e3dcb8);
}
.header-logo{
    width: 230rem;
    height: 30rem;
    margin-top: 35rem;
    margin-left: 50rem;
}
header .global-nav > li > a.current-page{
    color: var(--unnamed-color-356e29);
    position: relative;
}
header .global-nav > li > a.current-page::before{
    content: "";
    position: absolute;
    display: block;
    height: 3rem;
    width: 100%;
    background: var(--unnamed-color-356e29) 0% 0% no-repeat padding-box;
    top: -39rem;
    left: 0;
    z-index: 4;
}


/* bodyのafterにページ最前面の要素を作成 */
    body::after {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color:#fff;/* 色を変えたい場合はこちら */
    z-index: 9999;
    pointer-events: none;
    opacity: 0;
    transition: opacity .2s ease;/* 変化させる時間はこちら */
    }
    body.fadeout::after {
    opacity: 1;
    }
    body{
        opacity: 0;
        -webkit-animation: fadein 1.5s ease  1 forwards;
        animation: fadein 1.5s ease  1 forwards;
    }
    @-webkit-keyframes fadein {
    0% {
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
    }
    @keyframes fadein {
    0% {
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
    }



.pc{
    display: block;
}
.sp{
    display: none;
}
.flex{
    display: flex;
}
.footer-link-list.sp{
    display: none;
}
.global-nav{

    display: flex;
}
.global-nav a{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-16)/var(--unnamed-line-spacing-28-8) var(--unnamed-font-family-zen-kaku-gothic-antique);
    letter-spacing: var(--unnamed-character-spacing-0-32);
    width: 100%;
    height: 100%;
    display: block;
}
.global-nav-has-list p:hover{
    cursor: pointer;
}
.global-nav-has-list{
    position: relative;
}
.global-nav > li{
    margin-right: 30rem;
    padding-top: 37rem;
    position: relative;
}
.global-nav > li::before,.global-nav > li::after{
    content: "";
    position: absolute;
    display: block;
    height: 3rem;
    width: 100%;
    background: var(--unnamed-color-d66b00) 0% 0% no-repeat padding-box;
    top: 0;
    left: 0;
}
.global-nav > li::after{
    background-color: #fff;
    transition: .3s all ease;
}
.global-nav > li:hover:after{
    transform: translateX(100%);
}
.global-nav > li:hover > a,
.global-nav > li:hover > p{
    color: var(--unnamed-color-d66b00);
}
.global-nav-list-child{
    position: absolute;
    bottom: 25rem;
    left: 0;
    min-width: 260rem;
    width: fit-content;
    padding: 20rem 20rem 20rem 45rem;
    background-color: #fff;
    transform: translateY(100%);
    visibility: hidden;
    opacity: 0;
    box-shadow: 0rem 0rem 10rem 0rem rgba(0, 0, 0, 0.15);
    transition: all .3s;
    z-index: 10;
}
.global-nav-has-list:hover .global-nav-list-child{
    visibility: visible;
    opacity: 1;
}
.global-nav-list-child li{
    display: block;
    width: fit-content;
}
.global-nav-list-child > li a{
    position: relative;
    display: block;
    margin-bottom: 15rem;
}
.global-nav-has-remake-list.plan {
    margin-bottom: 20rem;
}
.global-nav-list-child > li:last-of-type a{
    margin-bottom: 0;
}
.global-nav-list-child > li a::before{
    content: "";
    position: absolute;
    display: inline-block;
    width: 22rem;
    height: 22rem;
    background: url("../image/btn_next.svg") center / cover no-repeat;
    top: 50%;
    left: -27rem;
    transform: translateY(-50%);
}
.global-nav-list-child .global-nav-has-remake-list-child > li a::before{
    display: none;
}

.global-nav .global-contact-btn{
    width: 100rem;
    height: 100rem;
    background: var(--unnamed-color-d66b00) 0% 0% no-repeat padding-box;
    margin-right: 0;
    margin-left: 20rem;
    padding-top: 25rem;
    text-align: center;
}
.global-nav .global-contact-btn::after,
.global-nav .global-contact-btn::before{
    display: none;
}
.global-contact-btn img{
    width: 35rem;
    height: 28rem;
}
.global-contact-btn span{
    display: block;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-12)/20rem Noto Sans JP;
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ffffff);
}
.global-nav-has-remake-list-child li a{
    display: flex;
}
.global-remake-child-list-img{
    width: 70rem;
    height: 60rem;
    border-radius: 7rem;
    margin-right: 10rem;
}
/*　スクロールボタン　*/
.remake-link-btn{
    position: fixed;
    width: 155rem;
    height: 155rem;
    bottom: 25rem;
    right: 30rem;
    z-index: 4;
}

.slick-slide img.sp{
    display: none;
}
#mv-content .slick-dotted.slick-slider{
    margin-bottom: 0;
}

/* main */
main#top{
    margin-top: 100rem;
}
#mv-content{
    height: auto;
    position: relative;
    padding: 0;
}

.top-mv-text-content{
    position: absolute;
    top: 236rem;
    left: 15.3%;
    z-index: 4;
    filter: drop-shadow(0rem 0rem 10rem rgba(0,0,0,0.6));
}
.top-mv-text-content h2{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) 40rem/ 60rem var(--unnamed-font-family-zen-old-mincho);
    margin-bottom: 35rem;
    color: var(--unnamed-color-ffffff);
}
.top-mv-text-content p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) 17rem/34rem Zen Kaku Gothic New;
    color: var(--unnamed-color-ffffff);
}
#mv-content .slick-prev,
#mv-content .slick-next{
    width: 22rem;
    height: 22rem;
}
#mv-content .slick-next{
    position: absolute;
    right: auto;
    left: 22.8%;
    top: 590rem;
    z-index: 4;
}
#mv-content .slick-prev{
    position: absolute;
    right: auto;
    left: 20.5%;
    top: 590rem;
    z-index: 4;
}
.slick-next:before{
    content: "";
    background: url('../image/btn_next.svg') center / cover no-repeat;
    display: inline-block;
    width: 100%;
    height: 100%;
    opacity: 1;
}
.slick-prev:before{
    content: "";
    background: url('../image/btn_prev.svg') center / cover no-repeat;
    display: inline-block;
    width: 100%;
    height: 100%;
    opacity: 1;
}
.slick-dots{
    width: fit-content;
    bottom: auto;
    top: 580rem;
    left: 15.3%;
    z-index: 4;
}
.slick-dots li,
.slick-dots li button{
    width: 8rem;
    height: 8rem;
}
.slick-dots li button:before{
    font-size: 8rem;
    color: #575757;
    opacity: 1;
    width: 8rem;
    height: 8rem;
}
.slick-dots li.slick-active button:before{
    color: var(--unnamed-color-d66b00);
    opacity: 1;
}

/* トップページ */
.top-remake-block{
    height: 915rem;
    position: relative;
    background: url("../image/top-remake-bg.svg") center center /cover no-repeat;
    padding-top: 170rem;
}
.top-remake-block .position-img{
    width: calc( 600vw/ ( 1336/ 100));
    max-width: 600rem;
    height: auto;
    position: absolute;
    bottom: 0;
    right: calc( 105vw/ ( 1336/ 100));
}
.top-remake-block-child{
    margin-left: calc( 205vw/ ( 1336/ 100));
}
.top-remake-block-child h2{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) 36rem/var(--unnamed-line-spacing-54) var(--unnamed-font-family-zen-old-mincho);
    margin-bottom: 40rem;
}
.top-remake-block-child p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-17)/var(--unnamed-line-spacing-34) Zen Kaku Gothic New;
    margin-bottom: 50rem;
}

.btn-format{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 290rem;
    height: 80rem;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) 18rem/var(--unnamed-line-spacing-34) Zen Kaku Gothic New;
    background: url("../image/btn-bg.png")  top left / cover no-repeat;
    transition: all ease .3s;
}
.btn-format:hover{
    opacity: .3;
    cursor: pointer;
}
.btn-format:disabled:hover{
    opacity: 1;
}
.btn-format span{
    display: inline-block;
    width: 22rem;
    height: 22rem;
    margin-right: 10rem;
}

.top-about-block{
    background: var(--unnamed-color-f5f5f0) 0% 0% no-repeat padding-box;
}
.top-text-block{
    text-align: center;
    margin-bottom: 60rem;
}
.content-title{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) 36rem/65rem var(--unnamed-font-family-zen-old-mincho);
    width: fit-content;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40rem;
    position: relative;
}
.content-title::before,
.content-title::after{
    content: "";
    display: inline-block;
    height: 65rem;
    width: 12rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.content-title::before{
    background: url('../image/title-befor.svg') top left / cover no-repeat;
    left: -42rem;
}
.content-title::after{
    background: url('../image/title-after.svg') top right / cover no-repeat;
    right: -42rem;
}
.top-text-block .btn-format{
    margin: 50rem auto 0rem;
}
.top-feat-list{
    width: 1060rem;
    background-color: var(--unnamed-color-ffffff);
    margin: 0 auto;
}
.top-feat-list li{
    height: auto;
    padding: 60rem;
    justify-content: space-between;
}
.top-feat-list li img{
    width: 600rem;
    height: 430rem;
}
.feat-lists-text{
    width: 270rem;
}
.feat-lists-text p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-15)/27rem Zen Kaku Gothic New;
}
.feat-lists-text-top{
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    margin-bottom: 30rem;
}
.marker-title{
    writing-mode: vertical-rl;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-17)/19rem Zen Kaku Gothic New;
    letter-spacing: 2rem;
    color: var(--unnamed-color-ffffff);
    background: var(--unnamed-color-413123) 0% 0% no-repeat padding-box;
    padding: 10rem 9rem;
    height: fit-content;
}
.feat-lists-text-top p{
    writing-mode: vertical-rl;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-28)/40rem var(--unnamed-font-family-zen-old-mincho);
    margin-right: 20rem;
    letter-spacing: 5rem;
}
.top-feat-lists01{
    background: url("../image/top-about-bg01.svg") top left/cover no-repeat;
    position: relative;
}
.top-feat-lists01::after{
    content: "";
    display: block;
    width: 100%;
    height: 2rem;
    background: url("../image/top-about-line01.png") top left/cover no-repeat;
    position: absolute;
    bottom: 0;
    left: 0;
}
.top-feat-lists02{
    background: url("../image/top-about-bg02.svg") top left/cover no-repeat;
    position: relative;
}
.top-feat-lists02::after{
    content: "";
    display: block;
    width: 100%;
    height: 2rem;
    background: url("../image/top-about-line02.svg") top left/cover no-repeat;
    position: absolute;
    bottom: 0;
    left: 0;
}

.top-feat-lists03{
    background: url("../image/top-about-bg03.svg") top left/cover no-repeat;
}

.top-plan-list{
    width: 1155rem;
    margin: 0 auto;
}
.top-plan-list li{
    width: calc(100% / 3);
    background: var(--unnamed-color-f5f5f0) 0% 0% no-repeat padding-box;
    padding: 50rem 30rem;
    height: 745rem;
    position: relative;
}
.top-plan-list li > img{
    display: block;
    width: 320rem;
    height: 240rem;
}
.top-plan-list h3{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-24)/43.2rem var(--unnamed-font-family-zen-old-mincho);
    text-align: center;
    margin: 20rem 0;
}
.top-plan-list p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-15)/27rem Zen Kaku Gothic New;
    width: 320rem;
    margin: 0 auto;
}
.top-plan-list .btn-format{
    position: absolute;
    bottom: 30rem;
    left: 50%;
    transform: translateX(-50%);
}
.top-plan-lists:nth-of-type(odd):after{
    content: "";
    display: block;
    width: 2rem;
    height: 100%;
    background: transparent linear-gradient(180deg, #F4D8D0 0%, #FCEBC4 48%, #E7D9D2 100%) 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0;
    right: -1rem;
}
.top-plan-lists:nth-of-type(even)::after{
    content: "";
    display: block;
    width: 2rem;
    height: 100%;
background: transparent linear-gradient(180deg, #CFE5DE 0%, #FCEBC4 48%, #E7D9D2 100%) 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0;
    right: -1rem;
}
.top-plan-lists:last-of-type::after{
    display: none;
}

.top-staff-block{
    background: var(--unnamed-color-e3dcb8) 0% 0% no-repeat padding-box;
    position: relative;
}

.top-staff-slide{
    width: 960rem;
    margin: 0 auto;
}
.top-staff-slide li{
    width: 460rem;
    height: 285rem;
    background-color: #999999;
    margin-right: 15rem;
    margin-left: 15rem;
}
.top-staff-slide li a{
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
    transition: all ease .3s;
}
.top-staff-slide li a:hover{
    opacity: .7;
}
.top-staff-slide li a::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url("../image/top-staff-frame.svg") center / cover no-repeat;
    position: absolute;
}
.top-staff-slide .slick-prev,
.top-staff-slide .slick-next{
    width: 50rem;
    height: 50rem;
}
.top-staff-slide .slick-prev{
    left: -65rem;
}
.top-staff-slide .slick-next{
    right: -65rem;
}
.top-staff-slide .slick-slide{
    margin-right: 30rem;
}
.staff-name{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-32)/40rem var(--unnamed-font-family-zen-old-mincho);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ffffff);
    text-align: center;
    width: fit-content;
}
.staff-name rt{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-15)/15rem var(--unnamed-font-family-zen-old-mincho);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ffffff);
}
.staff-name .name{
    margin-left: 15rem;
}
.top-staff-slide li p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-20)/43.2px var(--unnamed-font-family-zen-old-mincho);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ffffff);
}
.top-staff-block .btn-format{
    margin: 50rem auto 40rem;
}
.top-link-banner{
    position: absolute;
    bottom: -100rem;
    left: 50%;
    transform: translateX(-50%);
    justify-content: space-between;
    width: 930rem;
}
.top-link-banner a{
    display: block;
    width: 450rem;
    height: 200rem;
}

.top-blog-block{
    padding-top: 265rem;
    background-color: var(--unnamed-color-f5f5f0);
}

.blog-list{
    width: 1060rem;
    margin: 0 auto;
    flex-wrap: wrap;
}
.blog-lists{
    width: 330rem;
    margin-right: 35rem;
    margin-bottom: 55rem;
}
.blog-lists:nth-of-type(3n){
    margin-right: 0;
}
.blog-lists img{
    width: 330rem;
    height: 215rem;
}
.blog-lists h3{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-20)/var(--unnamed-line-spacing-34) var(--unnamed-font-family-zen-old-mincho);
    margin: 15rem 0;
}
.blog-cat{
    background: var(--unnamed-color-e3dcb8) 0% 0% no-repeat padding-box;
    border-radius: 2rem;
    height: 25rem;
    text-align: center;
    width: 135rem;
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-13)/25rem Zen Kaku Gothic New;
}
.blog-under-tags time{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-12)/25rem var(--unnamed-font-family-roboto);
    margin-left: 15rem;
}
.top-blog-block .btn-format{
    margin: 15rem auto 0;
}

.footer-top-text-block{
    height: 405rem;
    width: 100%;
    background: url('../image/footer-top-bg.png') bottom center / 100% 100% no-repeat;
    padding-top: 150rem;
    position: relative;
}
.footer-top-text-block::before,
.bg-normal .footer-top-text-block::before{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: #F5F5F0 0% 0% no-repeat padding-box;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}
.footer-top-title{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-28)/42rem var(--unnamed-font-family-zen-old-mincho);
    text-align: center;
}
.footer-top-text-block p{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-15)/27rem Zen Kaku Gothic New;
    text-align: center;
    margin: 30rem 0;
}
.flex-btn-box{
    width: 595rem;
    margin: 0 auto;
    justify-content: space-between;
}
.footer-under-text-block{
    padding: 95rem 0 80rem;
    background: var(--unnamed-color-ffffff) 0% 0% no-repeat padding-box;
}
.footer-link-box > img{
    width: 210rem;
    height: 100%;
}
.footer-link-box{
    width: 960rem;
    justify-content: space-between;
    margin: 0 auto;
}
.footer-link-list .footer-link-lists a{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-16)/24rem Zen Kaku Gothic New;
    color: var(--unnamed-color-391e14);
}
.footer-link-lists-child li a{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-16)/24rem Zen Kaku Gothic New;
    letter-spacing: var(--unnamed-character-spacing-0-32);
    color: var(--unnamed-color-391e14);
}
.footer-remske-list-child li a::before{
    content: "-";
}
.footer-link-list ul li,
.footer-link-list ul li a{
    width: fit-content;
}
.footer-link-list ul li img{
    width: 25rem;
    height: 25rem;
}
.footer-link-list > ul{
    margin-right: 60rem;
}
.footer-link-list .footer-link-list03{
    margin-right: 0;
}
.footer-link-lists-child{
    border-left: 1rem solid #E3DCB8;
    padding-left: 15rem;
    margin-bottom: 20rem;
}
.footer-link-lists-child li{
    margin-bottom: 5rem;
}
.footer-link-lists{
    margin-bottom: 20rem;
}
.footer-link-lists-has-child a{
    margin-bottom: 10rem;
    font:var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-16)/24rem Zen Kaku Gothic New;
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-391e14);
    display: block;
}
.footer-copy-box{
    width: 960rem;
    margin: 70rem auto 0;
    justify-content: space-between;
}
.copy-link-box {
    display: flex;
}
.copy-link-box li a{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-16)/24rem Zen Kaku Gothic New;
    margin-left: 60rem;
}
.blank{
    position: relative;
}
.blank::after{
    content: "";
    display: inline-block;
    width: 8rem;
    height: 8rem;
    position: absolute;
    top: 50%;
    right: -18rem;
    transform: translateY(-50%);
    background: url("../image/blank.svg") top left/ cover no-repeat;
}

/* 下層ページ・共通部分 */
.mv-sub-content{
    width: 100%;
    height: calc( 620vw/ ( 1336/ 100));
    position: relative;
}
.sub-page-title{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) 36rem/var(--unnamed-line-spacing-54) var(--unnamed-font-family-zen-old-mincho);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-ffffff);
    position: absolute;
    top: calc( 311vw/ ( 1336/ 100));
    left: 50%;
    transform: translateX(-50%);
}
#remake .mv-sub-content{
    background: url("../image/about-mv.png") top left/cover no-repeat;
}
#quality .mv-sub-content{
    background: url('../image/quality-mv.png') top left/cover no-repeat;
}
#plan .mv-sub-content{
    background: url('../image/plan-mv.png')top left/cover no-repeat;
}
#faq .mv-sub-content,
#contact .mv-sub-content,
#diagnosis .mv-sub-content{
    background: url('../image/faq-mv.png')top left/cover no-repeat;
    height: calc( 460vw/ ( 1336/ 100));
}
#summary .mv-sub-content{
    background: url('../image/summary-mv.png') top left/cover no-repeat;
}
#blog .mv-sub-content,
#works .mv-sub-content{
    background: url('../image/blog-mv.png') top left / cover no-repeat;
}
#diagnosis .mv-sub-content h1,
#faq .mv-sub-content h1,
#contact .mv-sub-content h1{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-bold) var(--unnamed-font-size-34)/var(--unnamed-line-spacing-51) var(--unnamed-font-family-zen-old-mincho);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-413123);
    top: calc( 255vw/ ( 1336/ 100));
}

.sub-page-links{
    width: 1060rem;
    margin: 0 auto;
    border-top: 1rem solid var(--unnamed-color-e3dcb8);
    padding: 30rem 0;
    justify-content: space-between;
}
.plan-w .links-container,
.plan-w .links-container{
    background-color: #fff;
}
.block-breadcrumb ol{
    display: flex;

}
.block-breadcrumb li{
    margin-right: 35rem;
}
.block-breadcrumb li{
    position: relative;
}
.block-breadcrumb li::after{
    position: absolute;
    content: "";
    display: block;
    width: 15rem;
    height: 21rem;
    background: url('../image/pan-arrow.svg') center center / contain no-repeat;
    top: 50%;
    transform: translateY(-50%);
    right: -25rem;
}
.block-breadcrumb li:last-of-type::after{
    display: none;
}
.block-breadcrumb li span{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-15)/27rem Zen Kaku Gothic New;
    color: var(--unnamed-color-391e14);
    text-decoration: underline;
}
.pagetop_btn{
    font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-16)/24rem var(--unnamed-font-family-zen-kaku-gothic-antique);
    letter-spacing: var(--unnamed-character-spacing-0);
    color: var(--unnamed-color-391e14);
}
.pagetop_btn::after{
    content: "";
    display: inline-block;
    width: 16rem;
    height: 16rem;
    background: url('../image/top-arrow.svg') center center /contain no-repeat;
    margin-left: 10rem;
}
.current{
    pointer-events: none;
}
.current span{
        text-decoration: none !important;
}
.slide-menu {
    display: none;
}
@media screen and (max-width:1255px ){
    .global-nav li{
        display: none;
    }
    .slide-menu {
        display: block;
    }
    .slide-menu .global-nav {
        display: block;
    }
    .slide-menu .global-nav li{
        display: block;
    }
    .global-nav .global-contact-btn{
        display: block;
        transform: translateX(-64rem);
        width: 65rem;
        height: 65rem;
        padding-top: 22rem;
    }
    .global-contact-btn img{
        width: 23rem;
        height: 18rem;
    }
    .global-nav .global-contact-btn span{
        display: none;
    }
    header{
        height: 65rem;
    }
    .header-logo{
        margin-top: 20rem;
        margin-left: 30rem;
        width: 185rem;
    }
    .hum-menu{
        width: 65rem;
        height: 65rem;
        position: fixed;
        z-index: 10;
        background: #413123 0% 0% no-repeat padding-box;
        top: 0;
        right: 0;
    }
    .hum-menu span{
        display: block;
        position: absolute;
        width: 20rem;
        height: 2rem;
        background-color: #fff;
    }
    .hum-menu span:first-of-type{
        top: 26rem;
        left: 50%;
        transform: translateX(-50%);
    }
    .hum-menu span:last-of-type{
        bottom: 26rem;
        left: 50%;
        transform: translateX(-50%);
    }
    .hum-menu span:nth-of-type(2){
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
    }
    .hum-menu:hover{
        cursor: pointer;
    }
    .slide-menu{
        width: 320rem;
        height: calc( var(--vh, 1vh) * 100 );
        position: fixed;
        top: 0;
        right: -100%;
        z-index: 8;
        background-color: var(--unnamed-color-e3dcb8);
        padding: 50rem 0 50rem 40rem;
        overflow-y: scroll;
        /*スクロールバー非表示（IE・Edge）*/
        -ms-overflow-style: none;
        /*スクロールバー非表示（Firefox）*/
        scrollbar-width: none;
        transition: all ease .3s;
    }
    .slide-menu.open{
        right: 0;
    }
    .slide-menu::-webkit-scrollbar{
        display:none;
        }
    .slide-nav > li > a{
        display: inline-block;
        font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-medium) var(--unnamed-font-size-17)/var(--unnamed-line-spacing-30-6) var(--unnamed-font-family-zen-kaku-gothic-antique);
        letter-spacing: var(--unnamed-character-spacing-0-34);
        color: var(--unnamed-color-413123);
        margin-bottom: 15rem;
    }
    .slide-nav-list-child > li a{
        font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-15)/var(--unnamed-line-spacing-27) var(--unnamed-font-family-zen-kaku-gothic-antique);
        letter-spacing: var(--unnamed-character-spacing-0-3);
        color: var(--unnamed-color-413123);
        display: block;
        padding-left: 1em;
        margin-bottom: 10rem;
    }
    .slide-nav-has-remake-list-child > li a{
        padding-left: 0;
        display: block;
        margin-bottom: 10rem;
    }
    .slide-nav .slide-nav-has-list{
        position: relative;
    }
    .slide-nav .slide-nav-has-list > a{
        display: inline-block;
        margin-bottom: 5rem;
    }
    .slide-nav-has-list{
        margin-bottom: 20rem;
    }
    .slide-nav-has-remake-list-child li p{
        font: var(--unnamed-font-style-normal) normal var(--unnamed-font-weight-normal) var(--unnamed-font-size-14)/25.2rem var(--unnamed-font-family-zen-kaku-gothic-antique);
        text-indent: 1em;
    }
    .slide-nav-has-remake-list-child li p::before{
        content: "-";
    }
    .slide-nav .slide-nav-has-list:after{
        content: "";
        position: absolute;
        display: block;
        width: 30rem;
        height: 30rem;
        background: url("../image/sp-menu-arrow.svg") center / 10rem 7rem no-repeat;
        top: 0;
        right: 60rem;
        z-index: 2;
        transform: rotate(0deg);
    }
    .slide-nav-list-child{
        height: 0;
        visibility: hidden;
        opacity: 0;
        transition: all ease .1s;
    }
    .open_nav .slide-nav-list-child{
        height: auto;
        visibility: visible;
        opacity: 1;
        margin-top: 10rem;
    }
    .slide-nav .open_nav.slide-nav-has-list:after{
        transform: rotate(180deg);
    }
}