@charset "UTF-8";
/*-----------------------------------------------------------

    このファイルにはTOPページ専用のスタイルのみを記述します。
    セクションごとに記述を分けてあります。
    以下の目次を参考に該当箇所を検索してください。

    検索目次
    ・全体設定
    ・MV
    ・concept
    ・feature
    ・service


------------------------------------------------------------*/


/*--------------- 
全体設定 
------------------*/

/* 表示領域制御 */
.home #content {
    margin: 0 !important;
    padding: 0 !important;
    width: 100%;
    max-width: none;
    background-color: #fff;
}

.home #main_content {
    margin: 0;
    width: 100%;
    max-width: none;
}

/* リンクボタン */
/*  .link-btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: linear-gradient(90deg, #544448 0%, #66565A 100%);
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0.025em;
    color: #fff;
    padding: 16px 40px;
    box-shadow: 0px 4px 4px 0px #00000040;
    border: 1px solid #66565A;
    border-radius: 999px;
    width: 100%;
    max-width: 310px;
    margin: 0 auto;
    transition: all 0.3s;

    position: relative;
    overflow: hidden;
}

.link-btn__text {
    transition: 0.3s;
}

.link-btn:hover .link-btn__text {
    color: #66565A;
}

.link-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #CCC4C6;
    opacity: 0;
    transition: opacity 0.3s;
    z-index: 0;
}

.link-btn:hover::before {
    opacity: 1;
} */


/* テキストを前面へ */
/* .link-btn>* {
    position: relative;
    z-index: 1;
}

.link-btn svg path {
    fill: #fff;
    transition: 0.3s;
}

.link-btn:hover svg path {
    fill: #66565A;
}

@media(max-width:599px) {
    .link-btn {
        font-size: 16px;
        line-height: 2.09;
        letter-spacing: 0.03em;
        color: #fff;
        padding: 8px 24px;
    }
}  */



/*--------------- 
mv
------------------*/
.mv {
    position: relative;
}

/* mv背景画像 */
.mv__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}

/* MVファーストビュー */
.mv__top-content {
    /* height: 100vh; */
    padding-top: 200px;
    padding-bottom: 20px;
    margin-bottom: 50px;
    position: relative;
}

.swiper-wrapper {
    /* スライドの動き等速 */
    transition-timing-function: linear;
    align-items: center;
}

/* スライドサイズの調整 */
.swiper-slide {
    width: fit-content;
}

.swiper-slide.bottom-mv-img {
    align-self: flex-end;
}

.swiper-slide.bottom-center-mv-img {
    align-self: flex-end;
    margin-bottom: 90px;
}

/* 画像のサイズ調整 */
.swiper-slide img {
    height: auto;
    width: 100%;
    max-width: 460px;
}

/* 大きめの画像 */
.swiper-slide.large-mv-img img {
    height: auto;
    width: 100%;
    max-width: 685px;
}

.mv__head-wrapper {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 1;
    width: 82%;
    max-width: 1400px;
}

/* mv見出しテキスト */
.mv__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 40px;
    line-height: 1.5;
    letter-spacing: 0.02em;
    color: #66565A;
    background-color: #FFFFFF;
    padding: 10px;
    margin-bottom: 8px;
    width: fit-content;
}

.mv__bottom-content {
    display: flex;
    justify-content: flex-end;
    padding-bottom: 290px;
}

.mv__bottom-wrapper {
    position: relative;
    width: 82%;
    max-width: 1400px;
    display: flex;
    justify-content: flex-end;
    gap: 24px;
}

.mv__text {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0.025em;
    color: #66565A;
}

.mv__sub-img {
    position: absolute;
    bottom: -60px;
    left: -80px;
    max-width: 600px;
}

.mv__sub-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mv__main-img {
    flex: 1;
    height: 380px;
}

.mv__main-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 40px 0 0 40px;
}

.mv__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: 100px;
    line-height: 1;
    letter-spacing: 0em;
    color: #E8DABE;
    opacity: 0.4;
    mix-blend-mode: multiply;
    position: absolute;
    bottom: -40%;
    left: -80px;
}

@media (max-width:1129px) {
    .mv__bottom-text {
        bottom: -65%;
    }
}

@media (max-width:959px) {

    /* MVファーストビュー */
    .mv__top-content {
        /* height: 100vh; */
        padding-top: 100px;
        padding-bottom: 100px;
        margin-bottom: 17px;
    }

    .mv__bottom-content {
        padding-bottom: 100px;
    }

    /* 画像のサイズ調整 */
    .swiper-slide img {
        max-width: 335px;
    }

    /* 大きめの画像 */
    .swiper-slide.large-mv-img img {
        max-width: 450px;
    }

    /* mv見出しテキスト内包要素 */
    .mv__head-wrapper {
        width: 95%;
    }

    /* mv見出しテキスト */
    .mv__head {
        font-size: 30px;
        line-height: 1.67;
        letter-spacing: 0.025em;
        margin-bottom: 8px;
    }

    .mv__bottom-wrapper {
        width: 95%;
        gap: 16px;
        flex-direction: column;
    }

    .mv__text {
        font-size: 18px;
        line-height: 1.75;
        letter-spacing: 0.03em;
    }

    .mv__main-img {
        height: auto;
        max-height: 350px;
        padding-left: 5%;
    }

    .mv__sub-img {
        position: static;
        max-width: none;
        width: 95%;
    }

    .mv__bottom-text {
        font-size: 70px;
        bottom: 0;
        left: 0;
    }

}


@media (max-width:599px) {

    /* 画像のサイズ調整 */
    .swiper-slide img {
        max-width: 225px;
    }

    /* 大きめの画像 */
    .swiper-slide.large-mv-img img {
        max-width: 335px;
    }

    /* mv見出しテキスト */
    .mv__head {
        font-size: 24px;
    }

    .mv__bottom-wrapper {
        gap: 8px;
    }

    .mv__text {
        font-size: 16px;
    }

    .mv__main-img {
        max-height: 250px;
    }

    .mv__bottom-text {
        font-size: 40px;
        bottom: 0;
        left: 0;
        translate: 0 50%;
    }
}

@media (max-width:480px) {
    .mv__bottom-text {
        font-size: 32px;
    }
}

@media (max-width:375px) {

    /* mv見出しテキスト */
    .mv__head {
        font-size: 22px;
    }
}

/*--------------- 
promise
------------------*/

/* セクション表示領域 */
.promise {
    width: 100%;
    position: relative;
    padding-bottom: 140px;
}

/* セクション背景画像 */
.promise__bg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 65%;
    object-fit: cover;
    z-index: -1;
}

/* セクションラッパー */
.promise__wrapper {
    width: 95%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 160px 40px;
    background-color: #fff;
    position: relative;
}

/* 見出し要素ラッパー */
.promise__head-wrapper {
    margin-bottom: 64px;
}

/* サブ見出し */
.promise__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #65AC91;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.promise__sub-head::before {
    content: "PROMISE";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
}

/* 見出し画像 */
.promise__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.promise__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.promise__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.promise__head-line {
    width: 50px;
    height: 1px;
    background-color: #65AC91;
    text-align: center;
    display: block;
    margin: 0 auto;
}



/*----------- 上部コンテンツ専用 ---------------- */

/* コンテンツ内包要素 */
.promise__content.first-content {
    display: flex;
    position: relative;
    gap: 10px;
    margin-bottom: 80px;
}

/* コンテンツ見出しラッパー */
.first-content .promise__content-head-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
    position: absolute;
    top: 0;
    left: 0;
    width: 71%;
    max-width: 745px;
}

/* コンテンツナンバー */
.first-content .promise__num {
    font-family: "Lora";
    font-weight: 400;
    font-style: Italic;
    font-size: 40px;
    line-height: 1;
    letter-spacing: 0.03em;
    color: #66565A;
}

/* コンテンツライン */
.first-content .promise__content-line {
    display: inline-block;
    flex: 1;
    height: 1px;
    background-color: #66565A;
}

/* コンテンツ見出し */
.first-content .promise__content-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-decoration: underline;
    text-decoration-thickness: 0.5em;
    text-decoration-color: #DFE9DF;
    text-underline-offset: -0.2em;
    text-decoration-skip-ink: none;
    white-space: nowrap;
}

/* コンテンツテキスト */
.first-content .promise__content-text {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.09;
    letter-spacing: 0.03em;
    color: #66565A;
    margin-top: 80px;
}

/* コンテンツ画像 */
.first-content .promise__content-img {
    display: block;
    object-fit: cover;
    width: 62%;
    flex: 1;
}

/*----------- /上部コンテンツ専用 ---------------- */




/*----------- 下部コンテンツ専用 ---------------- */
/* 複数コンテンツ内包要素 */
.promise__container {
    display: flex;
    gap: 5%;
}

/* 複数コンテンツ個別幅 */
.promise__container .promise__content {
    width: 30%;
}

/* 複数コンテンツ表示場所 */
.promise__container .promise__content:first-of-type {
    translate: 0 -30%;
}

/* 複数コンテンツ表示場所 */
.promise__container .promise__content:nth-of-type(3) {
    translate: 0 15%;
}

/* コンテンツ見出しラッパー */
.promise__container .promise__content-head-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
    translate: 0 -25%;
}

/* コンテンツナンバー */
.promise__container .promise__num {
    font-family: "Lora";
    font-weight: 400;
    font-style: Italic;
    font-size: 24px;
    line-height: 1.51;
    letter-spacing: 0.03em;
    color: #66565A;
}

/* コンテンツライン */
.promise__container .promise__content-line {
    position: relative;
    display: inline-block;
    flex: 1;
    height: 1px;
    background-color: transparent;
}

.promise__container .promise__content:nth-of-type(1) .promise__content-line:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #66565A;
}

.promise__container .promise__content:nth-of-type(2) .promise__content-line:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 150%;
    height: 1px;
    background-color: #66565A;
}

.promise__container .promise__content:nth-of-type(3) .promise__content-line:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 120%;
    height: 1px;
    background-color: #66565A;
}

/* コンテンツ見出し */
.promise__container .promise__content-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 24px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #66565A;
    text-align: right;
    text-decoration: underline;
    text-decoration-thickness: 0.5em;
    text-decoration-color: #DFE9DF;
    text-underline-offset: -0.2em;
    text-decoration-skip-ink: none;
    translate: 0 -30%;
}

/* コンテンツテキスト */
.promise__container .promise__content-text {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.09;
    letter-spacing: 0.03em;
    color: #66565A;
    translate: 0 -30px;
}

/*----------- /下部コンテンツ専用 ---------------- */


/* セクション下部テキスト */
.promis__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: clamp(80px, 8vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    color: #DFE9DF;
    opacity: 0.4;

    position: absolute;
    left: 30px;
    bottom: 30px;

}

@media (max-width:1150px) {
    .promise__container .promise__content-head {
        font-size: 20px;
    }
}


@media (max-width:959px) {
    .promise {
        padding-bottom: 100px;
    }

    .promise__wrapper {
        max-width: 80%;
        padding: 40px 40px;
    }

    /* セクション背景画像 */
    .promise__bg {
        height: 85%;
    }

    .promise__head {
        font-size: 28px;
    }

    .promise__sub-head::before {
        font-size: 56px;
    }

    .promise__content.first-content {
        flex-direction: column-reverse;
        max-width: 600px;
        margin: 0 auto;
    }

    .first-content .promise__content-head-wrapper {
        align-items: flex-end;
        gap: 8px;
        position: static;
        width: 90%;
        order: 2;
        translate: 0 -25%;
        align-items: center;
        margin: 0 auto;
    }

    .first-content .promise__num,
    .promise__container .promise__num {
        font-size: 40px;
        line-height: 1.51;
    }

    .promise__content-line {
        display: inline-block;
        flex: 1;
        height: 1px;
        background-color: #66565A;
    }

    .first-content .promise__content-head,
    .promise__container .promise__content-head {
        font-size: 30px;
        line-height: 1.67;
        letter-spacing: 0.025em;
        text-align: right;
        translate: 0 -30%;
    }

    .first-content .promise__content-text,
    .promise__container .promise__content-text {
        max-width: none;
        order: 1;
        width: 90%;
        margin: 0 auto;
        translate: 0 -40px;
    }

    .first-content .promise__content-img,
    .promise__container .promise__content-img {
        order: 3;
        width: 90%;
        margin: 0 auto;
        display: block;
    }

    /* 複数コンテンツ内包要素 */
    .promise__container {
        flex-direction: column;
        gap: 24px;
    }

    /* 複数コンテンツ個別幅 */
    .promise__container .promise__content {
        width: 100%;
        max-width: 600px;
        margin: 0 auto;
    }

    /* 複数コンテンツ表示場所 */
    .promise__container .promise__content:first-of-type {
        translate: 0 0;
    }

    /* 複数コンテンツ表示場所 */
    .promise__container .promise__content:nth-of-type(3) {
        translate: 0 0;
    }

    /* コンテンツ見出しラッパー */
    .promise__container .promise__content-head-wrapper {
        width: 90%;
        margin: 10px auto;
        gap: 8px;
    }

    .promise__container .promise__content:nth-of-type(1) .promise__content-line:before {
        width: 100%;
    }

    .promise__container .promise__content:nth-of-type(2) .promise__content-line:before {
        width: 120%;
    }

    .promise__container .promise__content:nth-of-type(3) .promise__content-line:before {
        width: 110%;
    }

    /* セクション下部テキスト */
    .promis__bottom-text {
        font-size: clamp(20px, 7vw, 30px);
        color: #E8DABE;
        opacity: 0.6;
        mix-blend-mode: multiply;
        position: absolute;
        left: 0px;
        bottom: -70px;
    }
}

@media (max-width:699px) {

    .first-content .promise__content-head,
    .promise__container .promise__content-head {
        font-size: 28px;
    }
}

@media (max-width:599px) {
    .promise {
        padding-bottom: 85px;
    }

    .promise__wrapper {
        max-width: 95%;
        padding: 40px 30px;
    }

    .promise__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .promise__sub-head::before {
        font-size: 48px;
    }

    .first-content .promise__num,
    .promise__container .promise__num {
        font-size: 24px;
    }

    .first-content .promise__content-head,
    .promise__container .promise__content-head {
        font-size: 24px;
    }

    .first-content .promise__content-img,
    .promise__container .promise__content-img {
        width: 100%;
    }

    .first-content .promise__content-text,
    .promise__container .promise__content-text {
        width: 100%;
    }

    .first-content .promise__content-head-wrapper,
    .promise__container .promise__content-head-wrapper {
        width: 100%;
        translate: 0 -20px;
    }

    @media (max-width:399px) {
        .promise__wrapper {
            padding: 40px 20px;
        }

        .first-content .promise__num,
        .promise__container .promise__num {
            font-size: 20px;
        }

        .first-content .promise__content-head,
        .promise__container .promise__content-head {
            font-size: 20px;
        }
    }
}

/*--------------- 
situation
------------------*/
/* 最上位要素 */
.situation {
    width: 100%;
    position: relative;
    padding: 180px 20px 140px 20px;
}

/* 下部背景色 */
.situation__color-box {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 32%;
    background-color: #DFE9DF;
    z-index: -1;
}

/* セクション背景画像 */
.situation__bg {
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
    width: 40%;
    height: 68%;
    object-fit: cover;
}

/* ラッパー要素 */
.situation__wrapper {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

/* 見出し要素ラッパー */
.situation__head-wrapper {
    margin-bottom: 65px;
}

/* サブ見出し */
.situation__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #95CEB8;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.situation__sub-head::before {
    content: "SITUATION";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
    white-space: nowrap;
}

/* 見出し画像 */
.situation__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.situation__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.situation__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.situation__head-line {
    width: 50px;
    height: 1px;
    background-color: #95CEB8;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* リンク内包要素 */
.situation__content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 24px;
}

/* リンク */
.situation__link {
    display: flex;
    align-items: center;
    padding: 8px;
    background: linear-gradient(90deg, #A4CBCC 0%, #95CEB8 100%);
	background: linear-gradient(90deg, #91CFC8 0%, #7EBDA5 100%);
    transition: 0.3s;
    position: relative;
    z-index: 1;
}

/* リンクホバー時 */
.situation__link:hover {
    background: linear-gradient(90deg, #95CEB8 0%, #95CEB8 100%);
}

.situation__link::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: #00000033;
    transition: 0.3s;
    opacity: 0;
    z-index: -1;
}

.situation__link:hover::before {
    opacity: 1;
}

/* リンクアイコン */
.situation__link img {
    display: block;
    max-width: 55px;
    object-fit: cover;
}

/* リンクテキスト */
.situation__link-text {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0.025em;
    color: #FFFFFF;
    margin-left: 16px;
    flex: 1;
}

/* セクション下テキスト */
.situation__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: clamp(80px, 8vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    color: #95CEB8;
    mix-blend-mode: multiply;
    opacity: 0.2;
    position: absolute;
    left: 2%;
    bottom: 30px;
    z-index: -1;
}

@media(max-width:959px) {
    .situation {
        padding: 90px 20px;
    }

    .situation__bg {
        height: 30%;
        width: 45%;
        object-position: right;
    }

    .situation__head {
        font-size: 28px;
    }

    .situation__sub-head::before {
        font-size: 56px;
    }

    .situation__head-wrapper {
        margin-bottom: 24px;
    }

    .situation__link {
        flex-direction: column;
        gap: 8px;
    }

    /* リンクテキスト */
    .situation__link-text {
        font-size: 16px;
        line-height: 1.71;
        letter-spacing: 0.03em;
        text-align: center;
        margin-left: 0;
        flex: auto;
    }

    .situation__bottom-text {
        font-size: clamp(30px, 7vw, 40px);
        left: 0;
        bottom: 10px;
        width: 100%;
        padding: 0 20px;
    }

    .situation__link svg {
        width: 7px;
    }
}

@media(max-width:599px) {

    .situation__bg {
        height: 20%;
    }

    .situation__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .situation__sub-head::before {
        font-size: 37px;
    }

    /* リンク内包要素 */
    .situation__content {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(6, 1fr);
        gap: 16px;
    }

    .situation__link-text {
        font-size: 14px;
    }

    .situation__bottom-text {
        bottom: 1%;
    }
}

/*--------------- 
worries
------------------*/
/* 最上位要素 */
.worries {
    width: 100%;
    position: relative;
    padding: 140px 20px;
}

/* セクション背景色 */
.worries__bg {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 30%;
    background-color: #587AA3;
    z-index: -2;
    opacity: 0.5;
}

/* セクション背景画像 */
.worries__bg-img {
    position: absolute;
    left: 0;
    bottom: 94px;
    width: 42%;
    height: 621px;
    z-index: -1;
}

.worries__bg-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 0 60px 60px 0;
    box-shadow: 0px 0px 20px 0px #D4E1E9;
}

/* 見出し要素ラッパー */
.worries__head-wrapper {
    margin-bottom: 64px;
}

/* サブ見出し */
.worries__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #587AA3;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.worries__sub-head::before {
    content: "WORRIES";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
}

/* 見出し画像 */
.worries__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.worries__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.worries__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.worries__head-line {
    width: 50px;
    height: 1px;
    background-color: #587AA3;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* ラッパー要素 */
.worries__wrapper {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

/* コンテンツ内包要素 */
.worries__container {
    width: 74%;
    margin-left: auto;
}

/* コンテンツ本体 */
.worries__content {
    display: flex;
    align-items: center;
    gap: 0;
    width: 100%;
    height: 155px;
    border: 2px solid #587AA3;
    box-shadow: 0px 4px 4px 0px #00000040;
    border-radius: 16px;
    background-color: #fff;
    margin-bottom: 24px;
    transition: 0.3s;
}

/* ホバー時 */
.worries__content:hover {
    opacity: 0.5;
}

/* コンテンツ見出し */
.worries__subject {
    font-family: "Shippori Mincho B1";
    font-weight: 800;
    font-size: 40px;
    line-height: 1;
    letter-spacing: 0em;
    color: #66565A;
    padding: 23px 23px 23px 34px;
}

.worries__subject span {
    font-size: 48px;
    color: #587AA3;
    line-height: 1.5;
}

.worries__content:nth-of-type(2) {
    border-color: #65AC91;
}

.worries__content:nth-of-type(2) .worries__subject span {
    color: #65AC91;
}

/* コンテンツ画像 */
.worries__content img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    flex: 1;
    border-radius: 0 16px 16px 0;
}

/* サブコンテンツ内包要素 */
.worries__outer {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

/* サブコンテンツ */
.worries__item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    position: relative;
    z-index: 1;
    padding: 16px;
    width: 25%;
    transition: 0.3s;
}

/* サブコンテンツ背景色 */
.worries__item::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #587AA3;
    z-index: -1;
    transition: 0.3s;
}

.worries__item:hover:before {
    background-color: #1E3A68;
}

/* サブコンテンツ背景画像 */
.worries__item::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url(/wp-content/uploads/2026/04/ae52832f010b966a80ea53f8a2da6495333764a2.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.2;
    mix-blend-mode: multiply;
    z-index: -1;
}
.worries__item:nth-of-type(2)::after{
	background-image: url(/wp-content/uploads/2026/05/ae276c769d3ab4c6f1f50d236fd53e10705cf9ba-1.webp);
}
.worries__item:nth-of-type(3)::after{
	background-image: url(/wp-content/uploads/2026/05/cc7cec0b837b110893bb2f71a19f5b752e64f913-1.webp);
}
.worries__item:nth-of-type(4)::after{
	background-image: url(/wp-content/uploads/2026/05/40b8d3c663cba4ebbe196c300e2ac828d7518ab0-1.webp);
}

/* サブコンテンツ画像 */
.worries__item img {
    display: block;
    width: 120px;
    height: 120px;
}

/* サブコンテンツテキスト */
.worries__item-text {
    font-family: "Shippori Mincho B1";
    font-weight: 800;
    font-size: 16px;
    line-height: 2.09;
    letter-spacing: 0.03em;
    color: #FFFFFF;
    text-align: center;
}

@media(max-width:1110px) {

    /* コンテンツ見出し */
    .worries__subject {
        font-size: 35px;
    }

    .worries__subject span {
        font-size: 38px;
    }

    .worries__outer {
        gap: 12px;
    }
}

@media(max-width:959px) {

    /* 見出し要素ラッパー */
    .worries__head-wrapper {
        margin-bottom: 40px;
    }

    .worries__head {
        font-size: 28px;
    }

    .worries__sub-head::before {
        font-size: 56px;
    }

    /* コンテンツ内包要素 */
    .worries__container {
        width: 100%;
    }

    /* コンテンツ本体 */
    .worries__content {
        width: 100%;
        height: 155px;
    }

    /* コンテンツ見出し */
    .worries__subject {
        width: 50%;
        font-size: 28px;
        padding: 24px 16px;
    }

    .worries__subject span {
        font-size: 32px;
        line-height: 1.1;
        display: inline-block;
        margin-top: 8px;
    }

    /* サブコンテンツ内包要素 */
    .worries__outer {
        flex-direction: column;
        gap: 16px;
    }

    /* サブコンテンツ */
    .worries__item {
        flex-direction: row;
        width: 100%;
        justify-content: flex-start;
    }

    .worries__item-text {
        flex: 1;
        text-align: left;
    }

    /* コンテンツ画像 */
    .worries__content img {
        width: 50%;
    }
}

@media(max-width:599px) {
    .worries__head-wrapper {
        margin-bottom: 25px;
    }

    /* セクション背景色 */
    .worries__bg {
        height: 25%;
    }

    .worries__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .worries__sub-head::before {
        font-size: 48px;
    }

    /* コンテンツ見出し */
    .worries__subject {
        font-size: 20px;
    }

    .worries__subject span {
        font-size: 24px;
    }

    /* サブコンテンツ画像 */
    .worries__item img {
        display: block;
        width: 72px;
        height: 72px;
    }
}

/*--------------- 
message
------------------*/
/* 最上位要素 */
.message {
    width: 100%;
    position: relative;
    padding: 140px 20px;
}

/* セクション背景 */
.message__bg {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: -1;
}

.message__bg.smart-only {
    display: none;
}

@media(max-width:1120px) {
    .message__bg {
        object-fit: none;
    }
}

/* ラッパー要素 */
.message__wrapper {
    max-width: 754px;
    width: 100%;
    margin: 0 auto;
    background-color: #FFFFFFE5;
    border-radius: 40px;
    padding: 82px 40px 40px 40px;
}

/* 見出し要素ラッパー */
.message__head-wrapper {
    margin-bottom: 24px;
}

/* サブ見出し */
.message__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #587AA3;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.message__sub-head::before {
    content: "MESSAGE";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
}

/* 見出し画像 */
.message__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.message__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.message__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.message__head-line {
    width: 50px;
    height: 1px;
    background-color: #587AA3;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* メッセージテキスト */
.message__text {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #66565A;
    margin-bottom: 24px;
}

/* メッセージテキストアンダーライン */
.message__text span {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0.025em;
    color: #66565A;
    text-decoration: underline;
    text-decoration-thickness: 0.5em;
    text-decoration-color: #D4E1E9;
    text-underline-offset: -0.2em;
    text-decoration-skip-ink: none;
}

/* 弁護士情報内包要素 */
.message__outer {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 24px;
    margin-bottom: 24px;
}

/* 事務所名 */
.message__office {
    font-family: "Noto Sans JP";
    font-weight: 400;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.03em;
    color: #66565A;
}

/* 弁護士名 */
.message__name {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1;
    letter-spacing: 0.02em;
    color: #66565A;
}

/* セクション下テキスト */
.message__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: clamp(80px, 8vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    color: #E8DABE;
    opacity: 0.4;
    mix-blend-mode: soft-light;
    position: absolute;
    bottom: 24px;
    left: 2.5%;
    z-index: -1;
}

@media(max-width:959px) {
    .message__bg {
        object-position: 30% 100%;
    }

    .message__head {
        font-size: 28px;
    }

    .message__sub-head::before {
        font-size: 56px;
    }
}

@media(max-width:599px) {

    /* 最上位要素 */
    .message {
        padding: 80px 20px;
    }

    .message__bg {
        object-fit: cover;
        object-position: 30% top;
    }

    .message__bg.smart-only {
        display: block;
    }

    .message__bg.pc-tab-only {
        display: none;
    }

    /* ラッパー要素 */
    .message__wrapper {
        padding: 40px 30px;
    }

    .message__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .message__sub-head::before {
        font-size: 48px;
    }

    /* メッセージテキスト */
    .message__text {
        font-size: 14px;
        line-height: 1.71;
        margin-bottom: 16px;
    }

    /* メッセージテキストアンダーライン */
    .message__text span {
        font-size: 16px;
        line-height: 1.75;
        letter-spacing: 0.03em;
    }

    /* 弁護士情報内包要素 */
    .message__outer {
        gap: 8px;
    }

    /* 事務所名 */
    .message__office {
        font-size: 14px;
    }

    /* 弁護士名 */
    .message__name {
        font-size: 28px;
    }

    /* セクション下テキスト */
    .message__bottom-text {
        font-size: clamp(24px, 8vw, 28px);
        bottom: 10px;
        left: 20px;
    }
}

/* @media(max-width:399px) {
    .message__bg {
        object-fit: none;
    }
} */

@media(max-width:374px) {
    .message__bg {
        object-fit: none;
    }

    /* ラッパー要素 */
    .message__wrapper {
        padding: 40px 20px;
    }

    /* 弁護士名 */
    .message__name {
        font-size: 22px;
    }
}

/*--------------- 
case
------------------*/
/* 最上位要素 */
.case {
    width: 100%;
    padding: 180px 20px 140px 20px;
    background-color: #fff;
    position: relative;
    z-index: 0;
}

/* 背景画像 */
.case__bg {
    position: absolute;
    top: 27%;
    right: 0;
    z-index: -2;
    display: block;
    width: 90%;
    height: 830px;
    object-fit: cover;
    opacity: 0.4;
    filter: blur(5px);
    border-radius: 60px 0 0 60px;
}

/* 背景画像（反転） */
.case__bg.rev {
    top: initial;
    right: initial;
    bottom: 0;
    left: 0;
    z-index: -1;
    height: 587px;
    transform: rotate(-180deg);
}

/* ラッパー要素 */
.case__wrapper {
    max-width: 946px;
    width: 100%;
    margin: 0 auto;
}

/* 見出し要素ラッパー */
.case__head-wrapper {
    margin-bottom: 65px;
}

/* サブ見出し */
.case__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #95CEB8;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.case__sub-head::before {
    content: "CASE STUDIES";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
    white-space: nowrap;
}

/* 見出し画像 */
.case__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.case__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.case__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.case__head-line {
    width: 50px;
    height: 1px;
    background-color: #95CEB8;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* 事例コンテンツ内包要素 */
.case__container {
    display: grid;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-bottom: 64px;
}

/* 事例コンテンツ */
.case__content {
    background-color: #fff;
    box-shadow: 0px 0px 10px 0px #00000040;
    border-radius: 24px;
    padding: 24px;
    max-width: 461px;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

/* 事例カテゴリー */
.case__cat {
    font-family: "Noto Sans JP";
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    letter-spacing: 0.03em;
    color: #66565A;
    border: 1px solid #66565A;
    padding: 8px 16px;
    border-radius: 999px;
    display: inline-block;
    margin-bottom: 8px;
    width: fit-content;
}

/* 事例タイトル */
.case__title {
    font-family: "Noto Sans JP";
    font-weight: 700;
    font-size: 20px;
    line-height: 1.6;
    letter-spacing: 0.025em;
    color: #65AC91;
    margin-bottom: 10px;
}

/* 事例依頼者 */
.case__person {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 14px;
    line-height: 1;
    letter-spacing: 0.03em;
    color: #99898D;
    display: inline-block;
    margin-bottom: 16px;
}

/* 事例画像 */
.case__img {
    display: block;
    width: 100%;
    aspect-ratio: 413/190;
    object-fit: cover;
    margin-bottom: 16px;
}

/* 事例テキスト */
.case__text {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.03em;
    color: #66565A;
    text-shadow: 0px 0px 10px #00000040;
    margin-bottom: 16px;
    flex: 1;
}

/* 事例結果内包要素 */
.case__outer {
    background-color: #F2F9F2;
    border: 1px solid #65AC91;
    border-radius: 8px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 16px;
}

/* 事例結果ラベル */
.case__result {
    font-family: "Noto Sans JP";
    font-weight: 700;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #fff;
    padding: 4px 8px;
    background-color: #65AC91;
    border-radius: 8px;
    white-space: nowrap;
}

/* 事例結果詳細 */
.case__result-detail {
    font-family: "Inter";
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: -0.15px;
    color: #65AC91;
}

@media(max-width:959px) {


    /* 背景画像 */
    .case__bg {
        top: 15%;
        width: 98%;
        height: 50%;
    }

    /* 背景画像（反転） */
    .case__bg.rev {
        height: 40%;
    }

    .case__head {
        font-size: 28px;
    }

    .case__sub-head::before {
        font-size: 56px;
    }

    /* 事例コンテンツ内包要素 */
    .case__container {
        grid-template-rows: repeat(4, 1fr);
        grid-template-columns: 1fr;
        place-items: center;
        gap: 16px;
        margin-bottom: 24px;
    }

    .case__content {
        max-width: 700px;
    }
}

@media(max-width:599px) {
    .case__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .case__sub-head::before {
        font-size: 37px;
    }

    /* 事例画像 */
    .case__img {
        aspect-ratio: 282/190;
    }
}


/*--------------- 
page-link
------------------*/
/* 最上位要素 */
.page-link {
    width: 100%;
    position: relative;
    padding: 100px 20px;
    z-index: 1;
}

/* 下部背景色 */
.page-link__color-box {
    width: 100%;
    height: 50%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #DFE9DF;
    z-index: -1;
}

/* ラッパー要素 */
.page-link__wrapper {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    gap: 24px;
    justify-content: center;
}

/* リンク本体 */
.page-link__content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 24px 27px;
    position: relative;
    z-index: 1;
    width: 33%;
}

/* リンク背景色 */
.page-link__content::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: #65AC91;
    z-index: -1;
    transition: 0.3s;
}

.page-link__content:hover:before {
    background-color: #518A74;
}

/* リンク背景画像 */
.page-link__content::after {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url(/wp-content/uploads/2026/04/82b134fdab7f5cb95a508ccf8b4d051e91c1e607-1.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    opacity: 0.2;
    mix-blend-mode: multiply;
    z-index: -1;
}
.page-link__content:nth-of-type(2):after{
    background-image: url(/wp-content/uploads/2026/06/6dd9df500e8b36a23268f4028e36989c5fc5ed5a-1-1.webp);
}
.page-link__content:nth-of-type(3):after{
    background-image: url(/wp-content/uploads/2026/06/d2b59badaca5d22159381ef571305da8787036e2-1-1.webp);
}
/* リンク画像 */
.page-link__content img {
    display: block;
    width: 120px;
    height: 120px;
    margin-bottom: 16px;
}

/* リンクタイトルテキスト */
.page-link__title {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 28px;
    line-height: 1.57;
    letter-spacing: 0.02em;
    color: #FFFFFF;
    text-align: center;
    margin-bottom: 4px;
}

/* リンクサブタイトルテキスト */
.page-link__sub-title {
    font-family: "Noto Sans JP";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.08;
    letter-spacing: 0.03em;
    color: #FFFFFF;
    text-align: center;
    display: inline-block;
    margin-bottom: 20px;
}

/* セクション下テキスト */
.page-link__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: clamp(80px, 8vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    color: #DFE9DF;
    mix-blend-mode: multiply;
    opacity: 0.4;
    position: absolute;
    left: 2%;
    bottom: 5px;
    z-index: -1;
}

@media(max-width:959px) {
    .page-link__wrapper {
        flex-direction: column;
        align-items: center;
    }

    .page-link__content {
        width: 100%;
        max-width: 700px;
        margin: 0 auto;
    }

    .page-link__bottom-text {
        font-size: clamp(30px, 7vw, 40px);
        left: 0;
        bottom: 10px;
        width: 100%;
        padding: 0 20px;
    }
}

@media(max-width:599px) {
    .page-link__bottom-text {
        bottom: 1.5%;
    }
}


/*--------------- 
コラム
------------------*/
.column {
    width: 100%;
    position: relative;
    padding: 180px 20px 140px 20px;
}

.column__bg-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    z-index: -5;

    object-position: 90% 95%;

}

.column__bg-img::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(270deg, rgba(247, 245, 237, 0) 0%, #F7F5ED 50.88%);
    z-index: 2;
}

.column__bg-img::after {
    content: "";
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-color: #FAF8F0;
    z-index: 1;
    mix-blend-mode: multiply;
}

.column__bg-img img {
    display: block;
    width: 100%;
    height: 100%;
    opacity: 0.4;
    object-fit: none;
    object-position: 90% 95%;
}

.column__color-box {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 40%;
    background-color: #E8DABE;
}

.column__bottom-text {
    font-family: "Lora";
    font-weight: 400;
    font-size: clamp(80px, 8vw, 100px);
    line-height: 1;
    letter-spacing: 0em;
    color: #FFFFFF;
    opacity: 0.2;
    position: absolute;
    left: 2%;
    bottom: 25px;
    z-index: -1;
}

.column__wrapper {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

/* 見出し要素ラッパー */
.column__head-wrapper {
    margin-bottom: 64px;
}

/* サブ見出し */
.column__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #A2844B;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.column__sub-head::before {
    content: "COLUMN";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #e8dabe75;
    mix-blend-mode: multiply;
}

/* 見出し画像 */
.column__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.column__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.column__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.column__head-line {
    width: 50px;
    height: 1px;
    background-color: #A2844B;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* コラム記事内包要素 */
.column__content {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 24px;
    margin-bottom: 40px;
}

/* コラム記事本体 */
.column__article {
    display: block;
    max-width: 267px;
	
	
	  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  max-width: 267px;
  width: 100%;
	transition:0.3s;
	
	position:relative;
}
.column__article:hover{
	opacity:0.5;
}
/* サムネイル */
.column__article > img {
    display: block;
    width: 100%;
    aspect-ratio: 267/208;
    object-fit: cover;
}

/* コラムテキスト内包要素 */
.column__outer {
    background-color: #fff;
    padding: 16px;
	
	
	  width:100%;
	min-height:143px;
}

/* コラム日付 */
.column__day {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

/* コラム日付テキスト */
.column__day-text {
    font-family: "Noto Sans JP";
    font-weight: 700;
    font-size: 14px;
    line-height: 1.71;
    letter-spacing: 0.03em;
    color: #A2844B;
}

/* コラムタイトル */
.column__title {
    font-family: "Noto Sans JP";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.08;
    letter-spacing: 0.03em;
    color: #63585B;
	    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

@media(max-width:959px) {
    .column {
        padding: 120px 20px 95px 20px;
    }

    .column__content {
        flex-direction: column;
        gap: 16px;
    }

    .column__article {
        max-width: 700px;
    }

    /* サムネイル */
    .column__thumbnail {
        aspect-ratio: 360/208;
    }

    .column__head {
        font-size: 28px;
    }

    .column__sub-head::before {
        font-size: 56px;
    }

    .column__color-box {
        height: 20%;
    }

    .column__bottom-text {
        font-size: clamp(30px, 7vw, 40px);
        left: 0;
        bottom: 10px;
        width: 100%;
        padding: 0 20px;
    }

    .column__bg-img img {
        object-position: 90% -40%;
    }
}

@media(max-width:599px) {
    .column__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .column__sub-head::before {
        font-size: 48px;
    }
}


/*--------------- 
access
------------------*/
/* 最上位要素 */
.access {
    width: 100%;
    position: relative;
    padding: 180px 20px 140px 20px;

}

/* 上部背景画像 */
.access__top-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 45%;
    height: 30%;
    object-fit: cover;
    z-index: -1;
}

/* 下部背景画像 */
.access__bottom-bg {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 70%;
    object-fit: cover;
}

/* 下部背景色 */
.access__color-box {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 25%;
    background-color: #587AA3;
    z-index: -1;
}


/* ラッパー要素 */
.access__wrapper {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
}

/* 見出し要素ラッパー */
.access__head-wrapper {
    margin-bottom: 65px;
}

/* サブ見出し */
.access__sub-head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 16px;
    line-height: 1.75;
    letter-spacing: 0.03em;
    color: #587AA3;
    text-align: center;
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

/* 英語見出し */
.access__sub-head::before {
    content: "ACCESS";
    position: absolute;
    z-index: 3;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 64px;
    line-height: 1.67;
    letter-spacing: 0.025em;
    color: #FAF8F0;
    mix-blend-mode: multiply;
    white-space: nowrap;
}

/* 見出し画像 */
.access__head-img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
}

.access__head-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* メイン見出し */
.access__head {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #66565A;
    text-align: center;
    margin-bottom: 16px;
}

/* 見出しアンダーライン */
.access__head-line {
    width: 50px;
    height: 1px;
    background-color: #587AA3;
    text-align: center;
    display: block;
    margin: 0 auto;
}

/* コンテンツ内包要素 */
.access__container {
    position: relative;
    background-color: #fff;
    padding: 64px 40px;
    z-index: 10;
}

/* 事務所名 */
.access__office-name {
    font-family: "Shippori Mincho B1";
    font-weight: 500;
    font-size: 34px;
    line-height: 1.53;
    letter-spacing: 0.02em;
    color: #587AA3;
    margin-bottom: 32px;
}

/* コンテンツ詳細 */
.access__content {
    display: flex;
    gap: 24px;
    margin-bottom: 32px;
}

.access__list {
    width: 50%;
}

/* コンテンツリスト要素 */
.access__list li {
    display: flex;
    gap: 24px;
    padding: 24px 0;
    border-bottom: 1px solid #D9D3D4;
}

.access__list li:last-of-type {
    border-bottom: none;
}

/* リスト見出し */
.access__item {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.09;
    letter-spacing: 0.03em;
    color: #66565A;
    width: 90px;
    white-space: nowrap;
}

/* リスト詳細 */
.access__detail {
    font-family: "Shippori Mincho B1";
    font-weight: 400;
    font-size: 16px;
    line-height: 2.09;
    letter-spacing: 0.03em;
    color: #66565A;
    flex: 1;
}

.access__outer {
    flex: 1;
}

/* アクセスリストアイテム */
.access__outer .access__detail {
    display: block;
    position: relative;
    padding-left: 1em;
}

/* リストアイテムサークル */
.access__outer .access__detail::before {
    content: "";
    position: absolute;
    top: 0.8em;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #D4E1E9;
}

/* コンテンツ下画像 */
.access__content-bg {
    display: block;
    position: absolute;
    bottom: 10px;
    left: 0;
    z-index: -1;
    aspect-ratio: 463/294;
    max-width: 463px;
}


.access__img-map {
    width: 50%;
}

/* アクセス画像 */
.access__img {
    display: block;
    width: 100%;
    object-fit: cover;
    aspect-ratio: 517/407;
    margin-bottom: 32px;
}

.access__map {
    width: 100%;
    aspect-ratio: 518/307;
}

.access__map iframe {
    width: 100%;
    height: 100%;
}


@media(max-width:959px) {

    .access {
        padding: 90px 20px 60px 20px;
    }

    .access__top-bg {
        width: 100%;
    }

    .access__color-box {
        height: 40%;
    }

    .access__head {
        font-size: 28px;
    }

    .access__sub-head::before {
        font-size: 56px;
    }

    .access__head-wrapper {
        margin-bottom: 24px;
    }

    .access__office-name {
        font-size: 30px;
        line-height: 1.57;
        margin-bottom: 16px;
        text-align: center;
    }

    .access__content {
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 16px;
        margin-bottom: 32px;
    }

    .access__list {
        width: 100%;
    }

    .access__list li {
        display: flex;
        gap: 0;
        padding: 8px 0;
    }


    .access__img-map {
        width: 100%;
    }
}

@media(max-width:599px) {
    .access__head {
        font-size: 24px;
        line-height: 1.67;
        letter-spacing: 0.025em;
    }

    .access__sub-head::before {
        font-size: 37px;
    }

    .access__office-name {
        font-size: 28px;
    }

    .access__container {
        padding: 32px 24px;
    }

    .access__note {
        font-size: 14px;
        line-height: 1.71;
        display: inline-block;
    }

    .access__outer .access__detail {
        font-size: 14px;
        line-height: 1.71;
    }

    .access__outer .access__detail::before {
        top: 0.6em;
        width: 8px;
        height: 8px;
    }

    .access__img {
        margin-bottom: 16px;
    }
}