@charset "UTF-8";

/* ============================================
汎用
============================================ */

#main{
    background: #fff;
    overflow: unset;
}

/* ============================================
メイン部分
============================================ */
#main.technology .cPageMv__title {
    font-size: clamp( 135px, calc(192 / 1400 * 100vw), 192px);
}
#main .cPagetitle__catchcopy{
    max-width: 967px;
    width: 67.15%;
    aspect-ratio: 967 / 154;
}
#main .cPagetitle__catchcopy img{
    height: 100%;
}
#main .cPageMv__img img {
    aspect-ratio: 1400 / 720;
}

#main .tMainText{
    position: absolute;
    right: 54px;
    bottom: 187px;
}
#main .tMainText .post{
    font-weight: 700;
    font-size: clamp(12px, 11.296px + 0.188vw, 14px);
    text-align: right;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    line-height: 150%;
}
#main .tMainText .name{
    font-weight: 700;
    font-size: clamp(18px, 15.887px + 0.563vw, 24px);
    line-height: 140%;
    text-align: right;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}


/* ============================================
コンテンツ部分
============================================ */

#main .tCopy{
    display: flex;
    flex-wrap: wrap;
    width: 90%;
    max-width: 1060px;
    margin: clamp(55px, 48.662px + 1.69vw, 73px) auto 0;
    gap: 24px 40px;
    align-items: flex-start;
}
#main .tCopyRight,
#main .tCopyLeft{
    width: calc(50% - 20px);
}
#main .tCopyLeft h3{
    font-weight: 700;
    font-size: clamp(24px, 21.183px + 0.751vw, 32px);
    line-height: 135%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tCopyRight p{
    font-weight: 500;
    font-size: clamp(14px, 13.296px + 0.188vw, 16px);
    line-height: 180%;
    text-align: justify;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}

#main .tImage{
    width: 90%;
    max-width: 1280px;
    margin: clamp(40px, 25.915px + 3.756vw, 80px) auto 0;
}

#main .tText{
    width: 90%;
    max-width: 1080px;
    margin: clamp(55px, 48.662px + 1.69vw, 73px) auto 0;
}
#main .tText h3{
    font-weight: 700;
    font-size: clamp(24px, 21.183px + 0.751vw, 32px);
    line-height: 135%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tText h3 + p{
    margin: clamp(24px, 21.183px + 0.751vw, 32px) 0 0;
}
#main .tText p{
    font-weight: 500;
    font-size: clamp(14px, 13.296px + 0.188vw, 16px);
    line-height: 180%;
    text-align: justify;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}

#main .tImageBlc{
    width: 90%;
    max-width: 1080px;
    margin: clamp(55px, 48.662px + 1.69vw, 73px) auto 0;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
#main .tImageBlc > *{
    width: calc(50% - 20px);
}
#main .tImageBlc p{
    display: block;
    margin: 12px 0 0;
    font-weight: 400;
    font-size: 14px;
    line-height: 180%;
    text-align: justify;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}

#main .tMessage{
    position: relative;
    width: calc(100% - 20px);
    margin: clamp(80px, 63.099px + 4.507vw, 128px) auto 0;
    aspect-ratio: 1400 / 1038;
}
#main .tMessageImage{
    position: relative;
    z-index: 1;
}
#main .tMessageText{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 12.14285%;
    width: 36.4285%;
    min-width: 300px;
}
#main .tMessageText h3{
    font-weight: 700;
    font-size: clamp(24px, 21.183px + 0.751vw, 32px);
    line-height: 135%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tMessageText p{
    margin: clamp(24px, 21.183px + 0.751vw, 32px) 0 0;
    font-weight: 500;
    font-size: clamp(14px, 13.296px + 0.188vw, 16px);
    line-height: 180%;
    text-align: justify;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}

#main .tExhibition{
    margin: clamp(80px, 63.099px + 4.507vw, 128px) auto 0;
    max-width: 1080px;
    width: 90%;
}
#main .tExhibitionTitle{
    font-weight: 700;
    font-size: clamp(24px, 21.183px + 0.751vw, 32px);
    line-height: 135%;
    text-align: center;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tExhibitionImage{
    margin: clamp(40px, 31.549px + 2.254vw, 64px) auto 0;
    max-width: 730px;
}
#main .tExhibitionImage span.note{
    margin: clamp(12px, 10.592px + 0.376vw, 16px) 0 0;
    display: block;
    font-weight: 700;
    font-size: clamp(12px, 9.183px + 0.751vw, 20px);
    line-height: 140%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    text-indent: 0;
}
#main .tExhibitionText{
    margin: clamp(40px, 31.549px + 2.254vw, 64px) auto 0;
}
#main .tExhibitionText p{
    font-weight: 500;
    font-size: clamp(14px, 13.296px + 0.188vw, 16px);
    line-height: 180%;
    text-align: justify;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tExhibitionText + .cLinkBtn{
    margin: clamp(40px, 31.549px + 2.254vw, 64px) auto 0;
}

#main .tFullImage{
    width: calc(100% - 20px);
    margin: clamp(80px, 63.099px + 4.507vw, 128px) auto 0;
}

#main .tDx{
    margin: clamp(80px, 63.099px + 4.507vw, 128px) auto 0;
    max-width: 1280px;
    width: 90%;
    background: #F3F3F3;
    padding: 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 43px;
}
#main .tDxLeft{
    width: 39.6%;
}
#main .tDxRight{
    width: calc(60.4% - 43px);
}
#main .tDxRight .tDxTitle{
    font-weight: 700;
    font-size: clamp(18px, 15.887px + 0.563vw, 24px);
    line-height: 140%;
    align-items: center;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tDxRight .tDxText{
    margin: 24px 0 0;
    font-weight: 500;
    font-size: 16px;
    line-height: 180%;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
}
#main .tDxRight .tDxLink{
    margin: clamp(16px, 13.183px + 0.751vw, 24px) 0 0;
}

#main .tDaiwaTechnology{
    margin: clamp(85px, 64.225px + 5.54vw, 144px) 0 0;
    background: #2C2A2A;
    padding: clamp(48px, 36.732px + 3.005vw, 80px) 5%;
    color: #fff;
}
#main .tDaiwaTechnology h3{
    font-weight: 700;
    font-size: clamp(20px, 18.592px + 0.376vw, 24px);
    line-height: 140%;
    text-align: center;
    letter-spacing: 0.03em;
    font-feature-settings: 'palt' on;
    color: #FFFFFF;
}
#main .tDaiwaTechnologyImage{
    max-width: 839px;
    margin: clamp(24px, 18.366px + 1.502vw, 40px) auto 0;
}
#main .tDaiwaTechnologyLink{
    margin: clamp(24px, 18.366px + 1.502vw, 40px) 0 0;
}
#main .tDaiwaTechnologyLink .cLinkWrap{
    justify-content: center;
}
#main .tDaiwaTechnologyLink p{
    color: #FFFFFF;
}
