@charset "utf-8";

/* #region elements & layout styles */
/* typography */
.global-eyebrow{font: 700 var(--fs20) var(--font-pre);letter-spacing: normal;color: var(--primary);text-transform: uppercase;text-align: center;}
.main-heading{margin-top: 10rem;font: 700 var(--fs50) var(--font-pre);text-align: center;}
.main-subheading{margin-top: 10rem;font: var(--fs20)/1.5 var(--font-pre);text-wrap: balance;text-align: center;}
.site-heading{ position: relative; margin-bottom: 3em; font: 700 var(--fs30)/1.5625 var(--font-pre); }
.site-heading:has(b){ font-weight: 400; }
.site-heading::before{ content: ''; position: absolute; bottom: -1.36666667em; width: 100rem; border-top: 1px solid var(--black); }
.site-heading .heading{ font: inherit; }
.sub-subheading{ margin-top: 1em; font: var(--fs20)/1.5 var(--font-pre); text-wrap: balance; }
.sub-description{ font: var(--fs16)/1.875 var(--font-pre); }

/* layout */
.layout-horizontal{ display: grid; row-gap: 5rem;
    .site-heading{ text-wrap: balance; }
    .image-block{ height: 300rem; background: #eee no-repeat 50% / cover; }
    .content-block > *:first-child{ margin-top: 0; }
    .content-block > * ~ *{ margin-top: 3.1875em; }
    @media(width >= 768px){
        &{ grid-template-columns: 5fr 9fr; align-items: start; }
        .site-heading{ margin-bottom: 1.5em; padding-right: 2ch; }
    }
}

/* list */
.disc-list{ padding-left: 1.5em;
    & > li{ position: relative; }
    & > li::before{ content: ''; position: absolute; left: -0.83333333em; top: 0.66666667em; width: 0.22222222em; aspect-ratio: 1; background: currentColor; border-radius: 50%; }
}
.dot-list{ list-style-type: '·'; margin-top: 2.3125em; display: grid; gap: 0.25lh; padding-left: .25em;
    li{ padding-left: .25em; }
}
.hyphen-list{ list-style-type: '-'; margin-top: 1.625em; display: grid; gap: 0.25lh; padding-left: .25em;
    li{ padding-left: .25em; }
}
.numbered-list{ counter-reset: item; margin-top: 1.6875em; display: grid; gap: 1.6875em; font: var(--fs16)/1.875 var(--font-pre);
    .title{ font-size: var(--fs18); color: var(--green); }
    .title::before{ counter-increment: item; content: "("counter(item)")"; margin-right: .4ch; }
}
.plain-list{ margin-top: 1.625em; display: grid; gap: 1.625em; font: var(--fs16)/1.875 var(--font-pre);
    .title{ font-size: var(--fs18); color: var(--green); }
}
.step-list{ counter-reset: item; display: grid; gap: 1.75em;
    .title{ margin-bottom: .1em; font: 700 var(--fs20)/1.5 var(--font-pre); }
    .title::before{ counter-increment: item; content: 'Step 'counter(item)'. '; color: var(--primary); }
    p{ line-height: 1.875; }
}
/* #endregion */

/* #region quick-menu margin */
@media(768px <= width < 1600px){
    article, main > section:not(.main-hero), .main-counseling-overview, .related-agencies, #footer, main.sub{ padding-right: 102rem; }
}
/* #endregion */

/* FP NAV */
/* #fp-nav{display: none;} */
#fp-nav ul li a.active + .fp-tooltip {opacity: 1; width: auto;}
#fp-nav ul li {margin: 5rem 0;display: flex;align-items: center;}
#fp-nav ul li .fp-tooltip {font-size: 13rem; font-weight: 300; padding: 6rem 15rem; border-radius: 30rem; background: rgba(0, 0, 0, 0.7); top: -7rem;}
#fp-nav ul li a span, .fp-slidesNav ul li a span {width: 3rem;height: 3rem;background: rgb(121 121 121 / 50%);}
#fp-nav.white ul li a span {background: rgba(200, 200, 200, 0.5); }
#fp-nav ul li a.active span, .fp-slidesNav ul li a.active span, #fp-nav ul li:hover a.active span, .fp-slidesNav ul li:hover a.active span {background:#C79D4D;width: 6rem;height: 6rem;}
#fp-nav ul li a.active span, .fp-slidesNav ul li a.active span, #fp-nav ul li:hover a.active span, .fp-slidesNav ul li:hover a.active span {margin: -2px 0 0 -2px;}
.fp-viewing-home #fp-nav, .fp-viewing-last-page #fp-nav {display: none !important;}

@media(max-width: 1400px){
    .section, .fp-tableCell { height: auto !important; }
}

/* FP HEADER */
.fp-viewing-greetings, 
.fp-viewing-benefits, 
.fp-viewing-unmatched-value, 
.fp-viewing-success-case, 
.fp-viewing-inquiry, 
.fp-viewing-direction,
.fp-viewing-last-page {

    #header { background: #fff; border-bottom: 1rem solid #22222215;}
    #header .main-menu > li { color: #222; }
    #header .logo .t01 { display: none; }
    #header .logo .t02 { display: block !important; }
}

/* #region main page */
.main-hero{--base-height: unset;contain: content;position:relative;align-content: center;height: 100dvh;padding-top: .3%;background: #000;color: #fff;isolation: isolate;
    .swiper{ position: absolute; inset: 0; z-index: -1; }
    .swiper-slide{ position: relative; height: var(--base-height); }
    .swiper-slide::before{ content: ''; position: absolute; inset: 0; background: #000 no-repeat 50% / cover; }
    .swiper-slide::after { content: ''; position: absolute; background: #000; opacity: 50%; top: 0; left: 0; width: 100%; height: 100%; }
    .slide-1::before{ background-image: url('/assets/images/main/hero-slide-01.webp'); }
    .slide-2::before{ background-image: url('/assets/images/main/hero-slide-02.webp'); }

    .heading{display: grid;gap: .5em;font: var(--fs60) var(--font-pre);text-align: unset;text-wrap: balance;}
    .heading small{font-size: clamp(14rem, .5em, 24rem);}
    .heading b{font-weight: 800;font-family: 'Tenada';font-size: clamp(14rem, 1.2em, 70rem);}

    .control-block{margin-top: calc(var(--fs50) + 1px);display: flex;align-items: center;justify-content: flex-start;gap: 1.25em;}
    .pagination{ display: inline-flex; align-items: center; gap: .625em; width: auto; font: 300 var(--fs16) var(--font-pre); }
    .swiper-pagination-current, .swiper-pagination-total{ min-width: 2ch; }
    .swiper-pagination-current{ font-weight: 700; }
    .swiper-pagination-total{ margin-left: .4ch; }
    .progress{ contain: content; position: relative; display: block; width: 180rem; height: 2px; background: linear-gradient(#fff, #fff) left / calc(var(--progress, 0) * 100%) 100% no-repeat, #FFFFFF4D; border-radius: 5em; }

    .play-toggle{ flex-shrink: 0; align-items: center; width: 40rem; aspect-ratio: 1; border: 1px solid currentColor; border-radius: 50%; }
    .play-toggle::before{ content: ''; display: inline-block; width: 30%; aspect-ratio: 1; background: currentColor; }
    .play-toggle:not(.is-pause)::before{ --p-1: 20%; --p-2: 37.5%; --p-3: 62.5%; --p-4: 80%; clip-path: polygon(0 100%, var(--p-1) 100%, var(--p-1) 0, var(--p-2) 0, var(--p-2) 100%, var(--p-3) 100%, var(--p-3) 0, var(--p-4) 0, var(--p-4) 100%); }
    .play-toggle.is-pause::before{ clip-path: polygon( 10% 0, 90% 50%, 10% 100%); }

    .scroll-wrap {
        position: absolute;width: 110rem;height: calc(100vh - var(--header-height));margin-top: var(--header-height);display: flex;left: 0;top: 0;border-right: 1rem solid #FFFFFF26;align-items: center;justify-content: center;
        
        .scroll-down{position: absolute;inset: unset;font: 300 16rem var(--font-pre);text-transform: unset;text-align: center;display: flex;width: 100%;flex-direction: column;gap: 18rem;align-items: center;}
        .text{writing-mode: sideways-lr;margin: 0;}
        .arrow-line { display: flex; aspect-ratio: 1; width: 35rem; justify-content: center; align-items: center; border: 1rem solid #ddd; border-radius: 50rem; }
        .arrow{margin-inline: 0;display: block;width: 13rem;height: auto;}
    }

    @media(max-width: 1600px){
        .heading { text-align: center; }
        .control-block { justify-content: center; }
    }
    @media(max-width: 767px){
        .scroll-wrap {inset: unset;bottom: 100rem;width: 100%;height: auto;
            .scroll-down { flex-direction: row; justify-content: center; }
            .text { writing-mode: unset; }
        }

    }
}

.main-intro {
    position: relative; height: 100dvh; background: #1C2C4D; display: flex; flex-direction: column; justify-content: center;

    &::before {content: '';background: url(/assets/images/main/law-vector-top.svg) no-repeat;background-size: contain;position: absolute;width: 100%;max-width: 630rem;height: 700rem;bottom: -40rem;right: 1%;opacity: 20%;}
    .container { display: flex; justify-content: flex-end; }
    .big-txt { position: absolute; height: 100vh; top: 0; left: 0; background: url(/assets/images/main/img-bg-sec02.png) no-repeat; background-size: cover; width: calc(100%/2); display: flex; flex-direction: column; justify-content: center; padding-left: 110rem; }
    .big-txt span { font-size: clamp(28rem, calc(72 / var(--container) * 100vw), 72rem); line-height: 1.4; color: #1e2c4c; }
    .big-txt .gold { color: #a66742; }
    .desc { display: flex; flex-direction: column; gap: 50rem; }
    .desc .logogram { max-width: 70rem; }
    .desc > div { font-size: var(--fs30); color: #fff; font-weight: 100; display: flex; flex-direction: column; gap: 30rem; }
    .desc > div b{ font-weight: 700; }
    .desc > div hr { margin: 0; }

    @media(max-width: 1024px){
        & { height: auto; }
        .big-txt { position: relative; width: 100%; height: auto; padding: 50rem; background-size: 110%; }
        .container { padding: 50rem; justify-content: flex-start; }

    }

}

.main-benefits {
    position: relative; padding-block: clamp(50rem, calc(60 / var(--container) * 100vw), 80rem);

    h2 { font-size: var(--fs50); font-weight: 300; color: #1e74bb; }
    h2 b { font-weight: 700; }
    .bene-list { display: flex; gap: 15rem; padding-block: clamp(30rem, calc(60 / var(--container) * 100vw), 60rem); }
    .bene-list li { display: flex; flex-direction: column; padding: 45rem 50rem; background: #f7fafd; border: 1rem solid #0E74BC; align-items: center; text-align: center; gap: 30rem; }
    .bene-list li hgroup span { font-size: var(--fs24); font-weight: 700; margin-bottom: 10rem; display: block; }
    .bot-text { display: flex; justify-content: space-between; align-items: center; }
    .bot-text span { font-size: var(--fs40); color: #1C2C4D; line-height: 1.3; }
    .bot-text span b { color: #A76640; }
    .bot-text p { font-size: var(--fs20); text-align: end; color: #666; }

    @media(max-width: 767px){
        .bene-list { flex-wrap: wrap; }
        .bot-text { flex-direction: column; text-align: left; align-items: flex-start; gap: 20rem; }
        .bot-text p { text-align: left; }
    }

}

#section-law .lawSlider { 
    height: 100vh;

    .slide-pages {position: absolute;display: flex;gap: 30rem;align-items: center;top: calc(var(--header-height) + 70rem);right: 260rem;}
    .slide-pages .swiper-btn > div, .slide-pages .swiper-pagination { display: block; inset: unset; position: relative; }
    .slide-pages .swiper-pagination-fraction { color: #fff; display: flex; gap: 10rem; font-weight: 100; }
    .slide-pages .swiper-pagination-fraction .swiper-pagination-current { font-weight: 600; }
    .slide-pages .swiper-btn { display: flex; gap: 10rem; }
    .slide-pages .swiper-btn .swiper-button-prev::after, .slide-pages .swiper-btn .swiper-button-next::after { font-size: 14rem; }
    .slide-pages .swiper-btn .swiper-button-prev, .slide-pages .swiper-btn .swiper-button-next { margin: 0; width: auto; min-width: 36rem; height: auto; aspect-ratio: 1; display: flex; border: 1rem solid #fff; color: #fff; border-radius: 50rem; align-items: center; justify-content: center; }

    @media(max-width: 1024px){
        & {height: auto;}
        .swiper-wrapper {flex-direction: column;}
        .slide-pages {display: none;}
    }
}

.hundred-promise {
    position: relative;
    height: 100%;
    background: #1C2C4D;
     

    &.type-02 {background: #554F45;}
    &.type-02 .list li::before {background: #C79D4D !important;}
    &.type-02 .list li hgroup span {color: #C79D4D;}

    &::before { content: ''; background: url(/assets/images/main/law-vector.svg) no-repeat; background-size: contain; position: absolute; width: 100%; max-width: 420rem; height: 450rem; bottom: 0; right: 5%; opacity: 5%; }
    .top-img { display: block; width: 100%; position: absolute; top: 0; filter: grayscale(1); }
    .top-img::after { content: ''; position: absolute; display: block; width: 100%; height: 100%; background: #000; opacity: 40%; top: 0; z-index: 1; }
    .top-img img { width: 100%; height: 100%; max-height: 285rem; display: block; object-fit: cover; }
    .swiper { padding-top: var(--header-height); }
    .top-cont { display: flex; min-height: 185rem; align-items: center; justify-content: space-between; }
    .top-cont .title { display: flex; gap: 20rem; align-items: center; font-size: var(--fs30); color: #fff; font-weight: 200; }
    .top-cont .title h4 { font-size: var(--fs50); }
    .top-cont .slide-pages { display: flex; gap: 30rem; align-items: center; }
    .top-cont .slide-pages .swiper-btn > div, .top-cont .slide-pages .swiper-pagination { display: block; inset: unset; position: relative; }
    .top-cont .slide-pages .swiper-pagination-fraction { color: #fff; display: flex; gap: 10rem; font-weight: 100; }
    .top-cont .slide-pages .swiper-pagination-fraction .swiper-pagination-current { font-weight: 600; }
    .top-cont .slide-pages .swiper-btn { display: flex; gap: 10rem; }
    .top-cont .slide-pages .swiper-btn .swiper-button-prev::after, .top-cont .slide-pages .swiper-btn .swiper-button-next::after { font-size: 14rem; }
    .top-cont .slide-pages .swiper-btn .swiper-button-prev, .top-cont .slide-pages .swiper-btn .swiper-button-next { margin: 0; width: auto; min-width: 36rem; height: auto; aspect-ratio: 1; display: flex; border: 1rem solid #fff; color: #fff; border-radius: 50rem; align-items: center; justify-content: center; }
    .swiper-slide { padding-block: 35rem; }
    .list {display: grid;grid-template-columns: repeat(3, 1fr);gap: 25rem 50rem;color: #fff;padding-top: 35rem;border-top: 1rem solid;}
    .list li { position: relative; display: flex; gap: 10rem; font-size: var(--fs30); line-height: 1; font-weight: 100; }
    .list li:nth-child(1)::before,  .list li:nth-child(2)::before,  .list li:nth-child(3)::before {content: '';position: absolute;width: 15rem;height: 15rem;background: #00ADF0;border-radius: 50rem;top: -42rem;}
    .list li em { font-size: var(--fs30); font-weight: 600; line-height: 1; }
    .list li hgroup {display: flex;font-size: var(--fs16);flex-direction: column;gap: 15rem;line-height: 1.3;font-weight: 200;}
    .list li hgroup span { font-size: var(--fs20); color: #00ADF0; font-weight: 600; }

    @media(max-width: 1024px){
        .list { grid-template-columns: repeat(2, 1fr); }
        .top-img img { max-height: 150rem; }
        .top-cont { min-height: auto; }
        .swiper-slide { padding-block: 80rem; }
    }
    @media(max-width: 767px){
        .list { grid-template-columns: repeat(1, 1fr); }
        .list li:nth-child(2)::before,  .list li:nth-child(3)::before {display: none;}
        .swiper { padding-top: 40rem; }
        .top-cont { flex-direction: column; align-items: stretch; justify-content: space-between;}
        .top-cont .title { font-size: 14rem; gap: 6rem; }
        .top-cont .title h4 { font-size: 16rem; }
        .top-cont .title svg { max-width: 35rem; }

    }
}

.main-graph {
    position: relative; padding-top: var(--header-height);

    .graph-value { margin-block: 50rem; }
    .graph-value > h4 { font-size: var(--fs20); padding-left: 20rem; border-left: 2rem solid #c59e50; }
    .graph-value .graph { padding-block: 30rem; }
    .graph-value .graph .top { }
    .graph-value .graph .top ul { display: flex; padding: 20rem; background: #f2f2f2; border: 1rem solid #ddd; }
    .graph-value .graph .top ul li { width: 100%; display: flex; gap: 20rem; align-items: center; font-size: var(--fs20); }
    .graph-value .graph .top ul li em { width: 100%; max-width: 144rem; height: auto; min-height: 35rem; background: #fff; border: 1rem solid #ddd; }
    .graph-value .graph .top ul li.bar02 em { background: linear-gradient(45deg, #647881, #A1B6BF); }
    .graph-value .graph .top ul li.bar03 em { background: linear-gradient(45deg, #B9864F, #EDB981); }
    .graph-value .graph .bottom { position: relative; margin-top: 5rem; }
    .graph-value .graph .bottom ul { display: grid; grid-template-columns: repeat(2, 1fr); gap: 5rem; }
    .graph-value .graph .bottom ul li { padding: 10rem; padding-left: 40rem; border: 1rem solid #ddd; display: flex; gap: 80rem; align-items: center; }
    .graph-value .graph .bottom ul li>span { min-width: 160rem; font-size: var(--fs20); font-weight: 700; }
    .graph-value .graph .bottom ul li .color span { position: relative; width: 100%; min-height: 35rem; background: #f2f2f2; }
    .graph-value .graph .bottom ul li .color span::after { content: ''''; background: #fff; width: 90%; height: 100%; display: block; z-index: 1; position: absolute; top: 0; border: 1rem solid #ddd; border-radius: 0rem 50rem 50rem 0rem; }
    .graph-value .graph .bottom ul li .color { display: flex; gap: 5rem; flex-direction: column; width: 100%; }
    .graph-value .graph .bottom ul li.bar01 .color .white::after { background: #fff; width: 52.1%; }
    .graph-value .graph .bottom ul li.bar01 .color .gray::after { background: linear-gradient(45deg, #647881, #A1B6BF); width: 73.8%; }
    .graph-value .graph .bottom ul li.bar01 .color .gold::after { background: linear-gradient(45deg, #B9864F, #EDB981); width: 57.8%; }
    .graph-value .graph .bottom ul li.bar02 .color .white::after {background: #fff;width: 45.7%;}
    .graph-value .graph .bottom ul li.bar02 .color .gray::after {background: linear-gradient(45deg, #647881, #A1B6BF);width: 69.5%;}
    .graph-value .graph .bottom ul li.bar02 .color .gold::after {background: linear-gradient(45deg, #B9864F, #EDB981);width: 53.3%;}
    .graph-value .graph .bottom ul li.bar03 .color .white::after {background: #fff;width: 45%;}
    .graph-value .graph .bottom ul li.bar03 .color .gray::after {background: linear-gradient(45deg, #647881, #A1B6BF);width: 67.9%;}
    .graph-value .graph .bottom ul li.bar03 .color .gold::after {background: linear-gradient(45deg, #B9864F, #EDB981);width: 62.4%;}
    .graph-value .graph .bottom ul li.bar04 .color .white::after {background: #fff;width: 83.1%;}
    .graph-value .graph .bottom ul li.bar04 .color .gray::after {background: linear-gradient(45deg, #647881, #A1B6BF);width: 100%;border-radius: 0;}
    .graph-value .graph .bottom ul li.bar04 .color .gold::after {background: linear-gradient(45deg, #B9864F, #EDB981);width: 53.3%;}
    .bot-txt { font-size: var(--fs24); text-align: center; }
    .bot-txt b { color: #C79D4D; }

    @media(max-width: 1024px){
        .graph-value .graph .bottom ul li { gap: 10rem; padding-left: 20rem; flex-direction: column; }
        .graph-value .graph .bottom ul li>span { min-width: 120rem; font-size: 14rem; }
        .graph-value .graph .top ul li em { max-width: 60rem; }
        .graph-value .graph .top ul li { font-size: 14rem; gap: 10rem; }
    }
    @media(max-width: 767px){
        .graph-value .graph .top ul { flex-direction: column; gap: 10rem; }
        .graph-value .graph .bottom ul { grid-template-columns: 1fr; }
    }
}

.main-case{contain: content;padding: 0;height: 100%;display: flex;align-items: center;padding-top: var(--header-height);background: #fff;

    .main-heading, .main-subheading { color: #222; }
    .tab::before{ color: #fff; }
    .tablist { gap: 0; margin-top: clamp(50rem, calc(50 / var(--container) * 100vw), 50rem); }
    .tab { color: #999; border: 0; border-bottom: 1rem solid #ddd; }
    .tab[aria-selected="true"] { background: transparent; border-bottom: 3rem solid var(--primary); color: #222; font-weight: 700; }
    .link{ display: block; padding: 2.5625em 1.6875em; background: #fff; border: 1px solid var(--border-color); color: var(--black); }
    .category{ display: block; font: 700 var(--fs18) var(--font-pre); color: var(--primary); }
    .title{ margin-top: 1em; font: 600 var(--fs20)/1.5 var(--font-pre); }
    .description{ margin-top: 2.5em; font: var(--fs16)/1.5625 var(--font-pre); color: var(--gray); }
    .swiper-pagination-fraction { color: #222; }
    .swiper-button { border-color: #222; }
    .swiper-button::before{ background-image: url('/assets/images/main/global-nav-arrow-black.svg'); }

    @media(max-width: 767px){
        &{padding-bottom: var(--header-height);}
    }
}

.main-column{contain: content;padding-block: 0;height: 100%;background: #000 url('/assets/images/main/case-bg.webp') no-repeat 50% / cover;color: #fff;display: flex;align-items: center;padding-top: var(--header-height);

    .tablist { gap: 0; margin-top: clamp(50rem, calc(50 / var(--container) * 100vw), 50rem); }
    .tab {color: #999;border: 0;border-bottom: 1rem solid #555;}
    .tab[aria-selected="true"] {background: transparent;border-bottom: 3rem solid var(--primary);color: #fff;font-weight: 500;}
    .link{ display: block; background: #fff; border: 1px solid var(--border-color); }
    .image-block{ position: relative; display: block; aspect-ratio: 335/298; max-height: 296rem; }
    .title{ margin: 1.05555556em; font: var(--fs18) var(--font-pre); }
    .swiper-button::before { background-image: url('/assets/images/main/global-nav-arrow-white.svg'); }

    @media(max-width: 767px){
        &{padding-bottom: var(--header-height);}
    }
}

.main-counseling-overview{background: #fafafa;color: unset;height: 100%;display: flex;align-items: center;padding-block: var(--header-height);
    .container{ display: grid; gap: 50rem clamp(10rem, calc(60 / var(--container) * 100vw), 60rem); }
    .main-heading{margin-bottom: 50rem;text-align: left;font-size: var(--fs40);margin-top: 0;}
    @media(width >= 1024px){
        .container{ grid-template-columns: repeat(2, 1fr);padding-top: var(--header-height); }
    }
}

.main-live-status{
    .list{display: grid;gap: 0;} 
    .link{position: relative;display: grid;grid-template-columns: 1fr auto;font-weight: 500;border-bottom: 1rem solid #ddd;}
    .title{position: relative;padding: 1.1875em 1.9375em 1.0625em 4.3125em;background: transparent;color: var(--black);}
    .title::before{ content: ''; position: absolute; inset: 0 auto 0 1.9375em; display: inline-block; width: 1.125em; aspect-ratio: 18/20; background: no-repeat 50% / contain; }
    .title--open::before{ background-image: url('/assets/images/main/live-status-lock-open.svg'); }
    .title--locked::before{ background-image: url('/assets/images/main/live-status-lock-locked.svg'); }
    .status{padding: 8rem;color: #fff;position: absolute;top: 50%;transform: translateY(-50%);right: 0;width: 100rem;text-align: center;border-radius: 50rem;}
    .status--consulted{ background: #5982EA; }
    .status--received{background: #999999;}
}

.main-booking-request{
    fieldset{ margin: 0; padding: 0; border: 0; display: grid; gap: clamp(5rem, calc(15 / var(--container) * 100vw), 15rem); }
    .field{padding: 1.1875em 1.25em 1.0625em;width: 100%;min-height: 3.75em;background: #fff;border: 0;border: 1rem solid #ddd;color: var(--black);}
    .field::placeholder, select:has([value=""]:checked){color: #999;}
    select.field{appearance: none;padding-inline: calc(1.25em - .4ch) calc(31rem + 1ch);background: #fff url('/assets/images/components/select-arrow.svg') no-repeat calc(100% - 19rem) 50% / 12rem;}
    option{ color: var(--black); }
    textarea{ display: block; height: 8.4375em; resize: none; }
    .privacy-block{margin-top: 1.0625em;color: #222;}
    .privacy-label{ display: inline-flex; align-items: center; gap: 1ch; }
    .privacy-checkbox{ width: .9375em; height: .9375em; }
    .privacy-button{ vertical-align: text-bottom; }
    .submit-inquiry{margin-top: 1.25em;width: 100%;padding: .9em 1ch;background: var(--primary);font: 500 var(--fs20) var(--font-pre);color: #fff;}
    @media(width >= 768px){
        fieldset{ grid-template-columns: repeat(2, 1fr); }
        label:has(textarea){ grid-column: 1/-1; }

    }
}

.main-location{padding-block: 0;height: 100%;display: flex;align-items: center;padding-top: var(--header-height);
    .container{display: flex;gap: 50rem clamp(10rem, calc(80 / var(--container) * 100vw), 80rem);padding-left: 80rem;}
    .map-block{position: relative;width: 100%;max-width: 960rem;height: auto;overflow: hidden;z-index: 2;}
    .root-map{ z-index: 0; width: 100%; }
    .root-map .wrap_map{height: 100%;}
    .root-map svg{ pointer-events: none; }
    .map_border, .wrap_controllers, .cont{ display: none; }
    .link{ position: absolute; right: 0; bottom: 0; z-index: 1; display: flex; align-items: center; justify-content: center; gap: 1.61111111em; max-width: 14.22222222em; width: 100%; padding: 1.33333333em 1ch; background: #222; font: 700 var(--fs18) var(--font-pre); color: #fff; }
    .link::after{ content: ''; display: inline-block; width: 0.88888889em; aspect-ratio: 16/15; background: url('/assets/images/main/location-blank-arrow.svg') no-repeat 50% / contain; }
    .global-eyebrow { text-align: left; letter-spacing: .5em; font-weight: 300; }
    .main-heading { text-align: left; font-size: var(--fs40); margin-top: 20rem; }
    .list{ margin-top: clamp(40rem, calc(50 / var(--container) * 100vw), 50rem); font-size: var(--fs18); }
    .item:not(:first-child){ display: grid; grid-template-columns: 9.6ch 1fr; gap: 2ch; }
    dt{ color: var(--gray); }
    dd{ font-weight: 600; color: #000; }
    .address{ margin-bottom: 0.36363636em; display: block; font-size: 1.22222222em; }
    .font-400{ font-weight: 400; }
    .divisor{ margin-block: 2.55555556em 2.61111111em; border-top: 1px solid var(--border-color); }
    .divisor ~ .item{ margin-top: 0.77777778em; }
    .note{ line-height: 2; color: var(--gray); }

    .item-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10rem; }
    .item-list li { padding: 22rem; display: flex; align-items: center; gap: 20rem; min-height: 90rem; min-width: 300rem; background: #f9f8f4; border-left: 1rem solid #c79d4d; font-weight: 700; font-size: 16rem; line-height: 1.1; }

    @media(width >= 768px){
        .root-map .wrap_map{height: 650rem;}
    }
    @media(max-width: 1500px){
        .map-block { max-width: 750rem; }
    }
    @media(max-width: 1024px){
        & { flex-direction: column; padding-block: 50rem; }
        .map-block { position: relative; max-width: unset; margin-bottom: 40rem; }
        .root-map .wrap_map { height: 360rem !important; }
        .container { justify-content: flex-end; }
    }
    @media(max-width: 767px){
        .item-list {grid-template-columns: repeat(1, 1fr); }
    }
}


/* #endregion main page */
