@charset "UTF-8";
/*
Theme Name: たみつテーマ
Theme URI: https://xeory.jp/extension
Template: xeory_extension
Author: WU
Version: 1.0.0
*/

/* PLACEHOLDER */
.ph img{
    width:100%;
    max-width:100%;
}

/* SETTINGS */
:root{
    --color-base: #251e1c;
    --color-secondary: #312b2a;

    --color-bg:#e7e5e4;

    --font-gothic: "游ゴシック", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic", sans-serif;
    --font-mincho: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    --font-biosans: "bio-sans", sans-serif;

    --transition:all .2s ease;
    --transition-middle:all .6s ease;
    --transition-long:all 1.2s ease;

    --px10: calc(100vw / 1960 * 10);
    --wrapwide: 154rem;
}

.font-mincho{
    font-family: var(--font-mincho);
}
.font-biosans{
    font-family: var(--font-biosans);
    font-style:normal;
}

html{
    /* 1rem = 10px:1920 */
    font-size: var(--px10);
}
body{
    font-family:var(--font-gothic);
    color: var(--color-base);
    background: var(--color-bg);
}

.bg-white{
    background:#FFF;
}

/* COMMON */
p,h1,h2,h3,h4,h5,h6,li,span,small,em,dt,dd,th,td{
	line-height:calc(34 / 20);
	letter-spacing:0;
	padding:0;
	margin:0;
}
a,a:hover{
    color:var(--color-base);
    text-decoration:none;
}
ul,ol,dl{
    padding:0;
    margin:0;
}

.center{
	text-align:center;
}
.right{
	text-align:right;
}

.flex{
	display:flex;
	flex-wrap:wrap;
}
.jc-sb{
	justify-content:space-between;
}
.jc-center{
	justify-content:center;
}
.al-center{
	align-items:center;
}
.al-end{
	align-items:flex-end;
}
.fd-row-r{
	flex-direction:row-reverse;
}
.fd-col-r{
	flex-direction:column-reverse;
}

.ps-re{
	position:relative;
}
.ps-ab{
	position:absolute;
}
.ps-fix{
	position:fixed;
}
.ps-st{
	position:sticky;
}


.vert{
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
}

.wrap,
body.home .wrap{
    width:100%;
    max-width:var(--wrapwide);
    margin:0 auto;
    padding:0 20px;
}

.padding-tb{
    padding:15rem 0;
}
.padding-t{
    padding-top:15rem;
}
.padding-b{
    padding-bottom:15rme;
}


/* PARTS */
.main-vm a{
    display:inline-flex;
    align-items:center;
    justify-content:flex-start;
    gap:20px;
    padding:0 4px 6px; 
    font-size:23px;
    line-height:1;
    color:var(--color-base);
    border-bottom:2px solid var(--color-base);
}
.main-vm a::after{
    content:'';
    display:block;
    width:14px;
    height:14px;
    background:no-repeat center/contain url('img/common/icon-plus-black.svg');
    transition:var(--transition-middle);
}
.main-vm a:hover::after{
    transform:rotate(180deg);
}
.main-vm.white a{
    color:#FFF;
    border-color:#FFF;
}
.main-vm.white a::after{
    background:no-repeat center/contain url('img/common/icon-plus-white.svg');
}

.common-sectitle__en{
    margin-bottom:3.8rem;
}
.common-sectitle__en span{
    display:inline-block;
    line-height:1;
    font-size:3.1rem;
    background:#FFF;
}
.common-sectitle__en span em{
    font-style:normal;
    font-weight:bold;
    line-height:1;
}
.common-sectitle__jp{
    font-size:4.3rem;
    font-weight:600;
    letter-spacing:0.29em;
}

p.notfound{
    font-size:1.8rem;
}


/* HEADER */
.main-header{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index:999;

    display:flex;
    justify-content:space-between;
    align-items:flex-start;

    pointer-events:none;
}
.main-header__logo,
.main-header__toggler{
    pointer-events:all;
}
.main-header__logo{ 
    padding-top:calc(7 * var(--px10));
    padding-left:calc(7 * var(--px10));
    transition:var(--transition);
}
.main-header__logo.pagelogo{ 
    padding-top:calc(2.6 * var(--px10));
    padding-left:calc(2.6 * var(--px10));
    transition:var(--transition);
}
.main-header.drawer-opened .main-header__logo:not(.pagelogo),
.main-header.scrolled .main-header__logo:not(.pagelogo){
    padding-top:calc(4 * var(--px10));
    padding-left:calc(4 * var(--px10));
}
.site-logo img{
    width:calc(12.45 * var(--px10));
    transition:var(--transition);
}
.pagelogo .site-logo img{
    width:calc(16.7 * var(--px10));
}
.main-header.drawer-opened div:not(.pagelogo) .site-logo img,
.main-header.scrolled div:not(.pagelogo) .site-logo img{
    width:calc(10 * var(--px10));
    filter:drop-shadow(0 0 5px rgba(0,0,0,0.3));
}
.main-header.drawer-opened  .pagelogo .site-logo img,
.main-header.scrolled .pagelogo .site-logo img{
    filter:drop-shadow(0 0 5px rgba(0,0,0,0.3));
}

.main-header__toggler{
    padding-top:calc(2.4 * var(--px10));
    padding-right:calc(2.4 * var(--px10));
}
.main-toggler{
    display:flex;
    gap:20px;
    align-items:center;
    transition:var(--transition);
    color:#FFF;
    cursor:pointer;
}
.main-toggler:hover{
    color:#FFF;
}
.main-toggler__icon__left,
.main-toggler__icon__right{
    display:block;
    width:7.7px;
    height:28px;
    transition:var(--transition);
}
.main-toggler__icon__left{
    background:no-repeat center/contain url('img/common/icon-menuleft.svg');
}
.main-toggler__icon__right{
    background:no-repeat center/contain url('img/common/icon-menuright.svg');
}
.main-toggler__text{
    font-size:20px;
    font-weight:bold;
    transition:var(--transition);
}
.main-toggler__text{
    color:#FFF;
}
.main-header.drawer-opened .main-toggler__icon__left,
.main-header.drawer-opened .main-toggler__icon__right,
.main-header.scrolled .main-toggler__text{
    filter:drop-shadow(0 0 5px rgba(0,0,0,0.3));
}

/* DRAWER */
.main-drawer{
    position:fixed;
    top:0;
    right:0;
    z-index:998;
    width:100%;
    max-width:300px;
    height:100vh;
    background:var(--color-base);
    padding:40px;
    padding-top:100px;
    transition:var(--transition);
    transform:translateX(101%);
}
.main-drawer.open{
    transform:translateX(0);
}
.main-drawer__inner{
    height:100%;
    overflow-y:scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.main-drawer__inner::-webkit-scrollbar {
    display:none;
}
.main-drawer__menu{
    position:relative;
}
.main-drawer__menu:not(:last-child)::after{
    content:'';
    width:60px;
    height:2px;
    background: rgba(255,255,255,0.4);
    position:absolute;
    right:0;
    bottom:0;
}
.main-drawer__menu:not(:last-child){
    padding-bottom:12px;
    margin-bottom:12px;
}
.main-drawer__menu a{
    display:block;
    text-align:right;
    color:#FFF;
}
.main-drawer__menu__en{
    font-size:10px;
    line-height:2;
    font-weight:bold;
    color:rgba(255,255,255,0.6);
}
.main-drawer__menu__jp{
    font-size:16px;
    font-weight:bold;
}

.main-drawer-bg{
    background:rgba(0,0,0,0.5);
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:996;
}

/* FOOTER */
.main-footer__menus{
    display:flex;
}
.main-footer__menu{
    height:50rem;
    padding-top:10rem;
}
.main-footer__menu--company{
    color:#FFF;
    background:var(--color-base);
    width:calc(1397 / 1920 * 100%);
}
.main-footer__menu--contact{
    color:#FFF;
    background:var(--color-secondary);
    width:calc(523 / 1920 * 100%);
    padding-top:12.5rem;
}
.main-footer__menu--company__title{
    font-size:9rem;
    font-weight:200;
    line-height:1;
    text-align:center;
    margin-bottom:3.4rem;
    letter-spacing:0;
}
.main-footer__menu--company__title--jp{
    font-size:2.8rem;
    text-align:center;
}
.main-footer__menu--company__vm{
    margin-top:10rem;
}
.main-footer__menu--contact__title{
    font-size:1.7rem;
    letter-spacing:0.2em;
    text-align:center;
    line-height:1;
    margin-bottom:7.6rem;
}
.main-footer__menu--contact__link{
    text-align:center;
}
.main-footer__menu--contact__link a{
    text-align:center;
    font-size:6rem;
    font-weight:200;
    line-height:1;
    display:inline-block;
    color:#FFF;
    border-bottom:2px solid #FFF;
    padding-bottom:10px;
    letter-spacing:0;
}

.main-footer__infos{
    padding:2.7rem 5.3rem 3.3rem 9rem;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
}
.main-footer__logos{
    display:flex;
    align-items:center;
    gap:6.7rem;
}
.main-footer__info__subtitle{
    font-size:1.4rem;
    margin-bottom:1rem;
}
.main-footer__info__title{
    font-size:1.6rem;
    margin-bottom:0.5em;
}
.main-footer__info__address{
    font-size:1.2rem;
    line-height:2;
}
.main-footer__info__address a{
    cursor:pointer;
    text-decoration:none;
    color:var(--color-base);
}
.main-footer__bottom__snses{
    display:flex;
    justify-content:center;
    gap:3.5rem;
}
.main-footer__copyright{
    margin-top:3.5rem;
    font-size:1.2rem;
    text-align:center;
}

.footer-maintenancebanner{
    padding:14rem 0 12rem;
    position:relative;
    background:#FFF;
}
.footer-maintenancebanner__title{
    text-align:center;
    margin-bottom:12rem;
}
.footer-maintenancebanner__title--en{
    font-size:8.6rem;
    font-weight:300;
}
.footer-maintenancebanner__title--en em{
    font-style:normal;
    font-weight:bold;
}
.footer-maintenancebanner__title--jp{
    font-size:3.5rem;
}
.footer-maintenancebanner__fieldtext{
    position:absolute;
    font-size:2.9rem;
}
.footer-maintenancebanner__fieldtext span{
    color:#FFF;
    background:var(--color-base);
    display:block;
    width:max-content;
    line-height:1;
}
.footer-maintenancebanner__fieldtext.n1{
    left:30rem;
    top:35rem;
}
.footer-maintenancebanner__fieldtext.n2{
    right:13rem;
    top:14rem;
}
.footer-maintenancebanner__fieldtext.n1 span:nth-of-type(1){
    margin-bottom:1em;
}
.footer-maintenancebanner__fieldtext.n1 span:nth-of-type(2){
    margin-left:2em;
}
.footer-maintenancebanner__fieldtext.n2 span:nth-of-type(1){
    margin-bottom:0.5em;
    letter-spacing:-0.1em;
}
.footer-maintenancebanner__fieldtext.n2 span:nth-of-type(2){
    -ms-writing-mode:tb-rl;
    writing-mode:vertical-rl;
    margin-left:auto;
    letter-spacing:0;
    width:1em;
    height:6em;
}


.footer-dialogbanner{
    position:relative;
}
.footer-dialogbanner__img{
    position:relative;
    z-index:1;
    overflow:hidden;
}
.footer-dialoguebanner__link{
    position:absolute;
    z-index:2;
    bottom:8rem;
    left:0;
    width:100%;
}


/* TOP */
.top-scsection{
    position:relative;
}
.top-scsection__bg{
    position:sticky;
    top:0;
    left:0;
    z-index:-1;
    width:100vw;
    height:100vh;
}
.top-scsection__bg--img{
    position:relative;
    display:table;
    z-index:1;
    width:100%;
    height:100%;
    overflow:hidden;
}
.top-scsection__bg--img img{
    width:calc(100% + 60px);
    height:calc(100% + 60px);
    max-width:unset;
    position:relative;
    top:0px;
    left:0px;
    object-fit:cover;
    object-position:center;
    margin:-30px;
    transition:var(--transition-middle);
}
.top-scsection__bg--cover{
    position:absolute;
    z-index:2;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background:var(--color-base);
    opacity:0.3;
    transition:var(--transition-middle);
    mix-blend-mode:multiply;
}

.top-headline{
    position:absolute;
    right:0;
    top:100dvh;
    background:var(--color-secondary);
    color:#FFF;
    transform:translateY(-100%);
    padding:4.2rem;
    min-width:54.4rem;
    transition:var(--transition);
}
@media only screen and (min-width:1025px){
    .top-headline.scrolled{
        opacity:0;
    }
}
.top-headline__date{
    font-size:1.7rem;
    margin-bottom:0.8rem;
}
.top-headline__title{
    font-size:2.4rem;
}
.top-headline__vm{
    margin-top:3.5rem;
}

.top-mv{
    height:100vh;
    min-height:600px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.tpo-mv__title{
    color:#FFF;
    margin:0 auto;
    font-size:4.1rem;
    line-height:calc(85/41);
    letter-spacing:0.5em;
    width:8em;
    height:7.5em;
}

.top-topics__title{
    color:#FFF;
    margin-bottom:10rem;
}
.top-topics__title--en{
    font-size:3.1rem;
}
.top-topics__title--jp{
    font-size:4.1rem;
}
.top-topics .topics-article a{
    color:#FFF;
}
.top-topics__vm{
    margin-top:10rem;
}

.top-concept{
    padding-bottom:36rem;
}
.top-concept__title{
    font-size:3.1rem;
    margin-bottom:17rem;
    color:#FFF;
}
.top-concept__flex__content{
    width:82.2rem;
}
.top-concept__maintext{
    color:#FFF;
    font-size:2.3rem;
    line-height:calc(87/23);
}
.top-concept__flex__img{
    width:58.9rem;
    position:relative;
}
.top-concept__mainimg{
    position:sticky;
    top:50%;
    left:0;
}
.top-concept__mainimg img{
    transform:translateY(-50%);
}
.top-concept__vm{
    margin-top:25rem;
}

.top-works__title{
    text-align:center;
    margin-bottom:10rem;
}
.top-works__title--en{
    font-size:2.3rem;
}
.top-works__title--jp{
    font-size:4.1rem;
}
.top-works__vm{
    margin-top:10rem;
}

.top-secret__title{
    margin-bottom:3rem;
    text-align:center;
}
.top-secret__title--jp{
    font-size:4.1rem;
    letter-spacing:0.5em;
}
.top-secret__title--en{
    font-size:3.1rem;
}

.top-secret-h4title span{
    display:block;
    color:#FFF;
    width:max-content;
    height:max-content;
    background:var(--color-base);
    font-size:3.2rem;
    line-height:1;
    font-family:var(--font-mincho);
}
.top-secret-textbox{
    font-size:1.9rem;
    line-height:calc(37/19);
    background:#FFF;
    max-width:48.3rem;
}

.top-secret-s1__title{
    font-size:7.7rem;
    line-height:1;
    background:#FFF;
    width:1em;
    height:8em;
    white-space:nowrap;
    overflow:hidden;
    letter-spacing:0.5em;
}
.top-secret-s1__contentbox{
    position:relative;
}
.top-secret-s1__titleimg__title{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    font-size:3.2rem;
    gap:1em;
}
.top-secret-s1__textbox{
    margin-left:auto;
}

.top-secret-s1__nextbox__title{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    margin-top:28rem;
}
.top-secret-s1__nextbox__title span:nth-of-type(1){
    margin-bottom:1em;
    margin-right:4em;
}

.top-secret-s2__l,
.top-secret-s2__r{
    position:relative;
}
.top-secret-s2__l__title{
    display:flex;
    align-items:flex-end;
}
.top-secret-s2__l__title span{
    color:#FFF;
    background:var(--color-base);
    font-size:5.5rem;
    line-height:1;
    width:max-content;
    height:max-content;
    font-family:var(--font-mincho);
}

.top-secret-s2__r__mainbox{
    display:flex;
    align-items:center;
    flex-direction:row-reverse;
}
.top-secret-s2__r__mainbox__img{
    position:relative;
    z-index:1;
    width:65.8rem;
}
.top-secret-s2__r__mainbox__img img{
    max-width:unset;
    width:84.8rem;
}
.top-secret-s2__r__mainbox__text{
    position:relative;
    z-index:2;
    width:54rem;
}
.top-secret-textbox.top-secret-s2__textbox{
    max-width:54rem;
}

.top-secret-s2__r__hvimg{
    position:absolute;
    bottom:-4rem;
    right:-6rem;
    width:33.1rem;
}
.top-secret__vm{
    position:relative;
    z-index:3;
    margin-top:-6rem;
}


@media only screen and (min-width:1025px){
    .top-secret-s1__contentbox{
        width:77.6rem;
        order:1;
    }
    .top-secret-s1__titleimg__img{
        width:87.9rem;
        max-width:unset;
        position:relative;
        left:-10.3rem;
    }
    .top-secret-s1__titleimg__title{
        position:absolute;
        left:-15rem;
        top:34.5rem;
    }
    .top-secret-s1__titlebox{
        order:2;
        width:7.7rem;
        padding-top:30rem;
    }
    .top-secret-s1__nextbox{
        order:3;
        width:45.2rem;
    }
    .top-secret-s1__nextbox__title{
        position:relative;
        left:calc((100vw - var(--wrapwide)) / 2 + 20px);
    }

    .top-secret-s2{
        margin-top:-4.2rem;
    }
    .top-secret-s2__l{
        width:20.86%;
    }
    .top-secret-s2__r{
        width:79.13%;
    }

    .top-secret-s2__l__imgt{
        margin-top:-14.7rem;
    }
    .top-secret-s2__l__imgt img{
        width:39.7rem;
        max-width:unset;
        position:relative;
        left:-12.6rem;
        margin-right:4.2rem;
    }

    .top-secret-s2__l__title{
        margin-top:-5.9rem;
        margin-left:-7.8rem;
        position:relative;
        z-index:2;
    }

    .top-secret-s2__l__imgb{
        margin-top:-10rem;
        position:relative;
        z-index:1;
    }
    .top-secret-s2__l__imgb img{
        width:60.5rem;
        max-width:unset;
        margin-left:-11.6rem;
    }

}


.top-architect{
    position:relative;
    width:100vw;
    height:155.5rem;
}
.top-architect__imgs__title{
    position:absolute;
    z-index:1;
}
.top-architect__person{
    position:absolute;
    z-index:1;
}
.top-architect__img{
    position:absolute;
    z-index:1;
}
.top-architect__cover{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:var(--color-base);
    opacity:0.33;
    mix-blend-mode:multiply;
    z-index:2;
}
.top-architect__title,
.top-architect__link,
.top-architect__vm{
    position:absolute;
    z-index:3;
}

.top-architect__imgs__title{
    width:70rem;
    top:6.4rem;
    left:84.8rem;
}
.top-architect__imgs__title img{
    width:100%;
    height:auto;
}

.top-architect__img.n1{
    width:81.8rem;
    top:0;
    left:0;
}
.top-architect__img.n2{
    width:37.4rem;
    top:49rem;
    left:0;
}
.top-architect__img.n3{
    width:30.4rem;
    bottom:0;
    left:0;
}
.top-architect__img.n4{
    width:43.6rem;
    bottom:26.3rem;
    left:33.3rem;
}
.top-architect__img.n5{
    width:43.6rem;
    bottom:0;
    left:33.3rem;
}

.top-architect__img.n6{
    width:30.2rem;
    top:23.2rem;
    left:92.1rem;
}
.top-architect__img.n7{
    width:30.2rem;
    top:23.2rem;
    left:125.1rem;
}
.top-architect__img.n8{
    width:33.4rem;
    top:0;
    right:0;
}
.top-architect__img.n9{
    width:67.4rem;
    top:70rem;
    left:79.7rem;
}
.top-architect__img.n10{
    width:36.4rem;
    bottom:0;
    right:74.5rem;
}
.top-architect__img.n11{
    width:30.7rem;
    bottom:0;
    right:41rem;
}
.top-architect__img.n12{
    width:38.6rem;
    bottom:0;
    right:0;
}

.top-architect__person.n1{
    width:37.4rem;
    top:49rem;
    left:40rem;
}
.top-architect__person.n2{
    width:42.2rem;
    top:59.6rem;
    right:0;
}

.top-architect__title{
    color:#FFF;
    font-size:5.3rem;
    top:24rem;
    left:84rem;
    width:max-content;
    height:max-content;
    line-height:1;
    letter-spacing:0.21em;
}
.top-architect__link a{
    color:#FFF;
    display:block;
    transition:var(--transition);
}
.top-architect__link a:hover{
    transform:scale(1.05);
}
.top-architect__link__name{
    font-size:10.7rem;
    font-weight:300;
    line-height:9rem;
}
.top-architect__link__name em{
    font-size:18.4rem;
    font-weight:bold;
    line-height:10.7rem;
    font-style:normal;
}
.top-architect__link.link01{
    top:51.5rem;
    left:102.3rem;
}
.top-architect__link.link02{
    top:87rem;
    left:17rem;
}
.top-architect__vm{
    bottom:28.5rem;
    left:50%;
    transform:translateX(-50%);
}




/* TOPICS */
.archive-categories{
    margin-bottom:50px;
}
.archive-categories__ul{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}
.archive-categories__ul li a{
    display:block;
    white-space:nowrap;
    font-size:16px;
    font-weight:bold;
    border:1px solid var(--color-secondary);
    border-radius:4px;
    padding:2px 18px;
}
.archive-categories__ul li.current a{
    pointer-events:none;
    color:#FFF;
    background:var(--color-secondary);
}

.topics-articles{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:8rem 3rem;
}
.topics-article__thumb{
    overflow:hidden;
}
.topics-article__thumb img{
    width:100%;
    height:auto;
    aspect-ratio:1;
    object-fit:cover;
    object-position:center;
    transition:var(--transition-middle);
}
.topics-article a:hover .topics-article__thumb img{
    transform:scale(1.1);
}
.topics-article__metas{
    margin-top:2rem;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1.6rem;
}
.topics-article__cat{
    font-size:1.8rem;
    line-height:1;
}
.topics-article__date{
    font-size:1.6rem;
    line-height:1;
    font-family:var(--font-biosans);
    font-weight:bold;
}
.topics-article__title{
    font-size:2.3rem;
    margin-top:1.8rem;
}

.wp-pagenavi{
    display:flex;
    justify-content:center;
    gap:1rem;
}
.wp-pagenavi a, .wp-pagenavi span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:4rem;
    height:4rem;
    font-size:1.6rem;
    border:1px solid var(--color-secondary);
    color:var(--color-base);
}
.wp-pagenavi a:hover,
.wp-pagenavi span{
    color:#FFF;
    background:var(--color-secondary);
}

.single-head{
    border-bottom:1px solid var(--color-secondary);
    padding-bottom:6rem;
    margin-bottom:6rem;
}
.single-head__metas{
    display:flex;
    flex-wrap:wrap;
    gap:1rem;
    justify-content:space-between;
    align-items:center;
    margin-bottom:1.6rem;
}
.single-head__cat{
    font-size:2.1rem;
}
.single-head__date{
    font-size:1.8rem;
    font-weight:bold;
}
.single-head__title{
    font-size:4rem;
}

.single-reserve{
    padding-top:6rem;
    margin-top:6rem;
    border-top:1px solid var(--color-secondary);
}
.single-reserve__title{
    font-size:2.8rem;
    font-weight:bold;
    margin-bottom:1.8rem;
    text-align: center;
}
.single-reserve__text{
    font-size:1.8rem;
    font-weight:bold;
    margin-bottom:2.4rem;
    text-align: center;
}
.single-bottomlink{
    padding-top:6rem;
    margin-top:6rem;
    border-top:1px solid var(--color-secondary);
}

.editor-content>*:not(:last-child){
    margin-bottom:2.5rem;
}
.editor-content p,
.editor-content li,
.editor-content span{
    font-size:2rem;
}
.editor-content>h1,
.editor-content>h2,
.editor-content>h3,
.editor-content>h4,
.editor-content>h5,
.editor-content>h6{
    font-weight:bold;
}
.editor-content>h1{
    font-size:4rem;
}
.editor-content>h2{
    font-size:3.2rem;
}
.editor-content>h3{
    font-size:2.8rem;
}
.editor-content>h4{
    font-size:2.2rem;
}
.editor-content>h5{
    font-size:1.8rem;
}
.editor-content>h6{
    font-size:1.4rem;
}
.editor-content>ul{
    list-style:disc;
}
.editor-content>ol{
    list-style:decimal;
}
.editor-content li{
    margin-left:1em;
}
.editor-content a{
    color:var(--color-base);
    text-decoration:underline;
    font-weight:bold;
}


/* RESERVE CALENDAR */
.reservation-sec__calendar-desc{
    display:flex;
    justify-content:center;
    gap:1rem;
}
.reservation-sec__calendar-desc__text{
    font-size:2rem;
    font-weight:bold;
}
.reservation-sec__calendar{
    margin-top:2rem;
    display:flex;
    justify-content:center;
}
.reservation-sec__calendar-time{
    padding-top:6rem;
}
.reservation-sec__calendar-time p{
    display:flex;
    align-items:center;
    justify-content:center;
    width:10rem;
}
.reservation-sec__calendar-time p,
.reservation-sec__calendar-table th,
.reservation-sec__calendar-table td{
    height:6rem;
    font-size:2rem;
    font-weight:bold;
    text-align:center;
}
.reservation-sec__calendar-table th,
.reservation-sec__calendar-table td{
    width:8rem;
    min-width:8rem;
}
.reservation-sec__calendar-time p,
.reservation-sec__calendar-table th{
    background:var(--color-base);
    color:#FFF;
    text-align:center;
}
.reservation-sec__calendar-table td{
    background:#FFF;
    pointer-events:none;
}
.reservation-sec__calendar-table td.enable:not(.holiday),
.reservation-sec__calendar-table td.tel{
    pointer-events:all;
}
.reservation-sec__calendar-table td.enable:not(.holiday){
    cursor:pointer;
    color: #EA889E;
}
.reservation-sec__calendar-table td.enable.selected{
    background:#EA889E;
    color:#FFF;
}
.reservation-sec__calendar-table td a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
}
.reservation-sec__calendar-table{
    overflow-x:scroll;
}
.reservation-sec__calendar-current{
    text-align:center;
    font-size:2.2rem;
    font-weight:bold;
    margin:2rem 0;
}
.reservation-sec__view-more__inner button{
    display:inline-flex;
    gap:2rem;
    align-items:center;
    font-size:2.5rem;
    line-height:1;
    padding:1.8rem 3.6rem;
    color:#FFF;
    background:var(--color-base);
}
.reservation-sec__view-more__inner button span{
    font-size:2.5rem;
    font-weight:bold;
    font-family:var(--font-gothic);
    letter-spacing:0.1em;
}

/* WORKS */
.works-articles{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:8rem 3rem;
}
.works-article__thumb{
    overflow:hidden;
}
.works-article__thumb img{
    width:100%;
    height:auto;
    aspect-ratio:3/2;
    object-fit:cover;
    object-position:center;
    transition:var(--transition-middle);
}
.works-article a:hover .works-article__thumb img{
    transform:scale(1.1);
}
.works-article__date{
    font-size:1.6rem;
    font-family:var(--font-biosans);
    font-weight:bold;
    margin-top:0.8rem;
}
.works-article__title{
    font-size:2.3rem;
    font-weight:bold;
}
.works-article__modopen{
    cursor:pointer;
}



/* PAGE */
.page-mv{
    position:relative;
    padding:54rem 0 23rem;
}
.page-mv.short-mv{
    padding:32rem 0 10rem;
}
.page-mv__bg{
    position:absolute;
    z-index:1;
    top:0;
    left:0;
    width:100%;
    height:100%;
}
.page-mv__bg img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}
.page-mv__wrap{
    position:relative;
    z-index:2;
    color:#FFF;
}
.page-mv__title--text{
    font-size:3.1rem;
}


/* COMPANY */
.company-profile__flex{
    gap:10rem;
}
.company-profile__flex__content{
    width:81rem;
}
.company-profile__dls dl{
    display:flex;
    flex-wrap:wrap;
    border-top:1px solid var(--color-secondary);
    padding:1.2rem 0;
}
.company-profile__dls dl dt,
.company-profile__dls dl dd{
    font-size:2.3rem;
}
.company-profile__dls dl dt{
    width:30rem;
}
.company-profile__dls dl dd{
    width:calc(100% - 30rem);
    margin-left:auto;
}

.company-access__mapinfo{
    margin-top:6.6rem;
}
.company-access__mapinfo__address{
    font-size:2.3rem;
    margin-bottom:1em;
}
.company-access__mapinfo__map iframe{
    width:100%;
}


/* CONCEPT */
.concept-philosophy__title{
    position:relative;
}
.concept-philosophy__title--jp{
    width:1em;
    height:9.5em;
    height:max-content;
    line-height:1;
    letter-spacing:0.5em;
    font-size:4.3rem;
    margin:0 auto;
}
.concept-philosophy__title--en{
    font-size:1.6rem;
    letter-spacing:0.2em;
    line-height:1;
    position:absolute;
    top:calc(50% - 0.8rem);
    left:0;
}
.concept-philosophy__text{
    margin-top:16rem;
    font-size:2.2rem;
    line-height:calc(73/22);
    letter-spacing:0.2em;
}

.concept-points__title{
    margin-bottom:30rem;
}
.concept-points__title--jp{
    margin:0 auto;
    width:7em;
    height:10em;
    font-size:3.5rem;
    font-weight:bold;
    line-height:calc(85/35);
    letter-spacing:0.2em;
}
.concept-points__text{
    font-size:2.3rem;
    line-height:calc(68/23);
    letter-spacing:0;
    font-weight:600;
}
.concept-points__img{
    margin-top:12rem;
    text-align:center;
}
.concept-points__img img{
    width:100%;
    max-width:73rem;
}

.concept-mv02{
    position:relative;
}
.concept-mv02__title{
    position:absolute;
    z-index:2;
    bottom:0;
    left:38.8rem;
    transform:translateY(50%);
    background:#FFF;
    line-height:1;
    font-size:6.8rem;
    width:1em;
    height:8em;
    letter-spacing:0.5em;
    overflow:hidden;
    white-space:nowrap;
}

.concept-content__title{
    margin-bottom:7rem;
}
.concept-content__titles.n1{
    margin-left:auto;
    display:block;
    width:max-content;
}
.concept-content__titles.n2{
    width:max-content;
}
.concept-content__titles span{
    display:block;
    color:#FFF;
    background:var(--color-base);
    line-height:1;
    font-size:4.9rem;
    font-family:var(--font-mincho);
    position:relative;
}
.concept-content__titles span small{
    position:absolute;
    bottom:0;
    right:-1.2em;
    font-size:1.6rem;
    color:var(--color-base);
}
.concept-content__titles.n1 span:nth-of-type(2){
    margin-top:1em;
    -ms-writing-mode:tb-rl;
    writing-mode:vertical-rl;
    margin-left:auto;
    width:1em;
    height:4.2em;
}
.concept-content__titles.n2 span:nth-of-type(1){
    width:max-content;
}
.concept-content__titles.n2 span:nth-of-type(2){
    margin-top:1em;
    margin-left:6em;
}
.concept-content__block{
    width:50%;
}
.concept-content__block.n2{
    margin-left:auto;
}
.concept-content__text{
    font-size:2.3rem;
    line-height:calc(51/23.39);
    letter-spacing:0;
}
.concept-content__attentions{
    margin-top:6rem;
}
.concept-content__attentions{
    display:block;
    position:relative;
    padding-left:1.2em;
    font-size:1.7rem;
}
.concept-content__attentions::before{
    content:'※';
    position:absolute;
    top:0;
    left:0;
}
.concept-content__bigimg.n1{
    margin-top:-10rem;
}
.concept-content__bigimg.n2{
    margin-top:7rem;
}


/* MAINTENANCE */
.maintenance-mv__title{
    text-align:center;
}
.maintenance-mv__title--en{
    font-size:8.6rem;
    font-weight:300;
}
.maintenance-mv__title--en em{
    font-style:normal;
    font-weight:bold;
}
.maintenance-mv__title--jp{
    font-size:3.5rem;
    margin-top:0.3em;
}
.maintenance-mv__text{
    margin-top:6rem;
    font-size:2.3rem;
    line-height:calc(51 / 23);
    text-align:center;
}
.maintenance-mv__fieldtexts{
    position:relative;
    margin-top:8rem;
    display:flex;
    justify-content:space-between;
}
.maintenance-mv__fieldtext span{
    display:block;
    width:max-content;
    color:#FFF;
    background:var(--color-base);
    font-size:2.9rem;
    line-height:1;
    font-family:var(--font-mincho);
}
.maintenance-mv__fieldtext.n1 span:nth-of-type(1){
    margin-bottom:1em;
}
.maintenance-mv__fieldtext.n1 span:nth-of-type(2){
    margin-left:2em;
}
.maintenance-mv__fieldtext.n2 span:nth-of-type(1){
    margin-bottom:0.5em;
    letter-spacing:-0.1em;
}
.maintenance-mv__fieldtext.n2 span:nth-of-type(2){
    -ms-writing-mode:tb-rl;
    writing-mode:vertical-rl;
    margin-left:auto;
    letter-spacing:0;
    width:1em;
    height:6em;
}

.maintenance-section__flex{
    margin-top:12rem;
    gap:5rem;
}
.maintenance-section__flex__text{
    width:56.5rem;
}
.maintenance-section__maintext{
    font-size:2rem;
    line-height:calc(51/23);
    font-family:var(--font-mincho);
}
.maintenance-section__attentions{
    margin-top:6.8rem;
}
.maintenance-section__attentions li{
    position:relative;
    padding-left:1em;
    font-size:1.8rem;
    font-weight:500;
}
.maintenance-section__attentions li::before{
    content:'※';
    position:absolute;
    top:0;
    left:0;
}
.maintenance-section__flex__imgs{
    width:calc(100% - 68rem);
}
.maintenance-section__imgs{
    position:relative;
    max-width:unset;
    width:calc(100% + 40px);
    display:flex;
    gap:3rem;
}
@media only screen and (min-width:768px){
    .maintenance-section__imgs{
        width:calc(100% + ((100vw - var(--wrapwide)) / 2) + 20px);
    }
}
.maintenance-section__imgb{
    width:calc(649 / 1024 * 100%);
}
.maintenance-section__imgm{
    width:calc(344 / 1024 * 100%);
}
.maintenance-section:last-of-type{
    padding-bottom:35rem;
}


/* SECRET */
.secret-mv__title{
    text-align:center;
}
.secret-mv__title--jp{
    font-size:4.1rem;
    letter-spacing:0.5em;
}
.secret-mv__title--en{
    font-size:3.1rem;
}

.secret-section__mainlist{
    list-style:decimal;
    margin-bottom:6.4rem;
}
.secret-section__mainlist li{
    margin-left:1.2em;
    font-size:2.1rem;
    line-height:calc(42/23);
}
.secret-section__mainlist li:not(:last-child){
    margin-bottom:0.4em;
}

.secret-section__hv{
    padding:9rem 0 0;
}
.secret-section__hvimg{
    mix-blend-mode:multiply;
    width:100%;
}
.secret-section__hv.n1 img{
    width:73rem;
    margin-left:15rem;
}
.secret-section__hv.n2 .secret-section__hvimg{
    text-align:right;
}
.secret-section__hv.n2 img{
    width:67.7rem;
    margin-right:17rem;
}
.secret-section__hv.n3 img{
    width:66.8rem;
    margin-left:23rem;
}


/* ARCHITECTS */
.architects-pagetitle{
    margin-bottom:18rem;
}
.architects-pagetitle__jp{
    text-align:center;
    font-size:4.144rem;
    font-weight:500;
    letter-spacing:0.5em;
}
.architects-pagetitle__en{
    font-size:3.13rem;
    text-align:center;
}
.architects-menus{
    display:flex;
    justify-content:center;
    align-items:center;
}
.architects-menu{
    text-align:center;
    border-left:1px solid var(--color-base);
}
.architects-menu:last-of-type{
    border-right:1px solid var(--color-base);
}
.architects-menu a{
    width:31rem;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-direction:column;
    padding:2rem 0;
}
.architects-menu__name{
    font-size:2.8rem;
}
.architects-menu__enname{
    font-size:1.4rem;
}
.architects-menu__enname em{
    font-style:normal;
    font-weight:bold;
}
.architects-menu__icon{
    margin-top:2rem;
    width:2.3rem;
    height:1.2rem;
    background:no-repeat center/contain url('img/common/icon-angle-down.svg');
}

.architects-prof__flex.n2{
    flex-direction:row-reverse;
}
.architects-prof__flex__img{
    width:54rem;
}
.architects-prof__flex__content{
    position:relative;
    width:68rem;
}
.architects-prof__flex__content__bg__n2{
    position:absolute;
    z-index:0;
    width:74rem;
    left:7rem;
    top:0;
}
.architects-prof__img{
    position:relative;
}
.architects-prof__img__name{
    font-size:13.7rem;
    letter-spacing:0.16em;
    line-height:1;
    width:1em;
    height:max-content;

    position:absolute;
    z-index:2;
    top:50%;
    left:0;
    transform:translate(-50%,-50%);
}
.architects-prof__img__hv.n1{
    position:absolute;
    width:42.7rem;
    top:calc(100% - 11.2rem);
    left:calc(100% - 6rem);
    mix-blend-mode:multiply;
}

.architects-prof__content__maintext{
    font-size:4.5rem;
    letter-spacing:0.02em;
    line-height:calc(87/45);
    padding-top:2em;
}
.architects-prof__flex.n2 .architects-prof__content__maintext{
    position:relative;
    left:22rem;
    padding-top:4.5em;
}
.architects-prof__content__profbox{
    width:26rem;
}
.architects-prof__flex.n1 .architects-prof__content__profbox{
    margin-left:auto;
    margin-top:22rem;
}
.architects-prof__flex.n2 .architects-prof__content__profbox{
    margin-top:10rem;
}
.architects-prof__content__profbox__name{
    font-size:1.9rem;
    letter-spacing:0.36em;
    line-height:calc(37/19);
    margin-bottom:2rem;
}
.architects-prof__content__profbox__title{
    font-size:1.9rem;
    letter-spacing:0.16em;
    line-height:calc(37/19);
    margin-bottom:0.5rem;
}
.architects-prof__content__profbox__list dl{
    display:flex;
}
.architects-prof__content__profbox__list dl dt{
    width:5em;
}
.architects-prof__content__profbox__list dl dt,
.architects-prof__content__profbox__list dl dd{
    font-size:max(12px,1.27rem);
    line-height:2;
}

.architects-article:not(:last-child){
    margin-bottom:7rem;
}
.architects-article__flex{
    gap:5rem;
}
.architects-article__flex__content{
    width:56.5rem;
}
.architects-article__title{
    font-family:var(--font-mincho);
    font-size:3.3rem;
    line-height:calc(51/35);
    margin-bottom:1em;
}
.architects-article__text{
    font-family:var(--font-mincho);
    font-size:2.3rem;
    line-height:calc(51/23);
}
.architects-article__flex__imgs{
    width:81.5rem;
}
.architects-article__imgs{
    position:relative;
    max-width:unset;
    width:calc(100% + 40px);
    display:flex;
    gap:3rem;
}
@media only screen and (min-width:768px){
    .architects-article__imgs{
        width:calc(100% + ((100vw - var(--wrapwide)) / 2) + 20px);
    }
}
.architects-article__imgb{
    width:calc(649 / 1024 * 100%);
}
.architects-article__imgm{
    width:calc(344 / 1024 * 100%);
}

.architects-article.n2 .architects-article__flex{
    flex-direction:row-reverse;
}
.architects-article.n2 .architects-article__imgs{
    flex-direction:row-reverse;
    left:-20px;
}
@media only screen and (min-width:768px){
    .architects-article.n2 .architects-article__imgs{
        left:calc(-1 * ((100vw - var(--wrapwide)) / 2) - 20px);
    }
}

.architects-visuals{
    position:relative;
}
.architects-visuals>*:not(.architects-v-bg){
    position:relative;
    z-index:2;
}
.architects-v-bg{
    position:absolute;
    pointer-events:none;
    z-index:1;
    mix-blend-mode:multiply;
}
.architects-v-title span{
    display:block;
    width:max-content;
    height:max-content;
    line-height:1;
    font-size:4.9rem;
    letter-spacing:0.06em;
    color:#FFF;
    background:var(--color-base);
}
.artchitects-v-tbig{
    font-family:var(--font-mincho);
    background:#FFF;
    font-size:2.3rem;
    line-height:calc(40/23);
    letter-spacing:0.06em;
    max-width:64rem;
    height:max-content;
}
.architects-v-t{
    background:#FFF;
    font-size:2rem;
    line-height:calc(37/21);
    letter-spacing:0.02em;
    max-width:43rem;
    height:max-content;
}
.architects-v-t.wide{
    max-width:64rem;
}
.architects-visuals.n1{
    background:#dfd8d0;
}
.architects-v1-bgt{
    width:76.9rem;
    top:0;
    right:0;
}
.architects-v1-bgb{
    width:55.2rem;
    bottom:0;
    left:0;
}
.architects-v1-s1{
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:10rem;
}
.architects-v1-bg2{
    width:58.3rem;
    top:51rem;
    left:40rem;
    z-index:-1;
}
.architects-v1-s1__l{
    width:80rem;
}
.architects-v1-s1__r{
    width:41rem;
}
.architects-v1-s1__l__title{
    margin-bottom:8.8rem;
}
.architects-v1-s1__l__title span:nth-of-type(2){
    margin-left:3.5em;
    margin-top:0.8em;
}
.architects-v1-s1__l__imgs{
    margin-top:6rem;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:2.5rem;
}
.architects-v1-s1__r{
    position:relative;
}
@media only screen and (min-width:1025px){
    .architects-v1-s1__r{
        padding-top:59rem;
    }
}
.architects-v1-bg3{
    width:50rem;
    top:calc(100% - 9.9rem);
    right:-20px;
}
@media only screen and (min-width:768px){
    /*
    .architects-v1-bg3{
        z-index:-1;
        right:calc(-1 * ((100vw - var(--wrapwide)) / 2) - 20px);
    }
    */
    .architects-v1-bg3 {
        z-index: -1;
        right: 56rem;
        top: 76rem;
        width: 79rem;
    }
}
.architects-v1-s2{
    position:relative;
    padding-top:35rem;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10rem;
}
.architects-v1-bg4{
    z-index:-1;
    width:88.3rem;
    top:8rem;
    left:35.5rem;
}
.architects-v1-s2__title{
    position:absolute;
    top:16rem;
    left:81rem;
}
.architects-v1-s2__title span{
    display:block;
    width:max-content;
    height:max-content;
    font-size:3.9rem;
    line-height:1;
    color:#FFF;
    background:var(--color-base);
}
.architects-v1-s2__title span:nth-of-type(2){
    margin-left:auto;
    margin-top:0.9em;
}
.architects-v1-s2__l{
    width:41rem;
}
.architects-v1-s2__r{
    position:relative;
    width:41rem;
}
.architects-v1-s2__l__img{
    margin-bottom:4.4rem;
}
.architects-v1-s2__l__img img{
    max-width:21.8rem;
}
@media only screen and (min-width:1025px){
    .architects-v1-s2__r{
        padding-top:15rem;
    }
}
.architects-v1-s2__imgt{
    position:relative;
    width:34.8rem;
    margin-left:auto;
    margin-bottom:15rem;
}
.architects-v1-s2__imgt img{
    position:relative;
    left:20px;
}
@media only screen and (min-width:768px){
    .architects-v1-s2__imgt img{
        left:calc(((100vw - var(--wrapwide)) / 2) + 20px);
    }
}
.architects-v1-s2__imgb{
    margin-top:4.4rem;
}
.architects-v1-s2__r__bg{
    width:44rem;
    bottom:17.3rem;
    right:45rem;
}

.architects-visuals.n2{
    background:#d5dcd9;
}
.architects-v2-bgt{
    width:64.6rem;
    top:0;
    left:0;
}
.architects-v2-bgb{
    width:46.8rem;
    bottom:0;
    left:0;
}
.architects-v2-s1{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start;
    justify-content:flex-start;
    gap:10rem 0;
}
.architects-v2-s1__l{
    width:63rem;
}
.architects-v2-s1__m{
    width:41rem;
}
.architects-v2-s1__r{
    width:41rem;
    margin-left:auto;
    justify-self:flex-end;
}
.architects-v2-s1__title{
    margin:0 auto;
    width:1em;
    margin-bottom:23rem;
}
.architects-v2-s1__title span{
    display:block;
    background:#FFF;
    font-size:6.6rem;
    letter-spacing:0.5em;
    line-height:1;
    width:1em;
    height:8em;
    overflow:hidden;
    white-space:nowrap;
}
.architects-v2-s1__m__imgb{
    margin-top:10rem;
    margin-bottom:8.3rem;
}
.architects-v2-s1__m__title{
    display:flex;
    width:max-content;
    align-items:flex-end;
    margin-left:auto;
}
.architects-v2-s1__m__title span{
    font-size:4rem;
    line-height:1;
    color:#FFF;
    background:var(--color-base);
    display:block;
    width:max-content;
    height:max-content;
}
.architects-v2-s1__r__img{
    margin-top:3.8rem;
    margin-bottom:4rem;
}
.architects-v2-s1__r__imgb{
    position:relative;
    left:14rem;
}
.artchitects-v2-s2{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
}
.architects-v2-s2__l{
    width:41rem;
    padding-top:8.5rem;
}
.architects-v2-s2__l__imgs{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:3rem;
    max-width:unset;
    width:57.2rem;
    position:relative;
    left:-20px;
    margin-bottom:7rem;
}
@media only screen and (min-width:768px){
    .architects-v2-s2__l__imgs{
        left:calc(-1 * ((100vw - var(--wrapwide)) / 2) - 20px);
    }
}
.architects-v2-s2__m{
    width:50.7rem;
    padding-top:13rem;
}
.architects-v2-s2__r{
    width:41rem;
}
.architects-v2-s3{
    margin:0 auto;
    margin-top:12.6rem;
    width:87.4rem;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:3.4rem;
}
.architects-v2-s3__content{
    position:relative;
}
.architects-v2-s3__content__bg{
    position:absolute;
    width:64.5rem;
    top:-33rem;
    right:calc(-1 * (100vw - 87.4rem) / 2);
    z-index:-1;
}

.dialogue-menus{
    display:flex;
    justify-content:center;
    gap:7rem;
    margin:0 auto;
}
.dialogue-menu__num{
    font-size:5.1rem;
    font-weight:300;
    line-height:1;
    margin-bottom:1rem;
}
.dialogue-menu__thumb{
    position:relative;
    overflow:hidden;
    width:32.1rem;
}
.dialogue-menu__thumb::before{
    content:'';
    width:3.7rem;
    height:3.9rem;
    position:absolute;
    z-index:1;
    bottom:0;
    right:0;
    background:no-repeat right bottom/contain url('img/dialogue/icon-thumb-anker.svg');
}
.dialogue-menu__thumb img{
    transition:var(--transition);
}
.dialogue-menu a:hover .dialogue-menu__thumb img{
    transform:scale(1.1);
}

.dialogue-d1__mv{
    margin-top:11rem;
    position:relative;
}
.dialogue-d1__mv__title{
    position:absolute;
    top:-11rem;
    left:-1rem;
    width:33.3rem;
    z-index:2;
}
.dialogue-d1__mv__info{
    background:#FFF;
    padding:2.7rem;
    position:absolute;
    z-index:2;
    right:0;
    top:calc(100% - 9.5rem);
    width:31rem;
}
.dialogue-d1__mv__info__titlep{
    font-size:1.6rem;
    font-weight:bold;
}
.dialogue-d1__mv__info__title{
    margin:1em 0;
    font-size:2rem;
    line-height:1.2;
    letter-spacing:0;
    font-weight:bold;
}
.dialogue-d1__mvbottom{
    padding-top:9rem;
    padding-right:35rem;
}
.dialogue-d1__mv__info__text{
    font-size:1.6rem;
    line-height:calc(26/16);
}
.dialogue-d1__mvbottom__title{
    font-size:3.8rem;
    line-height:calc(65/38);
    margin-bottom:1.2em;
}
.dialogue-d1__mvbottom__text{
    font-size:2.3rem;
    line-height:calc(51/23);
}

.dialogue-d1__article:not(:first-child){
    margin-top:8.7rem;
}
.dialogue-d1__article.n1{
    display:flex;
    flex-wrap:wrap;
    justify-content:space-between;
}
.dialogue-d1__article.n1 .dialogue-d1__article__content{
    width:72rem;
}
.dialogue-d1__article.n1 .dialogue-d1__article__img{
    width:65rem;
}
.dialogue-d1__article__img.n2{
    max-width:32.4rem;
}
.dialogue-d1__article__img.n1-n2{
    align-self:center;
}
.dialogue-d1__article__title{
    font-size:3.5rem;
    line-height:calc(51/35);
    margin-bottom:3.1rem;
}
.dialogue-d1__article__text{
    font-size:2.3rem;
    line-height:calc(51/23);
}
.dialogue-d1__article__text:not(:last-child){
    margin-bottom:8.7rem;
}
.dialogue-d1__article.n2 .dialogue-d1__article__img{
    text-align:center;
    margin-top:8.7rem;
}
.dialogue-d1__article.n2 .dialogue-d1__article__img img{
    max-width:64rem;
}
.dialogue-d1__article.n3 .dialogue-d1__article__img{
    text-align:center;
    margin-bottom:8.7rem;
}
.dialogue-d1__article.n3 .dialogue-d1__article__img img{
    max-width:64rem;
}

.dialogue-d2{
    background:#d0ccca;
}
.dialogue-d2-article{
    margin-top:18rem;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6rem;
}
.dialogue-d2-article__text{
    font-family:var(--font-mincho);
    font-size:2.3rem;
    line-height:calc(51/23);
}
.dialogue-d2-article__titlebox{
    position:relative;
}
.dialogue-d2-article__title span{
    font-family:var(--font-mincho);
    display:block;
    width:max-content;
    height:max-content;
    line-height:1;
    font-size:4rem;
    color:#FFF;
    background:var(--color-base);
    white-space:nowrap;
}
.dialogue-d2-article__title.n1{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
}
.dialogue-d2-article__title.n1 span:nth-of-type(1){
    margin-bottom:3.4rem;
    margin-right:9rem;
}
.dialogue-d2-article__title.n2 span:nth-of-type(1){
    margin-bottom:3.4rem;
    margin-left:9rem;
}
.dialogue-d2-article__title.n3{
    display:flex;
    flex-direction:column;
    gap:3.4rem;
}
.dialogue-d2-article__img__r img{
    max-width:unset;
    width:calc(100% + (100vw - var(--wrapwide)) / 2 + 20px - 4rem);
    margin-left:4rem;
}
.dialogue-d2-article__img__l img{
    position:relative;
    max-width:unset;
    width:calc(100% + (100vw - var(--wrapwide)) / 2 + 20px - 4rem);
    left:calc(-1 * ((100vw - var(--wrapwide)) / 2) - 20px);
}
.dialogue-d2-article__img__r2 img{
    width:calc(100% - 4rem);
    margin-left:4rem;
}
.dialogue-d2-article__img__l2 img{
    width:calc(100% - 4rem);
}

.dialogue-d2-a1-titlebox{
    order:3;
    padding-top:75.8rem;
}
.dialogue-d2-a1__title{
    position:absolute;
    right:0;
    top:40rem;
}

.dialogue-d2-a2-titlebox{
    padding-top:38.7rem;
}
.dialogue-d2-a2__title{
    position:absolute;
    top:-22.4rem;
    left:0;
}

.dialogue-d2-a3-titlebox{
    order:3;
    padding-top:40rem;
}
.dialogue-d2-a3__title{
    position:absolute;
    top:-9rem;
    left:9rem;
}

.dialogue-d2-a4{
    margin-top:49.3rem;
}
.dialogue-d2-a4__title{
    position:absolute;
    top:-26.8rem;
    left:22.8rem;
}

.dialogue-d2-a5{
    margin-top:39rem;
}
.dialogue-d2-a5-titlebox{
    order:3;
    padding-top:32.6rem;
}
.dialogue-d2-a5__title{
    position:absolute;
    top:-19.3rem;
    left:-17rem;
}

.dialogue-d2-a6{
    margin-top:53.4rem;
}
.dialogue-d2-a6-titlebox{
    margin-top:-39.3rem;
}
.dialogue-d2-a6__title{
    position:absolute;
    top:11.5rem;
    left:78.7rem;
}

.dialogue-d2__bottombigimg{
    margin-top:15rem;
}


/* FORM */
.form-dls dl{
    display: flex;
    flex-wrap: wrap;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:20px 0;
    border-bottom:1px solid var(--color-secondary);
}
.form-dls dt{
    width:400px;
    position:relative;
    font-size:18px;
}
.form-dls dt span.must{
    position:absolute;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    top:0;
    right:0;
    width:60px;
    height:30px;
    color:#FFF;
    line-height:1;
    background:var(--color-base);
}
.form-dls dd{
    width:calc(100% - 440px);
}
form input[type="text"], form input[type="email"], form input[type="url"], form input[type="tel"], form input[type="number"], form input[type="date"], form textarea{
    width:100%;
}
.editor-content .wpcf7-list-item-label{
    font-size:16px;
}
.form-submits{
    margin-top:60px;
    text-align:center;
}
.form-submits input{
    font-weight:bold;
    font-family:var(--font-gothic);
    letter-spacing:0.1em;
    background:var(--color-base) !important;
}
.wpcf7-spinner{
    display:none !important;
}
.contact-form{
    width:100%;
    max-width:1000px;
    margin:0 auto;
}
.contact-form>h3{
    font-size:24px;
    margin-bottom:20px;
}

main.single{
    padding-bottom:20rem;
}


/* WORKS */
.works-archivepage{
    padding-bottom:15rem;
}
.works-archive__category-selector{
    margin-bottom:10rem;
}
.works-archive__categories{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:3rem;
}
.works-archive__category a{
    font-size:2rem;
}
.works-archive__category a:hover{
    text-decoration:underline;
}
.works-archive__category.current a{
    pointer-events:none;
    text-decoration:underline;
}

.works-article__modal__bg{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.2);
    z-index:99997;
}
.works-article__modal{
    position:fixed;
    top:50%;
    left:50%;
    width:1000px;
    height:90dvh;
    max-height:568px;
    transform:translate(-50%,-50%);
    z-index:99998;
}
.works-article__modal__window{
    background:#FFF;
    padding:40px;
    border-radius:20px;
    width:100%;
    height:100%;

    overflow-y:scroll;
    -ms-overflow-style: none;
    scrollbar-width: none; 
}
.works-article__modal__window::-webkit-scrollbar {
  display:none;
}
.works-article__modal__closebtn{
    position:fixed;
    top:0;
    right:0;
    width:40px;
    height:40px;
    background:var(--color-secondary);
    border-radius:50%;
    transform:translate(50%,-50%);
    z-index:99999;
    cursor:pointer;
}
.works-article__modal__closebtn::before,
.works-article__modal__closebtn::after{
    content:'';
    position:absolute;
    pointer-events:none;
    width:20px;
    height:2px;
    left:10px;
    top:calc(50% - 1px);
    background:#FFF;
}
.works-article__modal__closebtn::before{
    transform:rotate(45deg);
}
.works-article__modal__closebtn::after{
    transform:rotate(-45deg);
}
.works-article__modal__title{
    font-size:24px;
    font-weight:bold;
    border-bottom:1px solid var(--color-secondary);
    padding-bottom:10px;
}
.works-article__modal__flex{
    display:flex;
    gap:30px;
    align-items:flex-start;
    justify-content:space-between;
    margin-top:30px;
}
.works-article__modal__flex__slider{
    width:calc(48% - 15px);
}
.works-article__modal__flex__content{
    width:calc(51% - 15px);
}
.works-article__modal__innertext>*{
    font-size:16px;
}
.works-article__modal__innertext>*:not(:last-child){
    margin-bottom:20px;
}
.works-article__modal__innertext a{
    text-decoration:underline;
}
.works-article__modal__data{
    margin-top:40px;
}
.works-article__modal__data dl{
    display:flex;
}
.works-article__modal__data dl dt,
.works-article__modal__data dl dd{
    font-size:16px;
}
.works-article__modal__data dl dt{
    width:6em;
    font-weight:bold;
}
.works-article__modal__data dl dd{
    width:calc(100% - 6em);
}


/* RECRUIT */
.recruit-menu{
    margin-bottom:10rem;
}
.recruit-menu__togglers{
    display:flex;
    justify-content:center;
    gap:2rem;
}
.recruit-menu__toggler{
    width:30rem;
    height:6rem;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:500;
    font-size:2.8rem;
    color:#FFF;
    background:var(--color-base);
    cursor:pointer;
    transition:var(--transition);
}
.recruit-menu__toggler.current{
    pointer-events:none;
    color:var(--color-base);
    background:#FFF;
}
.recruit-menu__toggler:not(.current):hover{
    color:var(--color-base);
    background:#FFF;
}

.recruit-tabs{
    width:100%;
    max-width:1000px;
    margin:0 auto;
}
.recruit-tab__maintext{
    font-size:2.3rem;
    line-height:calc(51/23);
    margin-bottom:3em;
}
.recruit-tab__dls>dl:not(:last-child){
    margin-bottom:5rem;
}
.recruit-tab__dls>dl>dt{
    font-weight:bold;
    font-size:2.5rem;
    margin-bottom:0.2em;
}
.recruit-tab__dls>dl>dd{
    font-size:2.3rem;
    line-height:calc(51/23);
}
.recruit-tab__lists{
    list-style:disc;
}
.recruit-tab__lists li{
    margin-left:1em;
}
.recruit-tab__infodls>dl{
    display:flex;
    margin-bottom:1rem;
}
.recruit-tab__infodls>dl>dt{
    width:18em;
}
.recruit-tab__infodls>dl>dd{
    width:calc(100% - 18em);
}
.recruit-tab__bottomtext{
    margin-top:5rem;
    font-size:2.3rem;
    line-height:calc(51/23);
}
.recruit-tab__bottomtext a{
    text-decoration:none;
    color:var(--color-base);
}
.recruit-bottom__vm{
    margin-top:20rem;
}



/* SP CONV */
.sp-conversionarea{
    display:none;
}