@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700;900&display=swap');

/* common-css */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

input::placeholder{
	color: #ccc;
}
input::-ms-input-placeholder{
	color: #ccc;
}
input:-ms-input-placeholder{
	color: #ccc;
}

body{
    min-width: 1200px;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    line-height: 1.8;
    color: #1a1a1a;
    padding-top: 199px;
    position: relative;
    font-weight: 500;
    font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.wrap{
    max-width: 1160px;
    margin: 0 auto;
}

a{
    transition: .2s;
    text-decoration: none;
}
a:hover{
    opacity: .6;
    text-decoration: none;
}
img{
    max-width: 100%;
    vertical-align: bottom;
}
.box-flex,
.flex{
    display: flex;
    flex-wrap: wrap;
}
.ps-re{
    position: relative;
    z-index: 0;
}
.ps-ab{
    position: absolute;
}
.padding-top{
    padding-top: 100px;
}
.padding-bottom{
    padding-bottom: 100px;
}
.padding-tb{
    padding: 100px 0;
}


/* HEADER */
#header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}
#header .header-menu{
    background-color: #41210f;
    padding: 15px 0;
}
#header .header-menu ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
#header .header-menu ul a{
    color: #fff;
    font-weight: bold;
}
#header .header-menu ul a img{
    width: 13px;
    vertical-align: middle;
    margin-left: 5px;
    position: relative;
    top: -2px;
}
#header .header-menu ul li:not(:last-child){
    margin-right: 40px;
}
#sp-header{
    display: none;
}
#header .header-menu ul li.header-menu-entry-btn,
#header .header-menu ul li.close-btn{
    display: none;
}


/* PC HEADER */
#pc-header{
    padding: 20px;
    justify-content: space-between;
    background-color: #fff;
}
#pc-header,
#pc-header .header-left,
#pc-header .header-right{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
#pc-header{
    align-items: center;
}
#pc-header .header-logo img{
    width: 192px;
}
#pc-header .header-left .flex{
    align-items: flex-end;
}
#pc-header .header-left .text-img img{
    width: 212px;
}
#pc-header .header-left .text img{
    width: 221px;
}
#pc-header .header-left .text-img,
#pc-header .header-left .text{
    margin-left: 20px;
}
#pc-header .header-right .text-img{
    margin-right: 20px;
}
#pc-header .header-right .text-img img{
    width: 155px;
}
#pc-header .header-right .btn img{
    width: 300px;
}



/* FIXED BANNER */
#fixed-bnr{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    display: none;
    z-index: 99;
}
#fixed-bnr img{
    width: 100%;
}



/* FOOTER */
#footer .footer-content{
    padding: 70px 0 60px;
    background-color: #fdf0d9;
}
#footer .footer-content .flex{
    justify-content: space-between;
}
#footer .footer-content .footer-logo{
    margin-bottom: 30px;
}
#footer .footer-content .footer-logo img{
    width: 192px;
}
#footer .footer-content .text:not(.top){
    font-size: 13px;
    margin-top: 10px;
}
#footer .footer-content .footer-menu{
    position: relative;
}
#footer .footer-content .footer-menu .logo-img{
    position: absolute;
    bottom: 0;
    right: 0;
}
#footer .footer-content .footer-menu .logo-img img{
    width: 78px;
}
#footer .footer-content .footer-menu ul{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
#footer .footer-content .footer-menu ul li:not(:last-child){
    margin-right: 50px;
}
#footer .footer-content .footer-menu ul li a{
    font-weight: bold;
    color: #41210f;
}
#footer .footer-content .footer-menu ul li a img{
    width: 13px;
    margin-left: 5px;
    position: relative;
    top: -2px;
    vertical-align: middle;
}
#footer .copyright-text{
    color: #fff;
    background-color: #41210f;
    padding: 30px 0;
    font-size: 11px;
    text-align: center;
}



/* GOTOP */
#gotop{
    position: absolute;
    bottom: 415px;
    left: 50%;
    width: 80px;
    transform: translateX(-50%);
    z-index: 10;
}



/* TITLE */
.ttl{
    text-align: center;
    margin-bottom: 30px;
}
.ttl-text{
    height: 60px;
    background-color: #f18e00;
    position: relative;
}
.ttl-text img{
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    bottom: 7px;
}


/* ================== INDEX ================== */

/* MV */
.mv{
    background-color: #fff362;
}
.mv img{
    width: 100%;
}
.mv-bottom{
    background-color: #fdf0d9;
    padding: 30px 0;
}
.mv-bottom .flex{
    justify-content: space-between;
    align-items: center;
}
.mv-bottom .flex .main-text img{
    width: 247px;
}
.mv-bottom .box-flex{
    align-items: flex-end;
}
.mv-bottom .box-flex .text-img{
    text-align: center;
}
.mv-bottom .box-flex .text-img.n1 img{
    width: 208px;
}
.mv-bottom .box-flex .text-img.n2 img{
    width: 275px;
}
.mv-bottom .box-flex .text-img.n3 img{
    width: 293px;
}
.mv-bottom .box-flex .text-img.n2{
    border-left: 3px dotted #40210f;
    border-right: 3px dotted #40210f;
    padding: 0 20px;
    margin: 0 35px;
}


/* SECTION 01 */
.sec01 .ttl-text img{
    width: 212px;
}
.sec01 .text.top{
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.4;
    color: #40210f;
    margin-bottom: 40px;
}
.sec01 .text.top strong{
    color: #e50012;
    font-size: 44px;
}
.sec01 .text.top strong span{
    color: #40210f;
}
.sec01 .box{
    width: 10%;
    margin-right: 1.25%;
    text-align: center;
}
.sec01 .box:nth-of-type(9n){
    margin-right: 0;
}
.sec01 .box:nth-of-type(n + 10){
    margin-top: 40px;
}
.sec01 .box .img{
    height: 114px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sec01 .box .img img{
    max-height: 100%;
}
.sec01 .box .text{
    font-size: 14px;
    font-weight: bold;
    font-feature-settings: "palt";
    border: 1px solid #1a1a1a;
    border-radius: 8px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.3;
    margin-top: 5px;
}
.sec01 .att{
    margin-top: 50px;
    font-size: 14px;
}
.att.indent{
    padding-left: 1em;
}
.att.indent::first-letter{
    margin-left: -1em;
}


/* SECTION 02 */
.sec02{
    background-color: #fdf0d9;
}
.sec02 .ttl-text img{
    width: 330px;
    bottom: 3px;
}
.sec02 .box01 .text-flex{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 15px;
}
.sec02 .box01 .text-flex .text-img img{
    width: 625px;
}
.sec02 .box01 .text-flex .text-img{
    margin-right: 20px;
}
.sec02 .box01 .flex .price-img.n1{
    margin-right: 10px;
}
.sec02 .box01 .flex .price-img.n1 img{
    width: 360px;
}
.sec02 .box01 .flex .price-img.n2 img{
    width: 530px;
}
.sec02 .box01 .item{
    position: relative;
    margin-top: -10px;
}
.sec02 .box01 .item .text-box .att:nth-of-type(2),
.sec02 .box01 .item .text-box .att:nth-of-type(3){
    display: inline-block;
}
.sec02 .box01 .item .balloon img{
    width: 230px;
}
.sec02 .box01 .item .balloon{
    position: absolute;
    bottom: 0;
    right: 0;
}
.sec02 .box-flex{
    padding-top: 40px;
    margin-top: 40px;
    border-top: 3px dotted #40210f;
    justify-content: space-between;
}
.sec02 .box02{
    width: 45%;
}
.sec02 .box02 .item{
    position: relative;
    margin-top: 20px;
}
.sec02 .box02 .item .text-box{
    max-width: 300px;
}
.sec02 .box02 .item .text-box .att{
    line-height: 1.6;
}
.sec02 .box02 .text-img img{
    width: 474px;
}
.sec02 .box02 .item .img{
    position: absolute;
    bottom: -20px;
    right: -20px;
}
.sec02 .box02 .item .img img{
    width: 248px;
}
.sec02 .box03{
    width: 55%;
    padding-left: 3%;
    border-left: 3px dotted #40210f;
}
.sec02 .box03 .text-img{
    margin-bottom: 15px;
}
.sec02 .box03 .text-img img{
    width: 530px;
}
.sec02 .box03 .img img{
    width: 580px;
}
.sec02 .text{
    font-size: 13px;
    text-align: right;
    margin-top: 20px;
}
.common-btn{
    text-align: center;
}
.common-btn a img{
    width: 780px;
}
br.s-up{
    display: none;
}


/* SECTION 03 */
.sec03 .ttl-text img{
    width: 495px;
}
.sec03 .text.top{
    text-align: center;
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 50px;
    color: #40210f;
}
.sec03 .flex .box{
    width: 18.5%;
    margin-right: 1.875%;
    text-align: center;
}
.sec03 .flex .box:nth-of-type(5n){
    margin-right: 0;
}
.sec03 .flex .box:nth-of-type(n + 6){
    margin-top: 40px;
}
.sec03 .flex .box .text{
    height: 55px;
}
.sec03 .flex .box:nth-of-type(n + 6) .text{
    height: 65px;
}
.sec03 .flex .box .img{
    height: 205px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sec03 .flex .box .img img{
    max-height: 100%;
}
.sec03 .flex .box .label-text{
    font-size: 18px;
    border: 1px solid #1a1a1a;
    border-radius: 20px;
    margin-bottom: 15px;
}
.sec03 .flex .box .text{
    white-space: nowrap;
    line-height: 1.4;
    margin-top: 10px;
}
.sec03 .flex .box .price{
    font-size: 46px;
    font-weight: 900;
    color: #e50012;
}
.sec03 .flex .box .price span{
    font-size: 36px;
}
.sec03 .flex .box .price strong{
    font-size: 34px;
    font-weight: bold;
}
.sec03 .flex .box:nth-of-type(3) .label-text{
    width: 450px;
}
.sec03 .flex .box:nth-of-type(4) .label-text{
    opacity: 0;
}
.sec03 .att{
    margin-top: 30px;
    font-size: 13px;
}


/* SETCIONT 04 */
.sec04{
    background-color: #fdf0d9;
}
.sec04 .flex{
    justify-content: space-between;
    margin-bottom: 80px;
}
.sec04 .flex .img{
    width: 48%;
}
.sec04 .ttl-text img{
    width: 546px;
    bottom: 1px;
}
.sec04 ul{
    display: flex;
    flex-wrap: wrap;
}
.sec04 ul li{
    padding: 0 2.5%;
    position: relative;
}
.sec04 ul li .step-num{
    margin-bottom: 40px;
}
.sec04 ul li .step-num img{
    height: 126px;
}
.sec04 ul li.n1{
    width: 45%;
    padding-left: 0;
    border-right: 3px dotted #40210f;
}
.sec04 ul li.n2{
    width: 31%;
    border-right: 3px dotted #40210f;
}
.sec04 ul li.n3{
    width: 24%;
    padding-right: 0;
}
.sec04 ul li.n1 .illust-img img{
    width: 126px;
}
.sec04 ul li.n2 .illust-img img{
    width: 113px;
}
.sec04 ul li.n3 .illust-img img{
    width: 92px;
}
.sec04 ul li .label-text{
    background-color: #8dc21f;
    border-radius: 20px;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    display: inline-block;
    padding: 0 30px;
    line-height: 1.5;
    letter-spacing: 0.025em;
    margin-bottom: 10px;
}
.sec04 ul li .btn a{
    background-color: #e95504;
    display: block;
    text-align: center;
    color: #fff;
    padding: 10px 0;
    border-radius: 4px;
    font-size: 24px;
    font-weight: bold;
}
.sec04 ul li .btn a img{
    width: 12px;
    margin-left: 15px;
    top: -2px;
    position: relative;
    vertical-align: middle;
}
.sec04 ul li.n1 .box-flex{
    justify-content: space-between;
    width: 100%;
    max-width: 340px;
    position: absolute;
    top: 0;
    right: 30px;
    flex-direction: row-reverse;
}
.sec04 ul li.n1 .box-flex .item{
    max-width: 194px;
}
.sec04 ul li.n2 .illust-img,
.sec04 ul li.n3 .illust-img{
    position: absolute;
    top: -160px;
    right: 10px;
}
.sec04 ul li .box{
    position: relative;
}


/* SECTION 05 */
.sec05{
    background-color: #fdf0d9;
}
.sec05 .ttl-text img{
    width: 170px;
}
.sec05 .flex{
    justify-content: space-between;
}
.sec05 .flex .text-box{
    max-width: calc(100% - 360px);
}
.sec05 .flex .text-box .text{
    font-size: 18px;
    font-weight: bold;
}
.sec05 .flex .text-box .text a{
    color: #e50012;
    text-decoration: underline;
}
.sec05 .flex .illust-img img{
    width: 270px;
}
.sec05 .text.top{
    text-align: center;
    font-size: 30px;
    letter-spacing: 0.04em;
    font-weight: bold;
    border-bottom: 3px dotted #40210f;
    padding-bottom: 15px;
    margin: 30px 0 20px;
}
.sec05 .box-flex{
    justify-content: space-between;
    margin: 50px 0;
}
.sec05 .box-flex .box{
    width: 31%;
}
.sec05 .box-flex .box .label-text{
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    background-color: #f9cf92;
    border-radius: 4px;
}
.sec05 .box-flex .box .img{
    margin: 25px 0 20px;
    text-align: center;
}
.sec05 .box-flex .box .att{
    font-size: 14px;
}
.sec05 .table table th,
.sec05 .table table td{
    padding: 20px 40px 30px;
    border: 1px solid #1a1a1a;
}
.sec05 .table table th{
    background-color: #f9cf92;
    font-size: 24px;
    font-weight: bold;
    width: 22%;
    line-height: 1.6;
    color: #41210f;
}
.sec05 .table table td{
    background-color: #fff;
    width: 78%;
}
.sec05 .table table td ol li{
    padding-left: 1em;
    font-size: 14px;
    color: #e50012;
}
.sec05 .table table td ol li::before{
    margin-left: -1em;
}
.sec05 .table table td ol li:nth-of-type(1)::before{
    content: "①";
}
.sec05 .table table td ol li:nth-of-type(2)::before{
    content: "②";
}
.sec05 .table table td ol li:nth-of-type(3)::before{
    content: "③";
}
.sec05 .table table td ol li:nth-of-type(4)::before{
    content: "④";
}
.sec05 .table table td ol li:nth-of-type(5)::before{
    content: "⑤";
}
.sec05 .table table td ol li:nth-of-type(6)::before{
    content: "⑥";
}
.sec05 .table table td ol li:nth-of-type(7)::before{
    content: "⑦";
}
.sec05 .table table td .att{
    font-size: 14px;
}
.sec05 .table table td .item-flex{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.sec05 .table table td .item-flex .item:first-child{
    margin-right: 35px;
}
.sec05 .table table td .item-flex .item .text{
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 10px;
}


/* SECTION 06 */
.sec06 .ttl-text img{
    width: 320px;
}
.sec06 .ttl-text{
    cursor: pointer;
    position: relative;
}
.sec06 .ttl-text::before{
    content: "";
    width: 26px;
    height: 15px;
    position: absolute;
    transform: translateY(-50%);
    top: 50%;
    right: 20px;
    background: url(../img/toggle-arrow.svg) no-repeat center center / contain;
    transition: .2s;
}
.sec06 .ttl-text.active::before{
    transform: translateY(-50%) rotate(-180deg);
}
.sec06 .flex{
    margin-top: 50px;
    justify-content: space-between;
}
.sec06 .flex .item .img img{
    width: 167px;
}
.sec06 .flex .item{
    text-align: center;
}
.sec06 .flex .item .item-text{
    font-weight: bold;
    font-size: 18px;
    margin-top: 10px;
}
.sec06 .text:not(.top){
    font-size: 18px;
    font-weight: bold;
}
.sec06 .box{
    margin-top: 60px;
}
.sec06 .box .text.top{
    text-align: center;
    padding-bottom: 15px;
    margin-bottom: 45px;
    border-bottom: 3px dotted #40210f;
    font-size: 30px;
    font-weight: bold;
}
.sec06 .box .box-flex .list-item{
    width: 31%;
    margin-right: 3.5%;
}
.sec06 .box .box-flex .list-item:nth-of-type(3n){
    margin-right: 0;
}
.sec06 .box .box-flex .list-item:nth-of-type(n + 4){
    margin-top: 50px;
}
.sec06 .box .box-flex .list-item .label-text{
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    background-color: #f9cf92;
    border-radius: 4px;
    margin-bottom: 20px;
    color: #41210f;
}
.sec06 .box .box-flex .list-item ul li{
    padding-left: 1em;
    font-size: 14px;
}
.sec06 .box .box-flex .list-item ul li span{
    color: #e50012;
}
.sec06 .box .box-flex .list-item ul li::before{
    content: "●";
    margin-left: -1em;
}
.sec06 .box .box-flex .list-item ul li.adjust::before{
    content: "◎";
}
.sec06 .toggle-content{
    display: none;
}


/* SECTION 07 */
.sec07 .ttl-text img{
    width: 276px;
}
.sec07 .question-box{
    padding: 30px 0;
    border-bottom: 3px dotted #40210f;
}
.sec07 .question-box .question-title{
    min-height: 58px;
    padding: 10px 100px 0;
    position: relative;
    font-size: 22px;
    cursor: pointer;
    font-weight: bold;
    color: #41210f;
}
.sec07 .question-box .question-title::before{
    content: "";
    width: 58px;
    height: 58px;
    background: url(../img/question.svg) no-repeat center center / contain;
    position: absolute;
    top: 0;
    left: 0;
}
.sec07 .question-box .question-title::after{
    content: "";
    width: 26px;
    height: 17px;
    position: absolute;
    top: 50%;
    right: 60px;
    transform: translateY(-50%);
    transition: .2s;
    background: url(../img/question-arrow.svg) no-repeat center center / contain;
}
.sec07 .question-box .question-title.active::after{
    transform: translateY(-50%) rotate(-180deg);
}
.sec07 .question-box:first-child{
    padding-top: 0;
}
.sec07 .answer-box{
    position: relative;
    padding-left: 100px;
    margin-top: 35px;
}
.sec07 .answer-box:not(.show){
    display: none;
}
.sec07 .answer-box::before{
    content: "";
    width: 58px;
    height: 58px;
    background: url(../img/answer.svg) no-repeat center center / contain;
    position: absolute;
    top: 0;
    left: 0;
}
.sec07 .answer-box .text{
    font-size: 14px;
    min-height: 58px;
}
.sec07 .answer-box .text a{
    color: #777777;
    text-decoration: underline;
}
.sec07 .answer-box ol{
    counter-reset: count;
    margin-bottom: 30px;
}
.sec07 .answer-box ol li{
    counter-increment: count;
    padding-left: 1.5em;
    font-size: 14px;
}
.sec07 .answer-box ol li::before{
    content: "("counter(count)") ";
    margin-left: -1.5em;
}
.sec07 .answer-box .att{
    font-size: 14px;
}


/* SECTION 08 */
.sec08 .text.top{
    text-align: center;
    color: #fff;
    font-size: 34px;
    font-weight: bold;
    background-color: #bf1920;
    font-feature-settings: "palt";
    border-radius: 4px;
    margin-bottom: 50px;
}
.sec08 table th,
.sec08 table td{
    padding: 20px;
    font-size: 14px;
}
.sec08 table th{
    border: 1px solid #1a1a1a;
    border-right: none;
    background-color: #f4d9d9;
    width: 100px;
}
.sec08 table th[colspan="2"]{
    width: 200px;
}
.sec08 table th[rowspan="2"]{
    border-right: 1px solid #1a1a1a;
    vertical-align: middle;
}
.sec08 table td{
    border: 1px solid #1a1a1a;
    width: calc(100% - 200px);
}
.sec08 table td a{
    color: #0094eb;
    text-decoration: underline;
}
.sec08 table td ol > li,
.sec08 table td ul > li{
    padding-left: 1em;
}
.sec08 table td ol > li::before{
    margin-left: -1em;
}
.sec08 table td ul > li::before{
    content: "・";
    margin-left: -1em;
}
.sec08 table td ol > li:nth-of-type(1)::before{
    content: "①";
}
.sec08 table td ol > li:nth-of-type(2)::before{
    content: "②";
}
.sec08 table td ol > li:nth-of-type(3)::before{
    content: "③";
}
.sec08 table td span{
    color: #e50012;
}