@charset "utf-8";

header #siteLogo a img.nonactive {
    opacity: 1;
}
header #siteLogo a img.logo_white {
    position: relative;
}

body {
    font-family: "Heebo", sans-serif;
    height: 17000px;
    height: auto;
    font-feature-settings: "palt";
}
* {
    background-size: cover;
}
.design-sec {
    padding: 0;
}
.nav-wrap {
    /* top: 3px; */
    /* background-color: unset; */
}
header .hum-wrap .hum-inner .main-hum-nav {
    color: #000;
    font-weight: normal;
}
header {
    left: 20px;
    top: 30px;
} 
#global-nav .global-item {
    font-weight: normal;
}

header #siteLogo {
    min-width: 180px;
}

@media ( max-width: 999px ) {
    header {
        top: 3px;
    }
}
.h_zure {
    width: fit-content;
}

/* ーーーーーーーーーーーーーーーーーーファーストビューーーーーーーーーーーーーーーーーーー */
section.first_view {
    height: 761px;
    padding: 102px 0 102px;
    background-image: url( ../img/背景.png );

    height: calc(435px + 320 * (100vw - 768px) / 672);
    
    padding: clamp(70px, calc(70px + 32 * (100vw - 768px) / 672), 102px) 0;
}

section.first_view h1 {
    font-family : Heebo;
    font-weight : bold;
    font-size : 70px;
    color : #FFFFFF;
    color : rgb(255, 255, 255);
    position: absolute;
    top: -36px;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    text-shadow: 0px 0px 4px #042647;
    text-align: center;
    line-height: 1;

    font-size: clamp(65px, calc(65px + 5 * (100vw - 768px) / 672), 70px);
}
section.first_view h1 div {
    margin-bottom: 13px;

    margin-bottom: clamp(5px, calc(5px + 8 * (100vw - 768px) / 672), 13px);

    margin-bottom: clamp(-33px, 1 / 96 * 100vw - 41px, -26px);
}
section.first_view h1 span {
    display: inline-block;
    font-size: 30px;
    text-align: center;
    font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    position: relative;

    font-size: clamp(20px, calc(20px + 10 * (100vw - 768px) / 672), 30px);
}
section.first_view h1 span.mini {
    display: inline-block;
    font-size: 14px;
    position: absolute;
    right: -21%;
    top: 34%;

    right: 0;

    font-size: clamp(11px, calc(11px + 3 * (100vw - 768px) / 672), 14px);
    right: -34%;
}
.first_view_flex {
    display: flex;
    height: 100%;
    position: relative;
}
.first_view_flex_left {
    width: 50%;
    background-image: url( ../img/TOP.jpg );
    background-position: center;
    background-size: 78vw;
}
.first_view_flex_right {
    width: 50%;
    background-image: url( ../img/TOP2.jpg );
    background-position: 50% 10%;
    background-position: 49% 10%;
    background-size: 78vw;
}

/* @media ( max-width: 768px ) {
    section.first_view {
        height: 513px;
        padding: 152px 0 70px;
    }
    section.first_view h1 {
        font-size: 65px;
    }
    section.first_view h1 div {
        margin-bottom: 5px;
    }
    section.first_view h1 span {
        font-size: 20px;
    }
    section.first_view h1 span.mini {
        font-size: 11px;
        right: 27%;
    }
} */
 /* @media ( max-width: 375px ) {
     section.first_view {
        height: 223px;
        padding: 40px 0;
    }
    section.first_view h1 {
        font-size: 30px;
        top: -17px;
    }
    section.first_view h1 span {
        font-size: 13px;
    }
    section.first_view h1 span.mini {
        font-size: 8px;
        right: 16%;
    }
} */
@media ( max-width: 767px ) {
    section.first_view {
        padding: clamp(40px, calc(40px + 30 * (100vw - 375px) / 393), 70px) 0;
    }

    section.first_view h1 {
        font-size: clamp(30px, calc(30px + 35 * (100vw - 375px) / 393), 65px);
        top: clamp(-36px, calc(-17px - 19 * (100vw - 375px) / 393), -17px);
    }

    section.first_view h1 div {
        margin-bottom: clamp(-33px, 
                      -23 / 392 * 100vw + (4705 / 392) * 1px, 
                      -10px);
    }

    section.first_view h1 span {
        font-size: clamp(13px, calc(13px + 7 * (100vw - 375px) / 393), 20px);
    }

    section.first_view h1 span.mini {
        font-size: clamp(8px, calc(8px + 3 * (100vw - 375px) / 393), 11px);
        right: -40%;
    }
}


/* ーーーーーーーーーーーーーーーーーー追従リンク＿ボタンーーーーーーーーーーーーーーーーーーー */
.chase_link_area {
    width: 21%;
    max-width: 302px;
    position: sticky;
    top: 300px;
    right: 0px;
    margin-top: 224px;
}
.chase_link_area a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
.chase_link_area li a {
    background-size: cover;
}
.chase_link_area li a {
    opacity: 1;
}
.chase_link_area li a {
    transition-duration: .4s;

}
.chase_link_area li img {
    opacity: 0;
    display: block;
}
img {
    display: block;
}
.chase_link_area li img:nth-child(1) {
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.chase_link_area li img:nth-child(2) {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition-duration: .4s;
}
.chase_link_area li:hover img:nth-child(2) {
    opacity: 1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
@media ( max-width: 999px ) {
    .chase_link_area {
        display: none;
    }
}

/* ーーーーーーーーーーーーーーーーーーmainエリア＿テキストの方（追従リンクじゃない方）ーーーーーーーーーーーーーーーーーーー */
.main {
    display: flex;
    justify-content: space-between;
    position: relative;
    align-items: flex-start;
    gap: 77px;
    max-width: 1440px;
    margin: 0 auto;
}
.text_wrapper {
    width: 70%;
    max-width: 942px;
    order: -1;
    padding-top: 100px;
    padding-left: 30px;
    margin-left: auto;
}
section .text_img p.sec_first_bottom_p {
    margin-bottom: 79px;
}

@media ( max-width: 999px ) {
    .main {
        justify-content: center;
    }
    .text_wrapper {
        width: unset;
        padding: 83px 30px 0;
        margin-left: unset;
        padding-top: clamp(52px, 4.9679vw + 33.3692px, 83px);
    }
}
@media ( max-width: 500px ) {
    .text_wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }
}
/* 線形補完用767px */
/* .text_wrapper {
    padding: 83px 30px 0;
}
section h2 {
    margin-bottom: 68px;
}
section h2 .h2_uppon {
    margin-bottom: 12px;
}
section h2 .h2_under {
    line-height: 1.30;
} */
/* 線形補完用375px */
@media ( max-width: 375px ) {
    .text_wrapper {
        padding: 52px 21px 0;
    }
    section h2 {
        margin-bottom: 35px;
    }
    section h2 .h2_uppon {
        margin-bottom: 10px;
    }
    section h2 .h2_under {
        line-height: 1.4;
    }
    section h2 .h2_under span:first-child {
        margin-bottom: clamp(0px, 1.5267vw - 5.7252px, 6px);
    }
}
/* .text_wrapper {
    padding-top: clamp(52px, calc(7.908vw + 22.344px), 83px);
    padding-right: clamp(21px, calc(2.296vw + 12.390px), 30px);
    padding-bottom: 0;
    padding-left: clamp(21px, calc(2.296vw + 12.390px), 30px);
} */
section h2 {
    margin-bottom: clamp(35px, calc(8.418vw + 3.431px), 68px);
}
section h2 .h2_uppon {
    margin-bottom: clamp(10px, calc(0.510vw + 8.087px), 6px);
}
section h2 .h2_under span:first-child {
    margin-bottom: 8px;
}

/* ーーーーーーーーーーーーーーーーーー１「ファーストセクション」ーーーーーーーーーーーーーーーーーーー */
section.first .first_sec_bottom_img {
    background-position: 80% 55%;
    background-size: cover;
}
 @media ( max-width: 999px ) {
    section.first .text_img img {
        margin-bottom: 34px;
    }
    section.first .text_img :nth-child(4) {
        display: none;
     }
 }
 @media ( max-width: 375px ) {
    section.first .text_img :nth-child(3) {
        margin-bottom: 16px;
    }
    section.first .text_img p {
        margin-bottom: 16px;
    }
    section.first .text_img p:nth-child(5) {
        margin-bottom: 23px;
    }
}

/* ーーーーーーーーーーーーーーーーーー２「空を身近に感じる家づくり」ーーーーーーーーーーーーーーーーーーー */

.feel_sky_close {

}
.text_img_wrapper {
    width: calc(47% - (var(--gap-size) / 2));
    position: relative;
}
.text_img_wrapper p {
    position: relative;
}
.text_img_wrapper p:nth-child(2)::before {
    content: "沖田課長 : ";
    position: absolute;
    top: 0;
    left: -71px;
    font-weight : bold;
    font-size : 14px;
    color : #1A1A1A;
    margin-bottom: 23px;
}
section.feel_sky_close .text_img img {
    width: calc(43.5% - (var(--gap-size) / 2));
}
.feel_sky_close .text_img > img {

}
.text_img_wrapper img {
    display: none;
}
.first_sec_bottom_img {
    background-position: 0px -192px;
}
.feel_sky_close .first_sec_bottom_img {
    background-image: url( ../img/6.jpg );
}
.feel_sky_close .first_sec_bottom_img_full {
    background-image: url( ../img/6.jpg );
}
@media ( max-width: 999px ) {
    section.feel_sky_close .text_img img {
        width: 100%;
    }
    .feel_sky_close .text_img > img {
        display: none;
    }
    .text_img_wrapper {
        width: 79%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .text_img_wrapper::before {
        content: "";
    }
    .text_img_wrapper img {
        display: block;
        order: -1!important;
    }
    section .text_img :nth-child(1) {

    }
}
@media ( max-width: 767px ) {
    .text_img_wrapper {
        width: 100%;
    }
    section h3 {
        /* font-size: clamp(1.813rem, 1.155rem + 2.81vw, 2.5rem); */
    }
}



/* ーーーーーーーーーーーーーーーーーー３「見えない部分にも丁寧さを」ーーーーーーーーーーーーーーーーーーー */
h4.rinsetu {
    margin-top: clamp(3px, 9.9237vw - 34.2137px, 42px);
}


/* ーーーーーーーーーーーーーーーーーー４「独自のスタイルの家づくり」ーーーーーーーーーーーーーーーーーーー */
section.build_unique_home .text_img img {
    width: calc(43.5% - (var(--gap-size) / 2));
}
.build_unique_home .first_sec_bottom_img {
    background-image: url( ../img/10.jpg );
}
.build_unique_home .first_sec_bottom_img_full {
    background-image: url( ../img/10.jpg );
}
@media ( max-width: 999px ) {
    .build_unique_home .text_img > img {
        display: none;
    }
    section.build_unique_home .text_img img {
        width: 100%;
    }
}



/* ーーーーーーーーーーーーーーーーーー６「家づくりのこだわり」ーーーーーーーーーーーーーーーーーーー */
.particular_about {
    padding-bottom: 100px;
}
@media ( max-width: 768px ) {
    .particular_about {
        padding-bottom: 36px;
    }
}




/* ーーーーーーーーーーーーーーーーーー７「ラスト＿セクション＿青い背景」ーーーーーーーーーーーーーーーーーーー */
.last_text {
    background-image: url( ../img/最後の文章の背景.png );
    padding: 65px 0 56px;
    letter-spacing: 0.5px;
    text-align: center;
    background-size: cover;

}
.last_text_wrapper {
    max-width: 900px;
    margin: 0 auto;
}
.last_text p {
    color: white;
    line-height: 2.7;
    font-size: 17px;
    margin-bottom: 11px;
}
.last_text p:nth-child(3) {
    margin-bottom: 41px;
}
.last_text_tab_br {
    display: none;
}
.last_text_sp_br {
    display: none;
}
@media ( max-width: 999px ) {
    .last_text_tab_br {
        display: block;
    }
}
@media ( max-width: 768px ) {
    .last_text {
        padding: 50px 0 56px;
    }
    .last_text p {
        font-size: 16px;
        margin-bottom: 24px;
        line-height: 1.8;
    }
    .last_text {
        padding: 50px 0 29px;
    }
    .last_text_sp_br {
        display: block;
    }
}


/* ーーーーーーーーーーーーーーーーーー「カタログ＿リンク＿セクション」ーーーーーーーーーーーーーーーーーーー */
.link_banner_area {
    /* margin-bottom: 100px; */
}
.link_banner_area_wrapper {
    margin: 0 auto;
    padding: 101px 0 100px;
    text-align: center;
    max-width: 968px;

    padding-right: clamp(21px, calc(2.296vw + 12.390px), 30px);
    /* padding-bottom: 0; */
    padding-left: clamp(21px, calc(2.296vw + 12.390px), 30px);
}
.link_banner_area p {
    margin: 0 auto;
    font-size: 20px;
    margin-bottom: 30px;
    position: relative;
    letter-spacing: 1.5px;
    border-bottom: 1px solid #000;
    width: fit-content;
    padding-bottom: 10px;
    font-weight: normal;
}
.link_banner_area p::before {
    content: "";
    background-color: red;
    background-color: white;
    width: 19px;
    height: 3px;
    display: block;
    position: absolute;
    left: 50%;
    bottom: -2px;
}
.link_banner_area p::after {
    content: "";
    background-color: #000;
    width: 15px;
    height: 1px;
    display: block;
    position: absolute;
    left: 50.8%;
    bottom: 3px;
    transform: translate(1px, 9px) rotate(-45deg);
}
.link_banner_area p span {
    padding-bottom: 8px;
}
.catalog_box {
    margin-bottom: 100px;
}
.transition_box {
    display: flex;
    justify-content: space-between;
    gap: 44px;
    font-size: 18px;
}
.architectural_examples {
    background-color: #034883;
    color: white;
    padding: 19px;
    width: 50%;
    line-height: 19px;
    position: relative;
    transition-duration: .3s;
    outline: 2px solid transparent;
    cursor: pointer;
    font-weight: normal;
}
.architectural_examples:hover {
    background-color: white;
    color: #034883;
    outline: 2px solid #034883;
}
.to_top {
    background-color: black;
    color: white;
    padding: 10px;
    width: 50%;
    padding: 19px;
    line-height: 19px;
    transition-duration: .6s;
    outline: 2px solid transparent;
    cursor: pointer;
    font-weight: normal;
    
}
.to_top:hover {
    background-color: white;
    color: black;
    outline: 2px solid black;
}
@media ( max-width: 999px ) {
    .link_banner_area p {
        font-size: 18px;
    }
    .to_top {
        font-size: 14px;
    }
    .architectural_examples {
        font-size: 14px;
    }
}
@media ( max-width: 768px ) {
    .link_banner_area_wrapper {
        padding-top: 78px;
    }
    .link_banner_area p {
        font-size: 18px;
    }
    .catalog_box {
        margin-bottom: 78px;
    }
    .to_top {
        font-size: 18px;
        width: 100%;
    }
    .architectural_examples {
        font-size: 18px;
        width: 100%;
    }
    .transition_box {
        flex-wrap: wrap;
    }
}
@media ( max-width: 768px ) {
    .link_banner_area p {
        font-size: 14px;
    }
}
@media ( max-width: 700px ) {
    .link_banner_area p::after {
        left: 51%;
    }
}
@media ( max-width: 600px ) {
    .link_banner_area_wrapper {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}
@media ( max-width: 500px ) {
    .link_banner_area p::after {
        left: 51.3%;
    }
    .to_top {
        font-size: 14px;
    }
    .architectural_examples {
        font-size: 14px;
    }
}
@media ( max-width: 400px ) {
    .link_banner_area p::after {
        left: 51.5%;
    }
}

