@charset "utf-8";
/* CSS Document */

.mo{display:none;}
body{width: 100%; height: fit-content; position: relative; top: 0;}

#main{width: 100%; position: relative; overflow: hidden; margin: 0 auto;}
#main .main_wrapper{width:100%; height:100%; background-color:#fff;}
#main .main_wrapper .main_visual .logo{position:absolute; top:30px; left:160px;}
#main .main_wrapper .main_visual p img{width:100%;}

.sec p{background-repeat:no-repeat; background-size:cover; background-position:center center; text-align:center; width:80%; margin:0 auto;}
.sec.section1 p{padding:149px 0 150px 0; max-width:1690px; margin:0 auto;}
.sec.section2 p{padding:150px 0;}
.sec.section3 p {padding:149px 0 60px 0;}
.sec .txt_btm {padding-bottom:150px;}
.sec .txt_btm .btn { background: #b3abc3; width: fit-content; border-radius: 42.5px; margin:0 auto;}
.sec .txt_btm .btn a {font-size:2.0rem; color:#fff; font-weight:600; line-height:48px; letter-spacing:-0.025em; display:block; padding: 20px 74px 20px 75px;  text-align:center;}
.sec .txt_btm span {display: block; width: 100%; text-align: center; padding-top:19px; font-size:1.6rem; font-weight:500; line-height:48px; letter-spacing:-0.05em; color:#b3abc3;}
.sec.section4 {padding: 150px 0; position:relative;}

.sec.section4 .sec4_bg{width: 100%; height: 760px; background: #f2f2f2; position: absolute; z-index: 0;  top:0;}
.sec.section4 p{position: relative; /*padding-top: 190px;*/}
.sec.section5 {padding:150px 0;}
.sec.section5 .tit_area .tit_box {text-align:center;}
.sec.section5 .tit_area .tit_box h4 {font-size:2.4rem; font-weight:400; line-height:-0.025em; color:#555555;}
.sec.section5 .tit_area .tit_box h2 {font-size:5.0rem; line-height:60px; font-weight:800; line-height:-0.025em; color:#111111; padding-bottom:40px;}
.sec.section5 .tit_area .tit_box h2 span {color:#d7369d; display:inline;}
.sec.section5 .txt_btm{padding-bottom:0;}
.sec.section5 .txt_btm .btn{background:#2d2d2d; min-width:500px; text-align:center;}
.sec.section5 .cont_area .list_area .tab{padding: 40px 0 20px 0;}
.tabs { margin-top: 50px; margin: 0 auto;}
.tab_item {font-size:1.6rem; font-weight:700; line-height:24px; color:#d7369d; width:25%; padding: 30px 0; background:#fff; border:1px solid #d7369d; border-radius:10px; max-width:268px; text-align: center; display: block; float: left; transition: all 0.2s ease; cursor: pointer; margin-right: 20px; margin-bottom:20px;}
.tab_item.no{margin-right:0;}
input[name="tab_item"] { display: none;}
.tab_content { display: none; padding-top:20px; clear: both; overflow: hidden; width:100%; padding-bottom:56.24%; box-sizing:border-box; position:relative; border:0;}
.tab_content iframe{position:absolute; left:0; top:0; width:100%; height:100%; border:0; outline:0; /* pointer-events: none; */ border-radius:30px; border: 5px solid #fff; box-sizing:border-box;}
#fi:checked ~ #fi_content,#se:checked ~ #se_content,#th:checked ~ #th_content,#fo:checked ~ #fo_content {display: block;}
.tabs input:checked + .tab_item {background-color: #d7369d; color: #fff; position: relative;}
.tabs input:checked + .tab_item::after{clear:both; content: " "; position: absolute; top: 100%; left: 47%; height: 0; border-bottom: 15px solid; border-left: 15px solid rgba(0, 0, 0, 0); border-right: 15px solid rgba(0, 0, 0, 0); color: #d7369d; -webkit-transform: rotate(-180deg); -moz-transform: rotate(-180deg); -o-transform: rotate(-180deg); -ms-transform: rotate(-180deg);}
  input [name="tab_item"]{display: none;}
.sec.section5 .cont_area .list_area .txt_btm{padding-bottom: 0; padding-top: 60px;}
.sec.section6 {position: relative; z-index: 9; padding-bottom: 200px;}
.sec.section6 .sec6_bg {width: 100%; height: calc(100% - 569px); position: absolute; z-index: 0; top: 569px;}
.sec.section6 p{width:100%; position: relative; padding-top: 190px;}
.sec.section7 {position: relative; top: 0; left: 0;}
.sec.section7 p {padding: 140px 0 0; margin: 0 auto;}
.sec.section7 .txt_btm {padding-top: 80px;}
.sec.section7 .txt_btm .btn {background: #fff;}
.sec.section7 .txt_btm .btn a {color: #d7369d; white-space: nowrap;}

.sec.section8 p{padding:150px 0;}
.sec.section9 p{padding:150px 0;}


.fixed {max-width: 178px; background: #d7369d; position: fixed; top: 10%; right: 0; z-index: 99; border-radius: 30px 0 0 30px;}
.fixed ul {padding: 14px 8px 20px 8px;}
.fixed ul li .box {text-align:center; border-bottom: 1px solid #570c3c; padding-bottom: 20px; margin-bottom: 20px;}
.fixed ul li .box.box3{border-bottom:none; padding-bottom:0; margin-bottom:0;}
.fixed ul li .box .top .txt_area {text-align:center; max-width:145px; margin:0 auto;}
.fixed ul li .box .top .txt_area p {width: 100%; font-size:1.7rem; font-weight:bold; line-height:22px; letter-spacing:-0.025em; color:#fff; padding:15px 0;}
.fixed ul li .box .button {background:#690d3e; width: 144px; height: 44px; display: flex; align-items: center; justify-content: center; margin:0 auto; border-radius:10px;}
.fixed ul li .box .button a {font-size:1.4rem; font-weight:700; line-height:24px; letter-spacing:-0.025em; color:#fff; display: block; width: 100%; height: 100%; line-height: 44px;}
.fixed ul li .box .button a .hide{display: inline-block;}

.bg {width:100%; position: absolute; margin-top: -960px; z-index: 1;}
.bg img {width:100%; max-height: 1534px; height:1497px;}

footer {padding-bottom: 30px; background: #40022a;}
footer .agree {height:70px; background: #d899b2d9;}
footer .agree ul {max-width:866px; display: flex; align-items: center; justify-content: space-between; width: 100%; height:100%; margin:0 auto;}
footer .agree ul li {width:25%; text-align:center;}
footer .agree ul li .box a {font-size:1.5rem; font-weight:500; line-height:48px; letter-spacing:-0.025em; color:#870e51}
footer .sns {display:flex; align-items:center; justify-content: center; gap:16px; padding: 61px 0 40px 0;}
footer .info ul {text-align:center;}
footer .info ul li span {font-size:1.7rem; font-weight:400; line-height:28px; letter-spacing: -0.025em; color:#f1e9ee;}
footer .info ul li span + span:before {content: ''; display: inline-block; clear: both; border-left: 1px solid #bfbfbf; height: 10px; margin: 0 10px;}
footer span.copy{font-size:1.4rem; font-weight:300; line-height:48px; color:#e693c1; text-align:center; display:block;}
footer span.copy > br{display:none;}

@media(max-width:1400px){
.sec.section9 {background-size:cover !important;}
}