/*
Theme Name: MTW
Theme URI: https://www.mirokutw.com/
Author: MTW
Description: 株式会社ミロクテクノウッド専用の独立テーマ
Version: 1.0.0
Text Domain: mtw
*/

/*  PC SP
----------------------------------------------------------- */
.pc {
	display: block!important;
}
.sp {
	display: none!important;
}
@media screen and (max-width: 767px) {
	.pc {
        display: none!important;
    }
    .sp {
        display: block!important;
    }
}
.mtw-products-description p{
    margin:0 !important;
}
.mtw-products-description p + p{
    margin-top:1.5em !important;
}
.style4b {
    margin: 0em 0 1.2em;
    padding: 1em 0 .8em;
    font-size: 18px;
    font-weight: 400;
    border-bottom: 1px dotted #aaa;
}
.style4bs {
    margin: 0em 0 1.2em;
    padding: 1em 0 .8em;
    font-size: 18px;
    font-weight: 400;
    border-bottom: 1px dotted #aaa;
}
.style3a {
    margin: 3em 0 1.5em;
    padding: 1.1em .2em 1em;
    font-size: 22px;
    font-weight: 400;
    border-top: 1px solid #222;
    border-bottom: 1px solid #222;
}
.style5bs {
    margin: 0em 0 1em;
    padding: .5em .8em .4em 1em;
    font-weight: 400;
    font-size: 18px;
    color: #fff;
    background: #222;
    border-radius: 4px;
    box-shadow: 0px 2px 0px 0px #f2f2f2;
}
.style5b {
    margin: 2em 0 1em;
    padding: .5em .8em .4em 1em;
    font-weight: 400;
    font-size: 18px;
    color: #fff;
    background: #222;
    border-radius: 4px;
    box-shadow: 0px 2px 0px 0px #f2f2f2;
}
/* SECTION TITLE
-------------------------------------------------- */
.mtw-sec-head{
    display:flex;
    align-items:flex-start;
    gap:2em;
    margin:3em 0 0 0;
}
.mtw-sec-number{
    flex-shrink:0;
    margin:0;
    padding:0;
    font-size:3.8em;
    font-weight:700;
    line-height:.85;
    letter-spacing:-.05em;
    color:#333;
}
.mtw-sec-title{
    margin:0;
    padding:0;
}
.mtw-sec-title .mtw-sec-en{
    margin: 0 !important;
    padding: 0 !important;
    font-size: 1.5em;
    font-weight: 600;
    line-height: 1.3 !important;
    letter-spacing: .1em;
}
.mtw-sec-title .mtw-sec-jp{
    margin: .7em 0 0 !important;
    padding: 0 !important;
    font-size: 0.8em;
    font-weight: 400;
    line-height: 1 !important;
}
.mtw-sec-head--jp{
    align-items:flex-end;
}
.mtw-sec-title-jp{
    margin:0;
    padding:0;
    color:#222;
    font-size:2em;
    font-weight:600;
    letter-spacing:.08em;
    line-height:1.3;
}
.mtw-sec-copy{
    margin:1.3em 0 1.3em !important;
    padding:0 !important;
    font-size:2em;
    font-weight:400;
    line-height:1.4 !important;
    letter-spacing:.04em;
}
.mtw-sec-text{
    margin:0 !important;
    padding:0 !important;
    font-size:1em;
    line-height:1.8!important;
    letter-spacing:.02em;
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-sec-head{
        gap:1em;
        margin:2.5em 0 2em;
    }
    .mtw-sec-number{
        font-size:3em;
    }
    .mtw-sec-title .mtw-sec-en{
        font-size:1.4em;
        line-height:1.1 !important;
        letter-spacing:.07em;
    }
    .mtw-sec-title .mtw-sec-jp{
        margin-top:.5em !important;
        font-size:1em;
    }
    .mtw-sec-title-jp{
        font-size:1.5em;
    }
    .mtw-sec-copy{
        font-size:1.7em;
        line-height:1.4 !important;
    }
    .mtw-sec-text{
        font-size:1em;
        line-height:1.55 !important;
    }
}
/* PRODUCTS SECTION
-------------------------------------------------- */
/* グレー背景のセクション */
.mtw-products-bg{
    margin:0 calc(50% - 50vw);
    padding:4em calc(50vw - 50%);
    background:#dedede;
    box-sizing:border-box;
}
/* セクション内の通常テキスト */
.mtw-products-description{
    margin:1.5em 0 0 !important;
    padding:0 !important;
    font-size:1em;
    line-height:1.8 !important;
    letter-spacing:.02em;
}
/* 右側の素材説明 */
.mtw-material-text{
    margin:1.5em 0 0 !important;
    padding:0 !important;
    font-size:1em;
    line-height:1.8 !important;
    letter-spacing:.02em;
}
/* メイン素材画像 */
.mtw-material-main{
    margin:0;
    padding:0;
    text-align:center;
}
.mtw-material-main img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
/* メイン素材名 */
.mtw-material-name{
    margin:.4em 0 0 !important;
    padding:0 !important;
    font-size:1em;
    font-weight:400;
    line-height:1.4 !important;
    text-align:center;
}
/* メイン素材名の日本語 */
.mtw-material-name-jp{
    display:block;
    margin:.15em 0 0;
    font-size:.85em;
}
/* 画像カード
-------------------------------------------------- */
.mtw-product-card{
    height:100%;
    margin:0;
    padding:0 0 .8em;
    background:#fff;
    box-sizing:border-box;
    text-align:center;
}
.mtw-product-card img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
/* 画像下の名称 */
.mtw-product-card-text{
    margin:.7em .5em 0 !important;
    padding:0 !important;
    font-size:1.1em;
    font-weight:400;
    line-height:1.4 !important;
    letter-spacing:0;
    text-align:center;
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-products-bg{
        padding-top:3em;
        padding-bottom:3em;
    }
    .mtw-products-description,
    .mtw-material-text{
        font-size:1.1em;
        line-height:1.65 !important;
    }
    .mtw-product-card{
        padding-bottom:.7em;
    }
    .mtw-product-card-text{
        margin-top:.6em !important;
        font-size:1em;
    }
}
/* REGIONAL CIRCULATION
-------------------------------------------------- */
.mtw-circulation{
    position:relative;
    margin:0;
    overflow:hidden;
    color:#fff;
    box-sizing:border-box;
}
.mtw-circulation-bg{
    position:absolute;
    top:0;
    left:0;
    z-index:0;
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.mtw-circulation::after{
    content:"";
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:1;
    background:rgba(0,0,0,.18);
}
/* コンテンツ
-------------------------------------------------- */
.mtw-circulation-inner{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1.25fr);
    gap:3em;
    align-items:center;
    padding:3.5em 4em;
    box-sizing:border-box;
}
/* 左テキスト
-------------------------------------------------- */
.mtw-circulation-text{
    min-width:0;
}
.mtw-circulation-text .mtw-sec-title{
    margin:0 0 2em;
    padding:0;
}
.mtw-circulation-text .mtw-sec-en,
.mtw-circulation-text .mtw-sec-jp{
    color:#fff;
}
.mtw-circulation-copy{
    margin:0 0 1.4em !important;
    padding:0 !important;
    color:#fff;
    font-size:2em;
    font-weight:400;
    line-height:1.5 !important;
    letter-spacing:.04em;
}
.mtw-circulation-description{
    margin:0;
    padding:0;
    color:#fff;
    font-size:1.1em;
    line-height:1.75 !important;
    letter-spacing:.02em;
}
.mtw-circulation-description p{
    margin:0 0 1.25em !important;
    padding:0 !important;
}
.mtw-circulation-description p:last-child{
    margin-bottom:0 !important;
}
.mtw-products-description p{
    margin:0 0 1.5em;
}
.mtw-products-description p:last-child{
    margin-bottom:0;
}
/* 右図
-------------------------------------------------- */
.mtw-circulation-figure{
    min-width:0;
    margin:0;
    padding:0;
}
.mtw-circulation-figure img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    padding:0;
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-circulation-inner{
        grid-template-columns:1fr;
        gap:2.5em;
        padding:3em 1.5em;
    }
    .mtw-circulation-text .mtw-sec-title{
        margin-bottom:1.7em;
    }
    .mtw-circulation-copy{
        font-size:1.6em;
        line-height:1.5 !important;
    }
    .mtw-circulation-description{
        font-size:1.1em;
        line-height:1.8 !important;
    }
    .mtw-circulation-description p{
        margin-bottom:1.4em !important;
    }
    .mtw-circulation-figure{
        margin:0;
    }
}
.mtw-products-description p{
    margin:0 0 1.5em;
    line-height:2;
}
.mtw-products-description p:last-child{
    margin-bottom:0;
}
.mtw-contact-btn{
    display:inline-block;
    margin-top:3em;
    padding:1em 4em;
    background:#b8781b;
    color:#fff;
    text-decoration:none;
    font-size:1.1em;
    font-weight:600;
    letter-spacing:.15em;
    transition:.3s;
}
.mtw-contact-btn:hover{
    background:#9f6716;
    color:#fff;
}
.mtw-material-name-jp{
    margin:0 !important;
    padding:0 0 1.6em 0;
    display:block;
	text-align: center;
}
.mtw-product-main{
    margin:5em 0 1.5em;
}
.mtw-product-main img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
.mtw-thumb-row{
    display:flex;
    gap:1.2em;
    margin:0;
    padding:0;
}
.mtw-thumb-row br{
    display:none !important;
}
.mtw-thumb-row img{
    display:block;
    flex:none;
    width:calc((100% - 2.4em) / 3);
    height:auto;
    margin:0 !important;
    padding:0;
}
/* RECRUIT
-------------------------------------------------- */
.mtw-recruit{
    width:100%;
    margin:0;
    padding:0;
}
.mtw-recruit img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
.mtw-recruit-section{
    width:100%;
    margin:0;
    padding:5em 0 0;
}
.mtw-recruit-heading-en{
    margin:0;
    padding:0;
    font-size:1.5em;
    font-weight:600;
    line-height:1.3;
    letter-spacing:.1em;
}
.mtw-recruit-heading-jp{
    margin:.5em 0 0;
    padding:0;
    font-size:.8em;
    line-height:1.2;
}
.mtw-recruit-copy{
    margin:1.8em 0 1.5em !important;
    padding:0 !important;
    font-size:2em;
    font-weight:400;
    line-height:1.55 !important;
    letter-spacing:.04em;
}
.mtw-recruit-text{
    margin:0;
    padding:0;
    font-size:1em;
    line-height:1.9;
    letter-spacing:.02em;
}
.mtw-recruit-text p{
    margin:0 !important;
    padding:0 !important;
    line-height:1.8 !important;
    letter-spacing:.02em !important;
}
.mtw-recruit-text p + p{
    margin-top:1.2em !important;
}
/* TOP MESSAGE
-------------------------------------------------- */
.mtw-recruit-message{
    position:relative;
    width:100%;
    margin:0;
    padding:4em 3%;
    background:#eee;
    box-sizing:border-box;
    overflow:visible;
}
.mtw-recruit-message-main{
    position:relative;
    display:flex;
    align-items:stretch;
    justify-content:space-between;
    width:100%;
    margin:0;
    padding:0 4%;
    box-sizing:border-box;
}
.mtw-recruit-message-text{
    position:relative;
    z-index:2;
    width:66%;
    padding:0 0 3em;
    box-sizing:border-box;
}
.mtw-recruit-message .mtw-recruit-heading{
    margin:0 0 4.5em;
}
.mtw-recruit-message .mtw-recruit-copy{
    position:relative;
    z-index:2;
    margin:0 !important;
    padding:0 !important;
    font-size:2em;
    font-weight:600;
    line-height:1.75 !important;
    letter-spacing:.04em;
}
.mtw-recruit-sign{
    position:relative;
    z-index:3;
    width:100%;
    margin:3em 0 0;
    padding:0 18% 0 0;
    box-sizing:border-box;
    font-size:1em;
    line-height:1.8;
    text-align:right;
    letter-spacing:.08em;
}
.mtw-recruit-president{
    position:absolute;
    right:6%;
    bottom:0;
    z-index:1;
    width:35%;
    height:auto;
    margin:0;
}
.mtw-recruit-president img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
.mtw-recruit-message-box{
    position:relative;
    z-index:5;
    width:92%;
    margin:0 auto;
    padding:4em 5%;
    background:#fff;
    border-radius:.8em;
    box-shadow:0 .3em 1.1em rgba(0,0,0,.08);
    box-sizing:border-box;
}
.mtw-recruit-message-box p{
    margin:0 0 1.8em;
    padding:0;
    font-size:1.1em;
    line-height:2.2;
    letter-spacing:.04em;
}
.mtw-recruit-message-box p:last-child{
    margin-bottom:0;
}
/* SECTION HEADING
-------------------------------------------------- */
.mtw-recruit-line-heading{
    display:flex;
    align-items:center;
    gap:2em;
    width:100%;
    margin:0 0 3em;
}
.mtw-recruit-line-heading::after{
    content:"";
    flex:1;
    height:1px;
    background:#222;
}
/* INTRODUCTION
-------------------------------------------------- */
.mtw-recruit-intro{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:3em;
    align-items:center;
    width:100%;
    margin:0 0 4em;
}
.mtw-recruit-intro-image{
    overflow:hidden;
    aspect-ratio:3 / 2;
    min-height:0 !important;
    background:transparent !important;
}
.mtw-recruit-intro-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

/* STAFF
-------------------------------------------------- */
.mtw-staff-list{
    width: 80%;
    margin: 10% auto;
    padding: 0;
}
.mtw-staff-item{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:stretch;
    width:100%;
    margin: 5% auto;
    padding:0;
    background:#eee;
}
.mtw-staff-item:nth-child(even){
    background:#fff;
}
.mtw-staff-visual{
    position:relative;
    min-width:0;
    min-height:48vh;
    overflow:hidden;
}
.mtw-staff-visual img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
    object-position:center;
}
.mtw-staff-content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
    padding:3em;
    box-sizing:border-box;
}
.mtw-staff-department{
    margin:0 0 .7em;
    padding:0;
    font-size:1.55em;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.04em;
}
.mtw-staff-name{
    margin:0 0 .45em;
    padding:0;
    font-size:1.5em;
    font-weight:400;
    line-height:1.4;
    letter-spacing:.04em;
}
.mtw-staff-profile{
    margin:0 0 1.7em;
    padding:0;
    font-size:.72em;
    line-height:1.6;
    letter-spacing:.02em;
}
.mtw-staff-text{
    margin:0;
    padding:0;
    font-size:0.8em;
    line-height:1.85;
    letter-spacing:.02em;
}
.mtw-staff-message{
    display:block;
    width:100%;
    margin:2em 0 0;
    padding:1.5em 1.7em;
    color:#222;
    background:rgba(255,255,255,.72);
    box-sizing:border-box;
}
.mtw-staff-item:nth-child(even) .mtw-staff-message{
    background:#f3f3f3;
}
.mtw-staff-message-title{
    display:block;
    margin:0 0 .55em;
    padding:0;
    color:#222;
    font-size:1em;
    font-weight:600;
    line-height:1.4;
}
.mtw-staff-message p{
    display:block;
    margin:0 !important;
    padding:0 !important;
    color:#222;
    font-size:.82em;
    font-weight:400;
    line-height:1.75 !important;
    letter-spacing:.02em;
}
/* WORKING ENVIRONMENT
-------------------------------------------------- */
.mtw-recruit-environment{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:3em;
    align-items:center;
    width:100%;
}
.mtw-recruit-environment-image img{
    width:100%;
    height:auto;
}
/* BENEFITS
-------------------------------------------------- */
.mtw-benefits{
    padding-bottom:5em;
}
.mtw-benefits-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:2em;
    width:100%;
}
.mtw-benefits-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    aspect-ratio:16 / 9;
    background:#aaa;
    font-size:1.8em;
}
/* TABLET
-------------------------------------------------- */
@media screen and (max-width:1100px){
    .mtw-recruit-message-main{
        min-height:62vh;
        padding:3em 3% 0;
    }
    .mtw-recruit-message-text{
        width:70%;
    }
    .mtw-recruit-message .mtw-recruit-copy{
        font-size:1.8em;
    }
    .mtw-recruit-president{
        right:3%;
        width:31%;
    }
    .mtw-recruit-sign{
        padding-right:20%;
    }
    .mtw-recruit-message-box{
        width:92%;
        padding:3.5em 5%;
    }
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
	
	.mtw-staff-list{
		width: 100%;
		margin: 10% auto;
	}
    .mtw-recruit-section{
        padding-top:4em;
    }
    .mtw-recruit-heading-en{
        font-size:1.35em;
    }
    .mtw-recruit-copy{
        margin:1.5em 0 1.3em !important;
        font-size:1.5em;
        line-height:1.5 !important;
    }
    .mtw-recruit-text{
        font-size:1.1em;
        line-height:1.8;
    }
    .mtw-recruit-message{
        padding:3em 4%;
    }
    .mtw-recruit-message-main{
        display:block;
        min-height:0;
        padding:0;
    }
    .mtw-recruit-message-text{
        width:100%;
        padding:0 1%;
    }
    .mtw-recruit-message .mtw-recruit-heading{
        margin-bottom:2.4em;
    }
    .mtw-recruit-message .mtw-recruit-copy{
        width:100%;
        font-size:1.55em;
        line-height:1.55 !important;
        word-break:normal;
        overflow-wrap:break-word;
    }
    .mtw-recruit-message .mtw-recruit-copy br.pc{
        display:none !important;
    }
    .mtw-recruit-sign{
        margin-top:1.8em;
        padding-right:0;
        font-size:.8em;
        text-align:left;
    }
    .mtw-recruit-president{
        position:relative;
        right:auto;
        bottom:auto;
        width:42%;
        margin:1.8em 0 0 auto;
    }
    .mtw-recruit-message-box{
        width:96%;
        margin:0 auto;
        padding:2.2em 6%;
        border-radius:.7em;
    }
    .mtw-recruit-message-box p{
        margin-bottom:1.8em;
        font-size:1em;
        line-height:1.95;
        letter-spacing:.02em;
    }
    .mtw-recruit-line-heading{
        gap:1.2em;
        margin-bottom:2.5em;
    }
    .mtw-recruit-intro,
    .mtw-recruit-environment{
        grid-template-columns:1fr;
        gap:2em;
    }
    .mtw-staff-item{
        display:flex;
        flex-direction:column;
    }
    .mtw-staff-visual{
        order:1;
        min-height:0;
    }
    .mtw-staff-visual img{
        width:100%;
        height:auto;
        aspect-ratio:4 / 3;
        object-fit:cover;
    }
    .mtw-staff-content{
        order:2;
        padding:2em 5% 2.5em;
    }
    .mtw-staff-department{
        margin-bottom:.6em;
        font-size:1.3em;
    }
    .mtw-staff-name{
        font-size:1.35em;
    }
    .mtw-staff-profile{
        margin-bottom:1.4em;
        font-size:.78em;
    }
    .mtw-staff-text{
        font-size:.92em;
        line-height:1.8;
    }
    .mtw-staff-message{
        position:static;
        order:3;
        margin-top:1.5em;
        padding:1.5em 5%;
        background:#f5f5f5;
    }
    .mtw-staff-message p{
        font-size:1em;
        line-height:1.75 !important;
    }
    .mtw-benefits-grid{
        grid-template-columns:1fr;
        gap:1.5em;
    }
}
/* PAGE FV
-------------------------------------------------- */
.mtw-custom-page{
    padding-top:var(--mtw-header-height);
}
.mtw-page-fv{
    position:relative;
    width:100%;
    aspect-ratio:1920 / 760;
    min-height:46vh;
    margin:0;
    padding:0;
    overflow:hidden;
    color:#fff;
}
/* 背景画像
-------------------------------------------------- */
.mtw-page-fv-image{
    position:absolute;
    inset:0;
    z-index:1;
    display:block;
    width:100%;
    height:100%;
    margin:0;
    padding:0;
    object-fit:cover;
    object-position:center;
}
/* テキストエリア
-------------------------------------------------- */
.mtw-page-fv-inner{
    position:absolute;
    top:50%;
    left:5%;
    z-index:2;
    width:42%;
    margin:0;
    padding:0;
    color:#fff;
    box-sizing:border-box;
    transform:translateY(-50%);
	text-shadow: 0px 2px 8px rgba(0, 0, 0, 0.4);
}
/* 上部英字
-------------------------------------------------- */
.mtw-page-fv-sub{
    margin:0 0 2em !important;
    padding:0 !important;
    color:#fff;
    font-size:.78em;
    font-weight:400;
    line-height:1.4 !important;
    letter-spacing:.08em;
}
/* ページタイトル
-------------------------------------------------- */
.mtw-page-fv-title{
    margin:0 0 .4em !important;
    padding:0 !important;
    color:#fff;
    font-size:4.3em;
    font-weight:600;
    line-height:1 !important;
    letter-spacing:.01em;
}
/* メインコピー
-------------------------------------------------- */
.mtw-page-fv-copy{
    margin:0 0 1.3em !important;
    padding:0 !important;
    color:#fff;
    font-size:1.85em;
    font-weight:300;
    line-height:1.5 !important;
    letter-spacing:.04em;
}
/* 説明文
-------------------------------------------------- */
.mtw-page-fv-text{
    margin:0 !important;
    padding:0 !important;
    color:#fff;
    font-size:1em;
    font-weight:400;
    line-height:1.9 !important;
    letter-spacing:.04em;
}
/* TABLET
-------------------------------------------------- */
@media screen and (max-width:1024px){
    .mtw-page-fv{
        aspect-ratio:16 / 7;
        min-height:42vh;
    }
    .mtw-page-fv-inner{
        left:5%;
        width:48%;
    }
    .mtw-page-fv-sub{
        margin-bottom:1.7em !important;
        font-size:.72em;
    }
    .mtw-page-fv-title{
        font-size:3.5em;
    }
    .mtw-page-fv-copy{
        margin-bottom:1.1em !important;
        font-size:1.55em;
    }
    .mtw-page-fv-text{
        font-size:.85em;
    }
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-page-fv{
        width:100%;
        aspect-ratio:4 / 5;
        min-height:0;
    }
    .mtw-page-fv-image{
        object-position:center;
    }
    .mtw-page-fv-inner{
        top:auto;
        right:auto;
        bottom:2em;
        left:6%;
        width:88%;
        transform:none;
    }
    .mtw-page-fv-sub{
        margin-bottom:1.2em !important;
        font-size:.65em;
        line-height:1.4 !important;
        letter-spacing:.06em;
    }
    .mtw-page-fv-title{
        margin-bottom:.45em !important;
        font-size:2.6em;
        line-height:1 !important;
    }
    .mtw-page-fv-copy{
        margin-bottom:1em !important;
        font-size:1.3em;
        line-height:1.5 !important;
    }
    .mtw-page-fv-text{
        font-size:.78em;
        line-height:1.8 !important;
    }
}
h3.mtw-benefits-name{
    margin:1em 0 .5em !important;
    padding:0 !important;
    color:#222;
    font-size:1.5em !important;
    font-weight:700 !important;
    line-height:1.4 !important;
    letter-spacing:.03em !important;
}
/*==================================================
TOP MESSAGE
==================================================*/
.mtw-message{
    max-width:1280px;
    margin:120px auto;
    padding:0 60px;
    display:grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap:80px;
    align-items:center;
}
.mtw-message__en{
    display:inline-block;
    position:relative;
    padding-left:70px;
    font-size:14px;
    letter-spacing:.32em;
    color:#888;
    margin-bottom:28px;
}
.mtw-message__en:before{
    content:"";
    width:48px;
    height:1px;
    background:#b8955b;
    position:absolute;
    left:0;
    top:50%;
}
.mtw-message__title{
	font-size: 3em;
    font-weight: 300;
    line-height: 1.15;
    letter-spacing: .08em;
    margin: 0 0 1em;
}
.mtw-message__body{
    max-width:640px;
}
.mtw-message__body p{
    margin: 0 0;
    font-size: 14px;
    line-height: 2;
    color: #333;
    margin-top: 1em!important;
    margin-bottom: 1em!important;
}
.mtw-message__photo{
    overflow:hidden;
}
.mtw-message__photo img{
    width:100%;
    display:block;
}
.mtw-message__sign{
    margin-top:70px;
}
.mtw-message__sign small{
    display:block;
    font-size:14px;
    color:#777;
}
.mtw-message__sign strong{
    font-size:2em;
    letter-spacing:.18em;
}
/*========================
SP
========================*/
@media (max-width:900px){
.mtw-message{
display:block;
padding:0 24px;
margin:80px auto;
}
.mtw-message__photo{
margin-bottom:45px;
}
.mtw-message__title{
font-size:42px;
margin-bottom:35px;
}
.mtw-message__body p{
	font-size:15px;
line-height:2;
}
.mtw-message__sign{
	margin-top:45px;
}
.mtw-message__sign strong{
	font-size:34px;
}
}
/*==================================================
VISION
==================================================*/
.mtw-vision{
    width:85vw;
    margin:140px auto;
    padding:0 60px;
}
.mtw-vision__en{
    display:inline-block;
    position:relative;
    padding-left:70px;
    font-size:14px;
    letter-spacing:.32em;
    color:#888;
    margin-bottom:25px;
}
.mtw-vision__en:before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:48px;
    height:1px;
    background:#b8955b;
}
.mtw-vision__title{
    margin:0 0 50px;
    font-size:54px;
    font-weight:300;
    letter-spacing:.04em;
}
.mtw-vision__copy{
    border-left:2px solid #222;
    padding-left:55px;
}
.mtw-vision__copy p{
    margin:0 !important;
    font-weight:300;
    line-height:2;
    letter-spacing:.05em;
}
@media(max-width:767px){
.mtw-vision{
	width:100vw;
padding:0 24px;
margin:80px auto;
}
.mtw-vision__title{
font-size:40px;
margin-bottom:35px;
}
.mtw-vision__copy{
padding-left:24px;
}
.mtw-vision__copy p{
	font-size: 1.4em;
	line-height: 1.8;
}
}
/*==================================================
PHILOSOPHY
==================================================*/
.mtw-philosophy{
    width:85vw;
    margin:140px auto;
    padding:0 60px;
}
.mtw-philosophy__en{
    display:inline-block;
    position:relative;
    padding-left:70px;
    font-size:14px;
    letter-spacing:.32em;
    color:#888;
    margin-bottom:25px;
}
.mtw-philosophy__en:before{
    content:"";
    position:absolute;
    left:0;
    top:50%;
    width:48px;
    height:1px;
    background:#b8955b;
}
.mtw-philosophy__title{
    margin:0 0 55px;
    font-size:54px;
    font-weight:300;
    letter-spacing:.04em;
}
.mtw-policy{
    border-top:1px solid #ddd;
}
.mtw-policy__item{
    display:grid;
    grid-template-columns:90px 1fr;
    gap:40px;
    padding:22px 0;
    border-bottom:1px solid #ddd;
    align-items:center;
}
.mtw-policy__no{
    font-size:30px;
    font-weight:300;
    color:#b8955b;
    letter-spacing:.08em;
}
.mtw-policy__text{
    font-size:16px;
    line-height:2.2;
    color:#333;
}
@media(max-width:767px){
.mtw-philosophy{
	width:100vw;
padding:0 24px;
margin:80px auto;
}
.mtw-philosophy__title{
font-size:40px;
margin-bottom:35px;
}
.mtw-policy__item{
grid-template-columns:1fr;
gap:10px;
padding:18px 0;
}
.mtw-policy__no{
font-size:22px;
}
.mtw-policy__text{
font-size:15px;
line-height:2;
}
}
/* COMPANY PAGE：縦余白をコンパクトに調整
-------------------------------------------------- */
.mtw-message{
    margin:80px auto 110px;
}
.mtw-vision{
    margin:0 auto 110px;
}
.mtw-philosophy{
    margin:0 auto 110px;
}
/* 見出し下の余白も少し詰める */
.mtw-message__title{
    margin-bottom:35px;
}
.mtw-vision__title,
.mtw-philosophy__title{
    margin-bottom:35px;
}
/* 理念の各項目 */
.mtw-policy__item{
    padding:22px 0;
}
/* ビジョン本文 */
.mtw-vision__copy p{
    font-size:1.6em;
    line-height:1.9;
}
/* SP */
@media screen and (max-width:767px){
    .mtw-message{
        margin:60px auto 80px;
    }
    .mtw-vision,
    .mtw-philosophy{
        margin:0 auto 80px;
    }
	.mtw-policy__item{
		padding:18px 0;
	}
}
/*==================================================
COMPANY
==================================================*/
.mtw-company{
    max-width:1280px;
    margin:0 auto 90px;
    padding:0 60px;
    box-sizing:border-box;
}
.mtw-company__heading{
    margin:0 0 30px;
}
.mtw-company__en{
    display:inline-block;
    position:relative;
    margin:0 0 12px;
    padding-left:70px;
    color:#888;
    font-size:14px;
    line-height:1.4;
    letter-spacing:.32em;
}
.mtw-company__en::before{
    content:"";
    position:absolute;
    top:50%;
    left:0;
    width:48px;
    height:1px;
    background:#b8955b;
}
.mtw-company__title{
    margin:0 !important;
    padding:0 !important;
    font-size:52px;
    font-weight:300;
    line-height:1.2;
    letter-spacing:.04em;
}
.mtw-company__main{
    display:grid;
    grid-template-columns:minmax(0, 46%) minmax(0, 54%);
    gap:55px;
    align-items:start;
}
.mtw-company__profile{
    min-width:0;
    border-top:1px solid #d8d8d8;
}
.mtw-company__row{
    display:flex;
    align-items:flex-start;
    gap:24px;
    padding:14px 0;
    border-bottom:1px solid #d8d8d8;
}
.mtw-company__label{
    width:92px;
    flex:none;
    color:#777;
    font-size:12px;
    font-weight:400;
    line-height:1.8;
    letter-spacing:.08em;
}
.mtw-company__value{
    flex:1;
    min-width:0;
    color:#222;
    font-size:14px;
    line-height:1.8;
    letter-spacing:.03em;
    overflow-wrap:anywhere;
}
.mtw-company__value a{
    color:#56894b;
    text-decoration:none;
    border-bottom:1px solid rgba(86,137,75,.45);
}
.mtw-company__map{
    min-height:380px;
    overflow:hidden;
}
.mtw-company__map iframe{
    display:block;
    width:100%;
    height:380px;
}
.mtw-company__links{
    display:grid;
    grid-template-columns:repeat(4, minmax(0,1fr));
    margin-top:35px;
    border-top:1px solid #d8d8d8;
    border-left:1px solid #d8d8d8;
}
.mtw-company__link{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:95px;
    padding:20px 55px 20px 22px;
    color:#222 !important;
    text-decoration:none !important;
    border-right:1px solid #d8d8d8;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
    transition:background-color .3s ease;
}
.mtw-company__link-en{
    margin-bottom:8px;
    color:#999;
    font-size:10px;
    line-height:1.4;
    letter-spacing:.16em;
}
.mtw-company__link strong{
    font-size:14px;
    font-weight:500;
    line-height:1.6;
    letter-spacing:.04em;
}
.mtw-company__arrow{
    position:absolute;
    top:50%;
    right:22px;
    font-size:18px;
    font-weight:300;
    transform:translateY(-50%);
}
.mtw-company__link--pending{
    cursor:default;
}
.mtw-company__link--pdf{
    width:100%;
    border-top:0;
    border-left:0;
    background:#fff;
    font:inherit;
    text-align:left;
    cursor:pointer;
}
.mtw-pdf-modal{
    position:fixed;
    inset:0;
    z-index:10020;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:3vh 3vw;
    box-sizing:border-box;
}
.mtw-pdf-modal[hidden]{
    display:none;
}
.mtw-pdf-modal__backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.78);
}
.mtw-pdf-modal__panel{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    width:94vw;
    max-width:1280px;
    height:94vh;
    padding:3.4em 1em 1em;
    background:#fff;
    box-sizing:border-box;
}
.mtw-pdf-modal__panel iframe{
    display:block;
    flex:1;
    width:100%;
    min-height:0;
    border:0;
    background:#eee;
}
.mtw-pdf-modal__close{
    position:absolute;
    top:.45em;
    right:.65em;
    width:2em;
    height:2em;
    padding:0;
    background:transparent;
    border:0;
    color:#222;
    font-size:1.5em;
    line-height:1;
    cursor:pointer;
}
.mtw-pdf-modal__external{
    align-self:flex-end;
    margin-top:.7em;
    color:#222 !important;
    font-size:.8em;
    text-decoration:underline;
}
body.mtw-pdf-modal-open{
    overflow:hidden;
}
@media (any-hover:hover){
    .mtw-company__link:hover{
        color:#222 !important;
        background:#f5f4f1;
    }
	.mtw-company__link--pending:hover{
		background:#fff;
	}
}
/* TABLET
-------------------------------------------------- */
@media screen and (max-width:900px){
    .mtw-company{
        padding:0 40px;
    }
    .mtw-company__main{
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        gap:38px;
    }
    .mtw-company__label{
        width:78px;
    }
    .mtw-company__links{
        grid-template-columns:1fr;
    }
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-company{
        margin-bottom:80px;
        padding:0 24px;
    }
    .mtw-company__heading{
        margin-bottom:30px;
    }
    .mtw-company__title{
        font-size:40px;
    }
    .mtw-company__main{
        grid-template-columns:1fr;
        gap:30px;
    }
    .mtw-company__row{
        gap:15px;
        padding:13px 0;
    }
    .mtw-company__label{
        width:72px;
        font-size:11px;
    }
    .mtw-company__value{
        font-size:12px;
        line-height:1.8;
    }
    .mtw-company__map{
        min-height:280px;
    }
    .mtw-company__map iframe{
        height:280px;
    }
    .mtw-company__links{
        grid-template-columns:1fr;
        margin-top:30px;
    }
    .mtw-company__link{
        min-height:90px;
        padding:18px 50px 18px 20px;
    }
	.mtw-pdf-modal{
		padding:15px;
	}
	.mtw-pdf-modal__panel{
		width:100%;
		height:90vh;
		padding:3.2em .7em .7em;
	}
}
/*==================================================
HISTORY
==================================================*/
.mtw-history{
    max-width:1280px;
    margin:0 auto 100px;
    padding:0 60px;
    box-sizing:border-box;
}
.mtw-history__heading{
    margin:0 0 35px;
}
.mtw-history__en{
    display:inline-block;
    position:relative;
    margin:0 0 12px;
    padding-left:70px;
    color:#888;
    font-size:14px;
    line-height:1.4;
    letter-spacing:.32em;
}
.mtw-history__en::before{
    content:"";
    position:absolute;
    top:50%;
    left:0;
    width:48px;
    height:1px;
    background:#b8955b;
    transform:translateY(-50%);
}
.mtw-history__title{
    margin:0 !important;
    padding:0 !important;
    color:#111;
    font-size:52px;
    font-weight:300;
    line-height:1.2;
    letter-spacing:.04em;
}
.mtw-history__list{
    margin:0;
    padding:0;
    border-top:1px solid #d8d8d8;
}
.mtw-history__item{
    position:relative;
    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    align-items:center;
    gap:35px;
    min-height:82px;
    padding:0.5em 0;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
}
.mtw-history__year{
    margin:0;
    padding:0;
    color:#b8955b;
    font-size:20px;
    font-weight:500;
    line-height:1.5;
    letter-spacing:.08em;
}
.mtw-history__content{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    min-width:0;
}
.mtw-history__content p{
    flex:1;
    min-width:0;
    margin:0 !important;
    padding:0 !important;
    color:#222;
    font-size:14px;
    font-weight:400;
    line-height:2;
    letter-spacing:.03em;
}
.mtw-history__content a{
    color:#56894b;
    text-decoration:none;
    border-bottom:1px solid rgba(86,137,75,.45);
}
.mtw-history__item--founding{
    background:#f6f4ef;
}
.mtw-history__item--founding::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:-60px;
    width:4px;
    background:#b8955b;
}
.mtw-history__item--founding .mtw-history__content p{
    font-weight:500;
    letter-spacing:.06em;
}
.mtw-history__item--bamboo{
    min-height:150px;
}
.mtw-history__note{
    display:inline-block;
    margin-top:5px;
    color:#666;
    font-size:12px;
}
@media (any-hover:hover){
    .mtw-history__content a:hover{
        opacity:.65;
    }
}
/* TABLET
-------------------------------------------------- */
@media screen and (max-width:900px){
    .mtw-history{
        padding:0 40px;
    }
    .mtw-history__item{
        grid-template-columns:85px minmax(0,1fr);
        gap:25px;
    }
    .mtw-history__item--founding::before{
        left:-40px;
    }
}
/* SP
-------------------------------------------------- */
@media screen and (max-width:767px){
    .mtw-history{
        margin-bottom:80px;
        padding:0 24px;
    }
    .mtw-history__heading{
        margin-bottom:30px;
    }
    .mtw-history__en{
        padding-left:58px;
        font-size:11px;
    }
    .mtw-history__en::before{
        width:40px;
    }
    .mtw-history__title{
        font-size:40px;
    }
    .mtw-history__item{
        grid-template-columns:60px minmax(0,1fr);
        align-items:start;
        gap:15px;
        min-height:0;
        padding:17px 0;
    }
    .mtw-history__year{
        padding-top:1px;
        font-size:15px;
        line-height:1.7;
    }
    .mtw-history__content{
        display:block;
    }
    .mtw-history__content p{
        font-size:12px;
        line-height:1.9;
    }
    .mtw-history__item--founding::before{
        left:-24px;
    }
    .mtw-history__item--bamboo{
        min-height:0;
    }
    .mtw-history__note{
        margin-top:4px;
        font-size:11px;
    }
}
/*==================================================
AWARDS
==================================================*/
.mtw-awards{
    max-width:1280px;
    margin:0 auto 100px;
    padding:0 60px;
    box-sizing:border-box;
}
.mtw-awards__heading{
    margin:0 0 35px;
}
.mtw-awards__en{
    display:inline-block;
    position:relative;
    margin:0 0 12px;
    padding-left:70px;
    color:#888;
    font-size:14px;
    line-height:1.4;
    letter-spacing:.32em;
}
.mtw-awards__en::before{
    content:"";
    position:absolute;
    top:50%;
    left:0;
    width:48px;
    height:1px;
    background:#b8955b;
    transform:translateY(-50%);
}
.mtw-awards__title{
    margin:0 !important;
    padding:0 !important;
    color:#111;
    font-size:52px;
    font-weight:300;
    line-height:1.2;
    letter-spacing:.04em;
}
.mtw-awards__list{
    margin:0;
    padding:0;
    border-top:1px solid #d8d8d8;
}
.mtw-awards__item{
    position:relative;
    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    align-items:center;
    gap:35px;
    min-height:82px;
    padding:18px 0;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
}
.mtw-awards__year{
    margin:0;
    padding:0;
    color:#b8955b;
    font-size:20px;
    font-weight:500;
    line-height:1.5;
    letter-spacing:.08em;
}
.mtw-awards__content{
    min-width:0;
}
.mtw-awards__content p{
    margin:0 !important;
    padding:0 !important;
    color:#222;
    font-size:14px;
    font-weight:400;
    line-height:2;
    letter-spacing:.03em;
}
.mtw-awards__item--featured{
    padding-top:25px;
    padding-bottom:25px;
    background:#f6f4ef;
}
.mtw-awards__item--featured::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:-60px;
    width:4px;
    background:#b8955b;
}
.mtw-awards__item--featured .mtw-awards__content p{
    font-weight:500;
    line-height:2.15;
}
@media screen and (max-width:900px){
    .mtw-awards{
        padding:0 40px;
    }
    .mtw-awards__item{
        grid-template-columns:85px minmax(0,1fr);
        gap:25px;
    }
    .mtw-awards__item--featured::before{
        left:-40px;
    }
}
@media screen and (max-width:767px){
    .mtw-awards{
        margin-bottom:80px;
        padding:0 24px;
    }
    .mtw-awards__heading{
        margin-bottom:30px;
    }
    .mtw-awards__en{
        padding-left:58px;
        font-size:11px;
    }
    .mtw-awards__en::before{
        width:40px;
    }
    .mtw-awards__title{
        font-size:40px;
    }
    .mtw-awards__item{
        grid-template-columns:60px minmax(0,1fr);
        align-items:start;
        gap:15px;
        min-height:0;
        padding:17px 0;
    }
    .mtw-awards__year{
        padding-top:1px;
        font-size:15px;
        line-height:1.7;
    }
    .mtw-awards__content p{
        font-size:12px;
        line-height:1.9;
    }
    .mtw-awards__item--featured{
        padding-top:20px;
        padding-bottom:20px;
    }
    .mtw-awards__item--featured::before{
        left:-24px;
    }
}






/*==================================================
FACTORY
==================================================*/

.mtw-factory{
    width:100%;
    margin:0;
    padding:0;
}

.mtw-factory img{
    display:block;
    max-width:100%;
    height:auto;
    margin:0;
}


/*==================================================
FACTORY HERO
==================================================*/

.mtw-factory-hero{
    position:relative;
    width:100%;
    height:60vh;
    min-height:34em;
    margin:0 0 7em;
    padding:0;
    overflow:hidden;
    color:#fff;
}

.mtw-factory-hero::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:rgba(0,0,0,.3);
}

.mtw-factory-hero__image{
    display:block;
    width:100%;
    height:100% !important;
    margin:0;
    object-fit:cover;
    object-position:center;
}

.mtw-factory-hero__content{
    position:absolute;
    top:50%;
    left:8%;
    z-index:2;
    width:45%;
    margin:0;
    padding:0;
    transform:translateY(-50%);
}

.mtw-factory-hero__en{
    display:inline-block;
    position:relative;
    margin:0 0 2em !important;
    padding:0 0 0 5em !important;
    color:#fff;
    font-size:.8em;
    line-height:1.4 !important;
    letter-spacing:.3em;
}

.mtw-factory-hero__en::before{
    content:"";
    position:absolute;
    top:50%;
    left:0;
    width:3.5em;
    height:1px;
    background:#b8955b;
    transform:translateY(-50%);
}

.mtw-factory-hero__title{
    margin:0 0 .8em !important;
    padding:0 !important;
    color:#fff;
    font-size:3.2em;
    font-weight:300;
    line-height:1.45 !important;
    letter-spacing:.06em;
}

.mtw-factory-hero__text{
    margin:0 !important;
    padding:0 !important;
    color:#fff;
    font-size:1.1em;
    line-height:2 !important;
    letter-spacing:.04em;
}


/*==================================================
FACTORY COMMON SECTION
左：テキスト　右：写真
==================================================*/

.mtw-factory-section{
    display:grid;
    grid-template-columns:36% minmax(0,1fr);
    gap:7%;
    align-items:center;
    width:100%;
    margin:0 auto;
    padding:6em 0;
    border-bottom:1px solid #ddd;
    box-sizing:border-box;
}

.mtw-factory-section__text{
    min-width:0;
    margin:0;
    padding:0;
}

.mtw-factory-section .mtw-sec-head{
    margin-top:0;
}

.mtw-factory-section .mtw-sec-copy{
    margin-bottom:1.2em !important;
}

.mtw-factory-section .mtw-sec-text{
    line-height:2 !important;
}


/*==================================================
FACTORY SECTION BACKGROUND
==================================================*/

.mtw-factory-section--gray{
    width:100%;
    padding-right:6%;
    padding-left:6%;
    background:#f2f2f2;
    border-bottom:0;
}

.mtw-factory-section--dark{
    width:100%;
    padding-right:6%;
    padding-left:6%;
    color:#fff;
    background:#777;
    border-bottom:0;
}

.mtw-factory-section--dark .mtw-sec-number,
.mtw-factory-section--dark .mtw-sec-en,
.mtw-factory-section--dark .mtw-sec-jp,
.mtw-factory-section--dark .mtw-sec-copy,
.mtw-factory-section--dark .mtw-sec-text{
    color:#fff;
}


/*==================================================
FACTORY DESCRIPTION
==================================================*/

.mtw-factory-description{
    margin:0;
    padding:0;
}

.mtw-factory-description p{
    margin:0 !important;
    padding:0 !important;
    font-size:1.1em;
    line-height:2 !important;
    letter-spacing:.03em;
}

.mtw-factory-description p + p{
    margin-top:1.5em !important;
}


/*==================================================
FACTORY GALLERY
==================================================*/

.mtw-factory-gallery{
    display:grid;
    gap:.7em;
    min-width:0;
    width:100%;
    margin:0;
    padding:0;
}

.mtw-factory-gallery figure{
    min-width:0;
    margin:0;
    padding:0;
    overflow:hidden;
    background:#eee;
}

.mtw-factory-gallery figure br{
    display:none;
}

.mtw-factory-gallery img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
    object-position:center;
}


/* 写真1枚
-------------------------------------------------- */

.mtw-factory-gallery--1{
    grid-template-columns:1fr;
}

.mtw-factory-gallery--1 figure{
    aspect-ratio:16 / 10;
}


/* 写真2枚
-------------------------------------------------- */

.mtw-factory-gallery--2{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.mtw-factory-gallery--2 figure{
    aspect-ratio:4 / 3;
}


/* 写真3枚
1枚目を大きく、右側に2枚
-------------------------------------------------- */

.mtw-factory-gallery--3{
    grid-template-columns:1.35fr 1fr;
    grid-template-rows:repeat(2,minmax(0,1fr));
}

.mtw-factory-gallery--3 figure{
    aspect-ratio:4 / 3;
}

.mtw-factory-gallery--3 figure:first-child{
    grid-row:1 / 3;
    aspect-ratio:auto;
}


/* 写真4枚
-------------------------------------------------- */

.mtw-factory-gallery--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.mtw-factory-gallery--4 figure{
    aspect-ratio:4 / 3;
}


/*==================================================
PRODUCTION FLOW
==================================================*/

.mtw-factory-flow{
    width:100%;
    margin:0 auto;
    padding:6em 0 0;
    box-sizing:border-box;
}

.mtw-factory-flow__heading{
    width:100%;
    margin:0;
    padding:0 0 5em;
    border-bottom:1px solid #ddd;
}

.mtw-factory-flow__heading .mtw-sec-head{
    margin-top:0;
}

.mtw-factory-flow__heading .mtw-sec-copy{
    margin-bottom:1.2em !important;
}


/*==================================================
PRODUCTION STEP
左：テキスト　右：写真
==================================================*/

.mtw-factory-step{
    display:grid;
    grid-template-columns:36% minmax(0,1fr);
    gap:7%;
    align-items:center;
    width:100%;
    margin:0;
    padding:5em 0;
    border-bottom:1px solid #ddd;
    box-sizing:border-box;
}

.mtw-factory-step__text{
    min-width:0;
    margin:0;
    padding:0;
}

.mtw-factory-step__heading{
    display:flex;
    align-items:center;
    gap:1.5em;
    margin:0 0 1.5em;
    padding:0;
}

.mtw-factory-step__number{
    display:block;
    flex:none;
    margin:0;
    padding:0;
    color:#b8955b;
    font-size:.8em;
    font-weight:500;
    line-height:1.4;
    letter-spacing:.18em;
}

.mtw-factory-step__en{
    display:block;
    margin:0;
    padding:0;
    color:#222;
    font-size:.8em;
    font-weight:600;
    line-height:1.4;
    letter-spacing:.15em;
}

.mtw-factory-step__title{
    margin:0 0 .7em !important;
    padding:0 !important;
    color:#222;
    font-size:1.8em;
    font-weight:500;
    line-height:1.5 !important;
    letter-spacing:.04em;
}

.mtw-factory-step__jp{
    margin:0 0 1.5em !important;
    padding:0 !important;
    color:#777;
    font-size:.8em;
    line-height:1.5 !important;
    letter-spacing:.08em;
}

.mtw-factory-step__description{
    margin:0 !important;
    padding:0 !important;
    color:#222;
    font-size:1em;
    line-height:2 !important;
    letter-spacing:.03em;
}


/*==================================================
TABLET
==================================================*/

@media screen and (max-width:64em){

    .mtw-factory-hero__content{
        width:55%;
    }

    .mtw-factory-section,
    .mtw-factory-step{
        grid-template-columns:40% minmax(0,1fr);
        gap:5%;
    }

    .mtw-factory-section--gray,
    .mtw-factory-section--dark{
        padding-right:5%;
        padding-left:5%;
    }

    .mtw-factory-step__title{
        font-size:1.6em;
    }

}


/*==================================================
SP
==================================================*/

@media screen and (max-width:48em){

    /* HERO
    -------------------------------------------------- */

    .mtw-factory-hero{
        height:75vh;
        min-height:0;
        margin-bottom:5em;
    }

    .mtw-factory-hero__image{
        object-position:center;
    }

    .mtw-factory-hero__content{
        top:auto;
        right:auto;
        bottom:3em;
        left:6%;
        width:100%;
        transform:none;
    }

    .mtw-factory-hero__en{
        margin-bottom:1.5em !important;
        padding-left:4.5em !important;
        font-size:.7em;
    }

    .mtw-factory-hero__en::before{
        width:3em;
    }

    .mtw-factory-hero__title{
        font-size:2.2em;
        line-height:1.4 !important;
    }

    .mtw-factory-hero__text{
        font-size:.85em;
        line-height:1.8 !important;
    }


    /* COMMON SECTION
    -------------------------------------------------- */

    .mtw-factory-section{
        display:block;
        width:100%;
        padding:4em 0;
    }

    .mtw-factory-section--gray,
    .mtw-factory-section--dark{
        width:100%;
        padding-right:6%;
        padding-left:6%;
    }

    .mtw-factory-section__text{
        width:100%;
        margin:0 0 2.5em;
    }

    .mtw-factory-section .mtw-sec-copy{
        margin-bottom:1em !important;
    }

    .mtw-factory-description p{
        font-size:.92em;
        line-height:1.9 !important;
    }


    /* FLOW
    -------------------------------------------------- */

    .mtw-factory-flow{
        width:100%;
        padding-top:4em;
    }

    .mtw-factory-flow__heading{
        padding-bottom:4em;
    }


    /* STEP
    -------------------------------------------------- */

    .mtw-factory-step{
        display:block;
        width:100%;
        padding:4em 0;
    }

    .mtw-factory-step__text{
        width:100%;
        margin:0 0 2.5em;
    }

    .mtw-factory-step__heading{
        gap:1em;
        margin-bottom:1.2em;
    }

    .mtw-factory-step__number,
    .mtw-factory-step__en{
        font-size:.75em;
    }

    .mtw-factory-step__title{
        font-size:1.5em;
    }

    .mtw-factory-step__jp{
        margin-bottom:1.2em !important;
    }

    .mtw-factory-step__description{
        font-size:1em;
        line-height:1.9 !important;
    }


    /* GALLERY
    -------------------------------------------------- */

    .mtw-factory-gallery{
        gap:.5em;
    }

    .mtw-factory-gallery--1{
        grid-template-columns:1fr;
    }

    .mtw-factory-gallery--1 figure{
        aspect-ratio:4 / 3;
    }

    .mtw-factory-gallery--2,
    .mtw-factory-gallery--4{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .mtw-factory-gallery--2 figure,
    .mtw-factory-gallery--4 figure{
        aspect-ratio:1 / 1;
    }

    .mtw-factory-gallery--3{
        grid-template-columns:repeat(2,minmax(0,1fr));
        grid-template-rows:auto;
    }

    .mtw-factory-gallery--3 figure{
        aspect-ratio:1 / 1;
    }

    .mtw-factory-gallery--3 figure:first-child{
        grid-row:auto;
        grid-column:1 / 3;
        aspect-ratio:16 / 9;
    }

}

/*==================================================
ENTRY
==================================================*/

.mtw-recruit-entry{
    width:100%;
    padding:0 0 6em;
}

.mtw-recruit-entry-copy{
    margin:2em 0 3em;
    text-align:center;
}

.mtw-recruit-entry-grid{
	display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2em;
    margin-top: 2vw;
}

.mtw-entry-card{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding: 2em;
    border:1px solid #ddd;
    text-decoration:none;
    color:#222;
    transition:.3s;
    box-sizing:border-box;
}

.mtw-entry-card:hover{
    background:#f7f7f7;
    border-color:#b8955b;
}

.mtw-entry-en{

    margin-bottom:1.2em;

    color:#888;

    font-size:.8em;

    letter-spacing:.25em;

}

.mtw-entry-card h2{

    margin:0 0 .7em;

    font-size:2em;

    font-weight:500;

}

.mtw-entry-card p{

    margin:0;

    color:#666;

    line-height:1.8;

}

@media(max-width:768px){

.mtw-recruit-entry{
    padding-bottom:4em;
}

.mtw-recruit-entry-grid{
    grid-template-columns:1fr;
	margin-top: 6vw;
}

.mtw-entry-card{
    min-height:auto;
    padding:2em;
}
.mtw-entry-card h2{
	font-size:1.6em;
	}
}


.mtw-workplace-nav{
    margin-top:3em;
}
.mtw-workplace-nav__title{
    margin:0 0 1.3em !important;
    color:#222;
    font-size:1em;
    font-weight:500;
    letter-spacing:.12em;
}
.mtw-workplace-nav__links{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:0 2em;
}
.mtw-workplace-nav__links a{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:.8em;
    align-items:center;
    min-height:64px;
    padding:1em .2em;
    color:#222 !important;
    line-height:1.5;
    text-decoration:none !important;
    border-bottom:1px solid #ddd;
    box-sizing:border-box;
    transition:padding .25s ease, color .25s ease;
}
.mtw-workplace-nav__links strong{
    font-size:1em;
    font-weight:500;
    letter-spacing:.06em;
}
.mtw-workplace-nav__links i{
    color:#888;
    font-size:.75em;
    font-style:normal;
}
@media (any-hover:hover){
    .mtw-workplace-nav__links a:hover{
        padding-right:.7em;
        padding-left:.7em;
        color:#777 !important;
    }
}
.mtw-recruit-page .mtw-factory-step{
    scroll-margin-top:110px;
}
@media(max-width:900px){
    .mtw-workplace-nav__links{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }
}
@media(max-width:768px){
    .mtw-workplace-nav{
        margin-top:2em;
    }
    .mtw-workplace-nav__links{
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:0 1.2em;
    }
    .mtw-workplace-nav__links a{
        min-height:56px;
        padding:.85em 0;
    }
}



#mtw-lightbox{
    position:fixed;
    inset:0;
    background:rgba(255,255,255,.98);
    display:flex;
    justify-content:center;
    align-items:center;
    opacity:0;
    visibility:hidden;
    transition:.3s;
    z-index:99999;
}

#mtw-lightbox.show{
    opacity:1;
    visibility:visible;
}
#mtw-lightbox img{
    max-width:90vw;
    max-height:90vh;
    display:block;
    box-shadow:0 20px 50px rgba(0,0,0,.4);
}
.mtw-lightbox-close{
    position:absolute;
    top:25px;
    right:35px;
    color:#fff;
    font-size:50px;
    cursor:pointer;
    line-height:1;
}

/*==================================================
TECHNOLOGY PAGE
==================================================*/
.mtw-technology{
    width:100%;
    overflow:hidden;
}
.mtw-technology-intro,
.mtw-technology-process{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    align-items:center;
    max-width:1280px;
    margin:0 auto;
    padding:3em;
    box-sizing:border-box;
}
.mtw-technology-intro{
    gap:6%;
}
.mtw-technology-intro__text .mtw-sec-text + .mtw-sec-text{
    margin-top:1em !important;
}
.mtw-technology-intro__image,
.mtw-technology-process__image{
    min-width:0;
    margin:0;
    overflow:hidden;
}
.mtw-technology-intro__image{
    aspect-ratio:3 / 2;
}
.mtw-technology-intro__image img,
.mtw-technology-process__image img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
}
.mtw-technology-processes{
    background:#f3f3f3;
}
.mtw-technology-process{
    gap:7%;
    max-width:1100px;
    border-bottom:1px solid #d8d8d8;
}
.mtw-technology-process__image{
    aspect-ratio:2000 / 1626;
}
.mtw-technology-process__text{
    min-width:0;
}
.mtw-technology-process .mtw-sec-head{
    margin-top:0;
}
.mtw-technology-process .mtw-sec-copy{
    margin-bottom:1em !important;
}
.mtw-technology-heading{
    display:flex;
    align-items:flex-end;
    gap:2em;
    margin:0 0 2.5em;
}
.mtw-technology-heading__number{
    flex:0 0 auto;
    color:#333;
    font-size:3.8em;
    font-weight:700;
    letter-spacing:-.05em;
    line-height:.85;
}
.mtw-technology-heading__title{
    margin:0;
    color:#222;
    font-size:2em;
    font-weight:600;
    letter-spacing:.08em;
    line-height:1.3;
}
.mtw-technology-core{
    max-width:1280px;
    margin:0 auto;
    padding:6em 60px;
    box-sizing:border-box;
}
.mtw-technology-core__steps{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:1.5em;
}
.mtw-technology-core__group{
    display:flex;
    min-width:0;
    flex-direction:column;
    gap:1em;
}
.mtw-technology-core__group--double{
    grid-column:span 2;
}
.mtw-technology-core__group-title,
.mtw-technology-core__step-title{
    display:flex;
    min-height:4em;
    align-items:center;
    box-sizing:border-box;
    margin:0;
    padding:1em 1.2em;
    background:#f3f3f3;
    color:#222;
    font-size:1.15em;
    font-weight:600;
    letter-spacing:.04em;
    line-height:1.5;
}
.mtw-technology-core__step-title{
    margin-bottom:1em;
}
.mtw-technology-core__group-body{
    display:grid;
    grid-template-columns:1fr;
    gap:1em;
    flex:1;
}
.mtw-technology-core__group--double .mtw-technology-core__group-body{
    grid-template-columns:repeat(2, minmax(0, 1fr));
}
.mtw-technology-core__step{
    display:flex;
    min-width:0;
    flex-direction:column;
    background:transparent;
}
.mtw-technology-core__step figure{
    margin:0;
    overflow:hidden;
    aspect-ratio:2000 / 1626;
}
.mtw-technology-core__step img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
}
.mtw-technology-core__content{
    flex:1;
    padding:1.6em 1.6em 2em;
    background:#f3f3f3;
}
.mtw-technology-core__content h3{
    margin:0 0 1em;
    color:#222;
    font-size:1.25em;
    font-weight:600;
    letter-spacing:.06em;
    line-height:1.5;
}
.mtw-technology-core__content p,
.mtw-technology-process__description{
    margin:0 !important;
    color:#333;
    font-size:1em;
    letter-spacing:.03em;
    line-height:2 !important;
}
.mtw-technology-core__content p{
    line-height:1.85 !important;
}
.mtw-technology-process .mtw-technology-heading{
    margin-bottom:2.2em;
}
.mtw-technology-features{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1em;
    max-width:1280px;
    margin:0 auto;
    padding:6em 60px;
    box-sizing:border-box;
}
.mtw-technology-features img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
@media screen and (max-width:900px){
    .mtw-technology-intro,
    .mtw-technology-process,
    .mtw-technology-features,
    .mtw-technology-core{
        padding-right:40px;
        padding-left:40px;
    }
	.mtw-technology-core__steps{
		grid-template-columns:repeat(2, minmax(0, 1fr));
		gap:1em;
	}
	.mtw-technology-core__group--double{
		grid-column:span 2;
	}
	.mtw-technology-core__content{
		padding:1.5em;
	}
}
@media screen and (max-width:767px){
    .mtw-technology-intro,
    .mtw-technology-process{
        grid-template-columns:1fr;
        gap:2.5em;
        padding:2em;
    }
    .mtw-technology-intro__text{
        order:1;
    }
    .mtw-technology-intro__image{
        order:2;
    }
    .mtw-technology-process__image{
        aspect-ratio:2000 / 1626;
    }
    .mtw-technology-process .mtw-sec-head{
        margin-bottom:2em;
    }
	.mtw-technology-heading{
		gap:1em;
		margin-bottom:2em;
	}
	.mtw-technology-heading__number{
		font-size:2.8em;
	}
	.mtw-technology-heading__title{
		font-size:1.5em;
	}
	.mtw-technology-core{
		padding:5em 24px;
	}
	.mtw-technology-core__steps{
		grid-template-columns:1fr;
		gap:1.2em;
	}
	.mtw-technology-core__group--double{
		grid-column:auto;
	}
	.mtw-technology-core__group--double .mtw-technology-core__group-body{
		grid-template-columns:1fr;
	}
	.mtw-technology-core__group-title,
	.mtw-technology-core__step-title{
		padding:1em 1.1em;
		font-size:1.15em;
	}
	.mtw-technology-core__content{
		padding:1.5em 1.5em 1.8em;
	}
    .mtw-technology-features{
        grid-template-columns:1fr;
        gap:.7em;
        padding:4em 24px;
    }
}

/*==================================================
PRODUCTS PAGE
==================================================*/
.mtw-products-page{
    width:100%;
    overflow:hidden;
}
.mtw-products-intro,
.mtw-products-steering,
.mtw-products-service{
    max-width:1280px;
    margin:0 auto;
    padding:6em 60px;
    box-sizing:border-box;
}
.mtw-products-intro,
.mtw-products-service{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    gap:6%;
    align-items:center;
}
.mtw-products-intro__text .mtw-sec-text + .mtw-sec-text{
    margin-top:1em !important;
}
.mtw-products-intro__image,
.mtw-products-service__image{
    min-width:0;
    margin:0;
    overflow:hidden;
}
.mtw-products-intro__image{
    aspect-ratio:1 / 1;
}
.mtw-products-intro__image img,
.mtw-products-service__image img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:cover;
}
.mtw-products-steering{
    display:grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    column-gap:5%;
    row-gap:4em;
    padding-bottom:10em;
    background:#f7f7f7;
}
.mtw-products-steering__heading .mtw-sec-head{
    margin-top:0;
}
.mtw-products-material img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
}
.mtw-products-gallery{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:1.2em;
    margin-top:4em;
}
.mtw-products-card{
    min-width:0;
    margin:0;
    padding:0 0 .8em;
    background:#fff;
    border:1px solid #e8e8e8;
    box-sizing:border-box;
    text-align:center;
}
.mtw-products-card img{
    display:block;
    width:100%;
    aspect-ratio:853 / 381;
    margin:0;
    object-fit:cover;
}
.mtw-products-card__button{
    position:relative;
    display:block;
    width:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    background:none;
    border:0;
    color:inherit;
    cursor:zoom-in;
}
.mtw-products-card__button::after{
    content:"＋";
    position:absolute;
    right:.8em;
    bottom:.8em;
    display:flex;
    align-items:center;
    justify-content:center;
    width:2.2em;
    height:2.2em;
    background:rgba(255,255,255,.92);
    border-radius:50%;
    box-shadow:0 2px 10px rgba(0,0,0,.15);
    font-size:1em;
    opacity:0;
    transform:translateY(.4em);
    transition:opacity .25s ease, transform .25s ease;
}
.mtw-products-card__button:hover::after,
.mtw-products-card__button:focus-visible::after{
    opacity:1;
    transform:translateY(0);
}
.mtw-products-card__button:focus-visible{
    outline:2px solid #a47d45;
    outline-offset:2px;
}
.mtw-products-card .mtw-product-card-text{
    margin:.7em .5em 0 !important;
}
.mtw-lightbox[hidden]{
    display:none;
}
.mtw-lightbox{
    position:fixed;
    z-index:10000;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:4em;
}
.mtw-lightbox__backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.82);
    cursor:zoom-out;
}
.mtw-lightbox__content{
    position:relative;
    z-index:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    max-width:90vw;
    max-height:88vh;
}
.mtw-lightbox__image{
    display:block;
    max-width:90vw;
    max-height:78vh;
    width:auto;
    height:auto;
    background:#fff;
    box-shadow:0 10px 40px rgba(0,0,0,.35);
    object-fit:contain;
}
.mtw-lightbox__caption{
    margin:1em 0 0;
    color:#fff;
    font-size:1em;
    letter-spacing:.04em;
    text-align:center;
}
.mtw-lightbox__close{
    position:absolute;
    top:-2.8em;
    right:0;
    width:2.4em;
    height:2.4em;
    padding:0;
    background:transparent;
    border:1px solid rgba(255,255,255,.7);
    border-radius:50%;
    color:#fff;
    font-size:1.3em;
    line-height:1;
    cursor:pointer;
}
.mtw-lightbox__close:focus-visible{
    outline:2px solid #fff;
    outline-offset:3px;
}
body.mtw-lightbox-open{
    overflow:hidden;
}

/* WOOD STEERING GROUP GALLERY
-------------------------------------------------- */
.mtw-products-steering__heading{
    grid-column:1 / -1;
    max-width:560px;
}
.mtw-steering-groups{
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1.5em;
}
.mtw-steering-card{
    min-width:0;
    margin:0;
    overflow:hidden;
    background:#fff;
}
.mtw-steering-card__button{
    position:relative;
    display:block;
    width:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    background:#fff;
    border:0;
    cursor:pointer;
}
.mtw-steering-card__button::after{
    content:"VIEW";
    position:absolute;
    right:1.2em;
    bottom:1.2em;
    display:flex;
    align-items:center;
    justify-content:center;
    width:4.5em;
    height:4.5em;
    background:rgba(255,255,255,.94);
    border-radius:50%;
    box-shadow:0 4px 18px rgba(0,0,0,.12);
    color:#333;
    font-size:.68em;
    font-weight:600;
    letter-spacing:.12em;
    transition:transform .25s ease;
}
.mtw-steering-card__button:hover::after,
.mtw-steering-card__button:focus-visible::after{
    transform:scale(1.08);
}
.mtw-steering-card__button:focus-visible{
    outline:2px solid #a47d45;
    outline-offset:-2px;
}
.mtw-steering-card__button img{
    display:block;
    width:100%;
    aspect-ratio:1500 / 1042;
    margin:0;
    object-fit:contain;
    background:#fff;
    transition:transform .4s ease;
}
.mtw-steering-card__button:hover img{
    transform:scale(1.025);
}
.mtw-steering-card__text{
    padding:1.5em 1.6em 1.7em;
    background:#fff;
}
.mtw-steering-card__label,
.mtw-group-variant__label{
    display:block;
    margin:0 0 .55em !important;
    color:#999;
    font-size:.7em;
    font-weight:600;
    letter-spacing:.16em;
}
.mtw-steering-card__name{
    margin:0;
    color:#222;
    font-size:1.35em;
    font-weight:500;
    letter-spacing:.06em;
    line-height:1.4;
}
.mtw-group-modal[hidden]{
    display:none;
}
.mtw-group-modal{
    position:fixed;
    z-index:10000;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:4em;
}
.mtw-group-modal__backdrop{
    position:absolute;
    inset:0;
    background:rgba(20,20,20,.86);
    cursor:pointer;
}
.mtw-group-modal__panel{
    position:relative;
    z-index:1;
    width:min(1080px, 92vw);
    max-height:88vh;
    padding:4em 3em 3em;
    overflow:auto;
    background:#f4f4f4;
    box-sizing:border-box;
    box-shadow:0 16px 60px rgba(0,0,0,.35);
}
.mtw-group-modal__close{
    position:absolute;
    z-index:2;
    top:1.2em;
    right:1.2em;
    display:flex;
    align-items:center;
    justify-content:center;
    width:2.5em;
    height:2.5em;
    padding:0;
    background:#222;
    border:0;
    border-radius:50%;
    color:#fff;
    font-size:1.2em;
    cursor:pointer;
}
.mtw-group-modal__close:focus-visible{
    outline:2px solid #a47d45;
    outline-offset:3px;
}
.mtw-group-modal__heading{
    margin:0 0 1.2em;
    color:#222;
    font-size:1.45em;
    font-weight:500;
    letter-spacing:.08em;
    line-height:1.5;
}
.mtw-group-modal__grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:1em;
}
.mtw-group-variant{
    min-width:0;
    margin:0;
    background:#fff;
}
.mtw-group-variant__zoom{
    position:relative;
    display:block;
    width:100%;
    margin:0;
    padding:0;
    overflow:hidden;
    background:#fff;
    border:0;
    cursor:zoom-in;
}
.mtw-group-variant__zoom::after{
    content:"＋";
    position:absolute;
    right:1em;
    bottom:1em;
    display:flex;
    align-items:center;
    justify-content:center;
    width:2.5em;
    height:2.5em;
    background:rgba(255,255,255,.94);
    border-radius:50%;
    box-shadow:0 3px 14px rgba(0,0,0,.14);
    color:#333;
    font-size:1em;
    transition:transform .25s ease;
}
.mtw-group-variant__zoom:hover::after,
.mtw-group-variant__zoom:focus-visible::after{
    transform:scale(1.08);
}
.mtw-group-variant__zoom:focus-visible{
    outline:2px solid #a47d45;
    outline-offset:-2px;
}
.mtw-group-variant img{
    display:block;
    width:100%;
    aspect-ratio:1500 / 1042;
    margin:0;
    object-fit:contain;
    background:#fff;
}
.mtw-lightbox--product-image{
    z-index:10010;
}
.mtw-group-variant__caption{
    display:block;
    padding:1em 1.2em 1.15em;
    background:#fff;
}
.mtw-group-variant__caption strong{
    display:block;
    color:#222;
    font-size:1em;
    font-weight:500;
    letter-spacing:.05em;
}
.mtw-products-services{
    background:#fff;
}
.mtw-products-service{
    border-bottom:1px solid #e8e8e8;
}
.mtw-products-service .mtw-sec-head{
    margin-top:0;
}
.mtw-products-service__image{
    aspect-ratio:3 / 2;
}

/* PRODUCTS 01-04 REVISED LAYOUT
-------------------------------------------------- */
.mtw-product-features{
    background:#f7f7f7;
}
.mtw-product-feature{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    align-items:center;
    gap:7%;
    max-width:1280px;
    margin:0 auto;
    padding:6em 60px;
    border-bottom:1px solid #e7e7e7;
    box-sizing:border-box;
}
.mtw-product-feature__heading{
    display:flex;
    align-items:flex-end;
    gap:2em;
    margin:0 0 2.2em;
}
.mtw-product-feature__number{
    flex:0 0 auto;
    color:#333;
    font-size:3.8em;
    font-weight:700;
    letter-spacing:-.05em;
    line-height:.85;
}
.mtw-product-feature__title{
    margin:0;
    color:#222;
    font-size:2em;
    font-weight:600;
    letter-spacing:.08em;
    line-height:1.3;
}
.mtw-product-feature__description p,
.mtw-products-other__description p{
    margin:0 !important;
    color:#333;
    font-size:1em;
    letter-spacing:.04em;
    line-height:2;
}
.mtw-product-feature__description p + p,
.mtw-products-other__description p + p{
    margin-top:1em !important;
}
.mtw-product-process-link{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    max-width:280px;
    margin-top:2.2em;
    padding:1.1em 1.4em;
    color:#fff !important;
    background:#222;
    border:1px solid #222;
    box-sizing:border-box;
    font-size:1em;
    letter-spacing:.08em;
    line-height:1.5;
    text-decoration:none !important;
    transition:color .25s ease, background-color .25s ease;
}
.mtw-product-process-link i{
    font-style:normal;
}
@media (any-hover:hover){
    .mtw-product-process-link:hover{
        color:#222 !important;
        background:#fff;
    }
}
.mtw-product-feature__image{
    min-width:0;
    margin:0;
    overflow:hidden;
    background:#fff;
}
.mtw-product-feature__image .mtw-steering-card__button img{
    object-fit:contain;
}
.mtw-products-other{
    max-width:1280px;
    margin:0 auto;
    padding:7em 60px 9em;
    box-sizing:border-box;
}
.mtw-products-other__intro{
    max-width:900px;
    margin-bottom:5em;
}
.mtw-products-other__cards{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:2em;
}
.mtw-products-other__card{
    display:flex;
    flex-direction:column;
    min-width:0;
    background:#fff;
    box-sizing:border-box;
}
.mtw-products-other__card-title{
    margin:0;
    padding:1.2em 1.25em;
    border-bottom:1px solid #eee;
    color:#222;
    font-size:1.3em;
    font-weight:600;
    letter-spacing:.06em;
    line-height:1.4;
}
.mtw-products-other__card-image,
.mtw-products-other__card-images figure{
    min-width:0;
    margin:0;
    overflow:hidden;
    background:#fff;
}
.mtw-products-other__card-image{
    aspect-ratio:3 / 2;
}
.mtw-products-other__card-image img,
.mtw-products-other__card-images img{
    display:block;
    width:100%;
    height:100%;
    margin:0;
    object-fit:contain;
}
.mtw-products-other__card-images{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    align-items:stretch;
    gap:0;
    aspect-ratio:3 / 2;
    background:#fff;
}
.mtw-products-other__card p{
    margin:auto 0 0 !important;
    padding:1.5em 1.5em 1.7em;
    color:#333;
    font-size:1.08em;
    letter-spacing:.04em;
    line-height:1.8;
}
@media screen and (max-width:900px){
    .mtw-products-intro,
    .mtw-products-steering,
    .mtw-products-service{
        padding-right:40px;
        padding-left:40px;
    }
    .mtw-products-gallery{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }
    .mtw-steering-groups{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
    .mtw-product-feature,
    .mtw-products-other{
        padding-right:40px;
        padding-left:40px;
    }
}
@media screen and (max-width:767px){
    .mtw-products-intro,
    .mtw-products-steering,
    .mtw-products-service{
        grid-template-columns:1fr;
        gap:2.5em;
        padding:4em 24px;
    }
    .mtw-products-intro__image{
        aspect-ratio:4 / 3;
    }
    .mtw-products-gallery{
        grid-column:auto;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:.8em;
        margin-top:1.5em;
    }
    .mtw-products-steering{
        padding-bottom:6em;
    }
    .mtw-products-steering__heading{
        grid-column:auto;
    }
    .mtw-steering-groups{
        grid-column:auto;
        grid-template-columns:1fr;
        gap:.8em;
    }
    .mtw-steering-card__button::after{
        right:.7em;
        bottom:.7em;
        width:3.7em;
        height:3.7em;
        font-size:.58em;
    }
    .mtw-steering-card__text{
        padding:1em;
    }
    .mtw-steering-card__name{
        font-size:1em;
    }
    .mtw-products-card{
        padding-bottom:.6em;
    }
    .mtw-products-card .mtw-product-card-text{
        font-size:.8em;
    }
    .mtw-products-card__button::after{
        right:.5em;
        bottom:.5em;
        width:2em;
        height:2em;
        opacity:1;
        transform:none;
    }
    .mtw-lightbox{
        padding:3.5em 20px 2em;
    }
    .mtw-lightbox__content,
    .mtw-lightbox__image{
        max-width:calc(100vw - 40px);
    }
    .mtw-lightbox__image{
        max-height:72vh;
    }
    .mtw-group-modal{
        padding:20px;
    }
    .mtw-group-modal__panel{
        width:100%;
        max-height:calc(100vh - 40px);
        padding:3.5em 1.2em 1.2em;
    }
    .mtw-group-modal__close{
        position:fixed;
        top:calc(30px + env(safe-area-inset-top));
        right:calc(30px + env(safe-area-inset-right));
        box-shadow:0 3px 14px rgba(0,0,0,.25);
    }
    .mtw-group-modal__grid{
        grid-template-columns:1fr;
        gap:.7em;
    }
    .mtw-group-variant__caption{
        padding:1em;
    }
    .mtw-group-variant__caption strong{
        font-size:1em;
    }
    .mtw-products-service__image{
        aspect-ratio:4 / 3;
    }
    .mtw-product-feature{
        grid-template-columns:1fr;
        gap:2.5em;
        padding:4.5em 24px;
    }
    .mtw-product-feature__heading{
        gap:1em;
        margin-bottom:1.7em;
    }
    .mtw-product-feature__number{
        font-size:2.8em;
    }
    .mtw-product-feature__title{
        font-size:1.5em;
    }
    .mtw-products-other{
        padding:5em 24px 7em;
    }
    .mtw-products-other__intro{
        margin-bottom:3.5em;
    }
    .mtw-products-other__cards{
        grid-template-columns:1fr;
        gap:1.5em;
    }
    .mtw-products-other__card{
        padding:0;
    }
    .mtw-products-other__card-title{
        padding:1em;
        font-size:1.2em;
    }
    .mtw-products-other__card p{
        padding:1.3em 1em 1.5em;
        font-size:1em;
    }
}

/* PROCESS
-------------------------------------------------- */
.mtw-process-page{
    width:100%;
    overflow:hidden;
}
.mtw-process{
    background:#f7f7f5;
}
.mtw-process__heading{
    max-width:1280px;
    margin:0 auto;
    padding:7em 60px 4.5em;
}
.mtw-process__en{
    display:block;
    margin-bottom:.8em;
    color:#a47d45;
    font-size:.82em;
    font-weight:600;
    letter-spacing:.2em;
}
.mtw-process__title{
    margin:0;
    color:#222;
    font-size:2.25em;
    font-weight:500;
    letter-spacing:.08em;
    line-height:1.5;
}
.mtw-process__list{
    border-top:1px solid #dddcd8;
}
.mtw-process-step{
    display:grid;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
    align-items:center;
    gap:7%;
    max-width:1280px;
    margin:0 auto;
    padding:2em 5em;
    border-bottom:1px solid #dddcd8;
}
.mtw-process-step__image{
    aspect-ratio:3 / 2;
    margin:0;
    overflow:hidden;
    background:#e8e8e5;
}
.mtw-process-step__image img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.mtw-process-step__content{
    position:relative;
    padding-left:0;
}
.mtw-process-step__number{
    position:absolute;
    top:-.12em;
    left:0;
    color:#a47d45;
    font-size:2.6em;
    font-weight:300;
    letter-spacing:.02em;
    line-height:1;
}
.mtw-process-step__title{
    margin:0 0 1.4em;
    color:#222;
    font-size:2em;
    font-weight:600;
    letter-spacing:.06em;
    line-height:1.5;
}
.mtw-process-step__title small{
    display:block;
    margin-top:.35em;
    font-size:.58em;
    font-weight:400;
}
.mtw-process-step__text{
    margin:0;
    color:#444;
    font-size:.96em;
    letter-spacing:.04em;
    line-height:2;
}
@media screen and (max-width:767px){
    .mtw-process__heading{
        padding:5em 24px 3em;
    }
    .mtw-process__title{
        font-size:1.65em;
    }
    .mtw-process-step{
        grid-template-columns:1fr;
        gap:2.5em;
        padding:2em;
    }
    .mtw-process-step__image{
        aspect-ratio:4 / 3;
    }
    .mtw-process-step__content{
        padding-left:0;
    }
    .mtw-process-step__number{
        position:static;
        display:block;
        margin-bottom:.45em;
        font-size:2.15em;
    }
    .mtw-process-step__title{
        margin-bottom:1em;
        font-size:1.8em;
    }
    .mtw-process-step__text{
        font-size:1em;
        line-height:1.9;
    }
}

/* FACTORY CUSTOM PAGE WIDTH
-------------------------------------------------- */
.mtw-factory-lead-image{
    width:100%;
    max-width:1440px;
    margin:5em auto 0;
    padding:0 60px;
    box-sizing:border-box;
}
.mtw-factory-lead-image img{
    display:block;
    width:100%;
    aspect-ratio:2000 / 797;
    margin:0;
    object-fit:cover;
    object-position:center;
}
.mtw-factory-page .mtw-factory-section:not(.mtw-factory-section--gray):not(.mtw-factory-section--dark),
.mtw-factory-page .mtw-factory-flow{
    max-width:1280px;
    padding-right:60px;
    padding-left:60px;
}
.mtw-factory-page .mtw-factory-section--text-only{
    grid-template-columns:1fr;
}
.mtw-factory-page .mtw-factory-section--text-only .mtw-factory-section__text{
    max-width:760px;
}
@media screen and (max-width:900px){
    .mtw-factory-lead-image{
        padding-right:40px;
        padding-left:40px;
    }
    .mtw-factory-page .mtw-factory-section:not(.mtw-factory-section--gray):not(.mtw-factory-section--dark),
    .mtw-factory-page .mtw-factory-flow{
        padding-right:40px;
        padding-left:40px;
    }
}
@media screen and (max-width:767px){
    .mtw-factory-lead-image{
        margin-top:3em;
        padding-right:24px;
        padding-left:24px;
    }
    .mtw-factory-lead-image img{
        aspect-ratio:4 / 3;
    }
    .mtw-factory-page .mtw-factory-section:not(.mtw-factory-section--gray):not(.mtw-factory-section--dark),
    .mtw-factory-page .mtw-factory-flow{
        padding-right:24px;
        padding-left:24px;
    }
}

/* RECRUIT CUSTOM PAGE WIDTH
-------------------------------------------------- */
.mtw-recruit-page .mtw-recruit-entry,
.mtw-recruit-page .mtw-recruit > .mtw-recruit-section{
    width:100%;
    max-width:1280px;
    margin-right:auto;
    margin-left:auto;
    padding-right:60px;
    padding-left:60px;
    box-sizing:border-box;
}
.mtw-recruit-page .mtw-recruit-entry{
    padding-top:6em;
}
@media screen and (max-width:900px){
    .mtw-recruit-page .mtw-recruit-entry,
    .mtw-recruit-page .mtw-recruit > .mtw-recruit-section{
        padding-right:40px;
        padding-left:40px;
    }
}
@media screen and (max-width:767px){
    .mtw-recruit-page .mtw-recruit-entry,
    .mtw-recruit-page .mtw-recruit > .mtw-recruit-section{
        padding-right:24px;
        padding-left:24px;
    }
    .mtw-recruit-page .mtw-recruit-entry{
        padding-top:4em;
    }
}
/* BAMBOO FIBER COMPOSITES
-------------------------------------------------- */
.mtw-bamboo-page{
    --mtw-bamboo-green:#143b2c;
    --mtw-bamboo-light:#eef2e7;
    background:#fff;
}
.mtw-bamboo-fv .mtw-page-fv-image{
    object-position:center 55%;
}
.mtw-bamboo-label{
    margin:0 0 1.4em !important;
    color:#66806f;
    font-size:.72em;
    font-weight:600;
    letter-spacing:.22em;
}
.mtw-bamboo-intro{
    display:grid;
    grid-template-columns:42% minmax(0,1fr);
    gap:8%;
    align-items:center;
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:8em 60px;
    box-sizing:border-box;
}
.mtw-bamboo-intro__text h2,
.mtw-bamboo-official__content h2,
.mtw-bamboo-purchase h2{
    margin:0 0 1em !important;
    padding:0 !important;
    font-size:2.1em;
    font-weight:500;
    line-height:1.55 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-intro__text > p:not(.mtw-bamboo-label){
    margin:0 !important;
    font-size:.92em;
    line-height:2.15 !important;
    letter-spacing:.03em;
}
.mtw-bamboo-intro__text > p + p{
    margin-top:1.4em !important;
}
.mtw-bamboo-intro__visual{
    margin:0;
    padding:3.5em 3em 1.6em;
    background:var(--mtw-bamboo-light);
}
.mtw-bamboo-intro__visual img{
    display:block;
    width:100%;
    height:auto;
}
.mtw-bamboo-intro__visual figcaption{
    margin-top:1.2em;
    color:#526057;
    font-size:.75em;
    letter-spacing:.08em;
    text-align:center;
}
.mtw-bamboo-official{
    display:grid;
    grid-template-columns:55% minmax(0,1fr);
    align-items:stretch;
    width:100%;
    max-width:1440px;
    margin:0 auto;
    background:#f4f4f1;
}
.mtw-bamboo-official__visual{
    min-height:520px;
    overflow:hidden;
}
.mtw-bamboo-official__visual img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.mtw-bamboo-official__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:5em 12%;
}
.mtw-bamboo-official__content > p:not(.mtw-bamboo-label){
    margin:0 0 2.5em !important;
    font-size:1em;
    line-height:2 !important;
}
.mtw-bamboo-button{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    max-width:330px;
    padding:1.25em 1.5em;
    color:#fff !important;
    background:var(--mtw-bamboo-green);
    box-sizing:border-box;
    text-decoration:none !important;
    transition:opacity .25s ease;
}
.mtw-bamboo-button:hover{
    opacity:.78;
}
.mtw-bamboo-purchase{
    width:100%;
    max-width:1160px;
    margin:0 auto;
    padding:8em 60px 2em;
    box-sizing:border-box;
}
.mtw-bamboo-purchase__heading{
    display:grid;
    grid-template-columns:34% minmax(0,1fr);
    gap:8%;
    align-items:start;
    margin-bottom:6em;
}
.mtw-bamboo-purchase__heading > p{
    grid-column:2;
    margin:0 !important;
    font-size:1em;
    line-height:2.1 !important;
}
.mtw-bamboo-purchase__heading .mtw-bamboo-label{
    grid-column:1;
    grid-row:1;
}
.mtw-bamboo-purchase__heading h2{
    grid-column:1;
    grid-row:2;
}
.mtw-bamboo-guide{
    margin-bottom:6em;
}
.mtw-bamboo-guide__title{
    display:flex;
    gap:1.5em;
    align-items:center;
    margin-bottom:2.5em;
    padding-bottom:1.5em;
    border-bottom:1px solid #d8d8d8;
}
.mtw-bamboo-guide__title > span{
    color:#b8955b;
    font-size:3em;
    font-weight:300;
    line-height:1;
}
.mtw-bamboo-guide__title p{
    margin:0 0 .45em !important;
    color:#999;
    font-size:.65em;
    letter-spacing:.18em;
}
.mtw-bamboo-guide__title h3{
    margin:0 !important;
    padding:0 !important;
    font-size:1.3em;
    font-weight:500;
    letter-spacing:.08em;
}
.mtw-bamboo-condition-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    border-top:1px solid #d8d8d8;
    border-left:1px solid #d8d8d8;
}
.mtw-bamboo-condition{
    display:grid;
    grid-template-columns:90px minmax(0,1fr);
    align-items:center;
    min-height:110px;
    padding:1.5em 2em;
    background:#fff;
    border-right:1px solid #d8d8d8;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
}
.mtw-bamboo-condition > span{
    display:block;
    margin:0;
    color:#999;
    font-size:.7em;
    letter-spacing:.14em;
}
.mtw-bamboo-condition strong{
    display:block;
    color:#222;
    font-size:1.25em;
    font-weight:500;
    line-height:1.35;
}
.mtw-bamboo-condition strong small{
    margin-left:.15em;
    font-size:.5em;
}
.mtw-bamboo-condition p{
    grid-column:2;
    margin:.35em 0 0 !important;
    color:#6f776f;
    font-size:.72em;
}
.mtw-bamboo-condition-note{
    display:grid;
    grid-template-columns:22% minmax(0,1fr);
    gap:4%;
    margin-top:1.2em;
    padding:1.5em 1.8em;
    background:#f5f4f1;
}
.mtw-bamboo-condition-note strong{
    color:#444;
    font-size:.82em;
}
.mtw-bamboo-condition-note p{
    margin:0 !important;
    font-size:.8em;
    line-height:1.9 !important;
}
.mtw-bamboo-condition-note small{
    grid-column:2;
    color:#777;
    font-size:.7em;
}
.mtw-bamboo-procedure{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border-top:1px solid #d8d8d8;
    border-left:1px solid #d8d8d8;
}
.mtw-bamboo-procedure article{
    position:relative;
    min-height:240px;
    padding:2.2em;
    background:#fff;
    border-right:1px solid #d8d8d8;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
}
.mtw-bamboo-procedure article::after{
    display:none;
}
.mtw-bamboo-procedure article:last-child::after{
    display:none;
}
.mtw-bamboo-procedure article > span{
    display:block;
    margin-bottom:2.5em;
    color:#b8955b;
    font-size:.68em;
    letter-spacing:.16em;
}
.mtw-bamboo-procedure h4{
    margin:0 0 1.4em !important;
    padding:0 !important;
    color:#222;
    font-size:1.3em;
    font-weight:500;
}
.mtw-bamboo-procedure ul{
    margin:0 !important;
    padding:0 !important;
    list-style:none;
}
.mtw-bamboo-procedure li{
    position:relative;
    margin:0 !important;
    padding:0 0 .7em 1em !important;
    font-size:.78em;
    line-height:1.8 !important;
}
.mtw-bamboo-procedure li::before{
    position:absolute;
    top:0;
    left:0;
    content:'・';
}
.mtw-bamboo-contact-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
    border-top:1px solid #d8d8d8;
    border-left:1px solid #d8d8d8;
}
.mtw-bamboo-contact-grid > a{
    position:relative;
    min-height:180px;
    padding:2.5em;
    color:#222 !important;
    background:#fff;
    border-right:1px solid #d8d8d8;
    border-bottom:1px solid #d8d8d8;
    box-sizing:border-box;
    text-decoration:none !important;
}
.mtw-bamboo-contact-grid > a > span{
    display:block;
    margin-bottom:2.5em;
    color:#999;
    font-size:.68em;
    letter-spacing:.18em;
}
.mtw-bamboo-contact-grid strong{
    display:block;
    font-size:1.2em;
    font-weight:500;
    letter-spacing:.05em;
}
.mtw-bamboo-contact-grid p{
    margin:1em 0 0 !important;
    color:#666;
    font-size:.75em;
    line-height:1.8 !important;
}
.mtw-bamboo-contact-grid i{
    position:absolute;
    right:2em;
    bottom:2em;
    font-style:normal;
}
.mtw-bamboo-resource-link{
    position:relative;
    display:grid;
    grid-column:2;
    grid-template-columns:minmax(0,1fr) auto;
    gap:2em;
    align-items:center;
    width:100%;
    min-height:110px;
    margin-top:1.5em;
    padding:2em 2.5em;
    border:0;
    background:#222;
    color:#fff;
    box-sizing:border-box;
    font:inherit;
    text-align:left;
    cursor:pointer;
    transition:background-color .3s ease;
}
.mtw-bamboo-resource-link strong{
    display:block;
    grid-column:1;
    grid-row:1;
    color:#fff;
    font-size:1.25em;
    font-weight:500;
    letter-spacing:.05em;
}
.mtw-bamboo-resource-link i{
    display:flex;
    grid-column:2;
    grid-row:1;
    align-items:center;
    justify-content:center;
    width:2.8em;
    height:2.8em;
    border:1px solid #777;
    border-radius:50%;
    color:#fff;
    font-style:normal;
}
@media (any-hover:hover){
    .mtw-bamboo-contact-grid > a:hover{
        color:#222 !important;
        background:#f5f4f1;
    }
    .mtw-bamboo-resource-link:hover{
        background:#333;
    }
}
@media screen and (max-width:900px){
    .mtw-bamboo-intro,
    .mtw-bamboo-purchase{
        padding-right:40px;
        padding-left:40px;
    }
    .mtw-bamboo-intro{
        grid-template-columns:44% minmax(0,1fr);
        gap:5%;
    }
    .mtw-bamboo-official{
        grid-template-columns:1fr 1fr;
    }
}
@media screen and (max-width:767px){
    .mtw-bamboo-intro,
    .mtw-bamboo-purchase__heading{
        grid-template-columns:1fr;
        gap:2.5em;
    }
    .mtw-bamboo-intro__text h2,
    .mtw-bamboo-official__content h2,
    .mtw-bamboo-purchase h2{
        font-size:1.65em;
    }
    .mtw-bamboo-intro__visual{
        padding:2em 1.5em 1.2em;
    }
    .mtw-bamboo-intro{
        padding:5em 24px;
    }
    .mtw-bamboo-official{
        grid-template-columns:1fr;
    }
    .mtw-bamboo-official__visual{
        min-height:0;
        aspect-ratio:3 / 2;
    }
    .mtw-bamboo-official__content{
        padding:4em 24px;
    }
    .mtw-bamboo-purchase{
        padding:5em 24px 0;
    }
    .mtw-bamboo-purchase__heading{
        margin-bottom:4em;
    }
    .mtw-bamboo-purchase__heading .mtw-bamboo-label,
    .mtw-bamboo-purchase__heading h2,
    .mtw-bamboo-purchase__heading > p{
        grid-column:1;
        grid-row:auto;
    }
    .mtw-bamboo-guide{
        margin-bottom:4.5em;
    }
    .mtw-bamboo-condition-grid,
    .mtw-bamboo-procedure,
    .mtw-bamboo-contact-grid{
        grid-template-columns:1fr;
    }
    .mtw-bamboo-condition{
        grid-template-columns:72px minmax(0,1fr);
        min-height:0;
        padding:1.4em 1.2em;
    }
    .mtw-bamboo-condition > span{
        margin-bottom:1.2em;
    }
    .mtw-bamboo-condition-note{
        grid-template-columns:1fr;
        gap:.8em;
    }
    .mtw-bamboo-condition-note small{
        grid-column:1;
    }
    .mtw-bamboo-procedure article{
        min-height:0;
    }
    .mtw-bamboo-procedure article::after{
        top:auto;
        right:50%;
        bottom:-1.15em;
        transform:translateX(50%) rotate(90deg);
    }
    .mtw-bamboo-contact-grid > a{
        min-height:210px;
    }
    .mtw-bamboo-resource-link{
        grid-column:1;
        min-height:100px;
        padding:1.5em;
    }
    .mtw-bamboo-resource-link i{
        width:2.5em;
        height:2.5em;
    }
    .mtw-bamboo-purchase{
        padding-bottom:0;
    }
}

/* BAMBOO+ / TECHNOLOGY PAGE TONE
-------------------------------------------------- */
.mtw-bamboo-page{
    --mtw-bamboo-green:#222;
    --mtw-bamboo-light:#f3f3f3;
}
.mtw-bamboo-label{
    margin-bottom:1.8em !important;
    color:#777;
    letter-spacing:.18em;
}
.mtw-bamboo-intro{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:6%;
    padding:6em 60px;
}
.mtw-bamboo-intro__text > p:not(.mtw-bamboo-label),
.mtw-bamboo-official__content > p:not(.mtw-bamboo-label){
    font-size:1em;
    line-height:1.8 !important;
    letter-spacing:.02em;
}
.mtw-bamboo-intro__visual{
    position:relative;
    aspect-ratio:3 / 2;
    padding:0;
    overflow:hidden;
    background:#eee;
}
.mtw-bamboo-intro__visual img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.mtw-bamboo-intro__visual figcaption{
    position:absolute;
    overflow:hidden;
    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    clip:rect(0 0 0 0);
}
.mtw-bamboo-official{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:7%;
    align-items:center;
    max-width:none;
    padding:6em max(60px, calc((100% - 1160px) / 2));
    background:#f3f3f3;
    box-sizing:border-box;
}
.mtw-bamboo-official__visual{
    min-height:0;
    aspect-ratio:16 / 10;
}
.mtw-bamboo-official__content{
    padding:0;
}
.mtw-bamboo-official__content > p:not(.mtw-bamboo-label){
    margin-bottom:1.5em !important;
}
.mtw-bamboo-button{
    max-width:360px;
    margin-top:1em;
    padding:1.4em 1.6em;
    background:#222;
}
.mtw-bamboo-purchase{
    max-width:1280px;
    padding:6em 60px 0;
}
.mtw-bamboo-purchase__heading{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:7%;
}
.mtw-bamboo-purchase__heading h2{
    font-size:2em;
    font-weight:400;
}
.mtw-bamboo-guide{
    display:grid;
    grid-template-columns:34% minmax(0,1fr);
    gap:7%;
    margin-bottom:0;
    padding:6em 0;
    border-top:1px solid #d8d8d8;
}
.mtw-bamboo-guide__title{
    align-items:flex-start;
    gap:2em;
    margin:0;
    padding:0;
    border:0;
}
.mtw-bamboo-guide__title > span{
    color:#333;
    font-size:3.8em;
    font-weight:700;
    letter-spacing:-.05em;
}
.mtw-bamboo-guide__title p{
    color:#222;
    font-size:1.1em;
    font-weight:600;
    letter-spacing:.1em;
}
.mtw-bamboo-guide__title h3{
    font-size:.8em;
    font-weight:400;
}
.mtw-bamboo-condition-note{
    grid-column:2;
    background:#f3f3f3;
}
.mtw-bamboo-condition > span,
.mtw-bamboo-procedure article > span,
.mtw-bamboo-contact-grid > a > span{
    color:#777;
}

@media screen and (max-width:900px){
    .mtw-bamboo-official{
        padding-right:40px;
        padding-left:40px;
    }
    .mtw-bamboo-guide{
        grid-template-columns:30% minmax(0,1fr);
        gap:5%;
    }
}
@media screen and (max-width:767px){
    .mtw-bamboo-intro,
    .mtw-bamboo-official,
    .mtw-bamboo-purchase__heading,
    .mtw-bamboo-guide{
        grid-template-columns:1fr;
        gap:2.5em;
    }
    .mtw-bamboo-intro,
    .mtw-bamboo-official,
    .mtw-bamboo-purchase{
        padding-right:24px;
        padding-left:24px;
    }
    .mtw-bamboo-intro,
    .mtw-bamboo-official{
        padding-top:4em;
        padding-bottom:4em;
    }
    .mtw-bamboo-purchase{
        padding-top:4em;
    }
    .mtw-bamboo-guide{
        padding:4em 0;
    }
    .mtw-bamboo-guide__title{
        gap:1em;
    }
    .mtw-bamboo-guide__title > span{
        font-size:3em;
    }
.mtw-bamboo-condition-note{
    grid-column:1;
}
}

/* BAMBOO+ / IMAGE-FREE INTRODUCTION
-------------------------------------------------- */
.mtw-bamboo-intro{
    grid-template-columns:28% minmax(0,1fr);
    gap:7%;
    align-items:start;
    max-width:1040px;
    padding-top:5.5em;
    padding-bottom:5.5em;
}
.mtw-bamboo-intro__heading h2,
.mtw-bamboo-purchase__title h2{
    margin:0 !important;
    padding:0 !important;
    color:#222;
    font-size:2em;
    font-weight:500;
    line-height:1.5 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-guide__title{
    align-items:flex-start;
}
.mtw-bamboo-intro__heading h2{
    font-size:1.35em;
    line-height:1.65 !important;
}
.mtw-bamboo-intro__heading .mtw-bamboo-label,
.mtw-bamboo-purchase__title .mtw-bamboo-label{
    display:flex;
    align-items:center;
    gap:1em;
    margin-bottom:2em !important;
    white-space:nowrap;
}
.mtw-bamboo-intro__heading .mtw-bamboo-label::after,
.mtw-bamboo-purchase__title .mtw-bamboo-label::after{
    width:48px;
    height:1px;
    background:#aaa;
    content:'';
}
.mtw-bamboo-intro__text > p:not(.mtw-bamboo-label){
    margin:0 !important;
    font-size:1.1em;
    line-height:2.1 !important;
}
.mtw-bamboo-intro__text > .mtw-bamboo-official-note{
    margin-top:1.5em !important;
    color:#777;
    font-size:.78em;
    line-height:1.8 !important;
}
.mtw-bamboo-official-note a{
    margin:0 .45em;
    color:#555 !important;
    border-bottom:1px solid #999;
    text-decoration:none !important;
}
.mtw-bamboo-official-note i{
    margin-left:.2em;
    font-style:normal;
}
@media (any-hover:hover){
    .mtw-bamboo-official-note a:hover{
        color:#999 !important;
    }
}
.mtw-bamboo-purchase{
    max-width:1160px;
    padding-top:0;
}
.mtw-bamboo-purchase__heading{
    grid-template-columns:34% minmax(0,1fr);
    gap:7%;
    align-items:start;
    margin-bottom:0;
    padding:5em 5% 4em;
    overflow:hidden;
    background:#f3f3f1;
    border-top:1px solid #d8d8d8;
    box-sizing:border-box;
}
.mtw-bamboo-purchase__lead{
    grid-column:2;
    grid-row:1;
}
.mtw-bamboo-purchase__lead p{
    margin:0 !important;
    font-size:1em;
    line-height:2.1 !important;
}
.mtw-bamboo-purchase__title{
    grid-column:1;
    grid-row:1;
}
.mtw-bamboo-purchase__index{
    display:grid;
    grid-column:2;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1.2em;
    margin-top:2.5em;
    background:transparent;
    border:0;
    box-shadow:none;
    transform:none;
}
.mtw-bamboo-purchase__index a{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    gap:.65em;
    align-items:center;
    width:100%;
    height:auto !important;
    min-height:56px;
    padding:1em 0;
    color:#222 !important;
    border-right:0;
    border-bottom:1px solid #bbb;
    box-sizing:border-box;
    line-height:1.5 !important;
    text-decoration:none !important;
    transition:padding .25s ease, color .25s ease;
}
.mtw-bamboo-purchase__index a:last-child{
    border-right:0;
}
.mtw-bamboo-purchase__index span{
    color:#777;
    font-size:.7em;
    font-weight:500;
    letter-spacing:.08em;
}
.mtw-bamboo-purchase__index strong{
    font-size:1em;
    font-weight:500;
    letter-spacing:.05em;
}
.mtw-bamboo-purchase__index i{
    color:#666;
    font-size:.8em;
    font-style:normal;
}
.mtw-bamboo-guide__title h3{
    font-size:1.2em;
    font-weight:600;
    line-height:1.5 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-guide{
    scroll-margin-top:100px;
}
.mtw-bamboo-purchase__heading + .mtw-bamboo-guide{
    padding-top:5em;
    border-top:0;
}
@media (any-hover:hover){
    .mtw-bamboo-purchase__index a:hover{
        padding-left:.5em;
        color:#777 !important;
    }
}

@media screen and (max-width:900px){
    .mtw-bamboo-intro{
        grid-template-columns:30% minmax(0,1fr);
        gap:6%;
    }
    .mtw-bamboo-purchase__heading{
        grid-template-columns:36% minmax(0,1fr);
        gap:6%;
    }
    .mtw-bamboo-purchase__index{
        grid-column:1 / -1;
    }
}
@media screen and (max-width:767px){
    .mtw-bamboo-intro{
        grid-template-columns:1fr;
        gap:2.5em;
        padding-top:4.5em;
        padding-bottom:4.5em;
    }
    .mtw-bamboo-intro__heading h2,
    .mtw-bamboo-purchase__title h2{
        font-size:1.6em;
    }
    .mtw-bamboo-intro__heading h2{
        font-size:1.25em;
    }
    .mtw-bamboo-intro__heading .mtw-bamboo-label,
    .mtw-bamboo-purchase__title .mtw-bamboo-label{
        margin-bottom:1.4em !important;
    }
    .mtw-bamboo-purchase{
        padding-right:24px;
        padding-left:24px;
    }
    .mtw-bamboo-purchase__heading{
        grid-template-columns:1fr;
        gap:2em;
        margin-bottom:0;
        padding:3em 24px 2.5em;
    }
    .mtw-bamboo-purchase__title,
    .mtw-bamboo-purchase__lead{
        grid-column:1;
        grid-row:auto;
    }
    .mtw-bamboo-purchase__index{
        grid-template-columns:1fr;
        gap:0;
        margin-top:1.5em;
    }
    .mtw-bamboo-purchase__index a{
        min-height:54px;
        padding:.85em 0;
        border-right:0;
        border-bottom:1px solid #ccc;
    }
    .mtw-bamboo-purchase__index a:last-child{
        border-bottom:0;
    }
    .mtw-bamboo-purchase__heading + .mtw-bamboo-guide{
        padding-top:3.5em;
    }
}

/* RECRUIT / WORKPLACE LONG TEXT
-------------------------------------------------- */
.mtw-recruit-page .mtw-factory-flow{
    width:80%;
    padding-top:4em;
}
.mtw-recruit-page .mtw-factory-step{
    display:block;
    padding-top:5em;
    padding-bottom:5em;
}
.mtw-recruit-page .mtw-factory-step__text{
    width:100%;
    margin:0;
}
.mtw-recruit-page .mtw-factory-step__heading{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:2em;
    align-items:end;
    margin-bottom:2.5em;
    padding-bottom:1.5em;
    border-bottom:1px solid #bbb;
}
.mtw-recruit-page .mtw-factory-step__number{
    color:#b8955b;
    font-size:.8em;
    font-weight:600;
    letter-spacing:.2em;
}
.mtw-recruit-page .mtw-factory-step__en{
    font-size:1.25em;
    font-weight:500;
    line-height:1.2;
    letter-spacing:.12em;
}
.mtw-recruit-page .mtw-factory-step__title{
    margin-bottom:1.3em !important;
    font-size:2.1em;
    font-weight:400;
    line-height:1.45 !important;
    letter-spacing:.06em;
}
.mtw-recruit-page .mtw-factory-step__description{
    max-width:980px;
}
.mtw-recruit-page .mtw-factory-step__description p{
    margin:0 !important;
    padding:0 !important;
    font-size:1em;
    line-height:2 !important;
    letter-spacing:.03em;
}
.mtw-recruit-page .mtw-factory-step__description p + p{
    margin-top:1.5em !important;
}
.mtw-workplace-message{
    max-width:980px;
    margin-top:2.5em;
    padding:2em 2.2em;
    border-left:4px solid #78a66d;
    background:#f3f6f1;
    box-sizing:border-box;
}
.mtw-workplace-message h4{
    position:relative;
    margin:0 0 1em !important;
    padding:0 0 0 1.3em !important;
    color:#222;
    font-size:1.1em;
    font-weight:700;
    line-height:1.5;
    letter-spacing:.08em;
}
.mtw-workplace-message h4::before{
    content:"";
    position:absolute;
    top:.62em;
    left:0;
    width:.45em;
    height:.45em;
    border-radius:50%;
    background:#78a66d;
}
.mtw-workplace-message blockquote{
    margin:0;
    padding:0;
}
.mtw-workplace-message blockquote p{
    margin:0 !important;
    padding:0 !important;
    font-size:1.1em;
    line-height:2 !important;
    letter-spacing:.03em;
}
.mtw-workplace-message cite{
    display:block;
    margin-top:1em;
    color:#555;
    font-size:.95em;
    font-style:normal;
    font-weight:500;
    line-height:1.6;
    text-align:right;
    letter-spacing:.05em;
}
.mtw-recruit-page .mtw-factory-step .mtw-factory-gallery{
    margin: 2em 0;
}
.mtw-recruit-page .mtw-factory-step .mtw-factory-gallery--4{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:1em;
}
.mtw-recruit-page .mtw-factory-step .mtw-factory-gallery--4 figure{
    aspect-ratio:3 / 2;
}

@media screen and (max-width:64em){
    .mtw-recruit-page .mtw-factory-step__description p{
        font-size:1em;
        line-height:1.9 !important;
    }
}
@media screen and (max-width:48em){
    .mtw-recruit-page .mtw-factory-flow{
        width:100%;
        padding-top:3em;
    }
    .mtw-recruit-page .mtw-factory-step{
        display:block;
        padding-top:4em;
        padding-bottom:4em;
    }
    .mtw-recruit-page .mtw-factory-step__text{
        margin-bottom:2.5em;
    }
    .mtw-recruit-page .mtw-factory-step__heading{
        gap:1em;
        margin-bottom:2em;
    }
    .mtw-recruit-page .mtw-factory-step__number{
        font-size:.78em;
    }
    .mtw-recruit-page .mtw-factory-step__en{
        font-size:1.1em;
    }
    .mtw-recruit-page .mtw-factory-step__title{
        font-size:1.55em;
    }
    .mtw-recruit-page .mtw-factory-step__description p{
        font-size:1em;
    }
    .mtw-recruit-page .mtw-factory-step .mtw-factory-gallery--4{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:.5em;
    }
    .mtw-recruit-page .mtw-factory-step .mtw-factory-gallery--4 figure{
        aspect-ratio:1 / 1;
    }
}

@media screen and (max-width:767px){
    .mtw-workplace-message{
        margin-top:2em;
        padding:1.5em 1.3em;
    }
    .mtw-workplace-message h4{
        font-size:1em;
    }
    .mtw-workplace-message blockquote p{
        font-size:1em;
        line-height:1.9 !important;
    }
}



.single p, .page:not(.home) p {
	margin-top: 0;
	margin-bottom: 0;
}

/* BAMBOO FIBER COMPOSITES / TEXT VERSION
-------------------------------------------------- */
.mtw-bamboo-text-page__inner{
    max-width:1040px;
    margin:0 auto;
    padding:7em 60px 0;
    box-sizing:border-box;
}
.mtw-bamboo-text-section{
    padding-bottom:6em;
}
.mtw-bamboo-text-section + .mtw-bamboo-text-section{
    padding-top:6em;
    border-top:1px solid #d8d8d8;
}
.mtw-bamboo-text-section h2{
    margin:0 0 2em !important;
    padding:0 !important;
    color:#222;
    font-size:2em;
    font-weight:500;
    line-height:1.5 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-text-section > p,
.mtw-bamboo-text-contact p{
    margin:0 !important;
    color:#333;
    font-size:1em;
    line-height:2.1 !important;
    letter-spacing:.03em;
}
.mtw-bamboo-text-section > p + p{
    margin-top:1.2em !important;
}
.mtw-bamboo-text-link{
    margin-top:1.8em !important;
    color:#666 !important;
    font-size:.85em !important;
}
.mtw-bamboo-text-link a,
.mtw-bamboo-text-contact a{
    color:#222 !important;
    border-bottom:1px solid #888;
    text-decoration:none !important;
}
.mtw-bamboo-text-link i{
    margin-left:.3em;
    font-style:normal;
}
.mtw-bamboo-text-block{
    margin-top:4.5em;
}
.mtw-bamboo-text-block h3{
    margin:0 0 1.8em !important;
    padding:0 0 0 1em !important;
    border-left:3px solid #222;
    color:#222;
    font-size:1.35em;
    font-weight:600;
    line-height:1.5 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-text-block h4{
    margin:2.4em 0 1em !important;
    padding:0 !important;
    color:#333;
    font-size:1em;
    font-weight:600;
    line-height:1.6 !important;
    letter-spacing:.06em;
}
.mtw-bamboo-text-checks{
    margin:0 !important;
    padding:0 !important;
    list-style:none;
}
.mtw-bamboo-text-checks li{
    position:relative;
    margin:0 !important;
    padding:.7em 0 .7em 2.2em !important;
    border-bottom:1px solid #e2e2e2;
    color:#333;
    font-size:1.1em;
    line-height:1.8 !important;
    letter-spacing:.03em;
}
.mtw-bamboo-text-checks li::before{
    position:absolute;
    top:.85em;
    left:.25em;
    color:#555;
    font-size:1em;
    font-weight:600;
    line-height:1;
    content:'✓';
}
.mtw-bamboo-text-note{
    margin:1em 0 0 !important;
    color:#777;
    font-size:.78em;
}
.mtw-bamboo-text-contact p + h4{
    margin-top:2em !important;
}
.mtw-bamboo-text-resource{
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:110px;
    margin-top:4.5em;
    padding:2em 2.5em;
    border:0;
    background:#222;
    color:#fff;
    box-sizing:border-box;
    font:inherit;
    text-align:left;
    cursor:pointer;
    transition:background-color .3s ease;
}
.mtw-bamboo-text-resource strong{
    color:#fff;
    font-size:1.2em;
    font-weight:500;
    letter-spacing:.05em;
}
.mtw-bamboo-text-resource i{
    display:flex;
    align-items:center;
    justify-content:center;
    width:2.6em;
    height:2.6em;
    border:1px solid #777;
    border-radius:50%;
    font-style:normal;
}
@media (any-hover:hover){
    .mtw-bamboo-text-resource:hover{
        background:#333;
    }
}
@media screen and (max-width:767px){
    .mtw-bamboo-text-page__inner{
        padding:4.5em 24px 0;
    }
    .mtw-bamboo-text-section{
        padding-bottom:4em;
    }
    .mtw-bamboo-text-section + .mtw-bamboo-text-section{
        padding-top:4em;
    }
    .mtw-bamboo-text-section h2{
        margin-bottom:1.5em !important;
        font-size:1.55em;
    }
    .mtw-bamboo-text-section > p,
    .mtw-bamboo-text-contact p{
        font-size:.92em;
        line-height:1.95 !important;
    }
    .mtw-bamboo-text-block{
        margin-top:3.5em;
    }
    .mtw-bamboo-text-block h3{
        margin-bottom:1.4em !important;
        font-size:1.2em;
    }
    .mtw-bamboo-text-checks li{
        padding-left:1.8em !important;
        font-size:1em;
    }
    .mtw-bamboo-text-resource{
        min-height:96px;
        margin-top:3.5em;
        padding:1.5em;
    }
.mtw-bamboo-text-resource strong{
        font-size:1em;
    }
}

/* =========================================================
   MTW THEME CORE
   ========================================================= */
:root{
    --mtw-black:#151515;
    --mtw-gray:#f2f2f1;
    --mtw-line:#dedede;
    --mtw-white:#fff;
    --mtw-frame:min(80vw, 1760px);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    color:var(--mtw-black);
    background:#fff;
    font-family:"Zen Kaku Gothic New",sans-serif;
    font-size:16px;
    line-height:1.8;
    letter-spacing:.06em;
    -webkit-font-smoothing:antialiased;
}
body.is-menu-open{overflow:hidden}
img{max-width:100%;height:auto;vertical-align:middle}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{color:inherit}
.mtw-site{min-height:100vh;overflow:hidden}
.mtw-site__content{min-height:40vh}
.mtw-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

/* Header */
:root{--mtw-header-height:92px;scroll-padding-top:var(--mtw-header-height)}
body .mtw-header{
    box-sizing:border-box;
    height:var(--mtw-header-height);
    min-height:var(--mtw-header-height);
    padding-top:10px;
    padding-bottom:10px;
}
body .mtw-header__logo img{
    max-height:calc(var(--mtw-header-height) - 21px);
    object-fit:contain;
    object-position:left center;
}
@media screen and (max-width:1100px){
    :root{--mtw-header-height:74px}
}
.mtw-header{
    position:fixed;
    z-index:1000;
    inset:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:92px;
    padding:16px 3.6vw;
    background:rgba(255,255,255,.96);
    border-bottom:1px solid rgba(0,0,0,.08);
    transition:min-height .25s ease,box-shadow .25s ease;
}
.mtw-header.is-scrolled{min-height:74px;box-shadow:0 8px 30px rgba(0,0,0,.06)}
.admin-bar .mtw-header{top:32px}
.mtw-header__logo{position:relative;z-index:2;width:min(15vw,220px);min-width:150px}
.mtw-header__logo img{display:block;width:100%}
.mtw-header__nav ul{display:flex;align-items:center;gap:2vw;margin:0;padding:0;list-style:none}
.mtw-header__nav a{position:relative;display:block;font-size:1em;font-weight:500;white-space:nowrap}
.mtw-header__nav li:not(.mtw-header__contact) a::after{content:"";position:absolute;right:0;bottom:-8px;left:0;height:1px;background:#111;transform:scaleX(0);transform-origin:right;transition:transform .25s ease}
.mtw-header__nav li:not(.mtw-header__contact) a:hover::after{transform:scaleX(1);transform-origin:left}
.mtw-header__contact a{
    display:flex;
    align-items:center;
    gap:.75em;
    padding:11px 10px 11px 20px;
    color:#111;
    background:#ededeb;
    border-radius:999px;
}
.mtw-header__contact svg{
    flex:none;
    width:22px;
    height:18px;
    color:#777;
    fill:none;
    stroke:currentColor;
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.mtw-header__contact span{
    display:grid;
    width:34px;
    height:34px;
    margin-left:.5em;
    place-items:center;
    color:#fff;
    background:#000;
    border-radius:50%;
}
.mtw-header__toggle{display:none}

/* Home */
.mtw-home-hero{position:relative;height:min(88vh,930px);min-height:680px;background:#ddd;overflow:hidden}
.mtw-home-hero picture,.mtw-home-hero img{display:block;width:100%;height:100%}
.mtw-home-hero img{object-fit:cover}
.mtw-home-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.32),transparent 58%)}
.mtw-home-hero__copy{position:absolute;z-index:2;left:7vw;bottom:11%;color:#fff}
.mtw-home-hero__copy p{margin:0 0 1.4em;font-family:"Zen Kaku Gothic New",sans-serif;font-size:1em;letter-spacing:.2em}
.mtw-home-hero__copy h1{margin:0;font-size:4.7vw;font-weight:500;line-height:1.28;letter-spacing:.09em}
.mtw-home-news,.mtw-home-links,.mtw-home-access{width:var(--mtw-frame);margin:0 auto;padding:9em 0}
.mtw-home-heading{display:flex;align-items:baseline;gap:3em;margin-bottom:2em}
.mtw-home-heading h2{margin:0!important;font-size:3em;font-weight:500;line-height:1.1;letter-spacing:.03em}
.mtw-home-heading span{font-family:"Zen Kaku Gothic New",sans-serif;font-size:.88em;font-weight:600;letter-spacing:.18em}
.mtw-home-news__item{display:grid;grid-template-columns:240px 1fr 52px;align-items:center;min-height:80px;border-bottom:1px solid var(--mtw-line);transition:opacity .2s}
.mtw-home-news__item:first-child{border-top:1px solid var(--mtw-line)}
.mtw-home-news__item:hover{opacity:.55}
.mtw-home-news__item time{font-family:"Zen Kaku Gothic New",sans-serif;letter-spacing:.18em}
.mtw-home-news__item strong{font-size:1.08em;font-weight:400}
.mtw-home-news__item span{display:grid;width:46px;height:46px;place-items:center;color:#fff;background:#000;border-radius:50%;font-size:1.2em}
.mtw-text-link{display:flex;justify-content:flex-end;align-items:center;gap:2em;margin-top:2.5em;font-size:1em}
.mtw-home-links{width:100%;padding-right:4vw;padding-left:4vw;background:var(--mtw-gray)}
.mtw-home-links__scroller{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em}
.mtw-home-card{position:relative;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;min-width:0;padding-bottom:1.5em;background:#fff;overflow:hidden}
.mtw-home-card img{grid-column:1/-1;width:100%;aspect-ratio:16/9;object-fit:cover;filter:saturate(.8);transition:transform .45s ease}
.mtw-home-card:hover img{transform:scale(1.03)}
.mtw-home-card>span{grid-column:1/-1;margin:1.8em 2em .6em;color:#888;font-family:"Zen Kaku Gothic New",sans-serif;font-size:.72em;letter-spacing:.18em}
.mtw-home-card strong{margin-left:1.35em;font-size:1.35em;font-weight:500}
.mtw-home-card i{align-self:center;margin-right:2em;font-style:normal}
.mtw-home-access__grid{display:grid;grid-template-columns:1.15fr 1fr;gap:5vw;align-items:stretch}
.mtw-home-access iframe{width:100%;height:100%;min-height:0;border:0}
.mtw-home-access dl{margin:0}
.mtw-home-access dl div{display:grid;grid-template-columns:6em 1fr;padding:20px 0;border-bottom:1px solid var(--mtw-line)}
.mtw-home-access dt{font-weight:600}.mtw-home-access dd{margin:0}

/* Breadcrumb / contact / footer */
.mtw-breadcrumb{width:82%;max-width:1680px;margin:8em auto 0;padding:18px 0;border-top:1px solid var(--mtw-line)}
.mtw-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.8em;margin:0;padding:0;list-style:none;font-family:"Zen Kaku Gothic New",sans-serif;font-size:.75em;letter-spacing:.15em}
.mtw-breadcrumb li+li::before{content:"—";margin-right:.8em}
.mtw-breadcrumb a:hover{opacity:.5}
.mtw-contact{margin-top:5em;padding:0 4vw;background:linear-gradient(#fff 32%,#ededed 32%)}
.mtw-contact__inner{display:grid;grid-template-columns:1.25fr .8fr 90px;align-items:center;gap:4vw;width:100%;min-height:300px;padding:4em 8vw;background:#fff;border-radius:58px;box-shadow:0 15px 34px rgba(0,0,0,.14)}
.mtw-contact__lead h2{margin:0 0 1em!important;font-family:"Zen Kaku Gothic New",sans-serif;font-size:2em;font-weight:500;letter-spacing:.12em}
.mtw-contact__lead p,.mtw-contact__tel p{margin:0;font-size:1em}
.mtw-contact__tel>a{display:block;margin-bottom:.5em;font-family:"Zen Kaku Gothic New",sans-serif;font-size:2em;letter-spacing:.15em}
.mtw-contact__mail{display:grid;width:80px;height:80px;place-items:center;background:#fff;border-radius:50%;box-shadow:0 5px 20px rgba(0,0,0,.16);font-size:1.7em}
.mtw-contact__mail svg{
    width:31px;
    height:auto;
    fill:none;
    stroke:currentColor;
    stroke-width:1.5;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.mtw-footer{display:flex;justify-content:space-between;align-items:center;padding:2.5em 8vw 3em;background:#ededed;font-size:.82em}
.mtw-footer p{margin:0}
.mtw-pagetop{position:fixed;z-index:50;right:24px;bottom:24px;display:none;width:50px;height:50px;border:0;border-radius:50%;color:#fff;background:#111;cursor:pointer}
.mtw-pagetop.is-visible{display:block}

/* Generic WordPress templates */
.mtw-generic{width:82%;max-width:1440px;margin:0 auto;padding:180px 0 0}
.mtw-generic__header,.mtw-article__header{margin-bottom:5em}
.mtw-generic__header p,.mtw-article__header>p{margin:0 0 1em;color:#888;font-family:"Zen Kaku Gothic New",sans-serif;font-size:.85em;letter-spacing:.2em}
.mtw-generic__header h1,.mtw-article__header h1{margin:0!important;font-size:2.4em;font-weight:500;line-height:1.4}
.mtw-post-list__item{display:grid;grid-template-columns:220px 1fr 50px;align-items:center;min-height:55px;border-bottom:1px solid var(--mtw-line)}
.mtw-post-list__item:first-child{border-top:1px solid var(--mtw-line)}
.mtw-post-list__item time{font-family:"Zen Kaku Gothic New",sans-serif;letter-spacing:.15em}.mtw-post-list__item strong{font-weight:400}.mtw-post-list__item span{font-size:1.4em}
.mtw-article{max-width:1100px;margin:0 auto}.mtw-article__header time{display:block;margin-bottom:1.5em;color:#777;font-family:"Zen Kaku Gothic New",sans-serif;letter-spacing:.15em}
.mtw-article__visual{margin:0 0 4em}.mtw-article__visual img{width:100%}.mtw-article__content{font-size:1em;line-height:2}.mtw-article__content>*+*{margin-top:1.5em}
.mtw-page--wide .mtw-article{max-width:none}.mtw-error{display:grid;min-height:65vh;place-items:center;text-align:center}.mtw-error p{margin:0;font-size:8em;line-height:1}.mtw-button{display:inline-flex;gap:3em;margin-top:3em;padding:1.2em 1.8em;color:#fff;background:#111}
.mtw-pagination{margin-top:4em}.mtw-pagination ul{display:flex;justify-content:center;gap:.5em;margin:0;padding:0;list-style:none}.mtw-pagination a,.mtw-pagination .current{display:grid;width:44px;height:44px;place-items:center;border:1px solid #ddd}.mtw-pagination .current{color:#fff;background:#111}

/* Contact form */
#content{margin:0 auto;padding:0}.wraper1{width:80%;margin:0 auto 5%;padding:0}.cfmd{margin:5% auto;padding:4% 0;color:#fff;background:#000;font-size:1.4em;font-weight:700;text-align:center}.cftx{margin:2% auto;line-height:1.8}.cfbx{height:250px;margin:2em auto;padding:2em;border:1px solid #aaa;background:#eee;overflow:auto}
/* Use the same height as the fixed header. */
#content.mtw-inquiry-page{padding-top:var(--mtw-header-height)}
#formWrap{--c-accent:#111;--c-border:#e2e2e2;--c-text:#222;color:var(--c-text)}
#formWrap .form-head{padding:10px 0 6px}#formWrap .form-title{margin:0 0 6px;font-size:1.75em;font-weight:700}#formWrap .form-desc{margin:0 0 10px;color:#666}
#formWrap .form-steps{display:flex;align-items:center;gap:22px;padding:10px 0 18px}#formWrap .form-steps .step{position:relative;padding-left:30px;color:#999;font-weight:700}#formWrap .form-steps .step::before{content:"";position:absolute;left:0;top:50%;width:18px;height:18px;border:2px solid var(--c-border);border-radius:50%;background:#fff;transform:translateY(-50%)}#formWrap.form-input .step--input,#formWrap.form-confirm .step--confirm,#formWrap.form-complete .step--complete{color:#111}#formWrap.form-input .step--input::before,#formWrap.form-confirm .step--confirm::before,#formWrap.form-complete .step--complete::before{border-color:#111;background:#111}
.required-srt,.any{display:inline-flex;align-items:center;margin-right:.4em;padding:.5em 1em;font-size:.75em;line-height:1}.required-srt{color:#fff;background:#111}.any{background:#ddd}
table.formTable{width:100%;border-collapse:collapse;border:1px solid var(--c-border);background:#fff}table.formTable th,table.formTable td{padding:14px;border:1px solid var(--c-border);vertical-align:middle}table.formTable th{width:35%;background:#f7f7f7;text-align:left}
#formWrap input[type="text"],#formWrap input[type="email"],#formWrap input[type="tel"],#formWrap input[type="number"],#formWrap select,#formWrap textarea{width:100%;padding:12px 14px;border:1px solid var(--c-border);border-radius:4px;background:#fff;outline:none}#formWrap textarea{min-height:140px}#formWrap input:focus,#formWrap select:focus,#formWrap textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(0,0,0,.08)}
#formWrap .form-actions,#formWrap .next-actions{display:flex;justify-content:center;gap:1em;margin-top:2em}#formWrap .btn,#formWrap .submit-btn{display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:14px 24px;border:1px solid #111;border-radius:0;background:#111;color:#fff;font-weight:700;cursor:pointer}#formWrap .btn-subtle{color:#111;background:#fff}.form-error{margin:.5em 0;color:#b42318;font-size:.85em}.privacy-note{margin:2em 0 0;padding:1.2em;background:#f4f4f4;font-size:.88em}.done-box{padding:4em 2em;background:#f5f5f5;text-align:center}

@media screen and (max-width:1100px){
    .mtw-header{min-height:74px}.mtw-header__logo{width:170px}.mtw-header__toggle{position:relative;z-index:1002;display:flex;flex-direction:column;justify-content:center;gap:6px;width:46px;height:46px;padding:10px;border:0;background:transparent}.mtw-header__toggle>span:not(.mtw-visually-hidden){display:block;width:100%;height:1px;background:#111;transition:.25s}.mtw-header__toggle[aria-expanded="true"]>span:nth-child(1){transform:translateY(7px) rotate(45deg)}.mtw-header__toggle[aria-expanded="true"]>span:nth-child(2){opacity:0}.mtw-header__toggle[aria-expanded="true"]>span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
    .mtw-header__nav{position:fixed;inset:0;display:grid;place-items:center;padding:90px 8vw 40px;background:#fff;visibility:hidden;opacity:0;transition:.25s}.mtw-header__nav.is-open{visibility:visible;opacity:1}.mtw-header__nav ul{display:block;width:min(100%,600px)}.mtw-header__nav li{border-bottom:1px solid #ddd}.mtw-header__nav a{padding:16px 0;font-size:1em}.mtw-header__contact{margin-top:2em;border:0!important}.mtw-header__contact a{padding:18px 22px;border-radius:0;color:#fff;background:#111}.mtw-header__contact svg{color:#fff}
    .mtw-home-links__scroller{grid-template-columns:repeat(2,1fr)}
}

@media screen and (max-width:767px){
    .admin-bar .mtw-header{top:46px}
    body{font-size:15px;line-height:1.75}.mtw-header{padding:10px 20px}.mtw-header__logo{min-width:0;width:145px}
    .mtw-home-hero{height:78vh;min-height:580px}.mtw-home-hero::after{background:linear-gradient(0deg,rgba(0,0,0,.42),transparent 62%)}.mtw-home-hero__copy{left:8vw;bottom:9%}.mtw-home-hero__copy h1{font-size:8.8vw}.mtw-home-hero__copy p{font-size:.72em}
    .mtw-home-news,.mtw-home-links,.mtw-home-access{width:88%;padding:6em 0}.mtw-home-heading{display:block;margin-bottom:3em}.mtw-home-heading h2{font-size:3em}.mtw-home-heading span{display:block;margin-top:1em}.mtw-home-news__item{grid-template-columns:1fr 42px;gap:.7em;min-height:110px;padding:18px 0}.mtw-home-news__item time{grid-column:1;font-size:.78em}.mtw-home-news__item strong{grid-column:1;font-size:1.1em}.mtw-home-news__item span{grid-column:2;grid-row:1/3;width:40px;height:40px}.mtw-home-links{width:100%;padding-right:6vw;padding-left:6vw}.mtw-home-links__scroller{display:flex;gap:16px;margin-right:-6vw;padding-right:6vw;overflow-x:auto;scroll-snap-type:x mandatory}.mtw-home-card{flex:0 0 82vw;scroll-snap-align:start}.mtw-home-card>span{margin:1.4em 1.5em .5em}.mtw-home-card strong{margin-left:1.1em;font-size:1.15em}.mtw-home-access__grid{display:block}.mtw-home-access iframe{min-height:380px;margin-bottom:2em}.mtw-home-access dl div{display:block;padding:16px 0}.mtw-home-access dt{margin-bottom:.4em}
    .mtw-breadcrumb{width:88%;margin-top:5em}.mtw-contact{padding:0 4vw;background:linear-gradient(#fff 15%,#ededed 15%)}.mtw-contact__inner{display:block;min-height:0;padding:3em 8vw;border-radius:34px}.mtw-contact__lead h2{font-size:1.65em}.mtw-contact__tel{margin-top:2.5em}.mtw-contact__tel>a{font-size:1.55em}.mtw-contact__mail{width:62px;height:62px;margin:2em 0 0 auto}.mtw-footer{display:block;padding:2.5em 8vw}.mtw-footer p{margin-top:1.3em}
    .mtw-generic{width:88%;padding-top:130px}.mtw-generic__header,.mtw-article__header{margin-bottom:3em}.mtw-generic__header h1,.mtw-article__header h1{font-size:2.2em}.mtw-post-list__item{grid-template-columns:1fr 35px;min-height:100px;padding:14px 0}.mtw-post-list__item time{grid-column:1;font-size:.78em}.mtw-post-list__item strong{grid-column:1}.mtw-post-list__item span{grid-column:2;grid-row:1/3}.mtw-error p{font-size:6em}
    .wraper1{width:90%}table.formTable,table.formTable tbody,table.formTable tr,table.formTable th,table.formTable td{display:block;width:100%}table.formTable th{border-bottom:0}.form-steps{font-size:.78em}.privacy-note{margin-top:1.5em}
}

/* =========================================================
   FRONT PAGE — reference layout
   ========================================================= */
.home .mtw-site__content{padding-top:var(--mtw-header-height)}
.mtw-home-hero-shell{
    position:relative;
    padding:0 0 64px;
    background:#fff;
}
.mtw-home-hero-shell::before{
    content:"";
    position:absolute;
    top:60%;
    bottom:0;
    left:0;
    width:calc(4vw + 60px);
    background:#75a66e;
}
.mtw-home-hero-shell::after{
    content:"";
    position:absolute;
    right:0;
    bottom:0;
    left:0;
    height:64px;
    background:#75a66e;
}
.mtw-home-hero{
    position:relative;
    z-index:1;
    width:96%;
    height:80vh;
    min-height:0;
    margin:0 0 0 4%;
    aspect-ratio:auto;
    border-radius:0 0 0 58px;
}
.mtw-home-hero::after{display:none}
.mtw-home-hero__copy{left:4.2%;bottom:6.3%}
.mtw-home-hero__copy p{margin-bottom:1.3em;font-size:.92em;font-weight:600;letter-spacing:.25em}
.mtw-home-hero__copy h1{font-size:3.05vw;font-weight:500;line-height:1.65;letter-spacing:.12em}
.mtw-home-hero__scroll{
    position:absolute;
    z-index:3;
    bottom:32px;
    left:1.55vw;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:1.2em;
    color:#fff;
    font-family:"Zen Kaku Gothic New",sans-serif;
    font-size:.72em;
    letter-spacing:.16em;
}
.mtw-home-hero__scroll span{writing-mode:vertical-rl;transform:rotate(180deg)}
.mtw-home-hero__scroll i{
    position:relative;
    display:block;
    width:1px;
    height:58px;
    background:rgba(255,255,255,.35);
    overflow:hidden;
}
.mtw-home-hero__scroll i::after{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:1px;
    height:24px;
    background:#fff;
    animation:mtw-scroll-line 1.8s ease-in-out infinite;
}
@keyframes mtw-scroll-line{
    0%{transform:translateY(-28px);opacity:0}
    20%{opacity:1}
    75%{opacity:1}
    100%{transform:translateY(62px);opacity:0}
}
@media (prefers-reduced-motion:reduce){
    .mtw-home-hero__scroll i::after{animation:none;transform:translateY(17px);opacity:1}
}

.mtw-home-links{width:100%;padding:0em 0;background:#fff}
.mtw-home-links .mtw-home-heading{display:none}
.mtw-home-links__scroller{
    display:flex;
    gap:1.8vw;
    width:116vw;
    margin-left:-8vw;
    padding:0;
    overflow-x:auto;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    cursor:grab;
    overscroll-behavior-inline:contain;
}
.mtw-home-links__scroller:active{cursor:grabbing}
.mtw-home-links__scroller.is-looping{scroll-snap-type:none}
.mtw-home-links__scroller::-webkit-scrollbar{display:none}
.mtw-home-card{
    position:relative;
    display:block;
    flex:0 0 24vw;
    min-width:380px;
    max-width:780px;
    padding:0;
    aspect-ratio:1/1;
    border-radius:0 0 58px 0;
    scroll-snap-align:center;
    isolation:isolate;
}
.mtw-home-card::after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,.02) 55%);border-radius:inherit;pointer-events:none}
.mtw-home-card img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:inherit;filter:none}
.mtw-home-card>span{display:none}
.mtw-home-card strong{position:absolute;z-index:2;top:6.5%;left:7.5%;margin:0;color:#fff;font-size:1.75em;font-weight:600;letter-spacing:.08em}
.mtw-home-card i{position:absolute;z-index:2;right:6%;bottom:6%;display:grid;width:48px;height:48px;margin:0;place-items:center;color:#111;background:#fff;border-radius:50%;font-size:1.2em}
.mtw-home-card:hover img{transform:scale(1.025)}

.mtw-contact__tel>a{
    white-space:nowrap;
    font-size:2vw;
    letter-spacing:.12em;
}

@media screen and (max-width:1100px){
    .mtw-header__inquiry-link{display:none}
    .mtw-home-hero{width:95%;margin-left:5%}
    .mtw-home-hero__copy h1{font-size:4vw}
    .mtw-home-card{flex-basis:38vw;min-width:340px}
    .mtw-contact__inner{grid-template-columns:1fr minmax(310px,.9fr) 70px;gap:3vw;padding-right:6vw;padding-left:6vw}
    .mtw-contact__tel>a{font-size:2.2vw}
}

@media screen and (max-width:767px){
    .mtw-home-hero-shell{padding-bottom:40px}
    .mtw-home-hero-shell::before{display:block;top:60%;width:calc(6% + 34px)}
    .mtw-home-hero-shell::after{display:block;height:40px}
    .mtw-home-hero{width:94%;height:70svh;min-height:0;margin-left:6%;aspect-ratio:auto;border-radius:0 0 0 32px}
    .mtw-home-hero img{object-position:center center}
    .mtw-home-hero__copy{left:8%;bottom:7%}
    .mtw-home-hero__copy p{font-size:.68em}
    .mtw-home-hero__copy h1{font-size:7.5vw;line-height:1.55}
    .mtw-home-hero__scroll{display:block;top:66%;right:auto;bottom:0;left:0;width:6%;font-size:.68em}
    .mtw-home-hero__scroll span{position:absolute;bottom:150px;left:50%;transform:translateX(-50%) rotate(180deg)}
    .mtw-home-hero__scroll i{position:absolute;bottom:38px;left:50%;height:58px;transform:translateX(-50%)}
    .mtw-home-links{padding:0em 0}
    .mtw-home-links__scroller{gap:18px;width:100%;margin-left:0;padding:0 6vw}
    .mtw-home-card{flex:0 0 78vw;min-width:0;border-radius:0 0 38px 0}
    .mtw-home-card strong{font-size:1.35em}
    .mtw-home-card i{width:42px;height:42px}
    .mtw-contact__tel>a{font-size:1.55em;white-space:nowrap}
}

/* 竹資源活用と地域連携：固定ページ本文 */
.mtw-bamboo-resource{width:100%;max-width:1200px;margin-inline:auto;color:#222;line-height:1.9}
.mtw-bamboo-resource .mtw-bamboo-resource__heading{margin:0 0 1.2em;padding:0 0 0 .75em;border:0;border-left:3px solid #739967;font-size:1.6em;font-weight:600;line-height:1.5}
.mtw-bamboo-resource .mtw-bamboo-resource__intro{max-width:58em;margin:0;line-height:2}
.mtw-bamboo-resource__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:4.5em;width:100%;max-width:960px;margin-inline:auto;padding-top:3.5em;align-items:start}
/* Ignore automatic paragraph/line-break nodes inserted by the editor. */
.mtw-bamboo-resource__grid>br,
.mtw-bamboo-resource__photos>br,
.mtw-bamboo-resource p:empty,
.mtw-bamboo-resource p:has(>br:only-child),
.mtw-bamboo-resource figcaption br{display:none}
.mtw-bamboo-resource__grid>*,.mtw-bamboo-resource__photos>*{min-width:0}
.mtw-bamboo-resource figure{min-width:0;margin:0}
.mtw-bamboo-resource figure img{display:block;float:none;width:100%;max-width:100%;height:auto;margin:0}
.mtw-bamboo-resource figure>p:has(img){margin:0}
.mtw-bamboo-resource__placeholder{display:grid;place-items:center;aspect-ratio:3 / 2;padding:1em;background:#f2f3f0;color:#777;font-size:1em;text-align:center}
.mtw-bamboo-resource__placeholder--portrait{aspect-ratio:10 / 11}
.mtw-bamboo-resource__photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1em}
.mtw-bamboo-resource__photos>p:not(:has(img)){display:none}
.mtw-bamboo-resource__photos>p:has(img){display:contents}
.mtw-bamboo-resource__photos>p>br{display:none}
.mtw-bamboo-resource .mtw-bamboo-resource__photos img{aspect-ratio:1 / 1;height:auto;object-fit:cover;object-position:center;align-self:start}
.mtw-bamboo-resource__photos>.mtw-bamboo-resource__placeholder{grid-row:1}
.mtw-bamboo-resource__photos>.mtw-bamboo-resource__placeholder:first-of-type{grid-column:1}
.mtw-bamboo-resource__photos>.mtw-bamboo-resource__placeholder:last-of-type{grid-column:2}
.mtw-bamboo-resource figcaption{margin:1.5em 0 0;font-size:1em;line-height:1.8;text-align:left}
.mtw-bamboo-resource figcaption p{margin:0}
.mtw-bamboo-resource__caption-title{display:block;font-weight:600}
.mtw-bamboo-resource__people{margin-top:1.8em;padding-top:1.5em;border-top:1px solid #e4e6e0;font-size:.85em;line-height:1.8}
.mtw-bamboo-resource__people p{margin:0 0 .5em;color:#666}
.mtw-bamboo-resource__people ul{margin:0;padding:0;list-style:none}
.mtw-bamboo-resource__people li{margin:0 0 .4em}
.mtw-bamboo-resource__date{display:block;margin-top:.4em;color:#666;font-size:1em}
@media screen and (max-width:767px){
    .mtw-bamboo-resource .mtw-bamboo-resource__heading{font-size:1.3em}
    .mtw-bamboo-resource__grid{grid-template-columns:1fr;padding-top:2.5em;gap:3em}
    .mtw-bamboo-resource__photos{gap:.75em}
}

/* TYPE SCALE / COMPACT VERTICAL RHYTHM */
body{font-size:1.0625em}
.mtw-message__body p{font-size:1.1em}
.mtw-policy__text{font-size:1.1em}
.mtw-company__value{font-size:1em}
.mtw-company__link-en{font-size:.875em}
.mtw-company__link strong{font-size:1.125em}
.mtw-awards__content p,.mtw-history__content p{font-size:1.125em}
.mtw-recruit-page .mtw-factory-step__description p{font-size:1.2em}

.mtw-recruit-heading-jp{margin:0;font-size:2.4em;line-height:1.25}
.mtw-recruit-line-heading{align-items:center;margin-bottom:2.5em}
.mtw-recruit-line-heading>div{display:flex;align-items:center}
.mtw-recruit-line-heading::after{align-self:center}
.mtw-recruit-heading{margin-bottom:2em}
.mtw-recruit-entry,.mtw-recruit-section{padding-top:4.5em;padding-bottom:4.5em}
.mtw-recruit-message{padding-top:4.5em;padding-bottom:4.5em}
.mtw-recruit-page .mtw-factory-flow{padding-top:2em}
.mtw-recruit-page .mtw-factory-step{padding-top:3.5em;padding-bottom:3.5em}
.mtw-recruit-page .mtw-factory-step__heading{margin-bottom:1.8em;padding-bottom:1em}

.mtw-message{margin-top:4em;margin-bottom:5em}
.mtw-vision,.mtw-philosophy{margin-bottom:5em}
.mtw-company{margin-bottom:4.5em}
.mtw-factory-section{padding-top:4.5em;padding-bottom:4.5em}
.mtw-technology-section,.mtw-products-section{padding-top:4.5em;padding-bottom:4.5em}
.mtw-home-news,.mtw-home-access{padding-top:5em;padding-bottom:5em}

.mtw-contact{margin-top:3.5em;background:linear-gradient(#fff 28%,#ededed 28%)}
.mtw-contact__inner{grid-template-columns:minmax(0,1fr) auto;min-height:210px;padding:2.8em 7vw;border-radius:42px}
.mtw-contact__lead h2{margin-bottom:.55em!important;font-size:1.8em;letter-spacing:.08em}
.mtw-contact__lead p{font-size:1em}
.mtw-contact__mail{display:flex;width:auto;height:auto;min-width:180px;gap:.8em;padding:1em 1.4em;border:1px solid #ddd;border-radius:999px;box-shadow:none;font-size:1em}
.mtw-contact__mail svg{width:28px;height:21px}
.mtw-contact__mail span{font-size:1em;font-weight:600;white-space:nowrap}
.mtw-footer{padding-top:1.8em;padding-bottom:1.8em}

/* Draw the page-top arrow as an icon rather than a text glyph. */
.mtw-pagetop{font-size:0}
.mtw-pagetop::before{position:absolute;top:50%;left:50%;display:block;width:10px;height:10px;border-top:1.5px solid #fff;border-left:1.5px solid #fff;box-sizing:border-box;content:"";transform:translate(-50%,-50%) rotate(45deg)}
.mtw-pagetop::after{display:none}

/* Shared right-facing chevron icon. */
.mtw-icon-chevron{display:inline-block;flex:none;width:.58em;height:.58em;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;box-sizing:border-box;transform:rotate(45deg);font-size:1em;line-height:1}
.mtw-icon-chevron--left{transform:rotate(225deg)}
.mtw-icon-chevron--down{transform:rotate(135deg)}
.mtw-company__arrow.mtw-icon-chevron{top:50%;right:24px;width:.58em;height:.58em;transform:translateY(-50%) rotate(45deg)}

@media screen and (max-width:767px){
    body{font-size:1em}
    .mtw-recruit-heading-jp{font-size:1.8em}
    .mtw-recruit-line-heading{margin-bottom:2em}
    .mtw-recruit-entry,.mtw-recruit-section,.mtw-recruit-message{padding-top:3.5em;padding-bottom:3.5em}
    .mtw-recruit-page .mtw-factory-step{padding-top:3em;padding-bottom:3em}
    .mtw-message{margin-top:3.5em;margin-bottom:4em}
    .mtw-vision,.mtw-philosophy,.mtw-company{margin-bottom:4em}
    .mtw-factory-section,.mtw-technology-section,.mtw-products-section{padding-top:3.5em;padding-bottom:3.5em}
    .mtw-home-news,.mtw-home-access{padding-top:4.5em;padding-bottom:4.5em}
    .mtw-contact{margin-top:2.5em}
    .mtw-contact__inner{display:flex;min-height:0;padding:2.5em 8vw;flex-direction:column;align-items:flex-start;border-radius:28px}
    .mtw-contact__mail{width:auto;height:auto;margin:1.5em 0 0}
    .mtw-footer{padding-top:1.5em;padding-bottom:1.5em}
}

/* RECRUITMENT GUIDELINES */
.mtw-recruit-guideline-page{color:#222;background:#fff}
.mtw-recruit-guideline-hero{display:flex;min-height:280px;padding:4em 6vw;align-items:center;background:#142d51;color:#fff;box-sizing:border-box}
.mtw-recruit-guideline-hero__inner{width:100%;max-width:1200px;margin:0 auto}
.mtw-recruit-guideline-hero p{margin:0 0 .8em;font-size:1.05em;font-weight:600;letter-spacing:.12em}
.mtw-recruit-guideline-hero h1{margin:0!important;color:#fff;font-size:3em;font-weight:600;line-height:1.35!important;letter-spacing:.04em}
.mtw-recruit-guideline{width:88%;max-width:1200px;margin:0 auto;padding:4.5em 0 2em;box-sizing:border-box}
.mtw-recruit-fixed-page.mtw-generic{padding-top:8em}
.mtw-recruit-fixed-page .mtw-article__header{margin-bottom:2.5em}
.mtw-recruit-fixed-page .mtw-recruit-guideline{padding-top:0}
.mtw-recruit-guideline__lead{max-width:58em;margin:0 0 2.5em;font-size:1.08em;line-height:2}
.mtw-recruit-requirements h2{margin:0 0 1.4em!important;padding-left:.7em;border-left:4px solid #739967;font-size:2.1em;font-weight:600;line-height:1.35!important}
.mtw-recruit-requirements__list{margin:5% 0 0 0;border-top:1px solid #d9d9d9}
.mtw-recruit-requirements__row{display:grid;grid-template-columns:14em minmax(0,1fr);border-bottom:1px solid #d9d9d9}
.mtw-recruit-requirements__row dt{margin:0;padding:1.6em 1.8em;background:#f3f5f1;font-size:1.05em;font-weight:600;line-height:1.8}
.mtw-recruit-requirements__row dd{min-width:0;margin:0;padding:1.6em 2em;font-size:1.05em;line-height:1.9}
.mtw-recruit-requirements__row dd>p:first-child,.mtw-recruit-requirements__row dd>h3:first-child{margin-top:0!important}
.mtw-recruit-requirements__row dd>p:last-child,.mtw-recruit-requirements__row dd>ul:last-child{margin-bottom:0!important}
.mtw-recruit-requirements__row ul{margin:0;padding:0;list-style:none}
.mtw-recruit-requirements__row li{position:relative;margin:.25em 0;padding-left:1.1em}
.mtw-recruit-requirements__row li::before{position:absolute;top:0;left:0;content:"・"}
.mtw-recruit-job+.mtw-recruit-job{margin-top:1.8em;padding-top:1.8em;border-top:1px solid #e5e5e5}
.mtw-recruit-job h3,.mtw-recruit-requirements__row dd>h3{margin:0 0 .55em!important;font-size:1.14em;font-weight:600;line-height:1.6!important}
.mtw-recruit-job p{margin:.35em 0!important}
.mtw-recruit-job__note{color:#666;font-size:.94em}
.mtw-recruit-salary{max-width:32em}
.mtw-recruit-salary li{display:flex;gap:2em;justify-content:space-between}
.mtw-recruit-salary strong{white-space:nowrap}
@media screen and (max-width:767px){
    .mtw-recruit-guideline-hero{min-height:220px;padding:3em 6vw}
    .mtw-recruit-guideline-hero h1{font-size:2em}
    .mtw-recruit-guideline{width:100%;padding:3em 6% 2em}
    .mtw-recruit-fixed-page.mtw-generic{padding-top:7em}
    .mtw-recruit-fixed-page .mtw-article__header{margin-bottom:2em}
    .mtw-recruit-fixed-page .mtw-recruit-guideline{padding-top:0}
    .mtw-recruit-guideline__lead{margin-bottom:2em;font-size:1em;line-height:1.9}
    .mtw-recruit-requirements h2{font-size:1.7em}
    .mtw-recruit-requirements__row{display:block}
    .mtw-recruit-requirements__row dt{padding:1em 1.2em}
    .mtw-recruit-requirements__row dd{padding:1.2em;font-size:1em}
    .mtw-recruit-salary li{gap:1em}
}
