@charset "utf-8";
/*ベース_______________________________________*/
body {
    position: relative;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 16px;
    letter-spacing: .07em;
    line-height: 1.7;
    font-feature-settings: "palt";
    color: #333;
}
img {
    width: 100%;
    max-width: 100%;
    height: auto;
}
body.menu_open {
    position: fixed;
    width: 100%;
    height: 100svh;
    height: 100vh;
}
.font_Serif {
    font-family: "Noto Serif JP", serif;
}
.font_crimson {
    font-family: "Crimson Text", serif;
}
.font_benne {
    font-family: "Benne", serif;
}
.font_corinthia {
    font-family: "Corinthia", cursive;
}
/*ヘッダー_______________________________________*/
.block_header {
    width: 100%;
    z-index: 99999;
    top: 0;
    left: 0;
    background-color: rgba(255, 255, 255, .8);
}
/*.block_header.on {
    background-color: rgba(255, 255, 255, .8);
	position: fixed;
	transition: .7s;
}*/
.block_header .header_inner {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 16.25px min(calc(40 /1920 * 100vw), 40px);
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: .3s;
}
/*@media screen and (max-width:1024px) {
    .block_header .header_inner,
	.block_header.on .header_inner {
        background-color: rgba(0, 0, 0, 0);
    }
}*/
.block_header .header_inner h1 {
    width: 600px;
}
@media screen and (max-width:1280px) {
	.block_header {
    position: fixed;
}
    .block_header .header_inner h1 {
        width: 432px;
    }
}
@media screen and (max-width:767px) {
    .block_header .header_inner h1 {
        width: min(calc(327 / 390 * 100vw), 327px);
    }
}
/*ヘッダー メニュー_______________________________________*/
.box_menu {}
@media screen and (max-width:1024px) {
    .box_menu {
        position: absolute;
        top: 0;
        left: 0;
        height: 100svh;
        height: 100vh;
        width: 100%;
        transform: translateX(-100%);
        overflow: hidden;
        transition: .3s;
        opacity: 0;
        background-color: rgba(255, 0, 0, .8);
        ff0000
    }
}
.box_menu.open {
    transform: translateX(0);
    opacity: 1;
}
.box_menu ul {
    display: flex;
    align-items: center;
    gap: 16px;
}
@media screen and (max-width:1024px) {
    .box_menu ul {
        height: 100%;
        justify-content: center;
        flex-flow: column;
    }
}
.box_menu ul li {
    margin-right: 0;
}
@media screen and (max-width:1024px) {
    .box_menu ul li {
        width: 100%;
        text-align: center;
        margin: 0 0 30px;
    }
}
.box_menu ul li a {
    display: block;
    width: fit-content;
    padding: 0 8px 8px;
    position: relative;
}
@media screen and (max-width:1024px) {
    .box_menu ul li a {
        width: fit-content;
        margin: 0 auto;
        color: #fff;
    }
}
.box_menu ul li a::after {
    content: "";
    display: block;
    position: absolute;
    background-color: #ff0000;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    transition: .3s;
    opacity: 0;
}
.box_menu ul li a.is_on::after, .box_menu ul li a:hover::after {
    opacity: 1;
}
@media screen and (max-width:1024px) {
    .box_menu ul li a::after {
        background-color: #fff;
    }
}
/*ヘッダー ハンバーガーメニュー ボタン*/
.btn_menu {
    display: none;
    position: relative;
    background: #ff0000;
    cursor: pointer;
    width: 50px;
    height: 50px;
    border-radius: 5px;
}
@media screen and (max-width:1024px) {
    .btn_menu {
        display: flex;
    }
}
.btn_menu span {
    display: inline-block;
    transition: all .4s; /*アニメーションの設定*/
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background: #fff;
    width: 45%;
}
.btn_menu span:nth-of-type(1) {
    top: 15px;
}
.btn_menu span:nth-of-type(2) {
    top: 23px;
}
.btn_menu span:nth-of-type(3) {
    top: 31px;
}
.btn_menu.open span:nth-of-type(1) {
    top: 18px;
    left: 14px;
    transform: translateY(6px) rotate(-45deg);
    /* width: 30%;*/
}
.btn_menu.open span:nth-of-type(2) {
    opacity: 0; /*真ん中の線は透過*/
}
.btn_menu.open span:nth-of-type(3) {
    top: 30px;
    left: 14px;
    transform: translateY(-6px) rotate(45deg);
    /*width: 30%;*/
}
/*フッター_______________________________________*/
.block_footer {
    overflow: hidden;
    padding-top: 84px;
    background-color: #fff;
}
.block_footer .footer_inner {}
.block_footer .footer_logo {
    max-width: 686px;
    margin: 0 auto 68px;
}
.block_footer .unit_data {
    display: flex;
    justify-content: space-between;
    margin-bottom: 96px;
}
.block_footer .unit_data .box_img {
    width: 69.375%;
    margin-left: -24.922%;
}
.block_footer .unit_data .box_data {
    width: 50%;
    display: flex;
    flex-flow: column;
    gap: 30px;
}
.block_footer .unit_data .box_data h3 {
    font-family: "Noto Serif JP";
    font-size: 24px;
    font-style: normal;
    font-weight: 300;
    line-height: 100%;
    letter-spacing: .08em;
    border-bottom: 1px solid #BB9C50;
    padding-bottom: .583em;
    margin-bottom: 1em;
}
.block_footer .reservation {}
.block_footer .box_reservation {
    display: flex;
    justify-content: space-between;
}
.block_footer .reservation .btn00 {
    position: relative;
    z-index: 0;
    width: 48.75%;
    height: 3.667em;
    color: #FFF;
    font-family: "Noto Serif JP";
    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: .16em;
    display: flex;
    align-items: center;
    justify-content: center;
}
.block_footer .reservation .btn00::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #666;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.block_footer .reservation .btn00.btn_web::before {
    background-color: #333;
}
.block_footer .reservation .btn00::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: rgba(255, 255, 255, .2);
    top: 0;
    right: 0;
    width: 53.9%;
    height: 100%;
    clip-path: polygon(40px 0, 100% 0, 100% 100%, 0% 100%);
}
.block_footer .reservation .btn00 .dec01 {
    display: flex;
    gap: .25em;
}
.block_footer .reservation .btn00 .dec01::before {
    content: "";
    display: block;
    background-image: url("../image/icon_phone.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: .7083em;
    aspect-ratio: 17 / 25;
}
.block_footer .hours {}
.block_footer .hours .house_inner {
    padding: 8px;
    background: linear-gradient(30deg, #C7B980 0%, #E1D5AD 43%, #F4EACF 100%);
    border-radius: 4px;
}
.block_footer .hours .box_hours {
    padding: 18px 24px;
    background-color: #fff;
    border-radius: 4px;
    font-size: 15px;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0.75px;
    letter-spacing: .05em;
}
.block_footer .hours .box_hours > div {
    display: flex;
    justify-content: space-between;
    padding-bottom: 8px;
    border-bottom: 1px solid #ddd;
}
.block_footer .hours .box_hours > div + div {
    margin-top: 17px;
}
.block_footer .hours .box_hours dt {
    width: 164px;
    text-align: center;
    font-weight: 400;
}
.block_footer .hours .box_hours .time dt {
    font-size: 1.2667em;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0.95px;
}
.block_footer .hours .box_hours dd {
    width: 3em;
    text-align: center;
}
.block_footer .access .box_images {
    display: flex;
    gap: 1.6em;
    text-align: center;
    font-size: 15px;
    font-weight: normal;
    line-height: 150%;
    letter-spacing: .05em;
    margin-top: 1.467em;
}
.block_footer .access .box_images > * {
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    height: 5.867em;
}
.block_footer .access .box_images .eki {
    width: 16.25%;
    background-color: #333333;
    gap: .348em;
    clip-path: polygon(0 0, 80% 0, 100% 50%, 80% 100%, 0 100%);
    margin-right: .033em;
    color: #FFF;
    font-weight: 700;
}
.block_footer .access .box_images .eki img {
    width: 24.03%;
}
.block_footer .access .box_images .deguchi {
    width: 32.5%;
    background-color: #D4BDC7;
}
.block_footer .map {
    position: relative;
    z-index: 1;
    height: 336px;
    margin-bottom: -176px;
}
.block_footer .access .map iframe {
    height: 100%;
}
.block_footer small {
    position: relative;
    z-index: 0;
    display: flex;
    flex-flow: column;
    align-items: center;
    background: #333;
    padding: 209px 0 39px;
    color: #FFF;
    text-align: center;
    font-family: "Crimson Text";
    font-size: 16px;
    font-style: italic;
    font-weight: 400;
    line-height: 150%; /* 24px */
    letter-spacing: 0.8px;
}
.block_footer small .dec01 {
    position: relative;
    z-index: 0;
    padding-bottom: 1.375em;
    margin-bottom: 1.1875em;
    letter-spacing: 0;
}
.block_footer small .dec01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #fff;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1.067em;
    height: 1px;
}
@media screen and (max-width:1200px) {
    .block_footer {
        padding-top: 82px;
    }
    .block_footer .block_inner {
        max-width: 83.334%;
    }
    .block_footer .footer_logo {
        max-width: 80.31%;
        margin: 0 auto 64px;
    }
    .block_footer .unit_data {
        flex-flow: column;
        gap: 50px;
        margin-bottom: 55px;
    }
    .block_footer .unit_data .box_img {
        width: 100%;
        margin-left: 0;
    }
    .block_footer .unit_data .box_data {
        width: 100%;
        gap: 32px;
    }
    .block_footer .map {
        width: 107.5%;
        margin-left: -3.75%;
    }
}
@media screen and (max-width:767px) {
    .block_footer .block_inner {
        width: 600px;
        max-width: 87.69%;
    }
    .block_footer .footer_logo {
        max-width: 100%;
        margin: 0 auto min(calc(36 / 390 * 100vw), 36px);
    }
    .block_footer .unit_data {
        gap: min(calc(43 / 390 * 100vw), 43px);
        margin-bottom: min(calc(24 / 390 * 100vw), 24px);
    }
    .block_footer .unit_data .box_data h3 {
        text-align: center;
        font-size: min(calc(19 / 390 * 100vw), 19px);
        padding-bottom: 1em;
        margin-bottom: 1.579em;
    }
    .block_footer .box_reservation {
        flex-flow: column;
        align-items: center;
        gap: min(calc(16 / 390 * 100vw), 16px);
    }
    .block_footer .reservation .btn00 {
        width: 91.22%;
        height: 3.667em;
        font-size: min(calc(24 / 390 * 100vw), 24px);
    }
    .block_footer .hours .house_inner {
        display: contents;
    }
    .block_footer .hours .box_hours {
        padding: 0;
        font-size: min(calc(15 / 390 * 100vw), 15px);
    }
    .block_footer .hours .box_hours > div {
        align-items: center;
        border-bottom: 1px solid #BB9C50;
    }
    .block_footer .hours .box_hours > div + div {
        margin-top: min(calc(5 / 390 * 100vw), 5px);
    }
    .block_footer .hours .box_hours dt {
        width: 5em;
    }
    .block_footer .hours .box_hours .time dt {
        font-size: 1em;
    }
    .block_footer .hours .box_hours dd {
        width: 1.1em;
    }
    .block_footer .hours .box_hours dd:last-of-type {
        width: 3.3em;
    }
    .block_footer .access {
        display: flex;
        flex-flow: column;
    }
    .block_footer .access h3 {
        order: 1;
    }
    .block_footer .access address {
        order: 3;
        font-size: min(calc(15 / 390 * 100vw), 15px);
    }
    .block_footer .access .box_images {
        order: 2;
        font-size: min(calc(14 / 390 * 100vw), 14px);
        justify-content: space-between;
        gap: 0;
        margin-top: 0;
        margin-bottom: 14px;
    }
    .block_footer .access .box_images .eki {
        width: 30.4%;
    }
.block_footer .access .box_images .eki img {
    width:1.7857em;;
}
    .block_footer .access .box_images .deguchi {
        width: 30.4%;
    }
    .block_footer .map {
        width: 100%;
        height: min(calc(296 / 390 * 100vw), 296px);
        margin-left: 0;
        margin-bottom: -143px;
    }
    .block_footer small {
        padding: min(calc(181 / 390 * 100vw), 181px) 0 min(calc(38 / 390 * 100vw), 38px);
        font-size: min(calc(16 / 390 * 100vw), 16px);
        letter-spacing: 0.5px;
    }
    .block_footer small .dec01 {
        padding-bottom: min(calc(14 / 390 * 100vw), 14px);
        margin-bottom: min(calc(15 / 390 * 100vw), 15px);
    }
}
/*フッター(ダミー部分 ここまで)
_______________________________________*/
/*TOPへ戻るボタン*/
.to_top {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    pointer-events: none;
    z-index: 99;
}
.to_top .inner {
    overflow: hidden;
    width: 1160px;
    max-width: 95%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
}
.btn_to_top {
    transform: translateY(100%);
    opacity: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 80px;
    height: 80px;
    color: #fff;
    background-color: #ff0000;
    border-radius: 9999px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    pointer-events: none;
    cursor: pointer;
    transition: .3s;
}
.btn_to_top:hover {
    background-color: #fd4747;
}
.on .btn_to_top {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}
@media screen and (max-width:1024px) {
    .btn_to_top {
        width: 67px;
        height: 67px;
        font-size: 11px;
    }
}
/*セクション_______________________________________*/
/*MV*/
/*コンテンツ*/
/*コンテンツ　共用*/
/*各コンテンツ*/
.block_00 {}
.block_inner {
    width: 1280px;
    max-width: 100%;
    margin: 0 auto;
}
@media screen and (max-width:1280px) {
    .block_inner {
        max-width: 91.92%;
    }
}
@media screen and (max-width:767px) {
    .block_inner {
        max-width: 87.69%;
    }
}
/*画像*/
/*コンテンツ　パーツ-------------------*/
@media screen and (min-width:1281px) {
    .tb_on {
        display: none;
    }
}
@media screen and (min-width:768px) {
    .sp_on {
        display: none;
    }
}
@media screen and (max-width:767px) {
    .sp_off {
        display: none;
    }
}
.box_00 {
    background-color: var(--bg_color01);
    padding: var(--size_padding01);
}
/*見出し*/
.ttl00 {
    font-size: 40px;
    font-weight: normal;
    line-height: 1.7;
    letter-spacing: .08em;
    margin-bottom: .25em;
    padding: 0;
}
.ttl00 .size_l {
    font-size: 1.5em;
}
.fc01 {
    color: #C8B078;
}
.ff_crimson {
    font-family: "Crimson Text", serif;
}
.dec_line01 {
    background: linear-gradient(transparent 60%, #FFED61 60%);
}
.dec_line02 {
    background: linear-gradient(transparent 60%, rgba(200, 176, 120, .4) 60%);
    font-weight: 400;
}
.ttl02_1 {
    font-family: "Noto Serif JP";
    font-size: 64px;
    font-style: normal;
    font-weight: 300;
    line-height: 115%;
    letter-spacing: .04em;
    text-align: center;
}
.ttl02_1 .size_l {
    font-size: 1.25em;
}
@media screen and (max-width:1280px) {
    .ttl02_1 {
        font-size: 26px;
    }
    .ttl02_1 .size_l {
        font-size: 1.54em;
    }
}
@media screen and (max-width:767px) {
    .ttl02_1 {
        font-size: 32px;
        line-height: 1.25;
        letter-spacing: -.04em;
    }
    .ttl02_1 .size_l {
        font-size: 1.5em;
    }
}
@media screen and (max-width:390px) {
    .ttl02_1 {
        font-size: calc(32 / 390 * 100vw);
    }
}
.ttl02_2 {
    font-size: 28px;
    font-style: normal;
    text-align: center;
    letter-spacing: .08em;
}
.ttl02_2 .dec01 {
    display: block;
    color: #C4B491;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: .06em;
    border-bottom: 1px solid #C4B491;
    padding-bottom: .5em;
    margin-bottom: .5357em;
}
.ttl02_2 .dec02 {
    font-family: "Noto Serif JP";
    font-size: 1.714em;
    font-style: normal;
    font-weight: 300;
    line-height: 135%; /* 64.8px */
    letter-spacing: .08em;
}
@media screen and (max-width:1280px) {
    .ttl02_2 {
        font-size: 21px;
    }
    .ttl02_2 .dec01 {
        padding-bottom: .962em;
        margin-bottom: .962em;
    }
}
@media screen and (max-width:767px) {
    .ttl02_2 {
        font-size: min(calc(19 / 390 * 100vw), 19px);
    }
    .ttl02_2 .dec02 {
        font-size: 1.684em;
    }
    .ttl02_2 .dec01 {
        padding-bottom: .962em;
        margin-bottom: .962em;
    }
}
.ttl02_3 {
    color: #333;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 36px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: .08em;
    display: flex;
    flex-flow: column;
    align-items: center;
    gap: 1.25em;
}
.ttl02_3 .dec01 {
    display: block;
    font-size: 1.5556em;
}
.ttl02_3 .dec01 .size_l {
    font-size: 2.429em;
    font-weight: 600;
    display: inline-block;
    transform: translateY(.051em);
}
@media screen and (max-width:1280px) {
    .ttl02_3 {
        font-size: 28px;
        gap: 1.1072em;
    }
    .ttl02_3 .dec01 {
        font-size: 1.464em;
    }
    .ttl02_3 .dec01 .size_l {
        font-size: 2.512em;
    }
}
@media screen and (max-width:767px) {
    .ttl02_3 {
        font-size: min(calc(23 / 390 * 100vw), 23px);
        gap: 1.913em;
    }
    .ttl02_3 .dec01 {
        font-size: 1.5em;
        letter-spacing: .04em;
    }
    .ttl02_3 .dec01 .size_l {
        font-size: 2.889em;
        transform: translateY(-.0384em);
    }
}
.ttl02_4 {
    color: #333;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 48px;
    font-style: normal;
    font-weight: 300;
    line-height: 135%; /* 64.8px */
    letter-spacing: .08em;
    display: flex;
    flex-flow: column;
    align-items: center;
}
.ttl02_4 .dec01 {
    color: #C4B491;
    text-align: center;
    font-family: Corinthia;
    font-size: 72px;
    font-style: normal;
    font-weight: 400;
    line-height: 135%; /* 97.2px */
    letter-spacing: .0;
    mix-blend-mode: multiply;
}
@media screen and (max-width:1280px) {
    .ttl02_4 {
        font-size: 40px;
    }
    .ttl02_4 .dec01 {
        font-size: 1.4em;
    }
}
@media screen and (max-width:767px) {
    .ttl02_4 {
        font-size: min(calc(32 / 390 * 100vw), 32px);
    }
    .ttl02_4 .dec01 {
        font-size: 1.75em;
        margin-top: .2143em;
        ;
    }
}
.ttl02_5 {
    font-size: 32px;
    font-style: normal;
    text-align: center;
    letter-spacing: .08em;
    font-family: "Noto Serif JP";
}
.ttl02_5 .dec01 {
    display: block;
    color: #C4B491;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: .06em;
    border-top: 1px solid #C4B491;
    padding-top: .5em;
    margin-top: .5357em;
}
.ttl02_5 .dec02 {
    font-size: 1.5em;
    font-style: normal;
    font-weight: 300;
    line-height: 135%; /* 64.8px */
}
.ttl02_5 .dec02 .size_s {
    font-size: .667em;
}
@media screen and (max-width:1280px) {
    .ttl02_5 {
        font-size: 28px;
    }
    .ttl02_5 .dec01 {
        padding-top: .607em;
        margin-top: 1.357em;
    }
    .ttl02_5 .dec02 {
        font-size: 1.285em;
    }
    .ttl02_5 .dec02 .size_s {
        font-size: .778em;
    }
}
@media screen and (max-width:767px) {
    .ttl02_5 {
        font-size: min(calc(24 / 390 * 100vw), 24px);
    }
    .ttl02_5 .dec01 {
        padding-top: .5833em;
        margin-top: .8336em;
    }
    .ttl02_5 .dec02 {
        font-size: 1.334em;
        line-height: 130%;
    }
    .ttl02_5 .dec02 .size_s {
        font-size: .75em;
    }
}
.unit_link_01 .link_inner {
    position: relative;
    z-index: 1;
    width: 1524px;
    max-width: 79.37%;
    max-width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    gap: 2.4285em;
    color: #FFF;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    letter-spacing: .08em;
}
.unit_link_01 .btn00 {
    position: relative;
    z-index: 0;
    width: 47.76%;
    height: 5.428em;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: .42em;
}
.unit_link_01 .btn00.btn_tel {
    background-color: #666;
}
.unit_link_01 .btn00.btn_web {
    background-color: #333;
    border: 1px solid rgba(255, 255, 255, .1);
}
.unit_link_01 .btn00:before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #666;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.unit_link_01 .btn00.btn_web:before {
    background-color: #333;
}
.unit_link_01 .btn00:after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: rgba(255, 255, 255, .15);
    top: 0;
    right: 0;
    width: 55.49%;
    height: 100%;
    clip-path: polygon(80px 0, 100% 0, 100% 100%, 0% 100%);
}
.unit_link_01 .btn00.btn_tel .dec01 {
    font-size: 1.7142em;
    display: flex;
    align-items: center;
    gap: .35em;
}
.unit_link_01 .btn00.btn_tel .dec01::before {
    content: "";
    display: block;
    background-image: url("../image/icon_phone.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: .6667em;
    aspect-ratio: 17 / 25;
}
.unit_link_01 .btn00.btn_web .dec01 {
    font-size: 1.4285em;
}
.unit_link_01 .btn00 .dec01:after {
    content: "";
    display: block;
    position: absolute;
    z-index: -10;
    background-color: #888888;
    bottom: -12px;
    right: -12px;
    width: 91.20%;
    aspect-ratio: 664 / 128;
    opacity: .5;
    transition: .3s;
}
.unit_link_01 .btn00:hover .dec01::after {
    bottom: 0 !important;
    right: 0 !important;
}
@media screen and (max-width:1280px) {
    .unit_link_01 .link_inner {
        font-size: calc(28 / 1280 * 100vw);
    }
    .unit_link_01 .btn00 .dec01:after {
        bottom: calc(-12 / 1280 * 100vw);
        right: calc(-12 / 1280 * 100vw);
    }
}
@media screen and (max-width:767px) {
    .unit_link_01 .btn00::after {
        width: 57.95%;
        clip-path: polygon(25.5% 0, 100% 0, 100% 100%, 0% 100%);
    }
    .block_float01 .unit_link_01 .link_inner {
        max-width: 93.075%;
        font-size: min(calc(13 / 390 * 100vw), 13px);
        justify-content: space-between;
        gap: 0;
    }
    .block_float01 .unit_link_01 .btn00 {
        position: relative;
        z-index: 0;
        width: 48.50%;
        height: 5.23em;
        border-radius: min(calc(7 / 390 * 100vw), 7px);
        overflow: hidden;
    }
    .block_float01 .unit_link_01 .btn00.btn_tel .dec01, .block_float01 .unit_link_01 .btn00.btn_web .dec01 {
        font-size: 1.231em;
        letter-spacing: .16em;
    }
    .block_float01 .unit_link_01 .btn00.btn_web .dec01 {
        letter-spacing: -.08em;
    }
    .block_float01 .unit_link_01 .btn00 .dec01::after {
        display: none;
    }
}
.parts_contact01 {}
.parts_contact01 .parts_link {
    width: 1120px;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.parts_contact01 .parts_link .btn00 {
    position: relative;
    z-index: 0;
    /*background-color: #666;*/
    width: 45.71%;
    aspect-ratio: 512/176;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    gap: .85714em;
    color: #FFF;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: .08em;
}
.parts_contact01 .parts_link .btn00.btn_web {
    gap: 1.035em;
}
.parts_contact01 .parts_link .btn00::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #666;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.parts_contact01 .parts_link .btn00.btn_web::before {
    background-color: #333;
}
.parts_contact01 .parts_link .btn00::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -10;
    background-color: #888;
    opacity: .5;
    bottom: -10px;
    right: -10px;
    width: 100%;
    aspect-ratio: 512 / 144;
    transition: .3s;
}
.parts_contact01 .parts_link .btn00:hover::after {
    bottom: 0;
    right: 0;
}
.parts_contact01 .parts_link .btn00 .dec01 {
    font-size: 1.714em;
    line-height: 100%;
    letter-spacing: .16em;
}
.parts_contact01 .parts_link .btn00 .dec01::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: rgba(255, 255, 255, .2);
    top: 0;
    right: 0;
    width: 53.9%;
    height: 100%;
    clip-path: polygon(40px 0, 100% 0, 100% 100%, 0% 100%);
}
.parts_contact01 .parts_link .btn00.btn_tel .dec01 {
    display: flex;
    align-items: center;
    gap: .35em;
}
.parts_contact01 .parts_link .btn00.btn_tel .dec01::before {
    content: "";
    display: block;
    background-image: url("../image/icon_phone.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: .6667em;
    aspect-ratio: 17 / 25;
}
.parts_contact01 .parts_link .btn00.btn_web .dec01 {
    font-size: 1.286em;
    letter-spacing: 0;
}
.parts_contact01 .parts_logo {
    width: 648px;
    margin: 112px auto 0;
}
.parts_contact01 .parts_logo .data {
    display: flex;
    justify-content: center;
    gap: 6.123%;
    color: #333;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .08em;
    margin-top: .4369em;
}
.parts_contact01 .parts_logo .data .cont {
    width: 35.03%;
    display: flex;
    align-items: center;
    gap: 7.1%;
}
.parts_contact01 .parts_logo .data .cont:first-of-type {
    margin-left: 4.0em;
}
.parts_contact01 .parts_logo .data .cont dt {
    width: 6.5em;
    height: 2em;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-weight: normal;
    border: 1px solid #858585
}
.parts_contact01 .parts_logo .data .cont:nth-of-type(2) dt {
    width: 5.5em;
}
@media screen and (max-width:1280px) {
    .parts_contact01 .parts_link .btn00 {
        font-size: calc(28 / 1280 * 100vw);
    }
}
@media screen and (max-width:767px) {
    .parts_contact01 .parts_link .btn00 .dec01::after {
        width: 57.95%;
        clip-path: polygon(25.5% 0, 100% 0, 100% 100%, 0% 100%);
    }
}
.text00 {
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.04em;
}
.text01 {
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 2;
    letter-spacing: 0.08em;
}
@media screen and (max-width:1280px) {
    .text01 {
        font-size: 15px;
        letter-spacing: 0em;
    }
}
@media screen and (max-width:1280px) {
    .text01 {
        font-size: min(calc(15 /390 * 100vw), 15px);
    }
}
/*コンテンツ*/
/*各コンテンツ毎*/
/*.block_mv --------------------------*/
.block_mv {
    position: relative;
    z-index: 1;
    margin-top: 0;
    position: relative;
}
.block_mv picture {
    display: block;
    padding: 0 min(calc(40 /1920 * 100vw), 40px);
    height: 832px;
}
.block_mv picture img {
    object-fit: cover;
    height: 100%;
}
.block_mv .unit_link_01 {
    position: absolute;
    width: 100%;
    bottom: -104px;
}
@media screen and (max-width:1280px) {
    .block_mv picture {
        padding: 0 24px;
        height: auto;
    }
    .block_mv picture img {
        object-fit: contain;
        height: auto;
    }
    .block_mv .unit_link_01 {
        display: none;
    }
}
@media screen and (max-width:767px) {
    .block_mv picture {
        padding: 0 0;
    }
    .block_mv picture img {
        object-fit: contain;
        height: auto;
    }
    .block_mv .unit_link_01 {
        display: block;
        bottom: 0;
        position: static;
    }
    .block_mv .unit_link_01 .btn00.btn_tel {
        display: none;
    }
    .block_mv .unit_link_01 .btn00 {
        width: 86.60%;
        height: 6.233em;
        font-size: min(calc(15.4 / 390 * 100vw), 15.4px);
    }
    .block_mv.unit_link_01 .btn00::after {
        clip-path: polygon(2.60em 0, 100% 0, 100% 100%, 0% 100%);
    }
    .block_mv .unit_link_01 .btn00 .dec01::after {
        width: 100%;
        height: 100%;
        bottom: -.519em;
        right: -.519em;
    }
}
/*.block_award --------------------------*/
.block_award {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 0 0 0;
}
.block_award .box_ttl {
    position: relative;
    z-index: 0;
    padding: 182px 0 76px;
    max-width: 1920px;
    margin: 0 auto;
}
.block_award .box_ttl::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-image: url("../image/ttl_dec_award_l.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    top: 90px;
    left: 0;
    width: min(22.08%, 424px);
    aspect-ratio: 424 / 340;
}
.block_award .box_ttl::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-image: url("../image/ttl_dec_award_r.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    top: -13px;
    right: 0;
    width: min(24.63%, 473px);
    aspect-ratio: 473 / 481;
}
.block_award .box_ttl .ttl02_1::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #fff;
    bottom: -40px;
    left: 50%;
    transform: translateX(-50%);
    width: 96px;
    aspect-ratio: 96 / 41;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_award .wrapper_bi {
    padding-top: 112px;
    max-width: 1920px;
    height: 1852px;
    margin: 0 auto;
    background-image: url("../image/bi_award.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
}
.block_award .unit01 {
    width: 912px;
    display: flex;
    flex-flow: wrap;
    gap: 65px 36px;
}
.block_award .unit01 .img00 {
    display: none;
}
.block_award .unit01 .img01 {
    width: 336px;
}
.block_award .unit01 .img02 {
    width: 515px;
}
.block_award .unit01 .img03 {
    width: 100%;
}
.block_award .unit01.box_provider {
    gap: 34px;
    margin: 32px 0 82px;
    align-items: flex-end;
}
.block_award .unit01.box_provider .box_text {
    width: 350px;
}
.block_award .unit01.box_provider .box_text h2 {
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: .04em;
    margin-bottom: .6em;
}
.block_award .unit01.box_provider .box_text h2::before {
    content: "";
    display: block;
    margin: 0 auto .102em;
    background-image: url("../image/dec_daiya.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    top: 0;
    left: 0;
    width: 2.285em;
    aspect-ratio: 114 / 97;
}
.block_award .unit01.box_provider .box_img {
    width: 527px;
}
.block_award .unit02 {
    position: relative;
    z-index: 0;
    background-color: #fff;
    padding: 75px 0 70px;
    display: flex;
    justify-content: center;
    gap: 11.31%;
    font-size: 15px;
    font-weight: 300;
}
.block_award .unit02::after {
    content: "Profile";
    display: block;
    position: absolute;
    z-index: 0;
    top: .4122em;
    right: 2.8125%;
    color: #D2B268;
    text-align: center;
    font-family: "Corinthia", cursive;
    font-size: 4.8rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    transform: rotate(-11deg);
}
.block_award .unit02 .provider {
    padding-bottom: 30px;
    margin-bottom: 42px;
    border-bottom: 1px solid #CCC;
}
.block_award .unit02 .provider .size_l {
    display: block;
    font-size: 1.8667em;
}
.block_award .unit02 .box_text {
    width: 31.26%;
}
.block_award .unit02 .box_career02 {
    width: 33.62%;
}
.block_award .unit02 .box_career00 {
    display: flex;
    flex-flow: column;
    gap: 5px;
    line-height: 1;
    letter-spacing: 0;
}
.block_award .unit02 .box_career00 .cont {
    display: flex;
    gap: .8em;
}
.block_award .unit02 .box_career00 dt {
    font-weight: 300;
}
.block_award .unit02 .box_career00 dd {
    line-height: 1.5;
    margin-top: -5px;
}
@media screen and (max-width:1280px) {
    .block_award {
        z-index: 1;
        padding-bottom: 33px;
    }
    .block_award .box_ttl {
        padding: 38px 0 calc(35 / 768 * 100vw);
    }
    .block_award .box_ttl::before {
        top: 6px;
    }
    .block_award .box_ttl::after {
        top: -31px;
    }
    .block_award .box_ttl .ttl02_1::after {
        display: none;
    }
    .block_award .wrapper_bi {
        padding: 43px 38px 65px 27px;
        max-width: 93.75%;
        height: auto;
        margin: 0 auto;
        background: url("../image/bi_award_tb.jpg"), #F3F4F6;
        background-repeat: no-repeat;
        background-size: contain;
        background-position: top center;
    }
    .block_award .wrapper_bi .block_inner {
        max-width: 100%;
    }
    .block_award .unit01 {
        width: 55.73%;
        justify-content: space-between;
        gap: calc(16 / 768 * 100vw) 0;
    }
    .block_award .unit01.box_provider {
        width: 100%;
        justify-content: space-between;
        gap: calc(16 / 768 * 100vw) 0;
        margin: 0 0 39px;
    }
    .block_award .unit01 .img01 {
        width: 34.76%;
    }
    .block_award .unit01 .img02 {
        width: 62.26%;
    }
    .block_award .unit01 .img03 {
        width: 100%;
    }
    .block_award .unit01.box_provider .box_text h2 {
        font-size: 22px;
        line-height: 117%;
        margin-bottom: .6em;
    }
    .block_award .unit01.box_provider .box_text h2::before {
        content: "";
        display: block;
        margin: 0 auto .102em;
        background-image: url("../image/dec_daiya.png");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        top: 0;
        left: 0;
        width: 2.285em;
        aspect-ratio: 114 / 97;
    }
    .block_award .unit01.box_provider .box_text {
        width: 42.75%;
    }
    .block_award .unit01.box_provider .box_img {
        width: 54.96%;
    }
    .block_award .unit02 {
        width: 656px;
        margin: 0 auto;
        padding: 37px 84px 42px;
        gap: 0;
        font-size: 14px;
        flex-flow: column;
    }
    .block_award .unit02::after {
        top: .4122em;
        right: 8.046%;
        letter-spacing: 0;
    }
    .block_award .unit02 .provider {
        margin-bottom: 28px;
        padding-bottom: 20px;
    }
    .block_award .unit02 .box_text {
        display: contents;
    }
    .block_award .unit02 .box_career02 {
        width: 100%;
    }
    .block_award .unit02 .box_career01 {
        margin-bottom: 4px;
    }
    .block_award .unit02 .box_career00 .cont {
        display: flex;
        gap: .8em;
    }
}
@media screen and (max-width:767px) {
    .block_award {
        padding-bottom: min(calc(64 / 390 * 100vw), 64px);
    }
    .block_award .box_ttl {
        padding: min(calc(64 / 390 * 100vw), 64px) 0 min(calc(40 / 390 * 100vw), 40px);
    }
    .block_award .box_ttl::before, .block_award .box_ttl::after {
        display: none;
    }
    .block_award .wrapper_bi .block_inner {
        max-width: 87.69%;
    }
    .block_award .wrapper_bi {
        display: contents;
    }
    .block_award .unit01 {
        position: relative;
        z-index: 0;
        width: 100%;
        gap: 0;
    }
    .block_award .unit01 .img00 {
        display: block;
    }
    .block_award .unit01 .img01 {
        width: 39.18%;
        position: absolute;
        top: -32px;
        left: -14px;
    }
    .block_award .unit01 .img02 {
        width: 100%;
        margin: min(calc(32 / 390 * 100vw), 32px) 0 min(calc(16 / 390 * 100vw), 16px);
    }
    .block_award .unit01 .img03 {
        width: 108.8%;
        margin-left: -4.4%;
    }
    .block_award .unit01.box_provider {
        margin-top: min(calc(15 / 390 * 100vw), 15px);
        display: flex;
        flex-flow: column;
        align-items: center;
    }
    .block_award .unit01.box_provider .box_text {
        display: contents;
    }
    .block_award .unit01.box_provider .box_text h2 {
        order: 1;
        margin: 0 auto .9em;
        font-size: min(calc(22 / 390 * 100vw), 22px);
        line-height: 117%;
    }
    .block_award .unit01.box_provider .box_text h2::before {
        width: 2.181em;
    }
    .block_award .unit01.box_provider .box_text h2 + .text01 {
        order: 3;
    }
    .block_award .unit01.box_provider .box_img {
        order: 2;
        width: 560px;
        max-width: 93.56%;
        margin-bottom: min(calc(23 / 390 * 100vw), 23px);
    }
    .block_award .unit02 {
        background-color: #F8F8F8;
        width: 100%;
        padding: min(calc(40 / 390 * 100vw), 40px) 10.2%;
        font-size: min(calc(14 / 390 * 100vw), 14px);
        letter-spacing: 0;
    }
    .block_award .unit02::after {
        top: -2.5%;
        right: 20.47%;
        font-size: 4.0rem;
    }
    .block_award .unit02 .box_career00 dt {
        width: 6em;
    }
    .block_award .unit02 .box_career00 dd {
        width: calc(100% - 6em);
    }
}
/*.block_worries --------------------------*/
.block_worries {
    max-width: 1920px;
    margin: 0 auto;
}
.block_worries .unit01 {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 114px 0 0;
    height: 856px;
    background-image: url("../image/bi_worries.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
}
.block_worries .unit01 h2 {
    font-family: "Noto Serif JP";
    font-size: 40px;
    font-style: normal;
    font-weight: 300;
    line-height: 100%; /* 40px */
    letter-spacing: .08em;
    text-align: right;
    margin: 0 0 1.775em auto;
    width: 900px;
    padding-right: 1.1em;
}
.block_worries .list_worries01 {
    width: 900px;
    margin: 0 -60px 0 auto;
    display: flex;
    flex-flow: wrap;
}
/*    .block_worries .list_worries01 .worries01_1 {
        position: relative;
        z-index: 0;
    }
    .block_worries .list_worries01 .worries01_1 {
        position: relative;
        z-index: 5;
        width: 25.777%;
        align-self: flex-start;
        aspect-ratio: 232 / 224;
        display: flex;
        flex-flow: column;
        justify-content: center;
        align-items: center;
    }
    .block_worries .list_worries01 .worries01_1.parts02 {
        z-index: 3;
        margin-top: 1.86%;
        margin-left: 9.445%;
    }
    .block_worries .list_worries01 .worries01_1.parts03 {
        z-index: 1;
        margin-top: 1.7%;
        margin-left: 12.445%;
    }
    .block_worries .list_worries01 .worries01_1.parts04 {
        z-index: 4;
        margin-left: 15.11%;
        margin-top: -6.41%;
    }
    .block_worries .list_worries01 .worries01_1.parts05 {
        z-index: 2;
        margin-left: 16.22%;
        margin-top: -3.41%;
    }
    .block_worries .list_worries01 .worries01_1::after {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        background-color: #fff;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transform-origin: center;
        width: 100%;
        height: 100%;
        opacity: 0.96;
        box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.08);
        transition: .3s;
    }
    .block_worries .list_worries01 .worries01_1:hover::after {
        background-color: #F8F0F0;
        opacity: 1;
    }
    .block_worries .list_worries01 .worries01_1.parts02::after {
        transform: translate(-50%, -50%) rotate(-5deg);
    }
    .block_worries .list_worries01 .worries01_1.parts03::after {
        transform: translate(-50%, -50%) rotate(4deg);
    }
    .block_worries .list_worries01 .worries01_1.parts04::after {
        transform: translate(-50%, -50%) rotate(10deg);
    }
    .block_worries .list_worries01 .worries01_1 > * {
        display: flex;
        flex-flow: column;
        justify-content: center;
        align-items: center;
        gap: 1em;
        color: #6FB5D3;
        text-align: center;
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;
        letter-spacing: 0;
        transition: .3s;
    }
    .block_worries .list_worries01 .worries01_1 > *::after {
        content: "";
        display: block;
        background-image: url("../image/arrow01.svg");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        width: 2em;
        aspect-ratio: 1;
    }
    .block_worries .list_worries01 .worries01_1 .on {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        color: #E898B0;
    }
    .block_worries .list_worries01 .worries01_1 > .on::before {
        content: "";
        display: block;
        background-image: url("../image/arrow02.svg");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center center;
        width: 2em;
        aspect-ratio: 1;
    }
    .block_worries .list_worries01 .worries01_1 > .on::after {
        display: none;
    }
    .block_worries .list_worries01 .worries01_1:hover .on, .block_worries .list_worries01 .worries01_1:active .on {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 1;
    }
    .block_worries .list_worries01 .worries01_1:hover .off, .block_worries .list_worries01 .worries01_1:active .off {
        opacity: 0;
    }*/
/*----------------*/
.block_worries .list_worries00 {
    width: 900px;
    margin: 0 -60px 0 auto;
    display: flex;
    flex-flow: wrap;
}
.block_worries .list_worries00 .worries01_1 {
    position: relative;
    z-index: 0;
}
.block_worries .list_worries00 .worries01_1 {
    position: relative;
    z-index: 5;
    width: 25.777%;
    align-self: flex-start;
    aspect-ratio: 232 / 224;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}
.block_worries .list_worries00 .worries01_1.parts02 {
    z-index: 3;
    margin-top: 1.86%;
    margin-left: 9.445%;
}
.block_worries .list_worries00 .worries01_1.parts03 {
    z-index: 1;
    margin-top: 1.7%;
    margin-left: 12.445%;
}
.block_worries .list_worries00 .worries01_1.parts04 {
    z-index: 4;
    margin-left: 15.11%;
    margin-top: -6.41%;
}
.block_worries .list_worries00 .worries01_1.parts05 {
    z-index: 2;
    margin-left: 16.22%;
    margin-top: -3.41%;
}
.block_worries .list_worries00 .worries01_1 div {
    position: relative;
    transition: .3s;
}
.block_worries .list_worries00 .worries01_1 div::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #fff;
    top: 0;
    left: 0;
    transform-origin: center;
    width: 100%;
    height: 100%;
    box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.08);
    transition: .3s;
}
.block_worries .list_worries00 .worries01_1 .on::before {
    background-color: #F8F0F0;
}
.block_worries .list_worries00 .worries01_1.parts02 div::before {
    transform: rotate(-5deg);
}
.block_worries .list_worries00 .worries01_1.parts02 .off::before {
    transform: rotate(5deg);
}
.block_worries .list_worries00 .worries01_1.parts03 div::before {
    transform: rotate(4deg);
}
.block_worries .list_worries00 .worries01_1.parts03 .off::before {
    transform: rotate(-4deg);
}
.block_worries .list_worries00 .worries01_1.parts04 div::before {
    transform: rotate(10deg);
}
.block_worries .list_worries00 .worries01_1.parts04 .off::before {
    transform: rotate(-10deg);
}
.block_worries .list_worries00 .worries01_1 div {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
    color: #6FB5D3;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0;
    transition: .3s;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.block_worries .list_worries00 .worries01_1 .on {
    color: #E898B0;
    flex-flow: column-reverse;
    transform: rotateY(180deg);
    opacity: 0;
}
.block_worries .list_worries00 .worries01_1 > *::after {
    content: "";
    display: block;
    background-image: url("../image/arrow01.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 2em;
    aspect-ratio: 1;
}
.block_worries .list_worries00 .worries01_1 > .on::after {
    background-image: url("../image/arrow02.svg");
}
.block_worries .list_worries00 .worries01_1:hover .on, .block_worries .list_worries00 .worries01_1:active .on {
    transform: rotateY(0);
    opacity: 1;
}
.block_worries .list_worries00 .worries01_1:hover .off, .block_worries .list_worries00 .worries01_1:active .off {
    transform: rotateY(180deg);
    opacity: 0;
}
/*---------------------*/
.block_worries .list_worries01 {
    width: 900px;
    margin: 0 -60px 0 auto;
    display: flex;
    flex-flow: wrap;
	cursor: pointer;

}
.block_worries .list_worries01 .worries01_1 {
    position: relative;
    z-index: 0;
	    width: 25.777%;
    align-self: flex-start;
    aspect-ratio: 232 / 224;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}
.block_worries .list_worries01 .worries01_1.parts01 {
    z-index: 5;
}
.block_worries .list_worries01 .worries01_1.parts02 {
    z-index: 3;
    margin-top: 1.86%;
    margin-left: 9.445%;
}
.block_worries .list_worries01 .worries01_1.parts03 {
    z-index: 1;
    margin-top: 1.7%;
    margin-left: 12.445%;
}
.block_worries .list_worries01 .worries01_1.parts04 {
    z-index: 4;
    margin-left: 15.11%;
    margin-top: -6.41%;
}
.block_worries .list_worries01 .worries01_1.parts05 {
    z-index: 2;
    margin-left: 16.22%;
    margin-top: -3.41%;
}
.block_worries .list_worries01 .worries01_1 div {
    position: relative;
    transition: .3s;
}
.block_worries .list_worries01 .worries01_1 div::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #fff;
    top: 0;
    left: 0;
    transform-origin: center;
    width: 100%;
    height: 100%;
    box-shadow: 4px 8px 8px 0px rgba(0, 0, 0, 0.08);
    transition: .3s;
}
.block_worries .list_worries01 .worries01_1 .on::before {
    background-color: #F8F0F0;
}
.block_worries .list_worries01 .worries01_1.parts02 div::before {
    transform: rotate(5deg);
}
.block_worries .list_worries01 .worries01_1.parts02 .off::before {
    transform: rotate(-5deg);
}
.block_worries .list_worries01 .worries01_1.parts03 div::before {
    transform: rotate(-4deg);
}
.block_worries .list_worries01 .worries01_1.parts03 .off::before {
    transform: rotate(4deg);
}
.block_worries .list_worries01 .worries01_1.parts04 div::before {
    transform: rotate(-10deg);
}
.block_worries .list_worries01 .worries01_1.parts04 .off::before {
    transform: rotate(10deg);
}
.block_worries .list_worries01 .worries01_1 div {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
    gap: 1em;
    color: #6FB5D3;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0;
    transition: .3s;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.block_worries .list_worries01 .worries01_1 .on {
    color: #E898B0;
    flex-flow: column-reverse;
    transform: rotateY(180deg);
    opacity: 0;
}
.block_worries .list_worries01 .worries01_1 > *::after {
    content: "";
    display: block;
    background-image: url("../image/icon-click.webp");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 88px;
    height: 42px;
    aspect-ratio: 1;
}
.block_worries .list_worries01 .worries01_1 > .on::after {
    background-image: url("../image/icon-close.webp");
}
/*.block_worries .list_worries01 .worries01_1:hover .on, .block_worries .list_worries01 .worries01_1:active .on {
    transform: rotateY(0);
    opacity: 1;
}
.block_worries .list_worries01 .worries01_1:hover .off/*, .block_worries .list_worries01 .worries01_1:active .off{
    transform: rotateY(180deg);
    opacity: 0;
}*/ 
.block_worries .list_worries01 .worries01_1.open .on{
    transform: rotateY(0);
    opacity: 1;
}
.block_worries .list_worries01 .worries01_1.open .off {
    transform: rotateY(180deg);
    opacity: 0;
}
.block_worries .unit02 {
    position: relative;
    z-index: 0;
    background-color: #f6f6f6;
    padding-bottom: 105px;
}
.block_worries .unit02 .ttl02_2 {
    margin-bottom: 3.1em;
}
.block_worries .unit02 .list_worries02 {
    position: relative;
    z-index: 2;
    padding: 0 .9375%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}
.block_worries .unit02 .list_worries02 .worries02_2 {
    background-color: #fff;
    width: 31.21%;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 135%; /* 27px */
    letter-spacing: 1.6px;
    padding-bottom: 1.3em;
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
    background-color: #DDD4B1;
    font-family: "Noto Serif JP";
    font-size: 1.4em;
    font-weight: 400;
    line-height: 135%; /* 37.8px */
    letter-spacing: 2.24px;
    padding: 30px 0 44px;
    margin-bottom: .7142em;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 50% 100%, 0 calc(100% - 32px));
}
@media screen and (max-width:1403px) {
    .block_worries .list_worries01 {
        margin: 0 0 0 auto;
    }
}
@media screen and (max-width:1280px) {
    .block_worries .unit01 {
        position: relative;
        padding: calc(75px + 0.09765625 * (100vw - 768px)) 0 calc(106px + 0.41015625 * (100vw - 768px));
        height: auto;
        background-image: url("../image/bi_worries_tb.png");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: top center;
    }
    .block_worries .unit01 h2 {
        font-family: "Noto Serif JP";
        font-size: 36px;
        line-height: 136%;
        text-align: center;
        margin: 0 auto 1.722em;
        width: 100%;
        padding-right: 0;
    }
    .block_worries .list_worries01 {
        width: 100%;
        margin: 0 0 0 auto;
    }
    .block_worries .list_worries01 .worries01_1 {
        z-index: 5;
        width: 26.50%;
    }
    .block_worries .list_worries01 .worries01_1.parts02 {
        margin-top: 0.46%;
        margin-left: 9.445%;
    }
    .block_worries .list_worries01 .worries01_1.parts03 {
        z-index: 1;
        margin-top: 0.35%;
        margin-left: 9.2567%;
    }
    .block_worries .list_worries01 .worries01_1.parts04 {
        margin-left: 20.61%;
        margin-top: -5.01%;
    }
    .block_worries .list_worries01 .worries01_1.parts05 {
        z-index: 2;
        margin-left: 6.42%;
        margin-top: -3.41%;
    }
    .block_worries .list_worries01 .worries01_1 div {
        font-size: calc(16px + 0.015625 * (100vw - 768px));
    }
}
@media screen and (max-width:767px) {
    .block_worries .unit01 {
        padding: min(calc(71 / 390 * 100vw), 71px) 0 min(calc(121 / 390 * 100vw), 121px);
        background-image: url("../image/bi_worries_sp.png");
        background-position: bottom center;
    }
    .block_worries .unit01 h2 {
        font-size: min(calc(30 / 390 * 100vw), 30px);
        width: 12em;
        margin: 0 auto 2.434em;
    }
    .block_worries .list_worries01 .worries01_1 {
        width: 55.84%;
    }
    .block_worries .list_worries01 .worries01_1.parts01 {
        order: 1;
        z-index: 5;
        margin-left: 3%;
    }
    .block_worries .list_worries01 .worries01_1.parts04 {
        order: 2;
        margin-top: -10.53%;
        margin-left: auto;
    }
    .block_worries .list_worries01 .worries01_1.parts02 {
        order: 3;
        margin-top: -23.40%;
        margin-left: -2.526%;
    }
    .block_worries .list_worries01 .worries01_1.parts05 {
        order: 4;
        z-index: 2;
        margin-top: -13.9%;
        margin-left: auto;
        margin-right: -2%;
    }
    .block_worries .list_worries01 .worries01_1.parts03 {
        order: 5;
        z-index: 1;
        margin-top: -12.0%;
        margin-left: 0;
    }
    .block_worries .list_worries01 {
        max-width: 500px;
        margin: 0 auto;
    }
    .block_worries .list_worries01 .worries01_1 div {
        font-size: min(calc(16 / 390 * 100vw), 20px);
        gap: 1.625em;
    }
}
.block_worries .unit02 {
    position: relative;
    z-index: 0;
    background-color: #f6f6f6;
    padding-bottom: 105px;
}
.block_worries .unit02 .ttl02_2 {
    margin-bottom: 3.1em;
}
.block_worries .unit02 .list_worries02 {
    position: relative;
    z-index: 2;
    padding: 0 .9375%;
    display: flex;
    justify-content: space-between;
    margin-bottom: 120px;
}
.block_worries .unit02 .list_worries02 .worries02_2 {
    background-color: #fff;
    width: 31.21%;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 135%; /* 27px */
    letter-spacing: 1.6px;
    padding-bottom: 1.3em;
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
    background-color: #DDD4B1;
    font-family: "Noto Serif JP";
    font-size: 1.4em;
    font-weight: 400;
    line-height: 135%; /* 37.8px */
    letter-spacing: 2.24px;
    padding: 30px 0 44px;
    margin-bottom: .7142em;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 32px), 50% 100%, 0 calc(100% - 32px));
}
@media screen and (max-width:1280px) {
    .block_worries .unit02 {
        padding-bottom: 53px;
    }
    .block_worries .unit02 .ttl02_2 {
        margin-bottom: 2.857em;
    }
    .block_worries .unit02 .list_worries02 {
        flex-flow: wrap;
        justify-content: center;
        gap: 24px 3%;
        margin-bottom: 90px;
        padding: 0;
    }
    .block_worries .unit02 .list_worries02 .worries02_2 {
        width: max(342px, 40%);
        font-size: 17px;
    }
}
.block_worries .unit02 .list_worries02 .worries02_2 h3 {
    font-size: 1.294em;
    padding: 24px 0 34px;
}
.parts_contact01 .parts_link {
    padding: 0 2.62%;
}
@media screen and (max-width:1024px) {
    .parts_contact01 .parts_logo {
        width: 61.75%;
        margin: 82px auto 0;
    }
    .parts_contact01 .parts_logo .data {
        font-size: 14px;
        /*gap: 0%;
            justify-content: space-between;*/
        margin-top: .714em;
    }
    .parts_contact01 .parts_logo .data .cont {
        width: auto;
        gap: .71em;
    }
    .parts_contact01 .parts_logo .data .cont:first-of-type {
        margin-left: 0;
    }
    .parts_contact01 .parts_logo .data .cont dt {
        width: 6.42em;
    }
    .parts_contact01 .parts_logo .data .cont:nth-of-type(2) dt {
        width: 4.57em;
    }
    .parts_contact01 .parts_link {
        padding: 0 4.17%;
    }
    .parts_contact01 .parts_link .btn00 {
        position: relative;
        z-index: 0;
        background-color: #666;
        width: 45.45%;
        aspect-ratio: 304/96;
        gap: .647em;
        font-size: calc(17 / 768 * 100vw);
    }
    .parts_contact01 .parts_link .btn00.btn_web {
        gap: .529em;
    }
    .parts_contact01 .parts_link .btn00::after {
        bottom: -.588em;
        right: -.588em;
    }
}
@media screen and (max-width:767px) {
    .block_worries .unit02 {
        padding-bottom: min(calc(64 / 390 * 100vw), 64px);
    }
    .block_worries .unit02 .list_worries02 {
        gap: 16px 3%;
        margin-bottom: min(calc(80 / 390 * 100vw), 80px);
    }
    .block_worries .unit02 .list_worries02 .worries02_2 {
        width: max(342px, 60%);
        font-size: min(calc(17 / 390 * 100vw), 17px);
    }
    .block_worries .unit02 .list_worries02 .worries02_2 h3 {
        font-size: 1.2941em;
        padding: 1.2em 0 1.454em;
        clip-path: polygon(0 0, 100% 0, 100% 72%, 50% 100%, 0 72%);
    }
    .parts_contact01 .parts_link {
        width: 500px;
        max-width: 100%;
        padding: 0 5.556%;
        flex-flow: column;
        gap: min(calc(40 / 390 * 100vw), 40px);
    }
    .parts_contact01 .parts_link .btn00 {
        position: relative;
        z-index: 0;
        background-color: #666;
        width: 100%;
        gap: .647em;
        font-size: min(calc(17 / 390 * 100vw), 20px);
    }
    .parts_contact01 .parts_logo {
        width: clamp(100%, 327px, 70%);
        margin: min(calc(54 / 390 * 100vw), 54px) auto 0;
    }
    .parts_contact01 .parts_logo .data {
        font-size: min(calc(14 / 390 * 100vw), 16px);
        gap: 1.5em;
        justify-content: center;
        margin-top: .714em;
    }
}
/*.block_teeth --------------------------*/
.block_teeth {
    overflow: hidden;
    position: relative;
    z-index: 0;
    background-color: #E4EBF0;
    margin: 0 0;
    padding: 113px 0 72px;
}
.block_teeth h2 {
    font-family: "Noto Serif JP";
    font-size: 40px;
    font-style: normal;
    font-weight: 300;
    line-height: 1;
    letter-spacing: .08em;
    text-align: center;
    margin-bottom: 105px;
    margin-bottom: 2.55em;
}
.block_teeth .list_teeth {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
    gap: 32px 0;
}
.block_teeth .list_teeth .teeth00 {
    position: relative;
    z-index: 1;
    width: 23.125%;
    aspect-ratio: 1;
    background-color: #fff;
    border-radius: 9999px;
	cursor: pointer;
}
.block_teeth .list_teeth .teeth00 .box_img {
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    gap: 1.455em;
    color: #888;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%;
    letter-spacing: 0;
    transition: .3s;
}
/*.block_teeth .list_teeth .teeth00:hover .box_img, .block_teeth .list_teeth .teeth00:active .box_img {
    opacity: 0;
}*/
.block_teeth .list_teeth .teeth00.open .box_img{
    opacity: 0;
}
.block_teeth .list_teeth .teeth00 .box_img img {
    width: 48.64%;
    margin: 0 auto;
	transition: .3s;
}
.block_teeth .list_teeth .teeth00:hover .box_img img,.block_teeth .list_teeth .teeth00:active .box_img img {
transform: scale(1.1);
}
.block_teeth .list_teeth .teeth00 .box_text {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #C9B378;
    opacity: 0;
    transition: .3s;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 13.43%;
    border-radius: 999px;
    color: #FFF;
    text-align: justify;
    font-size: 17px;
    font-style: normal;
    font-weight: 500;
    line-height: 190%;
    letter-spacing: 0;
}
.block_teeth .list_teeth .teeth00 .box_text::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #fff;
    opacity: .2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 999px;
    transform: rotate(45deg);
    clip-path: polygon(50% 0, 100% 0, 100% 100%, 50% 100%);
}
/*.block_teeth .list_teeth .teeth00:hover .box_text, .block_teeth .list_teeth .teeth00:active .box_text {
    z-index: 1;
    opacity: 1;
}*/
.block_teeth .list_teeth .teeth00.open .box_text {
    z-index: 1;
    opacity: 1;
}
@media screen and (max-width:1280px) {
    .block_teeth {
        padding: 71px 0 13px;
    }
    .block_teeth h2 {
        font-size: 36px;
        line-height: normal;
        margin-bottom: 54px;
    }
    .block_teeth .list_teeth {
        justify-content: center;
        gap: 16px 2.45%;
        padding: 0 3.54%;
    }
    .block_teeth .list_teeth .teeth00 {
        width: 31.70%;
    }
    .block_teeth .list_teeth .teeth00 .box_img {
        font-size: 18px;
        font-size: calc(18 / 768 * 100vw);
    }
    .block_teeth .list_teeth .teeth00 .box_text {
        font-size: 13px;
        font-size: calc(13 / 768 * 100vw);
    }
}
@media screen and (max-width:767px) {
    .block_teeth {
        padding: min(calc(87 / 390 * 100vw), 87px)px 0 min(calc(64 / 390 * 100vw), 64px);
    }
    .block_teeth .block_inner {
        max-width: 94.35%;
    }
    .block_teeth h2 {
        font-size: min(calc(32 / 390 * 100vw), 32px);
        line-height: normal;
        margin-bottom: min(calc(59 / 390 * 100vw), 59px);
    }
    .block_teeth .list_teeth {
        max-width: 500px;
        margin: 0 auto;
        gap: min(calc(16 / 390 * 100vw), 16px) 4.34%;
        padding: 0;
    }
    .block_teeth .list_teeth .teeth00 {
        width: 47.82%;
    }
    .block_teeth .list_teeth .teeth00 .box_img {
        font-size: min(calc(16 / 390 * 100vw), 18px);
        gap: 1em;
    }
    .block_teeth .list_teeth .teeth00 .box_text {
        font-size: min(calc(11.5 / 390 * 100vw), 15px);
    }
}
/*.block_suggestion --------------------------*/
.block_suggestion {
    overflow: hidden;
    position: relative;
    z-index: 0;
    background: url("../image/bi_suggestion.png") 0% 0% / 8px 8px repeat;
    margin: 0 0;
    padding: 200px 0 135px;
}
.block_suggestion::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #E4EBF0;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    top: -1px;
    left: 50%;
    transform: translateX(-50%);
    height: 80px;
    aspect-ratio: 1920 / 80;
}
.block_suggestion h2 {
    margin-bottom: 72px;
}
.block_suggestion .cont_suggestion {
    position: relative;
    z-index: 0;
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    gap: 0 18.75%;
}
.block_suggestion .cont_suggestion .suggestion00 {
    width: 37.5%;
    list-style-type: none;
}
.block_suggestion .cont_suggestion::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-image: url("../image/dec_suggestion01.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    top: 175px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 10.467%;
    aspect-ratio: 134 / 136;
}
.block_suggestion .cont_suggestion .suggestion00 figure {
    margin-bottom: 42px;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage {
    display: flex;
    flex-flow: column;
    gap: 16px;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 200%;
    letter-spacing: 1.6px;
    letter-spacing: .08em;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00 {
    background-color: #ECE4CF;
    border-radius: 99px;
    height: 2.8em;
    display: flex;
    justify-content: center;
    align-items: center;
}
.block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00:nth-of-type(2n) {
    background-color: #F6F2E4;
}
.block_suggestion .cont_suggestion .suggestion02 .list_advantage .advantage00 {
    background-color: #A4C1DC;
}
.block_suggestion .cont_suggestion .suggestion02 .list_advantage .advantage00:nth-of-type(2n) {
    background-color: #D5E3EF;
}
@media screen and (max-width:1280px) {
    .block_suggestion {
        padding: 152px 0 88px;
    }
    .block_suggestion::after {
        width: 100%;
        aspect-ratio: unset;
    }
    .block_suggestion h2 {
        margin-bottom: 30px;
    }
    .block_suggestion h2 .size_m {
        font-size: .77em;
    }
    .block_suggestion .cont_suggestion {
        gap: 0 7.1%;
    }
    .block_suggestion .cont_suggestion::after {
        top: calc(70px + 0.078125 * (100vw - 768px));
        width: 13.04%;
    }
    .block_suggestion .cont_suggestion .suggestion00 {
        width: 46.45%;
        list-style-type: none;
    }
    .block_suggestion .cont_suggestion .suggestion00 figure {
        width: 75.69%;
        margin: 0 auto 41px;
    }
    .block_suggestion .cont_suggestion .suggestion00 .list_advantage {
        font-size: min(calc(14 / 768 * 100vw), 20px);
    }
}
@media screen and (max-width:767px) {
    .block_suggestion {
        padding: min(calc(102 / 390 * 100vw), 102px) 0 min(calc(88 / 390 * 100vw), 88px);
    }
    .block_suggestion .block_inner {
        max-width: 92.30%;
    }
    .block_suggestion::after {
        bottom: min(calc(-39 / 390 * 100vw), -39px);
        height: min(calc(40 / 390 * 100vw), 40px);
    }
    .block_suggestion h2 {
        margin-bottom: min(calc(47 / 390 * 100vw), 47px);
    }
    .block_suggestion h2 .size_m {
        font-size: .75em;
    }
    .block_suggestion h2 .dec02 {
        line-height: 1.15;
    }
    .block_suggestion .cont_suggestion {
        max-width: 600px;
        margin: 0 auto;
        justify-content: space-between;
        gap: 0;
    }
    .block_suggestion .cont_suggestion::after {
        top: 431px;
        width: min(calc(90 / 390 * 100vw), 90px);
    }
    .block_suggestion .cont_suggestion .suggestion00 {
        display: contents;
    }
    .block_suggestion .cont_suggestion .suggestion00 .list_advantage {
        width: 48.889%;
        font-size: min(calc(13 / 390 * 100vw), 16px);
        line-height: 1.35;
        gap: min(calc(8 / 390 * 100vw), 8px);
    }
    .block_suggestion .cont_suggestion .suggestion01 .list_advantage {
        order: 3;
    }
    .block_suggestion .cont_suggestion .suggestion02 .list_advantage {
        order: 4;
    }
    .block_suggestion .cont_suggestion .suggestion00 .list_advantage .advantage00 {
        border-radius: min(calc(12 / 390 * 100vw), 12px);
        height: 4.3em;
    }
    .block_suggestion .cont_suggestion .suggestion00 figure {
        width: 69.17%;
        margin: 0 auto min(calc(34 / 390 * 100vw), 34px);
    }
    .block_suggestion .cont_suggestion .suggestion01 figure {
        order: 1;
        margin-bottom: min(calc(130 / 390 * 100vw), 130px);
    }
    .block_suggestion .cont_suggestion .suggestion02 figure {
        order: 2;
    }
}
@media screen and (max-width:650px) {
    .block_suggestion .cont_suggestion::after {
        top: min(calc(449 / 650 * 100vw), 449px);
    }
}
/*.block_reason --------------------------*/
.block_reason {
    overflow: hidden;
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 117px 0 120px;
}
.block_reason .ttl02_3 {
    margin-bottom: 132px;
}
.block_reason .list_reason {}
.block_reason .list_reason .reason00 {
    display: flex;
}
.block_reason .list_reason .reason00:nth-of-type(n+2) {
    margin-top: -15px;
}
.block_reason .list_reason .reason00 .box_img {
    width: 63.125%;
    margin: 0 0 0 -13.125%;
}
.block_reason .list_reason .reason00 .box_text {
    width: 50%;
    display: flex;
    flex-flow: column;
    justify-content: center;
    padding: 25px 0 0 6.875%;
    font-weight: 300;
    line-height: 200%;
}
.block_reason .list_reason .reason00 .box_text h3 {
    position: relative;
    z-index: 0;
    font-family: "Noto Serif JP";
    font-size: 2em;
    font-weight: 400;
    line-height: 120%;
    letter-spacing: .08em;
    padding-bottom: .84375em;
    margin-bottom: .6255em;
}
.block_reason .list_reason .reason00 .box_text h3::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #CABB9B;
    bottom: 0;
    right: 0;
    width: 116%;
    height: 1px;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_text h3::after {
    right: auto;
    left: 0;
}
.block_reason .list_reason .reason00 .box_text h3 .dec01 {
    display: block;
    font-family: "Benne", serif;
    font-size: 1.25em;
    margin-bottom: 0.475em;
}
.block_reason .list_reason .reason00 .box_text h3 .dec01 .no {
    font-size: 1.25em;
}
.block_reason .list_reason .reason00:nth-of-type(even) {
    flex-flow: row-reverse;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_text {
    padding: 0 6.875% 0 0;
}
.block_reason .list_reason .reason00:nth-of-type(even) .box_img {
    width: 63.125%;
    margin: 0 -13.125% 0 0;
}
.block_reason .list_reason .reason00 .btn_reason {
    background-color: #C8B078;
    color: #fff;
    font-size: 1.125em;
    letter-spacing: .08em;
    font-weight: 400;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 432px;
    aspect-ratio: 432 / 64;
    border-radius: 5px;
    margin-top: 1.444em;
}
@media screen and (max-width:1280px) {
    .block_reason {
        padding: 80px 0 70px;
    }
    .block_reason .ttl02_3 {
        margin-bottom: 109px;
    }
    .block_reason .list_reason .reason00, .block_reason .list_reason .reason00:nth-of-type(2n) {
        flex-flow: column;
        margin-top: 0;
    }
    .block_reason .list_reason .reason00:nth-of-type(n+2) {
        margin-top: 64px;
    }
    .block_reason .list_reason .reason00 .box_img {
        width: 103.11%;
        margin: 0 0 0 -4.4%;
    }
    .block_reason .list_reason .reason00:nth-of-type(2n) .box_img {
        width: 103.11%;
        margin: 0 -4.4% 0 0;
    }
    .block_reason .list_reason .reason00 .box_text h3 .dec01 {
        margin-bottom: 0.125em;
    }
    .block_reason .list_reason .reason00 .box_text {
        width: 89.235%;
        margin: 0 auto;
        padding: 25px 0 0;
    }
    .block_reason .list_reason .reason00 .box_text h3::after {
        width: 100%;
    }
    .block_reason .list_reason .reason00 .box_text .text01 {
        letter-spacing: .08em;
    }
}
@media screen and (max-width:767px) {
    .block_footer {
        padding-top: min(calc(86 / 390 * 100vw), 86px);
    }
    .block_reason {
        padding: min(calc(74 / 390 * 100vw), 74px) 0 min(calc(87 / 390 * 100vw), 87px);
    }
    .block_reason .ttl02_3 {
        margin-bottom: min(calc(73 / 390 * 100vw), 73px);
    }
    .block_reason .list_reason .reason00:nth-of-type(n+2) {
        margin-top: min(calc(65 / 390 * 100vw), 65px);
    }
    .block_reason .list_reason .reason00 .box_img {
        width: 107.02%;
        margin: 0 0 0 -6.9%;
    }
    .block_reason .list_reason .reason00:nth-of-type(2n) .box_img {
        width: 107.02%;
        margin: 0;
    }
    .block_reason .list_reason .reason00 .box_text {
        width: 100%;
        padding: min(calc(32 / 390 * 100vw), 32px) 0 0;
    }
    .block_reason .list_reason .reason00 .box_text h3 {
        font-size: min(calc(22 / 390 * 100vw), 22px);
        letter-spacing: 0;
        padding-bottom: 1.045em;
        margin-bottom: .818em;
    }
    .block_reason .list_reason .reason00 .box_text h3 .dec01 {
        font-size: 1.455em;
        margin-bottom: 0.125em;
        letter-spacing: .04em;
    }
    .block_reason .list_reason .reason00 .box_text h3 .dec01 .no {
        font-size: 1.5em;
    }
    .block_reason .list_reason .reason00 .btn_reason {
        font-size: min(calc(16 / 390 * 100vw), 16px);
        aspect-ratio: unset;
        height: 3em;
        border-radius: min(calc(5 / 390 * 100vw), 5px);
        margin-top: 1.444em;
    }
}
/*.block_contact --------------------------*/
.block_contact {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 104px 0 73px;
    background-color: #fff;
}
.block_contact::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background: url("../image/bi_contact01.png") 0% 0% / 14px 14px repeat;
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100%;
    aspect-ratio: 1920 / 600;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 166px);
    mix-blend-mode: multiply;
}
.block_contact::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -2;
    background: linear-gradient(120deg, #E1D7AF 22.67%, #F4F0E0 83.66%);
    top: 0;
    left: 50%;
    transform: translate(-50%, 0);
    width: 100%;
    height: 100%;
    clip-path: polygon(0 calc(100% - 166px), 100% 0, 100% 100%, 0 100%);
}
.block_contact .ttl02_4 {
    margin-bottom: 1.166em;
}
@media screen and (max-width:1280px) {
    .block_contact {
        padding: 70px 0 76px;
    }
    .block_contact::before {
        content: "";
        display: block;
        position: absolute;
        z-index: -1;
        background: url("../image/bi_contact01.png") 0% 0% / 14px 14px repeat;
        top: 0;
        left: 50%;
        transform: translate(-50%, 0);
        width: 100%;
        aspect-ratio: 768 / 410;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 166px);
    }
    .block_contact .ttl02_4 {
        margin-bottom: 1.525em;
    }
}
@media screen and (max-width:767px) {
    .block_contact {
        padding: min(calc(79 / 390 * 100vw), 79px) 0 min(calc(75 / 390 * 100vw), 75px);
    }
    .block_contact::before {
        aspect-ratio: 390 / 592;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 31.08%);
    }
    .block_contact::after {
        background: linear-gradient(120deg, #E1D7AF 22.67%, #F4F0E0 83.66%);
    }
}
/*.block_system --------------------------*/
.block_system {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 111px 0 132px;
    background-color: #E9EFF3;
}
.block_system .ttl02_2 {
    margin-bottom: 2.429em;
}
.block_system .ttl02_2 + .text01 {
    width: 856px;
    max-width: 100%;
    margin: 0 auto 5em;
    text-align: center;
}
.block_system .box_system {
    display: flex;
    justify-content: space-between;
}
.block_system .box_system .box_img {
    width: 50.625%;
}
.block_system .box_system .box_text {
    width: 43.75%;
}
.block_system .box_system .box_text h3 {
    position: relative;
    z-index: 0;
    color: #FFF;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: 200%;
    letter-spacing: 0;
    background-color: #C8B078;
    height: 2.5357em;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 1.0714em;
}
.block_system .box_system .box_text h3::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #C8B078;
    bottom: -.5714em;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1.143em;
    aspect-ratio: 32 / 16;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_system .box_system .box_text .text01 {
    letter-spacing: 0;
}
.block_system .box_system .box_text .text01:nth-of-type(n+2) {
    margin-top: 1em;
}
.block_system .box_system .box_text .text_ttl {
    font-weight: bold;
    margin-bottom: 1em;
}
.block_system .box_system .box_text .box_data {
    padding: 4px 6.428%;
    background-color: #fff;
    font-size: 16px;
}
.block_system .box_system .box_text .box_data h4 {
    color: #333;
    font-family: "Noto Sans JP";
    font-size: 1.125em;
    font-style: normal;
    font-weight: 400;
    line-height: 200%; /* 36px */
    letter-spacing: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: .333em;
}
.block_system .box_system .box_text .box_data h4::after {
    content: "";
    background-color: #6FB5D3;
    width: calc(100% - 5.56em);
    height: 1px;
}
.block_system .box_system .box_text dl {
    display: flex;
    flex-flow: column;
    margin-bottom: .125em;
}
.block_system .box_system .box_text .data00 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1em;
    font-weight: 300 !important;
    line-height: 200%; /* 32px */
}
.block_system .box_system .box_text .data00 dt {
    width: 168px;
    font-weight: 300;
    line-height: 1.5;
    letter-spacing: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(111, 181, 211, .35);
    border-radius: 5px;
}
.block_system .box_system .box_text .data00:first-of-type dt {
    letter-spacing: .5em;
}
.block_system .box_system .box_text .data00 dd {
    width: 300px
}
.block_system .dec_hand {
    display: flex;
    align-items: center;
    gap: .472em;
    padding-left: 4.303%;
}
.block_system .dec_hand::before {
    content: "";
    display: block;
    background-image: url("../image/icon_hand.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    width: 2.875em;
    aspect-ratio: 46 / 45;
}
.block_system .dec_hand .dec_line01 {
    font-weight: 500;
}
@media screen and (max-width:1280px) {
    .block_system {
        padding: 73px 0 95px;
    }
    .block_system .ttl02_2 {
        margin-bottom: 1.667em;
    }
    .block_system .ttl02_2 + .text01 {
        margin: 0 auto 3.734em;
    }
    .block_system .box_system {
        flex-flow: column;
        padding: 0 1.27%;
    }
    .block_system .box_system .box_text {
        display: contents;
    }
    .block_system .box_system .box_img {
        width: 100%;
    }
    .block_system .box_system .set_order01 {
        order: 4;
        width: 94.18%;
        margin: 0 auto;
    }
    .block_system .box_system .set_order02 {
        order: 1;
    }
    .block_system .box_system .set_order03 {
        order: 2;
    }
    .block_system .box_system .set_order04 {
        order: 3;
        margin-top: 1.33em !important;
        margin-bottom: 3.2em;
    }
    .block_system .box_system .set_order05 {
        order: 5;
        margin-top: 1.8em;
    }
    .block_system .box_system .set_order06 {
        order: 6;
        padding: 4px 15.4% 4px 13.8% !important;
    }
    .block_system .box_system .set_order07 {
        order: 7;
    }
}
@media screen and (max-width:767px) {
    .block_system {
        padding: min(calc(73 / 390 * 100vw), 73px) 0 min(calc(70 / 390 * 100vw), 70px);
    }
    .block_system .ttl02_2 {
        margin-bottom: min(calc(39 / 390 * 100vw), 39px);
    }
    .block_system .ttl02_2 + .text01 {
        text-align: left;
        max-width: 600px;
        width: 100%;
        margin: 0 auto min(calc(33 / 390 * 100vw), 33px);
    }
    .block_system .box_system {
        padding: 0;
        max-width: 600px;
        margin: 0 auto;
    }
    .block_system .box_system .box_text h3 {
        font-size: min(calc(20 / 390 * 100vw), 20px);
        height: 3.2em;
        margin-bottom: 1.45em;
        line-height: 125%;
    }
    .block_system .box_system .box_text h3::after {
        width: 1.5em;
    }
    .block_system .box_system .set_order04 {
        margin-top: .667em !important;
        margin-bottom: 1.867em;
    }
    .block_system .box_system .set_order01 {
        width: 100%;
    }
    .block_system .box_system .box_text .text01:nth-of-type(n+2) {
        margin-top: 0;
    }
    .block_system .box_system .box_text .text_ttl {
        margin: 2.467em 0 1.2em !important;
    }
    .block_system .box_system .set_order06 {
        order: 6;
        padding: min(calc(8 / 390 * 100vw), 8px) 5.0% min(calc(26 / 390 * 100vw), 26px) !important;
    }
    .block_system .box_system .box_text .box_data {
        padding: 4px 6.428%;
        font-size: min(calc(15 / 390 * 100vw), 15px);
        margin-bottom: 1.6em;
    }
    .block_system .box_system .box_text .box_data h4 {
        font-size: 1.2em;
        margin-bottom: .5em;
    }
    .block_system .box_system .box_text dl {
        gap: min(calc(8 / 390 * 100vw), 8px);
        margin-bottom: .125em;
    }
    .block_system .box_system .box_text .data00 dt {
        width: 21.73%;
        font-size: .8em;
        border-radius: min(calc(5 / 390 * 100vw), 5px);
        text-align: center;
        align-self: stretch;
    }
    .block_system .box_system .box_text .data00 dd {
        font-size: .933em;
        width: 75.30%;
        letter-spacing: 0;
    }
    .block_system .dec_hand {
        flex-flow: wrap;
        gap: 0;
        padding-left: 0;
        margin-top: .5334em;
    }
    .block_system .dec_hand::before {
        margin-right: .7334em;
    }
    .block_system .dec_hand .dec_line01 {
        margin-left: .05em;
    }
}
@media screen and (max-width:607px) {
    .block_system .dec_hand .dec_line01 {
        width: fit-content;
        margin-left: 3.667em;
        margin-top: -1.0em;
    }
}
/*.block_fee --------------------------*/
.block_fee {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 112px 0 160px;
    background-color: #F8F8F8;
}
.block_fee .ttl02_4 {
    margin-bottom: .7em;
}
.block_fee .ttl02_4 + .text01 {
    width: 856px;
    max-width: 100%;
    margin: 0 auto 5em;
    text-align: center;
}
.block_fee .list_fee {
    display: flex;
    flex-flow: column;
    gap: 2.667em;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0;
}
.block_fee .list_fee .fee00 {
    background-color: #fff;
    border-radius: 8px;
}
.block_fee .list_fee .fee00 dl {
    display: flex;
    align-items: center;
    border-radius: 8px;
    padding: 24px 0;
}
.block_fee .list_fee .fee00 dl dt {
    position: relative;
    z-index: 0;
    width: 529px;
    text-align: center;
    font-weight: 400;
}
.block_fee .list_fee .fee00 dl dt::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #E9D1D9;
    top: 50%;
    right: 0;
    transform: translate(0, -50%);
    width: 1px;
    height: 5.334em;
}
.block_fee .list_fee .fee00 .dec00 {
    display: block;
    border-radius: 99px;
    text-align: center;
}
.block_fee .list_fee .fee00 .dec01 {
    background: #E8D0D8;
    width: 280px;
    margin: 0 auto;
    padding: .2667em 0;
}
.block_fee .list_fee .fee00 .dec02 {
    background: #FFE375;
    width: 288px;
    margin: 0 0 0 auto;
    padding: .2667em 0;
    margin-top: .667em;
    margin-right: -2.0em;
}
.block_fee .list_fee .fee00 .dec00.adjust01 {
    margin-top: .4667em;
}
.block_fee .list_fee .fee00 .dec00.adjust02 {
    border-radius: 10px;
    padding: .8667em 0;
    margin-top: 1.6em;
}
.block_fee .list_fee .fee00 dl dt .size_l {
    display: block;
    font-size: 1.667em;
    line-height: 1.3;
}
.block_fee .list_fee .fee00 dl dd {
    width: calc(100% - 529px);
    text-align: right;
    padding-right: 10%;
}
.block_fee .list_fee .fee00 dl dd .size_m {
    font-size: 1.667em;
    font-weight: 500;
}
.block_fee .list_fee .fee00 dl dd .size_l {
    font-size: 2.5em;
    line-height: 1;
    font-weight: 400;
    font-family: "Crimson Text", serif;
}
.block_fee .list_fee .fee00 dl dd .tax {
    font-weight: 300;
}
.block_fee .cap {
    text-align: center;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0;
    margin: 43px 0 41px;
}
.block_fee .box_point {
    background: #FFF;
    padding: 13px 0 68px;
}
.block_fee .box_point h3 {
    color: #333;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: 130%; /* 36.4px */
    letter-spacing: .04em;
    margin-bottom: .678em;
}
.block_fee .box_point h3 .size_s {
    font-size: .714em;
}
.block_fee .box_point h3 .dec_01 {
    display: block;
    color: #CCB0BC;
    text-align: center;
    font-family: Corinthia;
    font-size: 2.25em;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    transform: rotate(-11deg);
    margin-bottom: -.357em;
    letter-spacing: 0;
}
.block_fee .box_point h3 .dec_line {
    background: linear-gradient(transparent 60%, #E0F0F8 60%);
}
.block_fee .box_point h3 + .text02 {
    text-align: center;
    font-size: 15px;
    font-weight: 300;
    line-height: 135%;
    letter-spacing: 0;
    margin-bottom: 3.2em;
}
.block_fee .box_point .point_list {
    display: flex;
    flex-flow: wrap;
    justify-content: center;
    gap: 1.333em;
    font-size: 18px;
    font-weight: 300;
    line-height: 150%;
    letter-spacing: 0;
    text-align: center;
}
.block_fee .box_point .point_list li {
    border-radius: 12px;
    background: #E0F0F8;
    width: 13.75%;
    height: 4.444em;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width:1280px) {
    .block_fee {
        padding: 71px 0 112px;
    }
    .block_fee .block_inner {
        padding: 0 1.27%;
    }
    .block_fee .ttl02_4 {
        font-size: 36px;
        margin-bottom: 35px;
    }
    .block_fee .ttl02_4 + .text01 {
        margin: 0 auto 59px;
    }
    .block_fee .ttl02_4 .dec01 {
        font-size: 1.556em;
        /*margin-top: .155em;*/
    }
    .block_fee .list_fee {}
    .block_fee .list_fee .fee00 dl dt {
        width: 345px;
    }
    .block_fee .list_fee .fee00 dl dd {
        width: calc(100% - 345px);
    }
    .block_fee .list_fee .fee00 dl dd .size_l {
        font-size: 2.288em;
    }
    .block_fee .list_fee .fee00 .dec02 {
        margin-right: -2.86em;
    }
    .block_fee .box_point {
        padding: 13px 0 60px;
    }
    .block_fee .box_point .point_list {
        width: 576px;
        margin: 0 auto;
        gap: 24px 4.16%;
    }
    .block_fee .box_point .point_list li {
        width: 30.55%;
        border-radius: 12px;
        background: #E0F0F8;
        height: 4.444em;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
@media screen and (max-width:767px) {
    .block_fee {
        padding: min(calc(67 / 390 * 100vw), 67px) 0 min(calc(78 / 390 * 100vw), 78px);
    }
    .block_fee .block_inner {
        padding: 0;
    }
    .block_fee .ttl02_4 {
        font-size: min(calc(30 / 390 * 100vw), 30px);
        margin-bottom: 0;
    }
    .block_fee .ttl02_4 + .text01 {
        margin: 0 auto min(calc(65 / 390 * 100vw), 65px);
    }
    .block_fee .ttl02_4 .dec01 {
        font-size: 1.867em;
        margin-top: .0862em;
    }
    .block_fee .list_fee {
        max-width: 600px;
        margin: 0 auto;
        gap: 1.6em;
        font-size: min(calc(15 / 390 * 100vw), 15px);
        font-style: normal;
    }
    .block_fee .list_fee .fee00 dl {
        flex-flow: column;
        border-radius: min(calc(8 / 390 * 100vw), 8px);
        padding: in(calc(23 / 390 * 100vw), 23px) 0 min(calc(20 / 390 * 100vw), 20px);
    }
    .block_fee .list_fee .fee00 dl dt {
        width: 100%;
    }
    .block_fee .list_fee .fee00 dl dt::after {
        display: none;
    }
    .block_fee .list_fee .fee00 dl:has(dd .dec02) dt {
        padding-bottom: 18px;
        margin-bottom: 11px;
    }
    .block_fee .list_fee .fee00 dl:has(dd .dec02) dt::after {
        content: "";
        display: block;
        position: absolute;
        z-index: 0;
        background-color: #E9D1D9;
        top: auto;
        bottom: 0;
        right: auto;
        left: 50%;
        transform: translate(-50%, 0);
        width: min(calc(80 / 390 * 100vw), 80px);
        height: 2px;
    }
    .block_fee .list_fee .fee00 dl dt .size_l {
        font-size: 1.467em;
    }
    .block_fee .list_fee .fee00 dl dd {
        width: 100%;
        text-align: center;
        padding-right: 0;
    }
    .block_fee .list_fee .fee00 dl dd .size_l {
        font-size: 2.088em;
    }
    .block_fee .list_fee .fee00 .dec00.adjust01 {
        margin-top: .8667em;
        margin-bottom: 1.0em;
    }
    .block_fee .list_fee .fee00 .dec00.adjust02 {
        border-radius: min(calc(10 / 390 * 100vw), 10px);
        padding: .8667em 0;
        margin-top: min(calc(16 / 390 * 100vw), 16px);
        margin-bottom: min(calc(13 / 390 * 100vw), 13px);
    }
    .block_fee .list_fee .fee00 .dec01 {
        background: #E8D0D8;
        width: 81.87%;
        margin: 0 auto;
        margin-top: 0px;
        padding: .2667em 0;
    }
    .block_fee .list_fee .fee00 .dec02 {
        background: #FFE375;
        width: 84.21%;
        margin: .667em auto 0;
        padding: .2667em 0;
    }
    .block_fee .cap {
        font-size: min(calc(15 / 390 * 100vw), 15px);
        margin: 23px 0 20px;
    }
    .block_fee .box_point {
        padding: min(calc(2 / 390 * 100vw), 2px) min(calc(27 / 390 * 100vw), 27px) min(calc(32 / 390 * 100vw), 32px);
    }
    .block_fee .box_point h3 {
        font-size: min(calc(24 / 390 * 100vw), 24px);
        margin-bottom: .9166em;
    }
    .block_fee .box_point h3 .size_s {
        font-size: .667em;
    }
    .block_fee .box_point h3 .dec_01 {
        font-size: 2.33em;
        margin-bottom: -.214em;
    }
    .block_fee .box_point h3 + .text02 {
        font-size: min(calc(15 / 390 * 100vw), 15px);
        margin-bottom: 1.266em;
        line-height: 150%;
    }
    .block_fee .box_point .point_list {
        max-width: 600px;
        width: 100%;
        margin: 0 auto;
        gap: min(calc(16 / 390 * 100vw), 16px) 5.56%;
        font-size: min(calc(15 / 390 * 100vw), 15px);
    }
    .block_fee .box_point .point_list li {
        width: 47.22%;
        border-radius: 12px;
        background: #E0F0F8;
        height: 5.333em;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
/*.block_correction --------------------------*/
.block_correction {
    overflow: hidden;
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 94px 0 0;
}
.block_correction .block_inner {
    position: relative;
    z-index: 1;
}
.block_correction .box_attention {
    position: relative;
    z-index: 0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 98px;
}
.block_correction .box_attention::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    border: 8px solid #F4EACF;
    border-image: linear-gradient(30deg, #C7B980 0%, #E1D5AD 43%, #F4EACF 100%);
    border-image-slice: 1;
    top: 0;
    left: 0;
    width: 53.333%;
    height: 360px;
}
.block_correction .box_attention::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background: linear-gradient(to right, #C7B980 0%, #E1D5AD 43%, #F4EACF 100%);
    bottom: 0;
    right: 0;
    width: 77.5%;
    height: 350px;
}
.block_correction .box_attention .block_inner {
    display: flex;
    justify-content: space-between;
    margin-top: 10px;
}
.block_correction .box_attention .box_text {
    width: 68.75%;
    margin: 22px 0 0 -3.046%;
    border: 1px solid #EEE;
    background: #FFF;
    align-self: baseline;
    padding: 89px 109px 96px 139px;
}
.block_correction .box_attention .box_text h2 {
    text-align: center;
    font-size: 32px;
    font-weight: 300;
    line-height: 120%;
    letter-spacing: .08em;
}
.block_correction .box_attention .box_text h2 .size_s {
    display: block;
    font-size: .625em;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0;
    display: flex;
    justify-content: center;
}
.block_correction .box_attention .box_text h2 .size_s span {
    background-color: #A2D4F8;
    border-radius: 99px;
    text-align: center;
    width: 2.2em;
    aspect-ratio: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 -.2em;
}
.block_correction .box_attention .box_text h2 .size_m {
    display: block;
    margin: .8125em 0 .219em;
}
.block_correction .box_attention .box_text h2 .size_l {
    font-size: 2.25em;
    font-weight: 300;
    line-height: 120%;
    background: linear-gradient(transparent 72%, #FFFC99 72%, #FFFC99 93%, transparent 93%);
}
.block_correction .box_attention .box_text h2 .size_l .dec01 {
    font-size: .444em;
}
.block_correction .box_attention .box_text .text01 {
    margin-top: 3.1875em;
}
.block_correction .box_attention .box_img {
    width: 41.71%;
    margin-right: -7.528%;
}
.block_correction .box_attention .box_img {
    width: 41.71%;
    margin-right: -7.528%;
}
@media screen and (max-width:1280px) {
    .block_correction .box_attention::after {
        bottom: -40px;
    }
    .block_correction .box_attention .box_text {
        padding: 60px 50px 60px 50px;
    }
    .block_correction .box_attention .box_text h2 {
        font-size: 28px;
    }
}
@media screen and (max-width:1024px) {
    .block_correction {
        padding: 134px 0 0;
    }
    .block_correction .box_attention {
        margin-bottom: 58px;
    }
    .block_correction .box_attention::before {
        top: -33px;
        left: -8px;
        width: calc(35.80% + 8px);
        height: auto;
        aspect-ratio: 272 / 360;
    }
    .block_correction .box_attention::after {
        bottom: 3.65%;
        width: 75.0%;
        height: auto;
        aspect-ratio: 576 / 592;
    }
    .block_correction .box_attention .block_inner {
        flex-flow: column;
        margin-top: 0;
    }
    .block_correction .box_attention .box_text {
        width: 100%;
        margin: 0;
        padding: 57px 8.78% 120px;
    }
    .block_correction .box_attention .box_text h2 .size_s {
        font-size: .7143em;
    }
    .block_correction .box_attention .box_text h2 .size_m {
        margin: 1.170em 0 0;
        letter-spacing: .08em;
    }
    .block_correction .box_attention .box_text .text01 {
        margin-top: 2.987em;
    }
    .block_correction .box_attention .box_img {
        width: 84.99%;
        margin: -17.42% auto 0;
    }
}
@media screen and (max-width:767px) {
    .block_correction {
        padding: 0;
    }
    .block_correction .box_attention {
        margin-bottom: min(calc(14 / 390 * 100vw), 14px);
    }
    .block_correction .box_attention::before, .block_correction .box_attention::after {
        display: none;
    }
	    .block_correction .box_attention .block_inner {
        width: 600px;
    }
    .block_correction .box_attention .box_text {
        border: 0;
        padding: min(calc(36 / 390 * 100vw), 36px) 0 0;
    }
    .block_correction .box_attention .box_text h2 {
        font-size: min(calc(22 / 390 * 100vw), 22px);
    }
    .block_correction .box_attention .box_text h2 .size_m {
        margin: .943em 0 0;
    }
    .block_correction .box_attention .box_text h2 .size_s {
        font-size: .727em;
    }
    .block_correction .box_attention .box_text h2 .size_l {
        font-size: 1.63em;
    }
    .block_correction .box_attention .box_img {
        width: 102%;
        margin: min(calc(20 / 390 * 100vw), 20px) auto 0;
    }
}
/*.block_correction .list_case*/
.block_correction .list_case {}
.block_correction .list_case .case00 {
    padding: 119px 0 112px;
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
}
.block_correction .list_case .case01 {
    background: url("../image/bi_list_case.png") 0% 0% / 8px 8px repeat;
}
.block_correction .list_case .case02 {
    background: #F8F8F8;
}
.block_correction .list_case .case00 .block_inner {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
}
.block_correction .list_case .case00 h3 {
    width: 100%;
    color: #CFBA89;
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 32px;
    font-style: normal;
    font-weight: 300;
    line-height: 136%;
    letter-spacing: .04em;
    margin-bottom: 1.410em;
}
.block_correction .list_case .case00 h3 .en {
    display: block;
    text-align: center;
    font-family: Corinthia;
    font-size: 1.5em;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 3.84px;
    padding-bottom: .1875em;
    margin-bottom: .2917em;
    ;
    border-bottom: 1px solid #CFBA89;
}
.block_correction .list_case .case00 .box_img {
    width: 45.625%;
}
.block_correction .list_case .case00 .box_img .box_tab {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
}
.block_correction .list_case .case00 .box_img .box_tab .tab00 {
    width: 31.50%;
    height: 48px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #E5E5E6;
    color: #878787;
    font-family: "Noto Serif JP";
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;
    letter-spacing: 0;
    border-radius: 8px;
    cursor: pointer;
}
.block_correction .list_case .case00 .box_img .box_tab .tab00.on {
    height: 56px;
    background-color: #CFBA89;
    color: #fff;
    pointer-events: none;
}
.block_correction .list_case .case00 .box_img .box_case_img {
    position: relative;
    z-index: 0;
    aspect-ratio: 584 / 434;
}
.block_correction .list_case .case00 .box_img .case_img00 {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: .3s;
}
.block_correction .list_case .case00 .box_img .case_img00.on {
    opacity: 1;
    pointer-events: auto;
}
.unit_case .img00, .block_correction .list_case .case00 .box_img .img00 {
    width: 64.38%;
}
.unit_case .img02 {
    position: absolute;
    bottom: 0;
    right: 0;
}
.unit_case .img00 img {
    border-radius: 12px;
}
.unit_case .img00 figcaption {
    color: #C8B078;
    font-family: Spartan;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    letter-spacing: 0;
    display: flex;
    align-items: center;
    gap: .1em;
}
.unit_case .img01 figcaption {
    margin-top: .35em;
}
.unit_case .img01 figcaption::before {
    content: "";
    display: inline-block;
    background-color: #C8B078;
    width: .8em;
    aspect-ratio: 1;
    clip-path: polygon(0 100%, 50% 0%, 100% 100%);
    margin: 0 .25em 0 0;
}
.unit_case .img02 figcaption {
    width: fit-content;
    margin-left: auto;
    margin-bottom: .35em;
    gap: .1em;
}
.unit_case .img02 figcaption::after {
    content: "";
    display: inline-block;
    background-color: #C8B078;
    width: .8em;
    aspect-ratio: 1;
    clip-path: polygon(0 0, 100% 0%, 50% 100%);
    margin: 0 0 0 0.25em;
}
@media screen and (max-width:767px) {
    .unit_case .img00 figcaption {
        font-size: min(calc(16 / 390 * 100vw), 16px);
    }
}
/**/
.block_correction .list_case .case00 .box_text {
    width: 44.843%;
    padding: 28px 96px 48px 46px;
    background-color: #fff;
}
.block_correction .list_case .case00 .box_text .box_content {
    position: relative;
    z-index: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 16px;
    font-weight: 300;
    line-height: 136%;
    letter-spacing: 0;
    padding-bottom: .6875em;
}
.block_correction .list_case .case00 .box_text .box_content::after {
    content: "";
    display: block;
    position: absolute;
    z-index: 0;
    background-color: #CFBA89;
    bottom: 0;
    left: 0;
    width: 6rem;
    height: 1px;
}
.block_correction .list_case .case00 .box_text .box_content:nth-of-type(n+2) {
    margin-top: 11px;
}
.block_correction .list_case .case00 .box_text .box_content dt {
    color: #444;
    font-family: "Noto Serif JP";
    font-size: 1.25em;
    font-weight: 400;
    line-height: 180%;
    text-align: center;
    width: 4.8em;
}
.block_correction .list_case .case00 .box_text .box_content dd {
    width: calc(100% - 8.375em);
}
.block_correction .list_case .case00 .box_text .box_content dd .text02 {
    line-height: 1.8;
}
.block_correction .list_case .case00 .box_text .box_content dd .btn00 {
    color: #FFF;
    font-family: Corinthia;
    font-size: 1.5em;
    font-style: normal;
    font-weight: 400;
    line-height: 100%;
    background: #CFBA89;
    letter-spacing: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 48px;
    border-radius: 8px;
    margin-top: .6em;
}
@media screen and (max-width:1280px) {
    .block_correction .list_case .case00 {
        padding: 70px 0 104px;
        flex-flow: column;
        justify-content: space-between;
    }
    .block_correction .list_case .case00 .block_inner {
        flex-flow: column;
        align-items: center;
    }
    .block_correction .list_case .case00 h3 {
        margin-bottom: 1.628em;
    }
    .block_correction .list_case .case00 h3 .en {
        font-size: 1.25em;
    }
    .block_correction .list_case .case00 .box_img {
        width: 79.32%;
        margin: 0 0 60px;
    }
    .block_correction .list_case .case00 .box_img .box_tab {
        margin-bottom: 30px;
    }
    .unit_case .img00, .block_correction .list_case .case00 .box_img .img00 {
        width: 65.71%;
    }
    .block_correction .list_case .case00 .box_text {
        width: 81.59%;
        padding: 30px 13.61% 48px 6.81%;
    }
}
@media screen and (max-width:767px) {
    .block_correction .list_case .case00 .block_inner {
        width: 600px;
    }
    .block_correction .list_case .case00 {
        padding: min(calc(45 / 390 * 100vw), 45px) 0 min(calc(80 / 390 * 100vw), 80px);
    }
    .block_correction .list_case .case00 h3 {
        font-size: min(calc(24 / 390 * 100vw), 24px);
        margin-bottom: 2.125em;
    }
    .block_correction .list_case .case00 h3 .en {
        font-size: 1.667em;
    }
    .block_correction .list_case .case00 .box_img {
        width: 104.67%;
        margin: 0 0 min(calc(48 / 390 * 100vw), 48px) -.1%;
    }
    .block_correction .list_case .case00 .box_img .box_tab {
        margin-bottom: min(calc(32 / 390 * 100vw), 32px);
    }
    .block_correction .list_case .case00 .box_img .box_tab .tab00 {
        width: 31.81%;
        height: min(calc(48 / 390 * 100vw), 48px);
        font-size: min(calc(20 / 390 * 100vw), 20px);
        border-radius: min(calc(8 / 390 * 100vw), 8px);
    }
    .block_correction .list_case .case00 .box_img .box_tab .tab00.on {
        height: min(calc(56 / 390 * 100vw), 56px);
    }
    .block_correction .list_case .case00 .box_text {
        width: 100%;
        padding: min(calc(40 / 390 * 100vw), 40px) min(calc(27 / 390 * 100vw), 27px) min(calc(48 / 390 * 100vw), 48px);
    }
    .block_correction .list_case .case00 .box_img .box_case_img {
        aspect-ratio: 358 / 288;
    }
    .unit_case .img00, .block_correction .list_case .case00 .box_img .img00 {
        width: 70.45%;
    }
    .block_correction .list_case .case00 .box_text .box_content {
        flex-flow: column;
        align-items: center;
        padding-bottom: 0;
        font-size: min(calc(15 / 390 * 100vw), 15px);
    }
    .block_correction .list_case .case00 .box_text .box_content:nth-of-type(n+2) {
        margin-top: min(calc(40 / 390 * 100vw), 40px);
    }
    .block_correction .list_case .case00 .box_text .box_content::after {
        display: none;
    }
    .block_correction .list_case .case00 .box_text .box_content dt {
        width: 100%;
        font-size: 1.1334em;
        line-height: 1;
        padding-bottom: min(calc(8 / 390 * 100vw), 8px);
        margin-bottom: min(calc(10 / 390 * 100vw), 10px);
        border-bottom: 1px solid #CFBA89;
    }
    .block_correction .list_case .case00 .box_text .box_content dd {
        width: 100%;
        text-align: center;
    }
    .block_correction .list_case .case00 .box_text .box_content dd .text02 {
        text-align: left;
    }
    .block_correction .list_case .case00 .box_text .box_content dd .btn00 {
        font-size: min(calc(18 / 390 * 100vw), 18px);
        height: 2em;
        border-radius: min(calc(8 / 390 * 100vw), 8px);
        margin-top: 1.0em;
    }
}
/*.block_faceline --------------------------*/
.block_faceline {
    position: relative;
    z-index: 0;
    margin: 0 0;
    padding: 115px 0 120px;
    background: url("../image/bi_list_case.png") 0% 0% / 8px 8px repeat;
}
.block_faceline .block_inner {
    display: flex;
    flex-flow: wrap;
    justify-content: space-between;
}
.block_faceline .ttl02_2 {
    width: 100%;
    margin-bottom: 2.464em;
}
.block_faceline .box_img01 {
    width: 41.25%;
}
.block_faceline .box_text {
    width: 50%;
}
.block_faceline .box_text .text01 {
    max-width: 456px;
    margin-bottom: 56px;
}
@media screen and (max-width:1280px) {
    .block_faceline {
        padding: 101px 0 86px;
    }
    .block_faceline .ttl02_2 {
        margin-bottom: 53px;
    }
    .block_faceline .box_text .text01 {
        max-width: 90.1%;
        margin: 0 auto 27px;
    }
}
@media screen and (max-width:767px) {
    .block_faceline {
        padding: min(calc(68 / 390 * 100vw), 68px) 0 min(calc(77 / 390 * 100vw), 77px);
    }
    .block_faceline .ttl02_2 {
        margin-bottom: min(calc(51 / 390 * 100vw), 51px);
    }
    .block_faceline .ttl02_2 .dec02 {
        letter-spacing: 0;
    }
    .block_faceline .box_text {
        display: contents;
    }
    .block_faceline .box_text .text01 {
        order: 1;
        max-width: 100%;
        margin: 0 auto min(calc(49 / 390 * 100vw), 49px);
    }
    .block_faceline .box_img01 {
        order: 2;
        width: 100%;
        margin-bottom: min(calc(24 / 390 * 100vw), 24px);
    }
    .block_faceline .box_img02 {
        order: 3;
    }
}
/*.block_balance --------------------------*/
.block_balance {
    position: relative;
    z-index: 0;
    padding: 107px 0 0;
}
.block_balance .ttl02_5 {
    margin-bottom: 1.4375em;
}
.block_balance .ttl02_5 + .text01 {
    text-align: center;
    margin-bottom: 4.125em;
}
.block_balance .wrapper_balance {
    display: flex;
    justify-content: space-between;
}
.box_balance.unit_case {
    position: relative;
    z-index: 0;
    width: 45.625%;
    aspect-ratio: 584 / 434;
    align-self: baseline;
}
.block_balance .box_text {
    width: 45.0%;
}
.block_balance .box_text h3 {
    position: relative;
    z-index: 0;
    color: #C8B078;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: 200%;
    letter-spacing: .08em;
    height: 2.429em;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 0px 1px #C8B078;
    margin-bottom: 1.321em;
}
.block_balance .box_text h3::before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    background-color: #fff;
    bottom: -15px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1.143em;
    aspect-ratio: 32 / 16;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_balance .box_text h3::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #C8B078;
    bottom: -17px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 1.143em;
    aspect-ratio: 34 / 18;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.block_balance .box_text .text01 + .text01 {
    margin-top: 1em;
}
@media screen and (max-width:1280px) {
    .block_balance {
        padding: 76px 0 0;
    }
    .block_faceline .block_inner {
        width: 600px;
    }
    .box_balance.unit_case {
        width: 47.87%;
        aspect-ratio: 338 / 288;
    }
    .box_balance.unit_case .img00 {
        width: 73.37%;
    }
    .box_balance.unit_case .img00 figcaption {
        font-size: 16px;
    }
    .block_balance .box_text {
        width: 48.72%;
    }
    .block_balance .box_text h3 {
        font-size: 24px;
        height: 3.667em;
        line-height: 135%;
        margin-bottom: 1.321em;
    }
    .block_balance .box_text h3::before {
        bottom: -13px;
    }
    .block_balance .box_text h3::after {
        bottom: -15px;
    }
}
@media screen and (max-width:767px) {
    .block_balance {
        padding: min(calc(68 / 390 * 100vw), 68px) 0 min(calc(19 / 390 * 100vw), 19px);
    }
    .block_balance .ttl02_5 {
        margin-bottom: 1.8125em;
    }
    .block_balance .ttl02_5 + .text01 {
        text-align: left;
        margin-bottom: min(calc(31 / 390 * 100vw), 31px);
    }
    .block_balance .wrapper_balance {
        flex-flow: column;
    }
    .box_balance.unit_case {
        aspect-ratio: 358 / 288;
        width: 104.67%;
        margin: 0 0 min(calc(48 / 390 * 100vw), 48px) -2.34%;
    }
    .box_balance.unit_case .img00 {
        width: 69.27%;
    }
    .box_balance.unit_case .img00 figcaption {
        font-size: min(calc(16 / 390 * 100vw), 16px);
    }
    .block_balance .box_text {
        width: 100%;
    }
    .block_balance .box_text h3 {
        font-size: min(calc(24 / 390 * 100vw), 24px);
        height: 3.667em;
        margin-bottom: min(calc(31 / 390 * 100vw), 31px);
    }
}
/*.block_implant --------------------------*/
.block_implant {
    position: relative;
    z-index: 0;
    padding: 242px 0 128px;
}
.block_implant::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -2;
    background-color: #F8F8F8;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(0 0, 100% 26.98%, 100% 100%, 0 100%);
}
.block_implant::before {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-color: #F8F8F8;
    top: 0;
    left: 0;
    transform: translate(0, 0);
    width: 100%;
    height: 100%;
    mix-blend-mode: multiply;
    clip-path: polygon(0 19.32%, 100% 2%, 100% 100%, 0 100%);
}
.block_implant .ttl02_5 {
    margin-bottom: 3.1875em;
}
.block_implant .ttl02_5 .dec01 {
    font-size: .875em;
}
.block_implant .ttl02_5 .dec02 {
    display: flex;
    justify-content: center;
    align-items: center;
}
.block_implant .ttl02_5 .dec_x {
    margin: 0 .229em 0 .125em;
}
.block_implant .ttl02_5 .dec_x img {
    width: 1.645em;
    aspect-ratio: 80 / 81;
}
.block_implant .ttl02_5 + .text01 {
    max-width: 832px;
    text-align: center;
    margin: 0 auto 6em;
}
.block_implant .box_img {
    max-width: 832px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
}
.block_implant .box_img img {
    width: 45.19%;
}
.block_implant {}
@media screen and (max-width:1280px) {
    .block_implant {
        padding: 131px 0 102px;
    }
    .block_implant::before {
        clip-path: polygon(0 16.85%, 100% 5.62%, 100% 100%, 0 100%);
    }
    .block_implant::after {
        clip-path: polygon(0 0, 100% 19.24%, 100% 100%, 0 100%);
    }
    .block_implant .ttl02_5 {
        margin-bottom: 51px;
    }
    .block_implant .ttl02_5 .dec02 {
        flex-flow: row-reverse;
    }
    .block_implant .ttl02_5 .dec_x {
        margin: 0 .125em 0 .450em;
    }
    .block_implant .ttl02_5 .dec_x img {
        width: 1.334em;
    }
    .block_implant .ttl02_5 + .text01 {
        margin: 0 auto 43px;
    }
    .block_implant .box_img {
        max-width: 70.53%;
    }
}
@media screen and (max-width:767px) {
    .block_implant {
        padding: min(calc(86 / 390 * 100vw), 86px) 0 min(calc(80 / 390 * 100vw), 80px);
    }
    .block_implant .block_inner {
        width: 600px;
    }
    .block_implant::before {
        clip-path: polygon(0 14.16%, 100% 2.23%, 100% 100%, 0 100%);
    }
    .block_implant::after {
        clip-path: polygon(0 0, 100% 11.94%, 100% 100%, 0 100%);
    }
    .block_implant .ttl02_5 {
        margin-bottom: min(calc(48 / 390 * 100vw), 48px);
    }
    .block_implant .ttl02_5 + .text01 {
        text-align: left;
        margin: 0 auto min(calc(49 / 390 * 100vw), 49px);
    }
    .block_implant .box_img {
        max-width: 104.67%;
        margin: 0 0 0 -2.34%;
    }
    .block_implant .box_img img {
        width: 47.72%;
    }
}
/*.block_message --------------------------*/
.block_message {
    padding: 40px 40px 0;
}
.block_message .box_wrapper {
    overflow: hidden;
    background-color: #ECF0F5;
}
.block_message .block_inner {
    position: relative;
    z-index: 0;
}
.block_message .block_inner::after {
    content: "";
    display: block;
    position: absolute;
    z-index: -1;
    background-image: url("../image/img_message.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    top: 0;
    left: -12.03%;
    width: 72.81%;
    height: 100%;
    aspect-ratio: 932 / 840;
}
.block_message .box_img {
    display: none;
}
.block_message .box_text {
    padding: 0px 0 90px;
    width: 50%;
    margin-left: 0;
    overflow: hidden;
    margin-top: -152px;
}
.block_message .box_text {
    margin-left: auto;
 
    margin-top: 0;
}
.block_message .box_text h2 {
    font-family: "Noto Serif JP";
    font-size: 56px;
    font-style: normal;
    font-weight: 300;
    line-height: 1.2;
    margin-bottom: .7857em;
    letter-spacing: 0;
}
.block_message .box_text h2 .en {
    display: block;
    color: #D2B268;
    font-family: Corinthia;
    font-size: 1.286em;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    transform: rotate(-11deg);
    margin-bottom: .6389em;
}
.block_message .box_text h2 .size_s {
    font-size: .7142em;
    font-style: normal;
}
.block_message .box_text .text01 {
    letter-spacing: 0;
}
.block_message .box_text .text01 + .text01 {
    margin-top: 1em;
}
.block_message .box_text .signature {
    color: #333;
    text-align: right;
    font-family: "Noto Serif JP";
    font-size: 32px;
    font-weight: 300;
    line-height: 150%;
    margin-top: 1.3125em;
    letter-spacing: 0;
}
@media screen and (max-width:1280px) {
    .block_message .box_text h2 {
        font-size: 46px;
    }
}
@media screen and (max-width:1200px) {
    .block_message {
        padding: 30px 30px 0;
    }
    .block_message .box_wrapper {
        width: 97.46%;
        margin: 0 auto;
    }
    .block_message .block_inner {
        max-width: 100%;
    }
    .block_message .block_inner::after {
        background-image: none;
    }
    .block_message .box_img {
        display: block;
    }
    .block_message .box_text {
        padding: 0 0 90px;
        margin: -30% auto 0;
        width: 85.80%;
    }
    .block_message .box_text h2 {
        font-size: 40px;
    }
    .block_message .box_text h2 .size_s {
        font-size: .8em;
    }
    .block_message .box_text h2 .en {
        font-size: 1.6em;
        margin-bottom: .7168em;
    }
}
@media screen and (max-width:767px) {
    .block_message {
        padding: min(calc(24 / 390 * 100vw), 24px) min(calc(24 / 390 * 100vw), 24px) 0;
    }
    .block_message .box_wrapper {
        width: 600px;
        max-width: 100%;
        margin: 0 auto;
    }
    .block_message .box_text {
        padding: 0 min(calc(25 / 390 * 100vw), 25px) min(calc(42 / 390 * 100vw), 42px);
        margin: min(calc(-48 / 390 * 100vw), -48px) auto 0;
        width: 100%;
    }
    .block_message .box_text h2 {
        font-size: min(calc(36 / 390 * 100vw), 36px);
        margin-bottom: .4722em;
    }
    .block_message .box_text h2 .size_s {
        font-size: .667em;
    }
    .block_message .box_text h2 .en {
        font-size: 1.334em;
        margin-bottom: calc(18px + 0.066312997 * (100vw - 390px));
        margin-left: min(calc(-7 / 390 * 100vw), -7px)
    }
    .block_message .box_text .signature {
        font-size: min(calc(24 / 390 * 100vw), 24px);
        margin-top: .4583em;
    }
}
@media screen and (max-width:390px) {
    .block_message .box_text h2 .en {
        margin-bottom: min(calc(18 / 390 * 100vw), 18px);
    }
}
/**/
.wrapper_site {
    position: relative;
    z-index: 0;
}
.block_float01 {
    width: 100vw;
    padding-top: 12px;
    overflow: hidden;
    position: fixed;
    z-index: 999;
    bottom: 0;
    left: 0;
    transition: .3s;
}
.block_float01 .unit_link_01 {
    transform: translateY(100%);
    transition: .3s;
}
.block_float01.on .unit_link_01 {
    transform: translateY(-12px);
}
.port {
    background: #333;
}
@media screen and (max-width:1280px) {}
@media screen and (max-width:1024px) {}
@media screen and (max-width:767px) {}