@charset "UTF-8";

html{scroll-behavior:smooth;scroll-padding-top:0px;}
*{margin:0;padding:0;box-sizing:border-box;}
html{height:100%;}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
ol,ul,li{list-style:none;}
caption,th{text-align:left;}
q:before,q:after{content:''}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;font-size:70%;position:relative;top:-0.5em;}
sub{vertical-align:text-bottom;font-size:70%;position:relative;top:0.5em;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
legend{color:#222;}
object,embed{margin:0;vertical-align:top;}
img,a{vertical-align:top;}
i{font:inherit;}
video{margin:0;padding:0;border:0;outline:0;font-size:100%;line-height:0;vertical-align:baseline;background:transparent;}
article,aside,dialog,figure,footer,header,hgroup,nav,section,main{display:block;}

@media only screen and (max-width:1023px) {

html{scroll-behavior:smooth;scroll-padding-top:20px;}

}

body {
font-family:"Hiragino Kaku Gothic ProN","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"游ゴシック Medium",YuGothic,YuGothicM,sans-serif;
text-align:center;
font-size:16px;
line-height:1.75;
color:#222;
background:#fff;
-webkit-text-size-adjust:100%;}
.mincho {
font-family:"Hiragino Mincho ProN W3","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","游明朝",YuMincho,"HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;}
h1 , h2 , h3 , h4 , h5 , h6 , table {
font-size:100%;
line-height:1.75;
font-weight:normal;}

@media only screen and (max-width:767px) {

body {
font-size:15px;
line-height:1.7;}
h1 , h2 , h3 , h4 , h5 , h6 , table {
line-height:1.7;}

}

.effect {
opacity:0;
filter:blur(0px);
transform:translate(0,40px);
transition:opacity 0.8s 0s ease-out , filter 0.8s 0s ease-out , transform 0.8s 0s ease-out;}
.effect.effect-in {
opacity:1 !important;
filter:blur(0px) !important;
transform:translate(0,0) !important;}

img {
max-width:100%;
height:auto;}
table {
max-width:100%;}
ol {
margin:0 0 0 1.25em;}
ol li {
list-style:decimal;
line-height:1.5;
margin:0.25em 0;}
dl {
text-align:left;
display:flex;
flex-wrap:wrap;
width:100%;
line-height:1.5;}
dt {
padding:0.25em 0;
width:1.25em;
white-space:nowrap;}
dd {
padding:0.25em 0;
width:calc(100% - 1.25em);}

a:link {
color:#700;
outline:none;
text-decoration:none;
transition:color 0.25s;}
a:visited {
color:#700;
outline:none;
text-decoration:none;}
a:hover {
color:#e82;
outline:none;
text-decoration:none;}

hr {
clear:both;
margin:1.6em 0;
width:100%;
border:0;
height:1px;
background:#222;}

blockquote , .block {
margin:1.55em 0;
padding:1.5em;
background:#fce2c4;
border-radius:1em;}

.aligncenter {
text-align:center;
display:block;
margin-left:auto;
margin-right:auto;}
.alignright {
float:right;
margin:0.2em 0 2.2em 2.2em;}
.alignleft {
float:left;
margin:0.2em 2.2em 2.2em 0;}
.alignnone {
display:block;}

@media only screen and (max-width:767px) {

.alignright , .alignleft {
float:none;
text-align:center;
display:block;
margin:0.2em auto 2.2em;}

}

.clearfix:before , .clearfix:after {
display:table;
content:" ";}
.clearfix:after {
clear:both;}

.col-flex {
display:-webkit-box;
display:-moz-box;
display:-ms-box;
display:-webkit-flexbox;
display:-moz-flexbox;
display:-ms-flexbox;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:flex;
-webkit-box-lines:multiple;
-moz-box-lines:multiple;
-webkit-flex-wrap:wrap;
-moz-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;}

.youtube {
position:relative;
padding-bottom:56.25%;
height:0;
overflow:hidden;}
.youtube iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;}

/*  ttl  ==========================*/

.post .body h1 , .ttl-01 {
font-family:"Zen Maru Gothic", sans-serif;
position:relative;
margin:70px 0 0.6em;
font-size:350%;
font-weight:600;
line-height:1.2;
color:#93252a;
letter-spacing:0.05em;}
.post .body h1::before , .ttl-01::before {
content:"";
position:absolute;
z-index:2;
bottom:100%;
left:50%;
width:70px;
aspect-ratio:1 / 1;
background:url("../images/bg_ttl_01.png") no-repeat center center / contain;
transform:translate(-50%,-7.5%);}
.post .body h1 br , .ttl-01 br {
display:none;}
.post .body h2 , .ttl-02 {
font-family:"Zen Maru Gothic", sans-serif;
margin:0 0 0.85em 0;
font-size:193.75%;
line-height:1.2;
font-weight:600;
color:#222;}
.post .body h2 br , .ttl-02 br {
display:none;}
.post .body h3 , .ttl-03 {
text-align:center;
margin:1.1em 0;
padding:0.5em;
font-size:125%;
line-height:1.2;
font-weight:600;
color:#fff;
background:#8dc21f;
border-radius:1.1em;}
.post .body h4 , .ttl-04 {
margin:1.1em 0;
padding:0 0 0 0.65em;
font-size:150%;
line-height:1.2;
font-weight:600;
color:#8dc21f;
border-left:6px solid #8dc21f;}
.post .body h5 , .ttl-05 {
margin:1.1em 0;
padding:0 0 0.25em 0;
font-size:118.75%;
line-height:1.2;
font-weight:600;
border-bottom:1px solid #222;}
.post .body h6 , .ttl-06 {
text-align:center;
margin:2.2em 0 0 0;
padding:1.5em 0;
font-size:93.75%;
font-weight:400;
border-top:1px solid #222;
border-bottom:1px solid #222;}
.ttl-07 {
position:relative;
margin:0 0 1.75em 0;
padding:0 0 0.15em 0;
font-size:181.25%;
line-height:1.3;
font-weight:600;
overflow:hidden;}
.ttl-07::before {
content:"";
position:absolute;
width:100%;
bottom:0;
border-bottom:3px solid #8dc21f;}
.ttl-07::after {
content:"";
position:absolute;
width:100%;
bottom:0;
border-bottom:3px solid #222;}

@media only screen and (max-width:767px) {

.post .body h1 , .ttl-01 {
margin-top:60px;
font-size:9.5vw;}
.post .body h1::before , .ttl-01::before {
width:60px;}
.post .body h1 br , .ttl-01 br {
display:block;}
.post .body h2 , .ttl-02 {
font-size:175%;}
.post .body h2 br , .ttl-02 br {
display:block;}

}

/* height =============================*/

.ht00 {margin-top:0px !important;}
.ht10 {margin-top:10px !important;}
.ht20 {margin-top:20px !important;}
.ht30 {margin-top:30px !important;}
.ht40 {margin-top:40px !important;}
.ht50 {margin-top:50px !important;}
.ht60 {margin-top:60px !important;}
.ht70 {margin-top:70px !important;}
.ht80 {margin-top:80px !important;}
.ht90 {margin-top:90px !important;}
.ht100 {margin-top:100px !important;}
.ht120 {margin-top:120px !important;}
.ht150 {margin-top:150px !important;}
.ht180 {margin-top:180px !important;}

@media only screen and (max-width:1023px) {

.ht10 {margin-top:1% !important;}
.ht20 {margin-top:2% !important;}
.ht30 {margin-top:3% !important;}
.ht40 {margin-top:4% !important;}
.ht50 {margin-top:5% !important;}
.ht60 {margin-top:6% !important;}
.ht70 {margin-top:7% !important;}
.ht80 {margin-top:8% !important;}
.ht90 {margin-top:9% !important;}
.ht100 {margin-top:10% !important;}
.ht120 {margin-top:12% !important;}
.ht150 {margin-top:15% !important;}
.ht180 {margin-top:18% !important;}

}

@media only screen and ( max-width:767px) {

.ht10 {margin-top:7px !important;}
.ht20 {margin-top:14px !important;}
.ht30 {margin-top:21px !important;}
.ht40 {margin-top:28px !important;}
.ht50 {margin-top:35px !important;}
.ht60 {margin-top:42px !important;}
.ht70 {margin-top:49px !important;}
.ht80 {margin-top:56px !important;}
.ht90 {margin-top:63px !important;}
.ht100 {margin-top:70px !important;}
.ht120 {margin-top:84px !important;}
.ht150 {margin-top:105px !important;}
.ht180 {margin-top:126px !important;}

}

/* table =====================*/

.tbl-scroll {
white-space:nowrap;
overflow:auto;}
.tbl-scroll::-webkit-scrollbar {
height:10px;}
.tbl-scroll::-webkit-scrollbar-track {
background:#f1f1f1;}
.tbl-scroll::-webkit-scrollbar-thumb {
background:#bbb;}
.tbl-scroll table {
width:100%;}

table.tbl-01 , .post .body table {
width:100%;
border:1px solid #8dc21f;
border-collapse:collapse;}
.post .body table {
margin-bottom:1.1em;}
.post .body table p {
margin-bottom:0em;}
table.tbl-01 tbody , .post .body tbody {
width:100%;
display:table;}
table.tbl-01 tr , .post .body tr {
height:auto !important;}
table.tbl-01 th , .post .body th {
text-align:center;
padding:1em 0.5em;
width:25%;
line-height:1.5;
font-weight:bold;
background:#d6e6ae;
border:1px solid #8dc21f;
height:auto !important;}
table.tbl-01 td , .post .body td {
text-align:left;
padding:1em;
font-size:93.75%;
line-height:1.65;
background:#fff;
border:1px solid #8dc21f;
height:auto !important;}

@media only screen and (max-width:767px) {

table.tbl-01 , .post .body table {
border-top:none;}
table.tbl-01 th , .post .body th {
text-align:left;
display:block;
width:100%;
padding:0.75em 0.75em;
border:0;
border-top:1px solid #8dc21f;}
table.tbl-01 td , .post .body td {
display:block;
width:100%;
padding:1em 0.75em;
border:0;}

}

/* btn =============================*/

.alpha {
transition:0.25s;
filter:alpha(opacity=100)!important;
-moz-opacity:1!important;
opacity:1!important;}
.alpha:hover {
filter:alpha(opacity=60)!important;
-moz-opacity:0.6!important;
opacity:0.6!important;}

.btn-01 {
text-align:center;
clear:both;}
.btn-01 a {
position:relative;
display:inline-block;
padding:0.8em 3.6em;
font-size:112.5%;
line-height:1.4;
font-weight:600;
color:#fff;
background:#f29600;
box-shadow:0 0 0 2px #f29600;
border-radius:1.5em;
transition:0.25s;}
.btn-01 a:hover {
color:#f29600;
background:#fff;}
.btn-01 a::after {
content:"";
position:absolute;
z-index:2;
right:5px;
top:50%;
width:7px;
height:7px;
border-right:2px solid #fff;
border-bottom:2px solid #fff;
transform:translate(0,-50%) rotate(-45deg);
transition:0.25s;}
.btn-01 a:hover::after {
border-right:1px solid #f29600;
border-bottom:1px solid #f29600;}

/* privacy =============================== */

.privacy {
text-align:left;}
.privacy dl {
font-size:87.5%;
line-height:1.5;}
.privacy dt {
width:1em;
white-space:nowrap;
padding:0.3em 0;}
.privacy dd {
width:calc(100% - 1.5em);
padding:0.3em 0;}

/* thanks error =======================*/

.thanks-error {
text-align:center;
margin:5% auto;}
.thanks-error .ttl {
margin-bottom:1.1em;
font-size:200%;
line-height:1.3;
font-weight:700;
color:#222;}
.thanks-error .ttl br {
display:none;}
.thanks-error .txt p {
margin-bottom:1.1em;}

@media only screen and (max-width:767px) {

.thanks-error .ttl {
font-size:8vw;}
.thanks-error .ttl br {
display:block;}
.thanks-error .txt {
text-align:left;}
.thanks-error .txt br {
display:none;}

}
