@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import "normalize.css";

h1,
h2,
h3,
h4,
h5,
h6,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
pre,
address,
li,
dt,
dd {
    font-size: 160%;
    -webkit-text-size-adjust: none;
    letter-spacing: 0.1em;
}

header,
section,
footer,
aside,
nav,
main,
article,
figure {
    display: block;
}

img {
    vertical-align: bottom;
}

a {
    color: #792849;
}

table {
    width: 100%
}

p {
    margin: 0 0 1.5em;
}

p,
dd,
td,
th,
li {
    line-height: 2.25em;
}

.bold {
    font-weight: bold;
}

.fl {
    float: left;
}

.fr {
    float: right;
}

*,
*:before,
*:after {
    box-sizing: border-box;
}

/*==========================================================================*/
/*                            Container                                     */
/*==========================================================================*/
body {
    color: #4b3014;
    color: #631f3b;
    font-family: "游ゴシック体", "Yu Gothic Medium", "Yu Gothic", YuGothic, 'Noto Sans JP', sans-serif;
}

#wrapper {
    min-width: 1200px;
    overflow: hidden;
}

.container {
    width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}

img {
    max-width: 100%;
    height: auto;
}

/*=======================================Header===================================*/
#header {
    background: #631f3b;
    padding: 15px 30px;
    color: #fff;
}

#header .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

.h_left {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.logo {
    margin: 4px 0 10px;
    width: 380px;
}

.h_txt {
    margin: 4px 0 0 18px;
    background: #fff;
    font-size: 14px;
    color: #631f3b;
    font-weight: 600;
    line-height: 1.8em;
    padding: 2px 5px 1px;
}

#gnavi {
    width: 100%;
}

.gnavi {
    display: flex;
}

.gnavi>li {
    position: relative;
    white-space: nowrap;
}

.gnavi>li:not(:last-child):after {
    content: '｜';
    font-size: 87.5%;
    display: inline-block;
    margin-right: 5px;
}

.gnavi>li>a,
.gnavi>li>span {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-size: 87.5%;
    letter-spacing: 0.1em;
    transition: all 0.3s;
}

.gnavi>li.over>span {
    cursor: context-menu;
}

.submenu {
    position: absolute;
    z-index: 10;
    display: none;
    left: 0;
    margin-top: 17px;
}

.submenu a {
    display: block;
    background: #792849;
    color: #fff;
    font-size: 87.5%;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    position: relative;
    padding: 8px 25px 9px 35px;
    transition: all 0.3s;
    white-space: nowrap;
}

.submenu a:before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border: 2px solid #fff;
    border-radius: 50%;
    left: 20px;
    top: 23px;
}

.h_btn {
    display: flex;
    align-items: center;
}

.h_btn .h_btn_tel a,
.h_btn .h_btn_mail a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #f7f891;
    color: #631f3b;
    text-decoration: none;
    line-height: 1.5em;
    font-size: 110%;
    letter-spacing: 0.1em;
    height: 80px;
    border: 4px solid #d4d632;
    white-space: nowrap;
    padding: 10px 30px;
    transition: all 0.3s;
}

.h_btn li.h_btn_tel a {
    background: #e8d3ca;
    border: 4px solid #C8957E;
}

.h_btn li:not(:last-child) {
    margin-right: 10px;
}

.h_btn a .lager {
    display: block;
    font-weight: 700;
    font-size: 128.57%;
    margin: 2px 0 2px;
}

.h_btn a:before {
    content: '';
    position: relative;
    display: inline-block;
    /*background: url("../images/h_tel.png") no-repeat center center/100% auto;*/
    width: 30px;
    height: 28px;
    flex-shrink: 0;
    margin-right: 30px;
}

.h_btn li.h_btn_tel a:before {
    background: url("../images/h_tel.png") no-repeat center center/100% auto;
    height: 28px;
}

.h_btn li.h_btn_mail a:before {
    background: url("../images/h_mail.png") no-repeat center center/100% auto;
    height: 21px;
}

/*.h_btn li:nth-child(3) a:before {
    background: url("../images/h_line.png") no-repeat center center/100% auto;
    height: 30px;
}*/
.h_btn .h_btn_social a {
    display: block;
    width: 40px;
}

.h_btn .h_btn_social a::before {
    display: none;
}

#header.fixed {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    -webkit-animation: header-fixed 0.6s;
    -moz-animation: header-fixed 0.6s;
    -ms-animation: header-fixed 0.6s;
    animation: header-fixed 0.6s;
}

@keyframes header-fixed {
    0% {
        opacity: 0.5;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
}

@-webkit-keyframes header-fixed {
    0% {
        opacity: 0.5;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
}

@-moz-keyframes header-fixed {
    0% {
        opacity: 0.5;
        -webkit-transform: translateY(-100%);
        -ms-transform: translateY(-100%);
        -moz-transform: translateY(-100%);
        transform: translateY(-100%);
    }

    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        -moz-transform: translateY(0);
        transform: translateY(0);
    }
}

/*=======================================Mainvisual===================================*/
.main_item {
    background: url("../images/idx_slide01.jpg") no-repeat center center/cover;
    /*    height: 970px;*/
    position: relative;
}

.main_item a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}

.main_item.itm02 {
    background-image: url("../images/idx_slide02.jpg");
}

/* .main_item.itm03 {
	background-image: url("../images/idx_slide03.jpg");
} */
.main_item.itm03_1 {
    background-image: url("../images/idx_slide03_1.jpg");
}

.main_item.itm03_2 {
    background-image: url("../images/idx_slide03_2.jpg");
}

.main_item.itm04 {
    background-image: url("../images/idx_slide04.jpg");
}

.main_item.itm05 {
    background-image: url("../images/idx_slide05.jpg");
}

.main_item.itm06 {
    background-image: url("../images/idx_slide06.jpg");
    padding: 50px 0 0 110px;
}

.main_item.itm04 .container,
.main_item.itm05 .container,
.main_item.itm06 .container {
    justify-content: center;
}

/* 240807 */
.main_item.itm06 .itm06-item {
    position: relative;
}

.main_item.itm06 .itm06-txt {
    width: 220px;
    height: 220px;
    /* background: #FFF834; */
    background-image: url('../images/idx_slide06_circle.png');
    background-size: contain;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.5em;
    /* border-radius: 50%; */
    /* border: 6px solid #fff; */

    position: absolute;
    top: 50%;
    transform: translateY(-60%);
    left: -250px;
}

.main_item.itm06 .itm06-txt .small {
    display: block;
    font-size: 14px;
    letter-spacing: 0;
    font-weight: 500;
    margin-top: 3px;
    line-height: 1.5em;
}

/* 240807 */
/* .main_item.itm04 h2, .main_item.itm05 h2 {
		font-size: 0;
	} */
.main_item.itm04 h2 p {
    margin-bottom: 10px;
}

.main_item .container {
    width: 100%;
    max-width: 1630px;
    padding: 0 15px;
    display: flex;
    align-items: center;
    height: 100%;
}

.main_itm03_info,
.main_itm02_info {
    transition: all 0.3s;
}

.main_itm01_info {
    width: 100%;
    text-align: center;
}

.main_itm01_h2 {
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.5em;
    background: #fff;
    display: inline-block;
    padding: 20px 30px 14px;
    margin-bottom: 50px;
}

.main_itm01_h2 .lager {
    font-size: 150%;
    color: #BBAD85;
}

.main_itm01_list {
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}

.main_itm01_list li {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 0.1em;
    line-height: 1.47em;
}

.main_itm01_list li .ttl {
    background: #fff;
    display: flex;
    height: 90px;
    align-items: center;
    justify-content: center;
    width: 280px;
    border-radius: 30px;
    position: relative;
    font-weight: 700;
    padding-bottom: 4px;
}

.main_itm01_list li:first-child .ttl {
    width: 350px;
}

.main_itm01_list li:not(:last-child) {
    margin-right: 51px;
}

.main_itm01_list li .ttl:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #ffffff transparent transparent transparent;
    left: 50%;
    transform: translateX(-50%);
    bottom: -17px;
    pointer-events: none;
}

.main_itm01_list li .img {
    width: 150px;
    height: 150px;
    background: url("../images/idx_itm01_icon01.svg") no-repeat bottom center/70% auto rgba(255, 255, 255, 0.8);
    display: block;
    border-radius: 50%;
    margin: 40px auto 0;
}

.main_itm01_list li:nth-child(2) .img {
    background-image: url("../images/idx_itm01_icon02.svg");
    background-size: 56% auto;
}

.main_itm01_txt {
    font-size: 30px;
    margin: 0;
    background: rgba(148, 138, 126, 0.7);
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1.45em;
    display: inline-block;
    width: 100%;
    max-width: 1000px;
    padding: 28px 20px 30px;
    border-radius: 60px;
}

.main_itm01_txt .lager {
    font-size: 125%;
}

.idx_clr01 {
    color: #F7F891;
}

.main_itm02_note {
    font-size: 40px;
    background: #d12e59;
    color: #fff;
    font-weight: 700;
    line-height: 2em;
    padding: 10px 30px 8px;
    border-radius: 25px;
    margin-bottom: 30px;
    display: inline-block;
}

.main_itm02_note .line {
    border-bottom: 7px solid #f7f891;
}

.main_itm02_h2 {
    font-size: 55px;
    font-weight: 700;
    line-height: 1.45em;
    letter-spacing: 0.05em;
    text-shadow: 0 4px 0px rgba(255, 255, 255, 1);
    margin-bottom: 40px;
}

.idx_clr02 {
    color: #547EA1;
}

.main_itm02_list {
    display: flex;
}

.main_itm02_list li {
    width: 220px;
    height: 220px;
    background: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.5em;
    border-radius: 50%;
    border: 4px solid #FFF834;
}

.main_itm02_list li:not(:last-child) {
    margin-right: 30px;
}

.main_itm02_list li .small {
    display: block;
    font-size: 10px;
    letter-spacing: 0;
    font-weight: 500;
    margin-top: 3px;
    line-height: 1.5em;
}

.main_itm03_note {
    font-size: 28px;
    letter-spacing: 0.1em;
    margin: 0;
    font-weight: 500;
    text-shadow: rgb(255, 255, 255) 1px 0px 0px, rgb(255, 255, 255) 0.540302px 0.841471px 0px, rgb(255, 255, 255) -0.416147px 0.909297px 0px, rgb(255, 255, 255) -0.989992px 0.14112px 0px, rgb(255, 255, 255) -0.653644px -0.756802px 0px, rgb(255, 255, 255) 0.283662px -0.958924px 0px, rgb(255, 255, 255) 0.96017px -0.279415px 0px;
}

.main_itm03_h2 {
    font-size: 48px;
    font-weight: 700;
    line-height: 1.45em;
    margin-bottom: 40px;
}

.main_item.itm03_1 .main_itm03_h2,
.main_item.itm03_2 .main_itm03_h2 {
    text-shadow: rgb(255 255 255) 1px 0px 0px, rgb(255 255 255) 0.540302px 0.841471px 0px, rgb(255 255 255) -0.416147px 0.909297px 0px, rgb(255 255 255) -0.989992px 0.14112px 0px, rgb(255 255 255) -0.653644px -0.756802px 0px, rgb(255 255 255) 0.283662px -0.958924px 0px, rgb(255 255 255) 0.96017px -0.279415px 0px;
}

.main_itm03_h2 .line {
    background-image: linear-gradient(0deg, #f7f891 14.29%, rgba(255, 255, 255, 0) 14.29%, rgba(255, 255, 255, 0) 50%, #f7f891 50%, #f7f891 64.29%, rgba(255, 255, 255, 0) 64.29%, rgba(255, 255, 255, 0) 100%);
    background-size: 108px 108px;
}

.main_itm03_list {
    display: flex;
    margin-bottom: 40px;
}

.main_itm03_list li {
    background: rgba(255, 255, 255, 0.77);
    border: 4px solid #547EA1;
    height: 160px;
    display: flex;
    align-items: center;
    margin-right: 40px;
    font-size: 22px;
    line-height: 1.47em;
    font-weight: 500;
    padding: 20px 28px;
}

.main_itm03_list li:last-child {
    margin-right: 0;
}

.main_itm03_txt {
    margin: 0;
    font-size: 28px;
    background: #547EA1;
    color: #fff;
    display: inline-block;
    padding: 0 20px;
    font-weight: bold;
}

/*=======================================Box01===================================*/
.box01 {
    padding: 0 0 60px;
}

.box01 .idx_h2 {
    margin-bottom: 70px;
}

.box01 .idx_h2 .line {
    color: #ffe200;
}

.idx_h2 {
    text-align: center;
    font-size: 30px;
    line-height: 1.4em;
    margin-bottom: 50px;
    font-weight: 700;
}

.idx_h2 .line {
    background-image: linear-gradient(0deg, #f7f891 14.29%, rgba(255, 255, 255, 0) 14.29%, rgba(255, 255, 255, 0) 50%, #f7f891 50%, #f7f891 64.29%, rgba(255, 255, 255, 0) 64.29%, rgba(255, 255, 255, 0) 100%);
    background-size: 97px 97px;
}

.idx_h2.bg_lightbrown {
    background: #948a7e;
    color: #fff;
    padding: 20px 10px;
    display: block
}

.b01_item {
    border: 4px solid #a32f5f;
    border-radius: 20px;
    margin-bottom: 60px;
    position: relative;
    /* padding: 30px; */
    background: #fff;
    /* display: flex; */
    /* align-items: center; */
    transition: all 0.3s;
}

.b01_item .b01_item_wrapper {
    display: flex;
    align-items: center;
    overflow: hidden;
    padding: 20px 30px;
    position: relative;
    border-radius: 20px 20px 14px 20px;
}


.b01_item:last-child {
    margin-bottom: 0;
}

.b01_item:before {
    content: '';
    position: absolute;
    background: url(../images/b01_num01.png) no-repeat center center/220px auto #fff;
    width: 240px;
    height: 40px;
    left: 10px;
    top: -29px;
    padding: 0 10px;
}

.b01_item:nth-child(2):before {
    background-image: url("../images/b01_num02.png");
}

.b01_item:nth-child(3):before {
    background-image: url("../images/b01_num03.png");
}

.b01_item:nth-child(4):before {
    background-image: url("../images/b01_num04.png");
}

.b01_item:nth-child(5):before {
    background-image: url("../images/b01_num05.png");
}

.b01_item:nth-child(6):before {
    background-image: url("../images/b01_num06.png");
}

.b01_itm_note {
    margin: 0 30px 0 0;
    flex-shrink: 0;
    text-align: center;
    width: 150px;
    line-height: 1.4em;
    font-size: 20px;
}

.b01_itm_note .txt {
    background: #C6BA8D;
    color: #fff;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    border-radius: 25px;
}

.b01_itm_note:after {
    content: '';
    position: relative;
    display: block;
    background: url("../images/b01_icon01.png") no-repeat center center/100% auto;
    width: 100px;
    height: 96px;
    margin: 15px auto 0;
}

.b01_item:nth-child(2) .b01_itm_note:after {
    background-image: url("../images/b01_icon02.png");
    width: 98px;
    height: 101px;
}

.b01_item:nth-child(3) .b01_itm_note:after {
    background-image: url("../images/b01_icon03.png");
    width: 98px;
    height: 101px;
}

.b01_item:nth-child(4) .b01_itm_note:after {
    background-image: url("../images/b01_icon04.png");
    width: 110;
    height: 101px;
}

.b01_item:nth-child(5) .b01_itm_note:after {
    background-image: url("../images/b01_icon05.png");
    width: 110px;
    height: 110px;
}

.b01_item:nth-child(6) .b01_itm_note:after {
    background-image: url("../images/b01_icon06.png");
    width: 98px;
    height: 101px;
}

.b01_itm_ttl {
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5em;
    position: relative;
}

/*=======================================Box02===================================*/
.box02 {
    padding: 20px 0 120px;
}

.box02 .container {
    width: 100%;
    max-width: 1390px;
    padding: 0 15px;
}

.b02_itm_img {
    flex-shrink: 0;
    margin: 0 70px 0 0;
    max-width: 50%;
}

.b02_list {
    padding: 0 60px;
}

.b02_list.slick-initialized .slick-slide {
    margin: 0 10px;
}

.b02_list .slick-arrow {
    position: absolute;
    z-index: 3;
    width: 40px;
    height: 64px;
    border: none;
    background: url(../images/b02_next.svg) no-repeat center center/30px auto #fff;
    top: calc(50% - 27px);
    right: 0;
    text-indent: -50000px;
    cursor: pointer;
    outline: none;
    transition: all 0.3s;
}

.b02_list .slick-prev {
    left: 0;
    right: auto;
    transform: rotateY(180deg);
}

.b02_itm_ttl {
    font-weight: bold;
    line-height: 1.5em;
    font-size: 40px;
    margin-bottom: 20px;
}

.idx_btn {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.idx_btn a {
    display: block;
    font-size: 112.5%;
    background: #631f3b;
    min-width: 300px;
    color: #fff;
    padding: 8px 50px 10px 30px;
    border-radius: 30px;
    position: relative;
    transition: all 0.3s;
    text-decoration: none;
}

.idx_btn a:after {
    content: '';
    position: absolute;
    background: url("../images/idx_arr.svg") no-repeat center center/100% auto;
    width: 20px;
    height: 20px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.b02_itm_txt {
    margin-bottom: 40px;
}

.idx_btn_r {
    justify-content: flex-end;
}

/*=======================================Box03===================================*/
.box03 {
    padding: 0 0 80px;
}

.box03.box03_cus {
    padding-bottom: 0;
    margin-top: 30px;
}

.b03_top {
    background: #6D6D6D;
    color: #fff;
    padding: 45px 0 30px;
}

.b03_top .idx_h2 {
    text-align: left;
    margin-bottom: 20px;
    position: relative;
}

.b03_top .idx_h2 .lager {
    font-size: 160%;
    color: #F6F791;
}

.b03_top .idx_h2 .lager .txt {
    background-image: linear-gradient(0deg, #bd4254 11.54%, #6d6d6d 11.54%, #6d6d6d 50%, #bd4254 50%, #bd4254 61.54%, #6d6d6d 61.54%, #6d6d6d 100%);
    background-size: 130px 130px;
}

.b03_top .idx_h2 .lager:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url(../images/b05_icon02.svg) no-repeat center center/100% auto;
    width: 35px;
    height: 45px;
    margin-right: 5px;
    margin-left: 10px;
}

.b03_top_check {
    display: flex;
    flex-wrap: wrap;
}

.b03_top_check li {
    font-size: 26px;
    font-weight: bold;
}

.b03_top_check li .big {
    font-size: 130%;
}

.b03_top_check li .percent {
    font-size: 140%;
    color: #f6f791;
    line-height: 1.0;
    letter-spacing: -0.03em;
    display: inline-block;
    margin-bottom: -1px
}

.b03_top_check li:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/b04_check.png") no-repeat center center/100% auto;
    width: 37px;
    height: 34px;
    margin-right: 10px;
    top: 6px;
}

.b03_top_check li:not(:last-child) {
    margin-right: 40px;
}

.b03_top .idx_h2 .note {
    position: absolute;
    background: #f5f78b;
    width: 140px;
    height: 80px;
    text-align: center;
    color: #333;
    font-size: 18px;
    line-height: 1.5em;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    padding: 5px;
    letter-spacing: 0.05em;
    font-weight: bold;
    top: -90px;
    left: -85px;
}

.b03_top .idx_h2 .note:after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 10px 0 10px;
    border-color: #f5f78b transparent transparent transparent;
    right: 20px;
    bottom: -16px;
    transform: rotate(-30deg);
    pointer-events: none;
}

.b03_top .idx_h2 .note_lager {
    font-size: 160%;
}

.b03_top .container {
    position: relative;
}

.b03_top_info {
    position: absolute;
    right: 0;
    bottom: 0;
    background: #fff;
    border: 10px solid #707070;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #4b3014;
    width: 270px;
    height: 260px;
}

.b03_top_info_list li {
    font-weight: bold;
    position: relative;
    padding-left: 15px;
}

.b03_top_info_list li:before {
    content: '';
    position: absolute;
    width: 6px;
    height: 6px;
    border: 2px solid;
    border-radius: 50%;
    top: 15px;
    left: 0;
}

.b03_top_info_list {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.b03_top_info_txt {
    margin: 10px 0 0;
    line-height: 1.7em;
    font-weight: 500;
    font-size: 18px;
}

.b03_price {
    max-width: 1100px;
    margin: 110px auto 50px;
    text-align: center;
    border: 5px solid #d12e59;
    border-radius: 40px;
    font-size: 35px;
    line-height: 1.5em;
    font-weight: bold;
    padding: 25px 10px 20px;
}

.b03_price .lager {
    font-size: 120%;
}

/*=======================================Box03 new===================================*/

.box03_new {
    background: #3D3D3D;
    padding-bottom: 80px;
}

.box03_new .balloon {
    border: 6px solid #3D3D3D;
    border-radius: 5px;
    background: #FFE747;
    width: 428px;
    height: 70px;
    color: #202020;
    position: relative;
    font-size: 26px;
    font-weight: bold;
    margin: 0 auto 0;
    top: -35px;
    text-align: center;
}

.box03_new .balloon .large {
    font-size: 30px;
}

.box03_new .balloon::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 32px 8px 0px 8px;
    border-color: #ffe747 transparent transparent transparent;
    transform: rotate(0deg);
    left: calc(50% - 8px);
    bottom: -30px;
}

.box03_new h3 {
    color: #fff;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
}

.box03_new h3 .uline {
    color: #FFDD00;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 35%, #D12E59 35%);
    font-size: 46px;
}

.box03_new h3 .uline span {
    position: relative;
}

.box03_new h3 .uline span::before {
    content: '';
    position: absolute;
    width: 9px;
    height: 9px;
    background: #FFDD00;
    border-radius: 50%;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);
}

.box03_new .subtit {
    color: #fff;
    text-align: center;
    font-size: 24px;
}

.box03_new .subtit span {
    display: block;
    line-height: 1.6;
}

.box03_new .subtit .sm {
    font-size: 17px;
}

.box03_new .flex_col {
    display: flex;
    justify-content: space-between;
    width: 1024px;
    margin: 0 auto;
}

.box03_new .flex_col .col_l {
    width: 460px;
}

.box03_new .flex_col .col_r {
    width: 530px;
    background: #fff;
    border-radius: 10px;
    padding: 20px;
}

.box03_new .flex_col .col_l .ttl {
    color: #fff;
    font-size: 34px;
    font-weight: bold;
    letter-spacing: 0.05em;
    margin-bottom: 10px;
}

.box03_new .flex_col .col_l .ttl .large01 {
    font-size: 45px;
    position: relative;
}

.box03_new .flex_col .col_l .ttl .large01::after {
    content: '';
    background: url("../images/icon_2line.png") no-repeat 0 0;
    width: 50px;
    height: 50px;
    position: absolute;
    right: -22px;
    top: -25px;
}

.box03_new .flex_col .col_l .ttl .large02 {
    font-size: 39px;
}

.box03_new .flex_col .col_l .ttl .large02 span {
    position: relative;
}

.box03_new .flex_col .col_l .ttl .large02 span::before {
    content: '';
    position: absolute;
    width: 7px;
    height: 7px;
    background: #fff;
    border-radius: 50%;
    top: -7px;
    left: 50%;
    transform: translateX(-50%);
}

.box03_new .yellow {
    color: #FFDD00;
}

.box03_new .col_l dl {
    border-radius: 0 50px 50px 0;
    overflow: hidden;
    color: #0C0C0C;
    margin-bottom: 18px;
    box-shadow: 3px 3px #000;
}

.box03_new .col_l dl:last-child {
    margin-bottom: 0;
}

.box03_new .col_l dl dt {
    background: #fff;
    font-size: 20px;
    font-weight: bold;
    display: flex;
    align-items: flex-end;
    padding: 0 15px 3px;
    min-height: 50px;
    letter-spacing: 0.05em;
}

.box03_new .col_l dl dd {
    background: #FFDD00;
    line-height: 1.8;
    padding: 0 15px;
    font-size: 14px;
}

.box03_new .col_l dl dt .num {
    color: #D12E59;
    font-size: 28px;
    width: 50px;
}

.box03_new .col_l dl dt .txt {}

.box03_new .col_l dl dt .txt .red {
    color: #D12E59;
    font-size: 24px;
}

.box03_new .col_l dl dt .txt .red .num {
    font-size: 36px;
    position: relative;
    bottom: -3px;
}

.box03_new .col_l dl dt .num.nth3 {
    position: relative;
    bottom: -3px;
}

.box03_new .flex_col .col_r .ttl {
    text-align: center;
    line-height: 1.6;
    font-weight: bold;
}

.box03_new .flex_col .col_r .ttl>span {
    display: block;
}

.box03_new .flex_col .col_r .ttl .pink {
    color: #F2005B;
    font-size: 20px;
}

.box03_new .flex_col .col_r .img {
    margin: 0 0 0;
    text-align: center;
}

/*=======================================// Box03 new===================================*/

.idx_info {
    max-width: 1200px;
    margin: 30px auto 0;
    display: flex;
    justify-content: space-between;
    background: #fff;
    padding: 30px 30px 0;
    border-radius: 30px;
}

#footer .idx_info {
    margin-top: 0;
    padding: 30px;
}

.idx_info li {
    /*width: 33.33%;*/
    width: 50%;
    position: relative;
    line-height: 1.25em;
}

.idx_info li:not(:last-child):after {
    content: '';
    position: absolute;
    width: 3px;
    height: 100%;
    background: #631f3b;
    top: 0;
    right: -1px;
    border-radius: 3px;
    z-index: 3;
    pointer-events: none;
}

.idx_info a {
    display: flex;
    text-decoration: none;
    height: 100%;
    align-items: center;
    font-size: 87.5%;
    justify-content: center;
    position: relative;
    z-index: 2;
}

.idx_info a:after {
    width: 100%;
    height: 100%;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #f3eee1;
    z-index: -2;
    pointer-events: none;
    transition: all 0.5s;
    transform: scale(0.5, 0.5);
    opacity: 0;
}

.idx_info a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/b03_tel.png") no-repeat center center/100% auto;
    width: 50px;
    height: 50px;
    margin-right: 10px;
}

.idx_info li .lager {
    display: block;
    font-size: 157.14%;
    font-weight: 700;
    line-height: 1.3em;
    margin-bottom: 7px;
}

.idx_info li:nth-child(2) a:before {
    background-image: url("../images/b03_mail.png");
    margin-right: 5px;
}

.idx_info li:nth-child(3) a:before {
    background-image: url("../images/b03_line.png");
    margin-right: 15px;
}

/*=======================================Box04===================================*/
.box04 {
    padding: 100px 0 60px;
}

.box04.mar_t50 {
    /* margin-top: 50px; */
    padding-bottom: 0;
}

.b04_top {
    background: url("../images/b04_bg.jpg") no-repeat center center/cover;
    min-height: 400px;
}

.b04_top .container {
    display: flex;
    justify-content: flex-end;
}

.b04_top_main {
    width: calc(50% + 50px);
    position: relative;
    padding-top: 82px;
}

.b04_top_main:before {
    content: '';
    position: absolute;
    background: url("../images/b04_en.png") no-repeat center center/100% auto;
    width: 193px;
    height: 38px;
    right: 0;
    top: -17px;
}

.b04_top_main .idx_h2 {
    text-align: left;
    margin-bottom: 33px;
}

.b04_top_check {
    background: #fff;
    border: 4px solid #beaf87;
    border-radius: 20px;
    padding: 51px 60px 56px;
    margin-bottom: -45px;
}

.b04_top_check li {
    font-size: 20px;
    font-weight: bold;
    position: relative;
    padding-left: 50px;
    margin-bottom: 15px;
}

.b04_top_check li:before {
    content: '';
    position: absolute;
    background: url("../images/b04_check.png") no-repeat center center/100% auto;
    width: 37px;
    height: 34px;
    left: 0;
    top: 8px;
}

.b04_top_check li:last-child {
    margin-bottom: 0;
}

.b04_row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}

.box04.mar_t50 .b04_row {
    margin-bottom: 0;
}

.b04_col {
    width: calc(50% - 30px);
    background: #668BA8;
    padding: 7px;
    border-radius: 30px;
    position: relative;
    transition: all 0.3s;
}

.b04_col a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}

.b04_main {
    margin-top: 0px;
}

.b04_main.mar_t130 {
    margin-top: 130px;
}

.b04_col_ttl {
    text-align: center;
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 30px;
    margin-top: 20px;
}

.b04_col_note {
    margin: 0;
    position: absolute;
    width: 150px;
    height: 150px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: #fff;
    border-radius: 50%;
    border: 7px solid #668BA8;
    top: -40px;
    left: 20px;
    font-size: 22px;
    line-height: 1.5em;
    font-weight: bold;
}

.b04_col_note .lager {
    display: block;
    font-size: 150%;
    line-height: 1.3em;
    margin-bottom: -5px;
}

.b04_col_img {
    margin: 0 auto -67px;
    max-width: 90%;
    text-align: center;
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 1;
}

.b04_col_img li {
    width: 33%;
    text-align: center;
    color: #fff;
    position: relative;
}

.b04_col_img li:before {
    content: '';
    position: relative;
    background: url("../images/b04_img01.svg") no-repeat bottom center/95% auto;
    width: 115px;
    height: 118px;
    display: block;
    margin: 0 auto -20px;
}

.b04_col_img li .ttl {
    display: inline-block;
    background: #493011;
    line-height: 1.5em;
    padding: 5px 10px 3px;
    position: relative;
    z-index: 2;
    font-size: 85%;
    font-weight: bold;
}

.b04_col_img li:nth-child(2):before {
    background-image: url("../images/b04_img02.svg");
    background-size: 100% auto;
    background-position: top center;
}

.b04_col_img li:nth-child(3):before {
    background-image: url("../images/b04_img03.svg");
    background-size: 100% auto;
    background-position: top center;
}

.b04_col_img li:after {
    content: '';
    position: absolute;
    white-space: nowrap;
    font-size: 90%;
    font-weight: bold;
    color: #000;
    letter-spacing: 0;
    padding: 0 5px;
    top: 20px;
    left: calc(100% - 36px);
}

.b04_col_img li:nth-child(1):after {
    content: '売りたい！';
    background: url(../images/b04_arr01.svg) no-repeat bottom center/100% auto;
}

.b04_col_img li:nth-child(2):after {
    content: '買いたい！';
    background: url(../images/b04_arr02.svg) no-repeat bottom center/100% auto;
}

.b04_col_img.col2 li {
    width: 45%;
}

.b04_col_img.col2 li:nth-child(2):after {
    left: auto;
    right: calc(100% - 45px);
    top: 75px;
    background-position: top center;
}

.b04_col_img.col2 li:nth-child(2):before {
    background-image: url("../images/b04_img04.svg");
    background-size: 100% auto;
    background-position: top center;
}

.b04_col_txt {
    background: #fff;
    border-radius: 30px;
    padding: 85px 30px 30px;
    height: calc(100% - 177px);
}

.b04_main.mar_t130 .b04_col_txt {
    overflow: hidden;
    position: relative;
    border-radius: 30px 30px 7px 30px;
}

.b04_main.mar_t130 .b04_col_txt::before {
    content: 'Click';
    position: absolute;
    width: 80px;
    height: 80px;
    background: #668BA8;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    color: #fff;
    font-size: 16px;
    letter-spacing: 1px;
    border-radius: 50% 50% 100% 50%;
    font-weight: bold;
    padding: 0 30px 38px 0;
    bottom: -25px;
    right: -25px;
    transition: all 0.3s;
}

.b04_main.mar_t130 .b04_col_txt.cl_pink::before {
    background: #d12e59;
}

.b04_col_txt p:last-child {
    margin: 0;
}

.b04_col_img img {
    max-height: 163px;
    width: auto;
}

.b04_col:nth-child(2) {
    background: #d12e59;
}

.b04_col:nth-child(2) .b04_col_note {
    border-color: #d12e59;
}

.b04_list {
    border: 3px solid #948A7E;
    border-radius: 30px;
    position: relative;
    margin-top: 30px;
    padding-top: 30px;
}

.b04_list_item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.b04_list_item li {
    width: 33.33%;
    text-align: center;
    font-size: 22px;
    line-height: 1.46em;
    margin-bottom: 73px;
}

.b04_list_ttl {
    margin: 0;
    background: #948A7E;
    text-align: center;
    color: #fff;
    font-size: 30px;
    font-weight: bold;
    position: absolute;
    top: -36px;
    left: 50%;
    transform: translateX(-50%);
    width: 600px;
    border-radius: 40px;
}

.b04_list_item a {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    font-weight: 600;
}

.b04_list_item a .ttl {
    font-size: 109.09%;
    color: #631f3b;
    font-weight: bold;
    margin: 0 0 17px;
}

.b04_list_item .img {
    width: 180px;
    height: 180px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #e8d3ca;
    border-radius: 50%;
    margin-bottom: 17px;
    font-weight: 500;
    transition: all 0.3s;
    position: relative;
}

.b04_list_item .img::after {
    content: '';
    width: 10px;
    height: 10px;
    border-right: 3px solid #fff;
    border-bottom: 3px solid #fff;
    position: absolute;
    bottom: 13px;
    right: 24px;
    transform: rotate(-45deg);
    transition: all 0.3s;
}

.b04_list_item .img::before {
    content: '';
    width: 36px;
    height: 36px;
    background-color: #bbad85;
    position: absolute;
    bottom: 0;
    right: 10px;
    border-radius: 50%;
    transition: all 0.3s;
}

.b04_list_item a:hover .img::before {
    background-color: #ebe5d6;
}

.b04_list_item a:hover .img::after {
    border-color: #948A7E;
}

/*=======================================Box05===================================*/
.box05 {
    padding: 150px 0 100px;
}

.box05-ttl h3 {
    text-align: center;
    font-size: 36px;
    line-height: 1.4em;
    margin-bottom: 50px;
    font-weight: 700;
}

.b05_main {
    position: relative;
    z-index: 2;
    padding: 1px 0 80px;
    margin-bottom: 30px;
}

.b05_main:after {
    content: '';
    position: absolute;
    width: 100vw;
    min-width: 1200px;
    height: 100%;
    background: #e8d3ca;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -2;
    pointer-events: none;
}

.b05_img {
    margin: -151px -360px 120px 0;
    position: relative;
}

.b05_img:before {
    content: '';
    position: absolute;
    background: url("../images/b05_en.png") no-repeat center center/100% auto;
    width: 320px;
    height: 88px;
    left: -45px;
    bottom: -65px;
}

.b05_check {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 40px;
}

.b05_check li {
    font-size: 24px;
    font-weight: bold;
}

.b05_check li:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/b04_check.png") no-repeat center center/100% auto;
    width: 37px;
    height: 34px;
    margin-right: 10px;
    top: 6px;
}

.b05_check li:not(:last-child) {
    margin-bottom: 10px;
}

.b05_main .idx_h2 {
    margin-bottom: 20px;
}

.b05_list {
    display: flex;
    justify-content: center;
    text-align: center;
    margin: 0 0 50px;
}

.b05_list li {
    width: 50%;
    font-size: 22px;
    font-weight: bold;
    color: #631f3b;
    line-height: 1.46em;
    margin: 0 25px;
}

.b05_list li:before {
    content: '';
    position: relative;
    display: block;
    width: 180px;
    height: 180px;
    background: url("../images/b05_icon01.svg") no-repeat center center/78px auto #fbfbfb;
    border-radius: 50%;
    margin: 0 auto 18px;
}

.b05_list li:nth-child(2):before {
    background-image: url("../images/b05_icon02.svg");
    background-size: 61px auto;
}

.b05_list li:nth-child(3):before {
    background-image: url("../images/b05_icon03.svg");
    background-size: 80px auto;
}

.b05_txt {
    margin: 0;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    line-height: 1.47em;
}

.idx_btn a:not(:last-child) {
    margin-right: 30px;
}

/*=======================================Box06===================================*/
.box06 {
    padding-bottom: 100px;
}

.idx_clr03 {
    color: #631f3b;
}

.idx_h2 .small {
    display: block;
    font-size: 66.67%;
    font-weight: 500;
    margin-top: -6px;
}

.b06_list {
    display: flex;
    justify-content: space-between;
}

.b06_list li {
    width: 100%;
}

.b06_list a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    height: 430px;
    color: #fff;
    font-size: 175%;
    position: relative;
    z-index: 2;
    overflow: hidden;
    padding: 10px;
    text-align: center;
    background: #000;
}

.b06_list a:after {
    content: '';
    position: absolute;
    background: url("../images/b06_img01.jpg") no-repeat center center/cover;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -2;
    pointer-events: none;
    transition: all 0.5s;
}

.b06_list li:nth-child(2) a:after {
    background-image: url("../images/b06_img02.jpg");
}

.b06_list li:nth-child(3) a:after {
    background-image: url("../images/b06_img03.jpg");
}

.box06 .idx_btn {
    justify-content: center;
    margin-top: 40px;
}

.box06 .idx_h2 {
    margin-bottom: 39px;
}

/*=======================================Box07===================================*/
.box07 {
    padding: 100px 0 30px;
    /*margin-top: 80px;*/
}

.b07_info:after {
    content: '';
    position: absolute;
    width: 100vw;
    min-width: 1200px;
    height: 100%;
    background: #e8d3ca;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -2;
    pointer-events: none;
}

.b07_info {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0 0 91px;
    margin-bottom: 30px;
}

/*.b07_info:before {
	content: '';
	position: absolute;
	background: url("../images/b07_en.svg") no-repeat center center/100% auto;
	width: 530px;
	height: 63px;
	top: -30px;
	left: -150px;
}*/
.b07_img {
    margin: -80px 0 0;
    flex-shrink: 0;
    width: 50%;
    font-weight: bold;
}

.b07_img img {
    border-radius: 20px;
    display: block;
    margin-bottom: 9px;
}

.box07 .idx_h2 {
    color: #631f3b;
    text-align: left;
    margin-left: -100px;
    margin-bottom: 23px;
}

.b07_main {
    padding-top: 91px;
}

.b07_txt {
    margin: 0;
    max-width: 500px;
    font-weight: bold;
}

.box07 .idx_btn {
    justify-content: center;
}

/*=======================================Box08===================================*/
.box08 {
    padding: 100px 0;
    background-color: #e8d3ca;
}

.box08 .container {
    width: 100%;
    max-width: 1500px;
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.b08_h2 {
    margin: 0 auto 30px;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5em;
}

.b08_h2:before {
    content: '';
    position: relative;
    display: block;
    background: url("../images/b08_en.png") no-repeat center center/100% auto;
    width: 109px;
    height: 30px;
    margin: 0 0 13px -44px;
}

.b08_main {
    width: 700px;
    margin-top: 53px;
}

.b08_btn {
    margin: 0;
    position: absolute;
    left: 0;
    top: 128px;
}

.b08_btn a {
    display: block;
    background: url("../images/b08_arr.svg") no-repeat right 15px center/7px auto #beaf87;
    text-decoration: none;
    color: #fff;
    width: 160px;
    border-radius: 30px;
    padding: 4px 20px 2px;
    transition: all 0.3s;
}

.b08_list li {
    display: flex;
    border-top: 1px solid #b5b2a5;
    padding: 18px 20px 19px;
}

.b08_list li:last-child {
    border-bottom: 1px solid #b5b2a5;
}

.b08_list .date {
    flex-shrink: 0;
    width: 140px;
}

.b08_list a {
    text-decoration: none;
    width: 100%;
}

.box08.box08_cus .container {
    flex-direction: column;
    align-items: center;
    max-width: 1200px;
}

.box08.box08_cus .idx_btn {
    margin-top: 30px;
}

.box08.box08_cus .b08_main {
    width: 100%;
    display: flex;
    gap: 30px;
}

.box08.box08_cus .b08_main .b08_col:first-child {
    width: 40%;
}

.box08.box08_cus .b08_main .b08_col:last-child {
    width: 60%;
    display: flex;
    flex-direction: column;
}

.box08.box08_cus .b08_main .b08_col.w100 {
    width: 100%;
}

.box08.box08_cus .b08_main .b08_col .b04_col {
    width: 100%;
    background-color: #d12e59;
}

.box08.box08_cus .b08_main .b08_col:first-child .b04_col_note {
    border-color: #d12e59;
}

.b08_col .b04_col .b04_col_txt {
    overflow: hidden;
    position: relative;
    border-radius: 30px 30px 7px 30px;
    padding: 75px 25px 18px;
}

.b08_col .b04_col .b04_col_txt::before {
    content: 'Click';
    position: absolute;
    width: 80px;
    height: 80px;
    background: #d12e59;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    color: #fff;
    font-size: 16px;
    letter-spacing: 1px;
    border-radius: 50% 50% 100% 50%;
    font-weight: bold;
    padding: 0 30px 38px 0;
    bottom: -25px;
    right: -25px;
    transition: all 0.3s;
}

.b08_col_ttl {
    margin: 0 auto 30px;
    display: block;
    font-size: 112.5%;
    background: #631f3b;
    min-width: 300px;
    width: max-content;
    color: #fff;
    padding: 6px 30px 3px 30px;
    border-radius: 30px;
    position: relative;
    transition: all 0.3s;

    font-size: 22px;
    font-weight: bold;
    text-align: center;
}

/*.b08_col_ttl:hover{ background-color: #bbad85;}*/
.b08_col_ttl a {
    color: #fff;
    text-decoration: none;
}

.b08_col .b04_col_ttl {
    margin-top: 15px;
    font-size: 30px;
    margin-bottom: 0;
}

.b04_col_img {
    max-width: 85%;
}

.box08.box08_cus .b08_list {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    gap: 30px;
}

.box08.box08_cus .b08_list li {
    width: calc(100% / 3 - 20px);
    display: flex;
    flex-direction: column;
    background-color: #fff;
    border: 1px solid #b5b2a5;
    padding: 0;
}

.box08.box08_cus .b08_list li a {
    padding: 15px 20px 10px;
}

.box08.box08_cus .b08_list li a span {
    display: block;
}

.box08.box08_cus .b08_list li a span.ttl {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.box08.box08_cus .b08_list li a span.thumbnail {
    height: 190px;
    width: 100%;
    background: #b5b2a5;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all ease 0.3s;
    margin-bottom: 5px;
}

.box08.box08_cus .b08_list li a:hover span.thumbnail {
    opacity: .8;
}

.box08.box08_cus .b08_list li a span.thumbnail img {
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
}

/*=======================================Box09===================================*/
.box09 {
    padding: 50px 0 0;
}

/*=======================================Box09===================================*/
.box10 {
    padding: 0 0 120px;
}

.box10 .b10-ttl {
    background: #6D6D6D;
    color: #fff;
    padding: 45px 0 30px;
    margin-bottom: 50px;
}

.box10 .b10-ttl h3 {
    font-size: 36px;
    line-height: 1.4em;
    font-weight: 700;
    text-align: center;
}

.box10 h4 {
    font-size: 26px;
    color: #631f3b;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 20px;
}

.box10 .image_r {
    margin: 0 0 0 45px;
}

.b10_item {
    display: flex;
    align-items: center;
}

.b10_item .b10_itm_img {
    flex-shrink: 0;
    margin: 0 70px 0 0;
    max-width: 50%;
}

.b10_itm_txt {
    /* margin-bottom: 40px; */
}

.b10-sec03 {}

.b10-sec03-content {
    padding: 30px 50px;
    background-color: #792849;
    text-align: center;
}

.b10-sec03-content p {
    font-size: 24px;
    font-weight: bold;
    line-height: 2.25em;
    color: #fff;
}

/*=======================================Footer===================================*/
.f_txt {
    background: #d12e59;
    color: #fff;
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    line-height: 1.6em;
    padding: 20px 15px 15px;
    max-width: 900px;
    margin: 50px auto;
    border-radius: 30px;
}

.f_txt .lager {
    font-size: 120%;
}

.f_map_add {
    margin: 0 auto;
    font-size: 14px;
    line-height: 1.86em;
    max-width: 1200px;
    font-weight: bold;
}

.footer_map iframe {
    width: 100%;
    height: 430px;
    margin-bottom: 20px;
}

.footer_map {
    padding: 0 0 24px;
}

.totop {
    margin: 0;
    text-align: center;
    position: fixed;
    right: 30px;
    bottom: 30px;
    z-index: 10;
}

.totop a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background: #792849;
    text-decoration: none;
    color: #fff;
    transition: all 0.3s;
    width: 80px;
    height: 80px;
    font-size: 65%;
    line-height: 1.5em;
    border-radius: 50%;
    border: 1px solid #fff;
}

.totop a:before {
    content: '';
    position: relative;
    display: block;
    background: url("../images/totop.svg") no-repeat center center/100% auto;
    width: 20px;
    height: 12px;
    margin: 0 auto 5px;
}

.footer_link {
    background: #631f3b;
    padding: 71px 0 82px;
    color: #fff;
}

.footer_link .container {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

.footer_link .container .f_pdf_link {
    width: 100%;
    text-align: center;
    margin: 30px 0 0;
}

.footer_link .container .f_pdf_link a {
    color: #fff;
    text-decoration: none;
    display: inline-block;
    transition: all ease .4s;
}

.footer_link .container .f_pdf_link a:hover {
    transform: translateY(-5px);
}

.f_info li {
    font-size: 14px;
    line-height: 1.86em;
    margin-bottom: 18px;
}

.f_info li:last-child {
    margin-bottom: 0;
}

.f_info {
    /*margin-bottom: 35px;*/
    margin-bottom: 25px;
}

.f_btn {
    margin: 0;
}

.f_btn a {
    display: flex;
    width: 310px;
    justify-content: center;
    align-items: center;
    height: 80px;
    background: #beaf87;
    text-decoration: none;
    color: #fff;
    font-weight: 700;
    border: 4px solid #c7bb8d;
}

.f_btn a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/icon_target.png") no-repeat center center/100% auto;
    width: 16px;
    height: 16px;
    margin-right: 10px;
}

.f_link {
    display: flex;
    padding-right: 9px;
}

.f_link_list>li {
    line-height: 1.7em;
}

.f_link_list>li>a,
.f_link_list>li>span {
    display: inline-block;
    text-decoration: none;
    color: #fff;
    font-size: 87.5%;
    font-weight: 500;
    font-weight: bold;
}

.f_link_list>li:not(:last-child) {
    margin-bottom: 12px;
}

.f_link_sub a {
    display: inline-block;
    font-size: 13px;
    text-decoration: none;
    color: #fff;
}

.f_link_list>li>span {
    margin-bottom: 1px;
}

.f_link_sub li {
    margin: 0 0 2px;
    line-height: 1.5em;
}

.f_link_list:nth-child(2)>li:not(:last-child) {
    margin-bottom: 27px;
}

.f_link_sub {
    padding-left: 15px;
}

.f_link_list:nth-child(2) {
    margin-right: 56px;
}

.f_link_list:nth-child(1) {
    margin-right: 33px;
}

.f_link_list li.contact a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/f_icon01.png") no-repeat center center/100% auto;
    width: 15px;
    height: 15px;
    margin-right: 5px;
    top: 2px;
}

.f_link_list li.info a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url("../images/f_icon02.png") no-repeat center center/100% auto;
    width: 15px;
    height: 15px;
    margin-right: 5px;
    top: 2px;
}

.copyright {
    margin: 0;
    text-align: center;
    background: #a32f5f;
    color: #fff;
    font-size: 14px;
    padding: 15px 0;
}

.f_fixed {
    position: fixed;
    right: 0;
    bottom: 150px;
    z-index: 5;
}

.f_fixed a {
    width: 65px !important;
    height: 250px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    text-decoration: none;
    background: #4cc764;
    font-size: 87.5%;
    line-height: 1.3em;
    transition: all 0.3s;
    writing-mode: vertical-lr;
    text-orientation: upright;
    border-radius: 5px 0 0 5px;
}

.f_fixed .btn_fixed_ins a {
    font-size: 18px;
    letter-spacing: 0;
}

.f_fixed .btn_fixed_ins a img {
    max-width: 50px;
}

.f_fixed .btn_fixed_ins a span {
    font-weight: 700;
    color: #fff;
}

.f_fixed .btn_fixed_ins a span.fs_m {
    font-weight: 400;
    font-size: 87.5%;
}

.f_fixed li:not(:last-child) {
    margin-bottom: 10px;
}

.f_fixed .lager {
    display: block;
    font-size: 171.42%;
    font-weight: bold;
    line-height: 1.17em;
    margin: 7px 0 4px;
}

.idx_clr04 {
    color: #d12e59;
}

.f_fixed li:nth-child(2) a {
    border-color: #d12e59;
    background: #D12E59;
    color: #fff;
    font-weight: bold;
    letter-spacing: 0;
    font-size: 18px;
}

.f_fixed li:nth-child(2) a span.txt-inner {
    font-size: 20px;
}

.f_fixed li a {
    position: relative;
}

.f_fixed li a:before {
    content: '';
    position: absolute;
    right: 10px;
    bottom: 10px;
    width: 0;
    height: 0;
    border-bottom: 8px solid #fff;
    border-left: 8px solid transparent;
}

/*=================================Under=========================================*/
section,
.section {
    margin: 0 0 100px;
}

.image_l {
    float: left;
    margin: 0 50px 0 0;
}

.image_r {
    float: right;
    margin: 0 0 0 50px;
}

.under #mainvisual {
    height: 400px;
    display: flex;
    align-items: center;
    color: #fff;
    text-align: center;
    position: relative;
    padding-bottom: 80px;
}

.under #mainvisual:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -2;
    background: url("../images/under_main.jpg") no-repeat top center/cover;
    pointer-events: none;
}

.under #mainvisual h2 {
    font-size: 40px;
    font-weight: bold;
    line-height: 1.5em;
    text-shadow: 0px 0px 10px rgba(131, 122, 109, 0.5);
}

.under #mainvisual h2:after {
    content: '';
    position: relative;
    display: block;
    background: url("../images/under_en.png") no-repeat center center/100% auto;
    width: 174px;
    height: 51px;
    margin: -5px auto 0;
}

.under #main {
    position: relative;
}

.under #main:after {
    content: '';
    position: absolute;
    width: 100%;
    height: calc(100% + 1200px);
    background: url(../images/under_bg.jpg) top -50px center #fff;
    z-index: -1;
    pointer-events: none;
    clip-path: polygon(50% 0%, 100% 100px, 100% 100%, 0 100%, 0 100px);
    top: -100px;
    left: 0;
}

.under #content {
    max-width: 1230px;
    margin: 0 auto;
    padding: 0 15px 100px;
}

.under_boxh3 {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.under h3 {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.63em;
    margin-bottom: 34px;
}

.under h3 span {
    background: #f7f891;
    padding: 0 3px;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.under_frame {
    background: #631f3b;
    color: #fff !important;
    padding: 60px;
    position: relative;
    z-index: 2;
    text-align: left;
    margin-top: 60px;
}

.under_frame:after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    pointer-events: none;
    border: 1px solid #631f3b;
    top: 5px;
    left: 5px;
}

.under_frame:before {
    content: '';
    position: absolute;
    background: url("../images/under_contents.png") no-repeat center center/100% auto;
    width: 158px;
    height: 34px;
    right: 30px;
    top: 25px;
    pointer-events: none;
    z-index: -1;
}

.under_list {
    overflow: hidden;
    background: #e8d3ca;
    padding: 28px 40px;
    border-radius: 10px;
}

.under_list:not(:last-child) {
    margin-bottom: 30px;
}

.under_list li {
    font-weight: bold;
    line-height: 1.7em;
    position: relative;
    padding-left: 20px;
    margin: 0 0 3px;
}

.under_list li:last-child {
    margin-bottom: 0;
}

.under_list li:before {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border: 2px solid #631f3b;
    border-radius: 50%;
    left: 0;
    top: 8px;
}

.under_frame .under_list {
    background: transparent;
    padding: 0;
}

.under_frame .under_list li:before {
    border-color: #fff;
}

.under_frame .under_list li {
    font-weight: 500;
}

.under_frame .under_list li a {
    color: #fff;
    text-decoration: none;
}

.topic_path {
    display: flex;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 0 auto 60px;
}

.topic_path li {
    font-size: 14px;
}

.topic_path li:not(:last-child):after {
    content: '';
    position: relative;
    background: url("../images/b02_next.svg") no-repeat center center/100% auto;
    width: 6px;
    height: 14px;
    display: inline-block;
    margin: 0 13px;
}

.under h4 {
    display: flex;
    justify-content: center;
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 43px;
    align-items: center;
}

.under h4:before,
.under h4:after {
    content: '';
    position: relative;
    display: inline-block;
    background: #631f4d;
    width: 40px;
    height: 4px;
    border-radius: 4px;
}

.under h4:before {
    margin-right: 15px;
}

.under h4:after {
    margin-left: 15px;
}

.under h5 {
    font-size: 24px;
    color: #631f3b;
    font-weight: bold;
    line-height: 1.5em;
    margin-bottom: 20px;
}

.under_anc {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.under_anc:not(:last-child) {
    margin-bottom: 30px;
}

.under_anc li {
    max-width: 350px;
    width: 100%;
    margin: 0 5px 10px;
}

.under_anc a {
    display: flex;
    text-align: left;
    align-items: center;
    font-size: 112.5%;
    background: #631f3b;
    color: #fff;
    padding: 12px 50px 14px 30px;
    border-radius: 30px;
    position: relative;
    transition: all 0.3s;
    line-height: 1.5em;
    height: 100%;
}

.under_anc a:after {
    content: '';
    position: absolute;
    background: url("../images/idx_arr.svg") no-repeat center center/100% auto;
    width: 20px;
    height: 20px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.under_step {
    max-width: 1100px;
    margin: 0 auto;
    counter-reset: step;
}

.under_step dl {
    width: 920px;
    background: #e8d3ca;
    padding: 45px 80px 39px;
    position: relative;
    margin: 0 0 20px auto;
}

.under_step dl:before {
    counter-increment: step;
    content: "STEP " counter(step, decimal-leading-zero);
    font-size: 20px;
    position: absolute;
    color: #631f3b;
    left: -180px;
    top: 50px;
    font-weight: bold;
}

.under_step dl:after {
    content: '';
    position: absolute;
    width: 100px;
    height: 1px;
    background: #e8d3ca;
    left: -70px;
    top: 63px;
}

.under_step dt {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 15px;
}

.under_step dl:last-child {
    margin-bottom: 0;
}

.under_bnr li {
    max-width: 850px;
    margin: 0 auto 20px;
}

.under_bnr li:last-child {
    margin-bottom: 0;
}

.under_bnr li a {
    height: 220px;
    display: flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    background: url("../images/under_bnr.jpg") no-repeat center center/cover;
    border: 4px solid #e3dcca;
    padding: 20px 60px;
    position: relative;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
    transition: all 0.3s;
    font-weight: bold;
}

.under_bnr li .lager {
    display: block;
    font-size: 187.5%;
    font-weight: bold;
    line-height: 1.5em;
}

.under_bnr li a:not(.not_link):after {
    content: '';
    position: absolute;
    background: url("../images/under_arr.svg") no-repeat center center/100% auto;
    width: 14px;
    height: 24px;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
}

.under_tbl {
    border: 3px solid #631f3b;
}

.under_tbl th {
    background: #631f3b;
}

.under_tbl th,
.under_tbl td {
    border: 1px solid #a32f5f
}

.under_tbl td {
    background: #fff;
}

.vtop td,
td.vtop {
    vertical-align: top;
}

.under_tbl td.bg01 {
    color: #631f3b;
    font-weight: bold;
}

.tbl_fixed {
    table-layout: fixed;
}

.txt_over {
    overflow: hidden;
}

.section:last-child,
.section p:last-child {
    margin-bottom: 0;
}

.under #mainvisual.first:after {
    background-image: url("../images/first_main.jpg");
}

.under #mainvisual.point:after {
    background-image: url("../images/point_main.jpg");
}

.under #mainvisual.brokerage:after {
    background-image: url("../images/brokerage_main.jpg");
}

.under #mainvisual.purchase:after {
    background-image: url("../images/purchase_main.jpg");
}

.under #mainvisual.loan:after {
    background-image: url("../images/loan_main.jpg");
}

.under #mainvisual.inheritance:after {
    background-image: url("../images/inheritance_main.jpg");
}

.under #mainvisual.renovation:after {
    background-image: url("../images/renovation_main.jpg");
}

.under #mainvisual.leaseback:after {
    background-image: url("../images/leaseback_main.jpg");
}

.under #mainvisual.relocation:after {
    background-image: url("../images/relocation_main.jpg");
}

.under #mainvisual.case:after {
    background-image: url("../images/case_main.jpg");
}

.under #mainvisual.reason:after {
    background-image: url("../images/reason_main.jpg");
}

.under #mainvisual.company:after {
    background-image: url("../images/company_main.jpg");
}

.under #mainvisual.faq:after {
    background-image: url("../images/faq_main.jpg");
}

.under #mainvisual.contact:after {
    background-image: url("../images/contact_main.jpg");
}

.under #mainvisual.info:after {
    background-image: url("../images/info_main.jpg");
}

.under #mainvisual.info h2:after {
    background-image: url("../images/info_h2_en.png");
}

.under #mainvisual.contact h2:after {
    background-image: url("../images/contact_h2_en.png");
}

.under #mainvisual.faq h2:after {
    background-image: url("../images/faq_h2_en.png");
}

.under #mainvisual.company h2:after {
    background-image: url("../images/company_h2_en.png");
}

.under #mainvisual.reason h2:after {
    background-image: url("../images/reason_h2_en.png");
}

.under #mainvisual.case h2:after {
    background-image: url("../images/case_h2_en.png");
}

.under #mainvisual.relocation h2:after {
    background-image: url("../images/relocation_h2_en.png");
}

.under #mainvisual.leaseback h2:after {
    background-image: url("../images/leaseback_h2_en.png");
}

.under #mainvisual.renovation h2:after {
    background-image: url("../images/renovation_h2_en.png");
}

.under #mainvisual.inheritance h2:after {
    background-image: url("../images/inheritance_h2_en.png");
}

.under #mainvisual.loan h2:after {
    background-image: url("../images/loan_h2_en.png");
}

.under #mainvisual.purchase h2:after {
    background-image: url("../images/purchase_h2_en.png");
}

.under #mainvisual.brokerage h2:after {
    background-image: url("../images/brokerage_h2_en.png");
}

.under #mainvisual.point h2:after {
    background-image: url("../images/point_h2_en.png");
}

.under #mainvisual.first h2:after {
    background-image: url("../images/first_h2_en.png");
}

.under h6 {
    background: #631f3b;
    color: #fff;
    line-height: 1.5em;
    font-size: 20px;
    font-weight: bold;
    padding: 10px 20px;
    margin-bottom: 25px;
    border-radius: 10px;
}

.under_bnr li.brokerage_bnr a {
    background-image: url("../images/brokerage_bnr.jpg");
}

.under_bnr li.purchase_bnr a {
    background-image: url("../images/purchase_bnr.jpg");
}

.under_bnr li.loan_bnr a {
    background-image: url("../images/loan_bnr.jpg");
}

.under_bnr li.leaseback_bnr a {
    background-image: url("../images/leaseback_bnr.jpg");
}

.under_bnr li.renovation_bnr a {
    background-image: url("../images/renovation_bnr.jpg");
}

.under_bnr li.relocation_bnr a {
    background-image: url("../images/relocation_bnr.jpg");
}

.under_bnr li.first_bnr a {
    background-image: url("../images/first_bnr.jpg");
}

.under_bnr li.first_bnr01 a {
    background-image: url("../images/first_bnr01.jpg");
}

.under_bnr li.contact_bnr a {
    background-image: url("../images/contact_bnr.jpg");
}

.under_tbl:not(:last-child) {
    margin-bottom: 25px;
}

.under_bnr li .list {
    display: block;
    line-height: 1.5em;
    font-weight: bold;
    position: relative;
    padding-left: 18px;
    font-size: 112.5%;
}

.under_bnr li .list:before {
    content: '';
    position: absolute;
    width: 10px;
    height: 10px;
    border: 3px solid #fff;
    border-radius: 50%;
    left: 0;
    top: 8px;
}

.under_bnr li .list~.lager {
    margin-top: 10px;
}

.under_num {
    overflow: hidden;
    background: #e8d3ca;
    padding: 28px 40px;
    border-radius: 10px;
    counter-reset: li;
}

.under_num:not(:last-child) {
    margin-bottom: 30px;
}

.under_num li {
    font-weight: bold;
    line-height: 1.7em;
    position: relative;
    padding-left: 25px;
    margin: 0 0 3px;
}

.under_num li:last-child {
    margin-bottom: 0;
}

.under_num li:before {
    counter-increment: li;
    content: counter(li) ". ";
    position: absolute;
    color: #beaf87;
    left: 0;
    top: 0;
}

.under_bnr li .small {
    display: block;
    font-size: 87.5%;
    line-height: 1.8em;
    margin-bottom: 10px;
}

.under_pickup {
    width: 100vw;
    min-width: 1200px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.under_pickup_img {
    margin: 0;
    height: 440px;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.under_pickup_img img {
    flex-shrink: 0;
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.under_pickup_main {
    width: 50%;
    margin: -290px 0 0 auto;
    position: relative;
    background: #631f3b;
    color: #fff;
    padding: 93px 190px 88px 40px;
}

.under_pickup_main:after {
    content: '';
    position: absolute;
    background: url("../images/under_pickup.png") no-repeat center center/100% auto;
    width: 254px;
    height: 54px;
    right: 51px;
    top: -23px;
    pointer-events: none;
}

.under .under_pickup_ttl {
    color: #fff;
    margin-bottom: 15px;
}

.under_col {
    display: flex;
    border: 3px solid #631f3b;
}

.under_col_item {
    width: 100%;
}

.under_col_item:not(:last-child) {
    border-right: 1px solid #631f3b;
}

.under_col_itm_ttl {
    background: #631f3b;
    margin: 0;
    text-align: center;
    font-weight: bold;
    color: #fff;
    padding: 1em;
    line-height: 1.7em;
}

.under_col_main_item {
    padding: 2em;
}

.under_col_main_item:not(:last-child) {
    border-bottom: 1px solid #631f3b;
}

.under_check li:before {
    background: url("../images/under_check.png") no-repeat center center/100% auto;
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 0;
    left: 0;
    top: 0;
}

.under_check li {
    font-size: 18px;
    color: #4b3014;
    padding-left: 40px;
    margin-bottom: 10px;
}

.leaseback_col {
    display: flex;
    justify-content: space-between;
}

.leaseback_col_item {
    width: 500px;
}

.leaseback_col_item .under_list {
    padding: 28px 30px;
}

.leaseback_col_arr {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.leaseback_col_arr dt {
    font-weight: bold;
    font-size: 22px;
    width: 100%;
    position: relative;
}

.leaseback_col_arr dt:after {
    content: '';
    position: relative;
    display: block;
    width: 100%;
    height: 3px;
    background: #a32f5f;
    border-radius: 3px;
    margin: 10px 0;
}

.leaseback_col_arr dt:before {
    content: '';
    position: absolute;
    background: url(../images/b02_next.svg) no-repeat center center/100% auto;
    width: 14px;
    height: 25px;
    right: -1px;
    bottom: -1px;
}

.leaseback_col_arr dd {
    background: #d12e59;
    line-height: 1.7em;
    margin-top: 15px;
    padding: 12px 20px;
    border-radius: 10px;
    position: relative;
    font-weight: bold;
    font-size: 14px;
    color: #fff;
}

.leaseback_col_arr dd:before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -9px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #d12e59 transparent;
    margin: 0 auto;
}

.txt_lager {
    font-weight: bold;
    font-size: 150%;
}

.pdf_link {
    display: block;
    transition: all 0.3s;
    border: 1px solid #547a9f;
    padding: 9px;
    background: #fff;
}

.leaseback_frame {
    background: #792849;
    padding: 70px 0;
    color: white;
}

.leaseback_frame .txt {
    color: white;
}

.leaseback_frame .b05_txt {
    font-size: 20px;
    margin-top: 50px;
}

.leaseback_frame .b05_list li:nth-child(2):before {
    background-image: url("../images/b04_icon05.svg");
    background-size: 95px auto;
}

.leaseback_frame .b05_list li:nth-child(3):before {
    background-image: url("../images/b05_icon02.svg");
}

.leaseback_frame .b05_list li {
    font-size: 20px;
    width: 300px;
    margin: 0;
}

.under_map iframe {
    width: 100%;
    height: 450px;
}

.under_qa_item {
    background: #fff;
    border: 3px solid #631f3b;
    border-radius: 20px;
    padding: 40px 50px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}

.under_qa_item:before {
    content: 'Q';
    position: absolute;
    width: 80px;
    height: 80px;
    background: #631f3b;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    color: #fff;
    font-size: 30px;
    border-radius: 50%;
    font-weight: bold;
    top: -25px;
    left: -29px;
    padding: 0 17px 11px 0;
}

.contact_frame {
    text-align: center;
    color: #fff;
    background: url(../images/under_bnr.jpg) no-repeat center center/cover;
    border: 4px solid #e3dcca;
    padding: 60px 60px;
    position: relative;
    max-width: 850px;
    margin: 0 auto 30px;
    z-index: 2;
}

.contact_frame:after {
    content: '';
    position: absolute;
    width: calc(100% - 60px);
    height: calc(100% - 60px);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: -2;
    background: #000;
    opacity: 0.3;
}

.contact_frm_tel {
    font-size: 24px;
    font-weight: bold;
    margin: 0;
}

.contact_frm_tel a {
    text-decoration: none;
    color: #fff;
}

.contact_frm_tel a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url(../images/h_tel.png) no-repeat center center/100% auto;
    width: 30px;
    height: 28px;
    flex-shrink: 0;
    margin-right: 5px;
    margin-left: 15px;
}

.contact_frm_txt {
    line-height: 1.7em;
}

.line_bnr li a {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #bbad85;
    color: #fff;
    text-decoration: none;
    line-height: 1.5em;
    letter-spacing: 0.1em;
    border: 4px solid #c7bb8d;
    white-space: nowrap;
    padding: 20px 12px;
    max-width: 850px;
    margin: 0 auto;
}

.line_bnr li a:before {
    content: '';
    position: relative;
    display: inline-block;
    background: url(../images/h_line.png) no-repeat center center/100% auto;
    height: 60px;
    width: 60px;
    flex-shrink: 0;
    margin-right: 10px;
}

.line_bnr li .lager {
    display: block;
    font-size: 150%;
    font-weight: bold;
    margin-bottom: 8px;
}

.info_item {
    border: 1px solid #bbad85;
    background: #fff;
    padding: 20px;
    position: relative;
    margin-bottom: 30px;
    display: flex;
    transition: all 0.3s;
}

.info_item a {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 2;
}

.info_itm_img {
    flex-shrink: 0;
    width: 250px;
    margin: 0 20px 0 0;
    height: 200px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fafafa;
}

.info_itm_img img {
    max-height: 100%;
}

.info_itm_info {
    margin: 0;
}

.info_itm_ttl {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.7em;
    margin-bottom: 15px;
}

.info_itm_txt {
    line-height: 2em;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/**************pager************/
.pager {
    text-align: center;
    overflow: hidden;
    margin: 20px auto;
}

.pager li,
.pagi li {
    display: inline-block;
    margin: 4px;
    font-size: 14px
}

.pager li a,
.pagi li a {
    text-decoration: none;
    padding: 4px;
    background: #484848;
    color: #fff;
    border-radius: 1px;
    display: flex;
    width: 40px;
    justify-content: center;
    align-items: center;
    text-align: center;
    font-size: 120%;
    transition: all 0.3s;
}

.pager li a:hover,
.pagi li a:hover {
    background: #a32f5f;
}

.pager li.active a {
    background: #a32f5f;
}

.pager li.disabled {
    display: none
}

.info_detail_img {
    text-align: center;
}

.info_detail_img img {
    max-height: 500px;
}

.info_btn {
    display: flex;
    justify-content: space-between;
}

.info_btn li {
    width: 38%;
}

.info_btn .back {
    width: 200px;
}

.info_btn .back a {
    background: #631f3b;
    text-decoration: none;
    font-weight: bold;
    border-radius: 40px;
    display: block;
    color: #fff;
    text-align: center;
    padding: 8px;
    position: relative;
}

.info_btn .back a:after {
    content: '';
    position: absolute;
    width: 0;
    height: 100%;
    background: #fff;
    opacity: 0.3;
    left: 0;
    top: 0;
    transition: all 0.5s;
}

.info_btn li .ttl {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info_btn li a {
    display: block;
    text-decoration: none;
    color: #4d4d4d;
    font-size: 90%;
    transition: all 0.3s;
}

.info_btn li.nextPage a {
    text-align: right;
}

.info_btn li .btn {
    display: inline-block;
    background: #f0f0f0;
    padding: 0 20px;
}

.staff_item:not(:last-child) {
    border-bottom: 1px solid #a79d8e;
    padding: 0 0 30px;
    margin-bottom: 30px;
}

.staff_name {
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.8em;
}

.b01_video {
    max-width: 800px;
    margin: 0 auto;
}

.b01_video iframe {
    width: 100%;
    height: 450px;
}



.slick-dots {
    display: flex;
    justify-content: center;
    margin-top: 15px;
}

.slick-dots li {
    margin-right: 20px;
}

.slick-dots li button {
    background: #B4A796;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    border: none;
    text-indent: -99999px;
    overflow: hidden;
}

.slick-dots li.slick-active button,
.slick-dots li button:hover {
    background: #312d28;
}

.slick-dots li button:hover {
    cursor: pointer
}


.slick-dots li:last-child {
    margin-right: 0;
}

.banner {
    display: flex;
    justify-content: center;
}

.banner a {
    display: block;
    border: 4px solid #e3dcca;
    transition: all 0.3s;
}

.banner a:hover {
    transform: translateY(-10px);
}

.list_img {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    justify-content: center;
}

.list_img li {
    width: calc(100% / 4 - 20px);
    margin: 10px 10px 20px;
}

.list_img li img {
    border: 1px solid #000;

}

.list_img li img:hover {
    opacity: 0.9;
}

.idx_btn_main {
    width: 100px;
    margin: 50px 39% 0;
}

.idx_btn_main a {
    text-decoration: none;
    text-align: center;
    height: auto;
    background: #f5f78b;
    color: #333333;
    font-weight: bold;
    border: 3px solid #333333;
}

.txt_01 {
    color: #631f3b;
    font-size: 40px;
    line-height: 1.2em;
    margin-bottom: 20px;
    font-weight: bold;
}

.txt_02 {
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2em;
    margin-bottom: 20px;
}

.list_img01 {
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
    justify-content: center;
}

.list_img01 li {
    width: calc(100% / 3 - 30px);
    margin: 15px 15px 15px;
}

/* add */
.d_flex_cnt {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 60px;
}

.d_flex_cnt {}

.d_flex_cnt .list_img li {
    width: 100%;
    max-width: 400px;
}

.vo_d_qa {
    max-width: 600px;
    width: 100%;
    margin: 10px auto;
}

.vo_d_qa_q {
    font-size: 18px;
    line-height: 31px;
    font-weight: bold;
    display: flex;
    border-bottom: 1px solid #016243;
    margin-bottom: 10px;
}

.vo_d_qa_q span {
    width: calc(100% - 41px);
}

.vo_d_qa_q:before {
    content: 'Q';
    /*何も入れない*/
    display: block;
    /*忘れずに！*/
    background-size: contain;
    vertical-align: middle;
    width: 31px;
    height: 31px;
    color: #fff;
    text-align: center;
    background: #631f3b;
    border-radius: 5px;
    margin-bottom: 5px;
    margin-right: 10px;
}

.vo_d_qa_q:empty {
    display: none;
}

.vo_d_qa_a {
    font-size: 15px;
    line-height: 24px;
    margin: 0px 0 25px 0;
}

.vo_d_qa_a:empty {
    display: none;
}

.vo_d_ph_tl {
    text-align: center;
    font-size: 25px;
    font-weight: bold;
    line-height: 30px;
}

.box_c21 {
    background: url("../images/icon_c21.png") no-repeat 90% center;

}

.box_tab {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding: 24px;
    background: #f9f9f9;
}

.tab-ttl {
    display: flex;
    padding: 0;
    margin-bottom: 20px;
    border-bottom: 3px solid #777777;
}

.tab-ttl li {
    background: #eeeeee;
    padding: 5px 10px;
    cursor: pointer;
    border-radius: 5px 5px 0 0;
    font-weight: bold;
    position: relative;
    box-sizing: border-box;
    text-align: center;
    color: #000;
    line-height: 1.5em;
    letter-spacing: 0;
    width: 110px;
}

.tab-ttl li.active {
    background: #004f99;
    color: #fff;
}

.tab-ttl li+li {
    margin-left: 10px;
}

.tab-ctn {
    display: none;
}

.tab-ctn.active {
    display: block;
}

.table_tab th {
    padding: 5px;
    background: #004f99;
    font-size: 14px;
}

.table_tab td {
    background: #fff;
    padding: 10px;
    line-height: 1.5em;
    font-size: 14px;
}

.table_tab tr:nth-child(2n) td {
    background: #eeeeee;
}

#embed_map1 {

    height: 510px;

    max-width: 960px;

    width: 100%;

    display: block;

    margin: 0 auto;
    overflow: hidden;

}

#embed_map2 {

    height: 570px;

    max-width: 960px;

    width: 100%;

    display: block;

    margin: 0 auto;

}

/* IE */
@media (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    .list_img {
        margin: 10px 9px 20px;
    }
}

.list_top_bnr {
    display: flex;
    justify-content: center;
    margin: 0 auto 60px;
}

.list_top_bnr li {
    max-width: 480px;
    width: calc(100% / 3 - 20px);
    margin: 0 10px 0;
}

a.nohover:hover {
    cursor: unset;
    opacity: 1;
}

.list_top_bnr li a {
    transition: 0.3s ease
}

.list_top_bnr li a:hover {
    opacity: 0.85
}

.main_slide {
    position: relative;
    margin-bottom: 30px
}

.main_slide .slick-dots {
    position: absolute;
    bottom: -250px;
    left: 50%;
    transform: translateX(-50%)
}

.category-list {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.category-list li a {
    margin: 0 auto;
    display: block;
    font-size: 112.5%;
    background: #631f3b;
    width: max-content;
    color: #fff;
    padding: 6px 30px 3px 30px;
    border-radius: 30px;
    position: relative;
    transition: all 0.3s;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}

.category-list li a:hover {
    background: #D12E59;
}

.category-list li.active a {
    background: #D12E59;
}


/* 2025/7/30　フラクタル改修 */
@media screen and (max-width: 750px) {
    .topic_path_outer {
        margin-bottom: 25px;
        overflow-x: scroll;
    }

    .topic_path {
        flex-wrap: unset;
        margin-bottom: 5px;
        padding: 0;
        width: 95vw;
        white-space: nowrap;
    }
}

.topic_path li {
    font-size: 11px;
    line-height: 1.5;
}

.topic_path li:not(:last-child):after {
    content: '';
    position: relative;
    background: url(../../images/b02_next.png) no-repeat center center / 100% auto;
    width: 6px;
    height: 12px;
    height: 8px;
    display: inline-block;
    margin: 0 13px;
}

#info-policy {
    background: #fff;
    padding: 40px 35px;
    border: 1px solid #631f3b;
}

.txt_tt01 {
    margin-bottom: 10px;
}

.txt01 {
    margin-left: 15px;
}

.ttl_ptn1 {
    text-align: center;
}

.box_policy#info-policy {
    height: 450px;
    overflow-y: auto;
}

.f_bnr {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    margin-bottom: 25px;
}

.list_video {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    justify-content: center;
    margin-bottom: 20px;
}

.list_video li {
    width: calc(100% / 3 - 20px);
    margin: 10px 10px 20px;
}

.video-wrapper {
    position: relative;
    padding-top: 56.25%;
    height: 0;
    overflow: hidden;
    width: 100%;
    box-sizing: border-box;
}

.video-wrapper iframe,
.video-wrapper object,
.video-wrapper embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
}

/* 動画セクション（YouTubeで学ぶ 不動産のリアル） */
.box05_movie {
    position: relative;
    padding: clamp(50px, 4vw, 80px) 0 clamp(56px, 4.5vw, 90px);
    background:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='440' height='260' viewBox='0 0 440 260'%3E%3Cpolygon fill='%23fbeeee' points='0,118 0,252 175,74'/%3E%3Cpolygon fill='%23df141c' points='0,0 432,0 0,125'/%3E%3Cpolygon fill='%23cb151b' points='0,0 256,0 0,88'/%3E%3C/svg%3E") left top / 22vw auto no-repeat,
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='270' height='320' viewBox='0 0 270 320'%3E%3Cpolygon fill='%23fbecec' points='0,0 262,226 205,320 0,320'/%3E%3Cpolygon fill='%23df141c' points='0,6 226,207 96,320 0,320'/%3E%3Cpolygon fill='%23cb151b' points='0,52 168,214 78,320 0,320'/%3E%3C/svg%3E") left bottom / 13.5vw auto no-repeat,
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='460' height='620' viewBox='0 0 460 620'%3E%3Cpolygon fill='%23fbeaea' points='460,16 460,281 50,620'/%3E%3Cpolygon fill='%23df141c' points='460,281 460,620 50,620'/%3E%3Cpolygon fill='%23cb151b' points='460,476 460,620 205,620'/%3E%3C/svg%3E") right bottom / 23vw auto no-repeat,
        linear-gradient(180deg, #fff 0%, #f8f8f8 100%);
}

.movie__head,
.movie__slider__title,
.btn_video__txt {
    font-feature-settings: "palt";
}

.movie__head {
    padding: 0 20px;
    margin-bottom: clamp(18px, 1.6vw, 32px);
    text-align: center;
}

.movie__lead {
    display: inline-flex;
    align-items: center;
    margin: 0 0 clamp(4px, .5vw, 10px);
    color: #222;
    font-size: clamp(16px, 1.4vw, 28px);
    font-weight: 500;
    line-height: 1.5;
    letter-spacing: .1em;
}

.movie__lead::before,
.movie__lead::after {
    content: '';
    flex-shrink: 0;
    width: 2px;
    height: 1.15em;
    background: #d7000f;
}

.movie__lead::before {
    margin-right: .9em;
    transform: rotate(-30deg);
}

.movie__lead::after {
    margin-left: .9em;
    transform: rotate(30deg);
}

.movie__ttl {
    margin: 0;
    color: #1a1a1a;
    font-family: "Zen Kaku Gothic New", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
    font-size: clamp(44px, 4.2vw, 84px);
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: .01em;
}

.movie__ttl__yt::before {
    content: '';
    display: inline-block;
    width: 1.4em;
    height: 1em;
    margin-right: .2em;
    vertical-align: -.12em;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 100'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23f0121b'/%3E%3Cstop offset='1' stop-color='%23cc0209'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='140' height='100' rx='26' fill='url(%23g)'/%3E%3Cpath fill='%23fff' d='M55 29v42l37-21z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.movie__ttl__em {
    margin-left: .2em;
    color: #dc0a12;
}

.movie__txt {
    margin: clamp(6px, .6vw, 12px) 0 0;
    color: #333;
    font-size: clamp(15px, 1.2vw, 24px);
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: .06em;
}

.btn_video {
    width: clamp(360px, 27.8vw, 556px);
    margin: clamp(22px, 1.8vw, 36px) auto 0;
}

.btn_video a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(16px, 1.5vw, 30px);
    min-height: clamp(62px, 4.4vw, 88px);
    padding: 6px 60px;
    box-sizing: border-box;
    border: 2px solid #c8090f;
    border-radius: 999px;
    background: linear-gradient(180deg, #ea1720 0%, #d5000b 100%);
    box-shadow: inset 0 0 0 2px rgba(255, 135, 145, .9), 0 6px 14px rgba(215, 0, 15, .22);
    color: #fff;
    text-decoration: none;
    transition: opacity .3s;
}

.btn_video a::before {
    content: '';
    flex-shrink: 0;
    width: clamp(44px, 3.25vw, 65px);
    aspect-ratio: 140 / 100;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 140 100'%3E%3Crect width='140' height='100' rx='26' fill='%23fff'/%3E%3Cpath fill='%23e0111a' d='M55 29v42l37-21z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.btn_video a::after {
    content: '';
    position: absolute;
    top: 50%;
    right: clamp(24px, 2vw, 40px);
    width: clamp(10px, .75vw, 15px);
    height: clamp(10px, .75vw, 15px);
    border-top: 2.5px solid #fff;
    border-right: 2.5px solid #fff;
    transform: translateY(-50%) rotate(45deg);
}

.btn_video__txt {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.btn_video__sub {
    font-size: clamp(12px, 1vw, 20px);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .06em;
}

.btn_video__main {
    font-size: clamp(19px, 1.55vw, 31px);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: .08em;
}

@media (min-width:782px) {
    .btn_video a:hover {
        opacity: .85
    }
}

.movie__slider__wrapper {
    overflow: hidden;
    container-type: inline-size;
    container-name: movie-slider;
    width: 92%;
    max-width: 1840px;
    margin: 0 auto;
    padding: 4px 0 14px;
}

.movie__slider {
    overflow: hidden
}

.movie__slider__track {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    will-change: transform;
    -webkit-animation: movie-marquee 160s linear infinite;
    animation: movie-marquee 160s linear infinite;
    /* 動画1本あたりPC10秒・SP5秒（--movie-count は movie-slider.js が設定） */
    -webkit-animation-duration: calc(var(--movie-count, 16) * 10s);
    animation-duration: calc(var(--movie-count, 16) * 10s)
}

@media not all and (min-width:782px) {
    .movie__slider__track {
        -webkit-animation-duration: calc(var(--movie-count, 16) * 5s);
        animation-duration: calc(var(--movie-count, 16) * 5s)
    }
}

.movie__slider.is-paused .movie__slider__track {
    -webkit-animation-play-state: paused;
    animation-play-state: paused
}

/* JSで組み立てる前の元データ（タイトル文字）は表示しない */
.movie__slider > .movie__slider__item {
    display: none
}

.movie__slider__item {
    display: flex;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 8px;
    width: 33.3333333333cqw
}

@media not all and (min-width:782px) {
    .movie__slider__item {
        padding: 0 6px;
        width: calc(100cqw - 50px)
    }
}

.movie__slider__link {
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    padding: 4px 4px 0;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 3px 10px rgba(0, 0, 0, .12);
    color: #222;
    text-decoration: none;
    overflow: hidden
}

@media (min-width:782px) {
    .movie__slider__thumb {
        -webkit-transition: opacity .3s;
        transition: opacity .3s
    }

    .movie__slider__media::after {
        -webkit-transition: transform .3s;
        transition: transform .3s
    }

    .movie__slider__link:hover .movie__slider__thumb {
        opacity: .8
    }

    .movie__slider__link:hover .movie__slider__media::after {
        transform: translate(-50%, -50%) scale(1.1)
    }
}

@media not all and (min-width:782px) {
    .movie__slider__link {
        -webkit-transition: -webkit-transform .2s ease-in-out;
        transition: -webkit-transform .2s ease-in-out;
        transition: transform .2s ease-in-out;
        transition: transform .2s ease-in-out, -webkit-transform .2s ease-in-out
    }

    .movie__slider__link.touching {
        -webkit-transform: scale(0.98);
        transform: scale(0.98)
    }
}

.movie__slider__media {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 7px 7px 0 0;
    background: #ddd
}

/* 再生ボタン */
.movie__slider__media::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: clamp(40px, 3.3vw, 66px);
    height: clamp(40px, 3.3vw, 66px);
    transform: translate(-50%, -50%);
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Ccircle cx='50' cy='50' r='50' fill='%23e52121'/%3E%3Cpath fill='%23fff' d='M40 30v40l32-20z'/%3E%3C/svg%3E") center / contain no-repeat;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .3));
    pointer-events: none
}

.movie__slider__thumb {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16/9;
    -o-object-fit: cover;
    object-fit: cover
}

.movie__slider__time {
    position: absolute;
    right: 8px;
    bottom: 8px;
    padding: .3em .5em;
    border-radius: 5px;
    background: rgba(0, 0, 0, .82);
    color: #fff;
    font-size: clamp(12px, .95vw, 19px);
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em
}

.movie__slider__title {
    display: block;
    padding: clamp(10px, .9vw, 18px) clamp(12px, 1.2vw, 24px) clamp(12px, 1vw, 20px);
    color: #222;
    font-size: clamp(14px, 1.1vw, 22px);
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: .02em;
    text-align: left
}

@-webkit-keyframes movie-marquee {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    to {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

@keyframes movie-marquee {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }

    to {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

/* YouTube popup modal */
body.yt-modal-open {
    overflow: hidden
}

.yt-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, .8);
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.yt-modal-overlay.is-active {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.yt-modal-inner {
    position: relative;
    width: 100%;
    max-width: 900px
}

.yt-modal-close {
    position: absolute;
    top: -44px;
    right: 0;
    background: transparent;
    border: none;
    color: #fff;
    font-size: 36px;
    line-height: 1;
    cursor: pointer;
    padding: 4px 10px;
    opacity: .85;
    -webkit-transition: opacity .2s;
    transition: opacity .2s
}

.yt-modal-close:hover {
    opacity: 1
}

.yt-modal-video-wrap {
    position: relative;
    width: 100%;
    padding-top: 56.25%
}

.yt-modal-iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0
}

.tab_acticle {
    padding: 0 0 60px;
}

/* ── Tab bar ── */
/*.tab-bar {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    border: 1px solid #E0DBD0;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    background: #EAE7E0;
  }

  .tab-btn {
    position: relative;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    outline: none;
    transition: background 0.18s;
  }
  .tab-btn + .tab-btn {
    border-left: 1px solid #E0DBD0;
  }
  .tab-btn-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 14px 10px 12px;
    width: 100%;
  }
  .tab-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(11,30,53,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.18s;
    flex-shrink: 0;
  }
  .tab-icon svg {
    width: 16px;
    height: 16px;
    stroke: #0B1E35;
    fill: none;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke 0.18s;
  }
  .tab-label {
    font-size: 14px;
    font-weight: 700;
    color: #6B6B6B;
    text-align: center;
    line-height: 1.45;
    letter-spacing: 0.02em;
    transition: color 0.18s;
  }
  .tab-count {
    font-size: 12px;
    font-weight: 500;
    background: rgba(11,30,53,0.1);
    color: #0B1E35;
    padding: 1px 7px;
    border-radius: 10px;
    transition: background 0.18s, color 0.18s;
  }
  .tab-btn:hover:not(.active) {
    background: #E0DDD5;
  }
  .tab-btn.active {
    background: #fff;
    border-bottom: 2px solid #fff;
    margin-bottom: -1px;
    z-index: 2;
  }
  .tab-btn.active .tab-label { color: #0B1E35; }
  .tab-btn.active .tab-icon {
    background: #C8960A;
  }
  .tab-btn.active .tab-icon svg {
    stroke: #fff;
  }
  .tab-btn.active .tab-count {
    background: #C8960A;
    color: #fff;
  }
  .tab-btn.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0; right: 0;
    height: 3px;
    background: #C8960A;
  }*/
/* ── Panel ── */
.tab-panels {
    border: 1px solid #E0DBD0;
    border-top: none;
    border-radius: 0 0 10px 10px;
    background: #fff;
    padding: 30px;
    min-height: 300px;
    margin-bottom: 50px;
}

.tab-panel {
    display: none;
}

.tab-panel.active {
    display: block;
}

.panel-note {
    font-size: 11px;
    color: #6B6B6B;
    line-height: 1.7;
    border-left: 3px solid #E0DBD0;
    padding-left: 12px;
    margin-bottom: 22px;
}

.tab-panels .top_article_outer {
    margin-top: 0;
    padding: 0 0 0;
}

.tab-panels .article_list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    gap: 0;
    padding: 0;
    width: calc(100% + 20px);
    margin: 0 -10px 0;
}

.tab-panels .article_list li {
    width: calc(100% / 3 - 20px);
    margin: 0 10px 20px;
}

.tab-panels .article_list li a {
    padding: 20px 20px 30px;
    border: 1px solid #E0DBD0;
    border-radius: 6px;
    position: relative;
    transition: 0.2s linear;
    color: #0B1E35;
}

.tab-panels .article_list li a:hover {
    border: 1px solid #c8960a;
    transform: translateY(-5px);
}

.tab-panels .article_list li a::after {
    content: '→';
    font-size: 24px;
    position: absolute;
    display: block;
    right: 20px;
    bottom: 20px;
    color: #1a1a1a;
    line-height: 0;
    transition: 0.2s linear;
}

.tab-panels .article_list li a:hover::after {
    right: 16px;
    color: #c8960a;
}

.tab-panels .article_list li span {
    margin-top: 10px;
    line-height: 1.8;
    padding-top: 0;
    display: block;
    position: relative;
}

.tab-panels .top_article_outer h2 {
    font-size: 24px;
}

/* ══════════════════════════════
  TAB BAR
══════════════════════════════ */
.tab-bar {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    border: 1px solid #E0DBD0;
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    background: #EAE7E0;
}

.tab-btn {
    position: relative;
    padding: 0;
    border: none;
    background: transparent;
    cursor: pointer;
    outline: none;
    transition: background 0.18s;
    -webkit-tap-highlight-color: transparent;
}

.tab-btn+.tab-btn {
    border-left: 1px solid #E0DBD0;
}

.tab-btn-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 14px 10px 12px;
    width: 100%;
}

.tab-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(11, 30, 53, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.18s;
}

.tab-icon svg {
    width: 16px;
    height: 16px;
    stroke: #0B1E35;
    fill: none;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke 0.18s;
}

.tab-label {
    font-size: 16px;
    font-weight: 700;
    color: #6B6B6B;
    text-align: center;
    line-height: 1.45;
    letter-spacing: 0.02em;
    transition: color 0.18s;
}

.tab-count {
    font-size: 14px;
    font-weight: 500;
    background: rgba(11, 30, 53, 0.1);
    color: #0B1E35;
    padding: 1px 7px;
    border-radius: 10px;
    transition: background 0.18s, color 0.18s;
}

.tab-btn:hover:not(.active) {
    background: #E0DDD5;
}

.tab-btn.active {
    background: #fff;
    z-index: 2;
    margin-bottom: -1px;
    border-bottom: 2px solid #fff;
}

.tab-btn.active .tab-label {
    color: #0B1E35;
}

.tab-btn.active .tab-icon {
    background: #C8960A;
}

.tab-btn.active .tab-icon svg {
    stroke: #fff;
}

.tab-btn.active .tab-count {
    background: #C8960A;
    color: #fff;
}

.tab-btn.active::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #C8960A;
}

.tab-select-wrap {
    display: none;
    position: relative;
    margin-bottom: 0;
}

@media screen and (max-width: 750px) {
    .tab-bar {
        display: none;
    }

    .tab-select-wrap {
        display: block;
        position: relative;
        margin-bottom: 0;
    }

    .tab-select-wrap::after {
        content: '';
        position: absolute;
        right: 14px;
        top: 50%;
        transform: translateY(-50%);
        width: 0;
        height: 0;
        border-left: 5px solid transparent;
        border-right: 5px solid transparent;
        border-top: 6px solid #0B1E35;
        pointer-events: none;
    }

    .tab-select {
        width: 100%;
        appearance: none;
        -webkit-appearance: none;
        background: #fff;
        border: 1px solid #E0DBD0;
        border-radius: 10px 10px 0 0;
        padding: 14px 40px 14px 16px;
        font-size: 14px;
        font-weight: 700;
        color: #0B1E35;
        cursor: pointer;
        outline: none;
        border-bottom: 3px solid#C8960A;
    }

}

.mv {
    position: relative;
    padding-bottom: 20px;
    margin: 0;
    height: 100%;
    display: flex;
    align-items: center;
}


/* lớp trắng chuyển tiếp */
.mv:before {
    content: "";
    position: absolute;
    left: -50%;
    top: 0;
    width: 200%;
    height: 100%;
    background: linear-gradient(to right, rgb(255, 255, 255) 0%, rgb(255, 255, 255) 50%, rgba(255, 255, 255, 0) 60%);
}

.main_item.mv_bg {
    position: relative;
    padding: 0px;
    background: #fff;
}

.main_item.mv_bg:before {
    position: absolute;
    content: '';
    background: url("../images/idx_slide06.jpg") top center no-repeat;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
}

.mv_inner {
    position: relative;
    z-index: 2;
    margin: 0;
    padding: 0;
    width: 100%;
}


.mv_point {
    display: flex;
    gap: 17px;
    margin-bottom: 10px;
}

.mv_list_btn {
    display: flex;
    gap: 17px;
    margin-bottom: 10px;
}

.mv_list_btn li a {
    position: relative;
}

.mv_list_btn li a:hover {
    opacity: 0.7;
}

.mv01_ct01 {
    padding-left: 20px;
}

.mv01_bnr {
    position: absolute;
    left: 55%;
    bottom: 10px;
    margin: 0;
}

.mv01_img01 {
    margin-bottom: 20px;
}


.under_bnr01 li {
    max-width: 850px;
    margin: 0 auto 20px;
}

.under_bnr01 li:last-child {
    margin-bottom: 0;
}

.under_bnr01 li a {
    height: 220px;
    display: flex;
    align-items: center;
    color: #fff;
    text-decoration: none;
    border: 4px solid #e3dcca;
    padding: 20px 60px;
    position: relative;
    text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.7);
    transition: all 0.3s;
    font-weight: bold;
}

.under_bnr01 {
    color: #fff;
    text-decoration: none;
    border: 4px solid #e3dcca;
    padding: 20px 30px;
    position: relative;
    transition: all 0.3s;
    font-weight: bold;
    margin-top: 80px;
}

.under_bnr01_ct {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.bnr_list_item li {
    display: block;
    line-height: 1.5em;
    font-weight: bold;
    position: relative;
    padding-left: 30px;
    color: #000;
    font-size: 20px;
}

.bnr_list_item li span {
    color: #631f3b;
    font-size: 26px;
}

.bnr_list_item li::before {
    content: '';
    position: absolute;
    background: url("../images/under_check01.png") no-repeat center center/100% auto;
    width: 21px;
    height: 19px;
    left: 0;
    top: 5px;
}

.under_bnr01_img {
    order: 2;
    margin-top: -46px;
}

.section p.under_bnr01_btn {
    margin-bottom: -50px;
}

.under_bnr01_btn a {
    position: relative;
    background: #631f3b;
    color: #fff;
    text-align: center;
    font-size: 20px;
    text-decoration: none;
    display: block;
    width: 500px;
    margin: 0 auto;
    padding: 10px;
    transition: all 0.3s;
    letter-spacing: 0;
    border: 2px solid #3e0f1f;
}

.under_bnr01_btn a span {
    font-size: 26px;
}

.under_bnr01_btn a::after {
    content: '';
    position: absolute;
    background: url("../images/under_arr.svg") no-repeat center center/100% auto;
    width: 9px;
    height: 16px;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.under_bnr01_btn a:hover {
    transform: translateY(-10px);
}

.main_item.cus {
    background: none;
}

.main_item.cus p.img {
    margin: 0;
}