* {
				font-family: inherit;
				font-size: inherit;
				line-height: inherit;
}

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

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, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
				margin: 0;
				padding: 0;
				border: 0;
				outline: 0;
				font-size: 100%;
				vertical-align: baseline;
				background: transparent;
}

body {
				line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
				display: block;
}

ul, ol {
				list-style: none;
}

blockquote, q {
				quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
				content: "";
				content: none;
}

a {
				margin: 0;
				padding: 0;
				font-size: 100%;
				vertical-align: baseline;
				background: transparent;
}

a,
a:visited {
				color: inherit;
}

ins {
				background-color: #ff9;
				color: #000;
				text-decoration: none;
}

mark {
				background-color: #ff9;
				color: #000;
				font-style: italic;
				font-weight: bold;
}

del {
				text-decoration: line-through;
}

abbr[title], dfn[title] {
				border-bottom: 1px dotted;
				cursor: help;
}

table {
				border-collapse: collapse;
				border-spacing: 0;
}

hr {
				display: block;
				height: 1px;
				border: 0;
				border-top: 1px solid #cccccc;
				margin: 1em 0;
				padding: 0;
}

input, select {
				vertical-align: middle;
}

.dn {
				display: none !important;
}

.di {
				display: inline !important;
}

.dib {
				display: inline-block !important;
}

.db {
				display: block !important;
}

.fwb {
				font-weight: bold !important;
}

.tal {
				text-align: left !important;
}

.tac {
				text-align: center !important;
}

.tar {
				text-align: right !important;
}

.tdn {
				text-decoration: none !important;
}

.tdu {
				text-decoration: underline !important;
}

.vat {
				vertical-align: top !important;
}

.vam {
				vertical-align: middle !important;
}

.vab {
				vertical-align: bottom !important;
}

.mt0 {
				margin-top: 0 !important;
}

.mt5 {
				margin-top: 5px !important;
}

.mt10 {
				margin-top: 10px !important;
}

.mt15 {
				margin-top: 15px !important;
}

.mt20 {
				margin-top: 20px !important;
}

.mt25 {
				margin-top: 25px !important;
}

.mt30 {
				margin-top: 30px !important;
}

.mt35 {
				margin-top: 35px !important;
}

.mt40 {
				margin-top: 40px !important;
}

.mt45 {
				margin-top: 45px !important;
}

.mt50 {
				margin-top: 50px !important;
}

.mt60 {
				margin-top: 60px !important;
}

.mt70 {
				margin-top: 70px !important;
}

.mt80 {
				margin-top: 80px !important;
}

.mt90 {
				margin-top: 90px !important;
}

.mt100 {
				margin-top: 100px !important;
}

.mr0 {
				margin-right: 0 !important;
}

.mr5 {
				margin-right: 5px !important;
}

.mr10 {
				margin-right: 10px !important;
}

.mr15 {
				margin-right: 15px !important;
}

.mr20 {
				margin-right: 20px !important;
}

.mr25 {
				margin-right: 25px !important;
}

.mr30 {
				margin-right: 30px !important;
}

.mr35 {
				margin-right: 35px !important;
}

.mr40 {
				margin-right: 40px !important;
}

.mr45 {
				margin-right: 45px !important;
}

.mr50 {
				margin-right: 50px !important;
}

.mr60 {
				margin-right: 60px !important;
}

.mr70 {
				margin-right: 70px !important;
}

.mr80 {
				margin-right: 80px !important;
}

.mr90 {
				margin-right: 90px !important;
}

.mr100 {
				margin-right: 100px !important;
}

.mb0 {
				margin-bottom: 0 !important;
}

.mb5 {
				margin-bottom: 5px !important;
}

.mb10 {
				margin-bottom: 10px !important;
}

.mb15 {
				margin-bottom: 15px !important;
}

.mb20 {
				margin-bottom: 20px !important;
}

.mb25 {
				margin-bottom: 25px !important;
}

.mb30 {
				margin-bottom: 30px !important;
}

.mb35 {
				margin-bottom: 35px !important;
}

.mb40 {
				margin-bottom: 40px !important;
}

.mb45 {
				margin-bottom: 45px !important;
}

.mb50 {
				margin-bottom: 50px !important;
}

.mb60 {
				margin-bottom: 60px !important;
}

.mb70 {
				margin-bottom: 70px !important;
}

.mb80 {
				margin-bottom: 80px !important;
}

.mb90 {
				margin-bottom: 90px !important;
}

.mb100 {
				margin-bottom: 100px !important;
}

.ml0 {
				margin-left: 0 !important;
}

.ml5 {
				margin-left: 5px !important;
}

.ml10 {
				margin-left: 10px !important;
}

.ml15 {
				margin-left: 15px !important;
}

.ml20 {
				margin-left: 20px !important;
}

.ml25 {
				margin-left: 25px !important;
}

.ml30 {
				margin-left: 30px !important;
}

.ml35 {
				margin-left: 35px !important;
}

.ml40 {
				margin-left: 40px !important;
}

.ml45 {
				margin-left: 45px !important;
}

.ml50 {
				margin-left: 50px !important;
}

.ml60 {
				margin-left: 60px !important;
}

.ml70 {
				margin-left: 70px !important;
}

.ml80 {
				margin-left: 80px !important;
}

.ml90 {
				margin-left: 90px !important;
}

.ml100 {
				margin-left: 100px !important;
}

.bdn {
				border: none !important;
}

.bdtn {
				border-top: none !important;
}

.bdrn {
				border-right: none !important;
}

.bdbn {
				border-bottom: none !important;
}

.bdln {
				border-left: none !important;
}

.ovh {
				overflow: hidden !important;
}

.posr {
				position: relative !important;
}

.zi1 {
				z-index: 1 !important;
}

.curp {
				cursor: pointer !important;
}

html {
				scroll-behavior: smooth;
}

img {
				display: block;
				vertical-align: middle;
				width: 100%;
				height: auto;
}

.sec {
				width: 100%;
}

.sec_inner {
				width: 100%;
}

.block, .block_inner, .box, .box_inner {
				width: 100%;
}

.img {
				margin: 0;
				font-size: 0;
}
.img img {
				display: block;
				width: 100%;
				height: auto;
}

footer {
				font-size: min(2.9333333333vw, 11px);
				width: 100%;
				padding: min(5.3333333333vw, 20px) 0 min(5.3333333333vw, 20px);
				background-color: #ffffff;
}
footer .list {
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-pack: center;
				    -ms-flex-pack: center;
				        justify-content: center;
				margin-bottom: min(2.6666666667vw, 10px);
}
footer .list li + li {
				margin-left: min(2.6666666667vw, 10px);
}
footer .list li + li::before {
				content: "|";
				margin-right: min(2.6666666667vw, 10px);
}
footer .list li > a {
				text-decoration: underline;
}
footer .list li > a:hover {
				text-decoration: none;
}
footer .txt_copyright {
				text-align: center;
				font-size: min(2.6666666667vw, 10px);
}

.wrap {
				background-color: #f0f0f0;
}

.conts {
				color: #000000;
				font-size: min(4.8vw, 36px);
				line-height: 1.4;
				width: 100%;
				max-width: 500px;
				margin: 0 auto;
				background-color: #ffffff;
				overflow: hidden;
}

.sec_cta .sec_inner {
				position: relative;
}
.sec_cta .img_lead, .sec_cta .img_head {
				margin: 0;
}
.sec_cta .block_subscription .box_subscription .box_inner {
				position: relative;
}
.sec_cta .block_subscription .box_subscription .box_inner .btn_main {
				position: absolute;
				width: 86.4%;
				left: 50%;
				top: 64.2666666667%;
				-webkit-transform: translate(-50%, -50%);
				        transform: translate(-50%, -50%);
				z-index: 2;
				margin: 0;
}
.sec_cta .block_subscription .box_subscription .box_inner .btn_main a {
				display: block;
				-webkit-transition: 0.2s;
				transition: 0.2s;
}
.sec_cta .block_subscription .box_subscription .box_inner .btn_main a img {
				display: block;
				width: 100%;
				height: auto;
}
.sec_cta .block_subscription .box_subscription .box_inner .btn_main a:hover {
				-webkit-filter: brightness(1.08) saturate(1.05);
				        filter: brightness(1.08) saturate(1.05);
}
.sec_cta .block_onetime .box_onetime .box_inner {
				position: relative;
}
.sec_cta .block_onetime .box_onetime .box_inner .btn_sub {
				position: absolute;
				width: 42.2666666667%;
				left: 72.1333333333%;
				top: 61.3333333333%;
				-webkit-transform: translate(-50%, -50%);
				        transform: translate(-50%, -50%);
				z-index: 2;
				margin: 0;
}
.sec_cta .block_onetime .box_onetime .box_inner .btn_sub a {
				display: block;
				-webkit-transition: 0.2s;
				transition: 0.2s;
}
.sec_cta .block_onetime .box_onetime .box_inner .btn_sub a img {
				display: block;
				width: 100%;
				height: auto;
}
.sec_cta .block_onetime .box_onetime .box_inner .btn_sub a:hover {
				-webkit-filter: brightness(1.05);
				        filter: brightness(1.05);
}

.sec_slider {
				overflow: hidden;
}
.sec_slider .sec_inner {
				position: relative;
				width: 100%;
}
.sec_slider .slider_bg {
				position: relative;
				width: 100%;
}
.sec_slider .slider_bg img {
				display: block;
				width: 100%;
				height: auto;
}
.sec_slider .slider_track {
				position: absolute;
				top: 1.9305019305%;
				left: 2.1333333333%;
				width: 95.7333333333%;
				height: 92.8571428571%;
				z-index: 2;
}
.sec_slider .slider_track .slider_slide {
				position: absolute;
				top: 0;
				left: 0;
				width: 100%;
				height: auto;
				opacity: 0;
				visibility: hidden;
				-webkit-transition: opacity 0.4s ease;
				transition: opacity 0.4s ease;
}
.sec_slider .slider_track .slider_slide img {
				display: block;
				width: 100%;
				height: auto;
}
.sec_slider .slider_track .slider_slide.is-active {
				opacity: 1;
				visibility: visible;
				z-index: 1;
}
.sec_slider .slider_dots {
				position: absolute;
				bottom: 1.9305019305%;
				left: 50%;
				-webkit-transform: translateX(-50%);
				        transform: translateX(-50%);
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				gap: min(2.6666666667vw, 10px);
				z-index: 3;
}
.sec_slider .slider_dots .slider_dot {
				width: min(3.2vw, 12px);
				height: min(3.2vw, 12px);
				border-radius: 50%;
				background: rgba(255, 255, 255, 0.6);
				border: min(0.2666666667vw, 1px) solid #1b8d4f;
				cursor: pointer;
				padding: 0;
				-webkit-transition: background 0.2s;
				transition: background 0.2s;
}
.sec_slider .slider_dots .slider_dot.is-active {
				background: #1b8d4f;
}

.sec_faq {
				background-color: #ffffff;
				padding-bottom: min(10.6666666667vw, 40px);
}
.sec_faq .img_head {
				margin-bottom: 0;
}
.sec_faq .list_faq {
				width: 90.6666666667%;
				margin: 0 auto;
				padding-top: min(2.6666666667vw, 10px);
}
.sec_faq .list_faq dt {
				background-color: #1b8d4f;
				color: #ffffff;
				font-size: min(4.5333333333vw, 17px);
				font-weight: bold;
				line-height: 1.5;
				padding: min(3.7333333333vw, 14px) min(10.6666666667vw, 40px) min(3.7333333333vw, 14px) min(4vw, 15px);
				border-radius: min(4vw, 15px);
				margin-top: min(2.6666666667vw, 10px);
				cursor: pointer;
				position: relative;
				display: -webkit-box;
				display: -ms-flexbox;
				display: flex;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				gap: min(2.6666666667vw, 10px);
				-webkit-transition: border-radius 0.25s;
				transition: border-radius 0.25s;
}
.sec_faq .list_faq dt .q_mark {
				-ms-flex-negative: 0;
				    flex-shrink: 0;
				font-family: "Gill Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
				font-style: italic;
				font-size: min(5.8666666667vw, 22px);
}
.sec_faq .list_faq dt .q_txt {
				-webkit-box-flex: 1;
				    -ms-flex: 1;
				        flex: 1;
}
.sec_faq .list_faq dt::after {
				content: "";
				position: absolute;
				right: min(4vw, 15px);
				top: 50%;
				width: min(3.7333333333vw, 14px);
				height: min(0.5333333333vw, 2px);
				background-color: #ffffff;
				-webkit-transform: translateY(-50%);
				        transform: translateY(-50%);
}
.sec_faq .list_faq dt::before {
				content: "";
				position: absolute;
				right: calc(min(4vw, 15px) + min(1.6vw, 6px));
				top: 50%;
				width: min(0.5333333333vw, 2px);
				height: min(3.7333333333vw, 14px);
				background-color: #ffffff;
				-webkit-transform: translateY(-50%);
				        transform: translateY(-50%);
				-webkit-transition: opacity 0.25s;
				transition: opacity 0.25s;
}
.sec_faq .list_faq dt.is-open {
				border-radius: min(4vw, 15px) min(4vw, 15px) 0 0;
}
.sec_faq .list_faq dt.is-open::before {
				opacity: 0;
}
.sec_faq .list_faq dd {
				background-color: #ffffff;
				color: #000000;
				font-size: min(3.7333333333vw, 14px);
				line-height: 1.8;
				padding: min(4vw, 15px) min(4vw, 15px) min(5.3333333333vw, 20px);
				border: min(0.2666666667vw, 1px) solid #1b8d4f;
				border-top: none;
				border-radius: 0 0 min(4vw, 15px) min(4vw, 15px);
				display: none;
}
.sec_faq .list_faq dd .hl {
				color: #c3323f;
				font-weight: bold;
}

.form-area-wrap {
				width: 100%;
				background-color: #f7f7f7;
				padding: min(5.3333333333vw, 20px) 0;
				min-height: min(10.6666666667vw, 40px);
}

.btn_float {
				position: fixed;
				bottom: min(5.3333333333vw, 20px);
				width: min(24vw, 90px);
				right: max(min(2.6666666667vw, 10px), 50% - 250px + 10px);
				z-index: 100;
				display: block;
				opacity: 1;
				visibility: visible;
				-webkit-transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
				transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
				transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.2s ease, filter 0.2s ease;
				transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.2s ease, filter 0.2s ease, -webkit-transform 0.2s ease, -webkit-filter 0.2s ease;
}
.btn_float img {
				display: block;
				width: 100%;
				height: auto;
}
.btn_float:hover {
				-webkit-transform: scale(1.05);
				        transform: scale(1.05);
				-webkit-filter: brightness(1.08);
				        filter: brightness(1.08);
}
.btn_float.is-hidden {
				opacity: 0;
				visibility: hidden;
				pointer-events: none;
}

@media screen and (min-width: 751px) {
				body {
								background-color: #f0f0f0;
				}
}
@media screen and (max-width: 750px) {
				footer .list {
								font-size: min(3.2vw, 24px);
				}
}