@charset "utf-8";

/* RESET CSS */
article,aside,details,figcaption,figure,footer,header,hgroup,img,menu,nav,section{display:block}a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}
img{margin:0 auto;padding:0;max-width:100%;}
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
/*----------------------------------------------------------------------------------------------
button:hover
----------------------------------------------------------------------------------------------*/
@-webkit-keyframes hvr-wobble-vertical{
	16.65%{-webkit-transform:translateY(8px);transform:translateY(8px)}
	33.3%{-webkit-transform:translateY(-6px);transform:translateY(-6px)}
	49.95%{-webkit-transform:translateY(4px);transform:translateY(4px)}
	66.6%{-webkit-transform:translateY(-2px);transform:translateY(-2px)}
	83.25%{-webkit-transform:translateY(1px);transform:translateY(1px)}
	100%{-webkit-transform:translateY(0);transform:translateY(0)}
}
@keyframes hvr-wobble-vertical{
	16.65%{-webkit-transform:translateY(8px);transform:translateY(8px)}
	33.3%{-webkit-transform:translateY(-6px);transform:translateY(-6px)}
	49.95%{-webkit-transform:translateY(4px);transform:translateY(4px)}
	66.6%{-webkit-transform:translateY(-2px);transform:translateY(-2px)}
	83.25%{-webkit-transform:translateY(1px);transform:translateY(1px)}
	100%{-webkit-transform:translateY(0);transform:translateY(0)}
}
.hvr-wobble-vertical{display:inline-block;vertical-align:middle;-webkit-transform:translateZ(0);transform:translateZ(0);box-shadow:0 0 1px rgba(0,0,0,0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-moz-osx-font-smoothing:grayscale}
.hvr-wobble-vertical:active,.hvr-wobble-vertical:focus,.hvr-wobble-vertical:hover{-webkit-animation-name:hvr-wobble-vertical;animation-name:hvr-wobble-vertical;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:1;animation-iteration-count:1}
/*----------------------------------------------------------------------------------------------
Basic
----------------------------------------------------------------------------------------------*/
html{ font-size:62.5%; overflow: scroll;}
body{
	width:100%;
	font-size:2.2rem;
	color:#222;
	line-height:1.7;
	-webkit-font-feature-settings:'palt' 1; font-feature-settings:'palt' 1;
	font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN",Hiragino Kaku Gothic ProN,Arial,"メイリオ",Meiryo,sans-serif;
	background: #fff;}
#main{
    width: 960px;
    margin: 0 auto;
    box-shadow: 0 5px 15px #808080;
}

/* Float・Clearfix */
.clearfix:before,.clearfix:after{ content:" "; display:table; }
.clearfix:after{ clear:both; }
.clearfix{ *zoom:1; }
.img_right{ float:right; padding:0 0 2rem 2rem; }
.img_left{ float:left; padding:0 2rem 2rem 0; }
img.img_full{ width: 100%;}
.img_caption300{ width: 300px;}
.img_caption340{ width: 340px;}
.img_caption350{ width: 350px;}
.img_caption375{ width: 375px;}
.img_caption400{ width: 400px;}
.img_caption420{ width: 420px;}
.img_caption500{ width: 500px;}
.img_caption660{ width: 660px;}
.img_caption670{ width: 670px;}
.img_caption740{ width: 740px;}
.img_caption860{ width: 860px;}


.img_center.middle {
    margin: 2rem 0;
}
.img_center.bottom {
    margin-top: 2rem;
}
.img_center.top {
    margin-bottom: 2rem;
}
.img_center {
	margin: 0 auto;
}
img.middle {
    margin: 5rem 0;
}
.img_bottom{margin-top: 1rem;}
img.top {margin-bottom: 5rem;}
img.bottom {margin-top: 5rem;}
img.s_bottom {margin-top: 2rem;}
/*画像キャプション*/
.caption{
	background: #000;
    color: #fff;
    font-size: 80%;
    font-weight: bold;
    line-height: 1.4;
    padding: 1rem 0;
    text-align: center;
}
/*flex*/
.flex {
	display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.flex_center {
    align-items: center;
}
.flex img{margin: 0;}
.flex.middle {
    margin: 2rem 0;
}
.flex img.s_bottom {
    margin-top: 2rem;
}
/* PC・SP表示調整 */
.display_pc{ display:block; }
.display_sp{ display:none; }
.pc{ display:block; }
.sp{ display:none; }
.display_inline_pc{ display:inline-block; }
.display_inline_sp{ display:none; }

/* Font */
.mb101 {
	font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
	-webkit-font-feature-settings: 'palt' 1;
	font-feature-settings: 'palt' 1;
	letter-spacing:-2px;
	color: #000;
}
.serif { font-family: Ryumin ExtraBold KL,serif;}
.sansserif { font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";}


.u{ text-decoration:underline;text-decoration-skip-ink: none; }
.b{ font-weight:bold; }
.r{ color:#bb0000; }
.rub{text-decoration:underline;text-decoration-skip-ink: none;font-weight:bold; color:#bb0000; }
.y {color: #fffb85;}
.text_c{ text-align:center; }
.text_r{ text-align:right; }
.text_l{ text-align:left; }
.xxxxsmall{ font-size:30%; }
.xxsmall{ font-size:67%; }
.xxsmall02 {
    display: block;
	line-height: 1.3;
	font-size:67%;
}
.xsmall{ font-size:80%; }
.small{ font-size:90%; }
.large110{font-size: 110%;}
.large115{ font-size:115%; }
.large{ font-size:120%;}
.xlarge{ font-size:125%; }
.xxlarge{ font-size:140%; }
.xxxlarge{ font-size:170%; }
.xxxxlarge{ font-size:180%; }
.xxxxxlarge{ font-size:190%; }
.lh_small{ line-height: 1.3;}
.bg_y{ background:#ffff94; }
.notice{
	padding-top: 1rem;
    font-size: 1.5rem;
    text-align: right;
	font-weight: 400;
	font-family: sans-serif;
}
.notice.out {
    padding: 1rem 5rem;
}
.marker {background: linear-gradient(transparent 50%, #fffb85 50%);color: #bb0000;font-weight: bold;}
.marker_black {
	background: #000;
    color: #fff;
    font-weight: bold;
    padding: 0.5rem;
    line-height: 1;
    display: inline-block;
}
.marker_r {
	background: #bb0000;
    color: #fff;
    font-weight: bold;
    padding: 0.5rem;
    line-height: 1;
    display: inline-block;
}

.text_stand_out.middle {
    font-size: 7rem;
    text-align: center;
	margin: 2rem 0;
	color: #bb0000;
	font-weight: bold;
}


p+img{ margin-top:2rem; }

/*bg背景*/
.bg_01 {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f8f5e6+0,d1ccb1+100 */
	background: #f8f5e6; /* Old browsers */
	background: -moz-linear-gradient(left,  #f8f5e6 0%, #d1ccb1 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #f8f5e6 0%,#d1ccb1 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #f8f5e6 0%,#d1ccb1 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8f5e6', endColorstr='#d1ccb1',GradientType=1 ); /* IE6-9 */
}


/*----------------------------------------------------------------------------------------------
prihead
----------------------------------------------------------------------------------------------*/
#prihead{
	z-index:10;
	position:fixed;
	width:100%;
	font-size:2.4rem;
	font-weight:bold;
	text-align:center;
	background:#af0017;
	background:-moz-linear-gradient(to right, #520202 0%,#af0017 50%,#520202 100%);
	background:-webkit-linear-gradient(to right, #520202 0%,#af0017 50%,#520202 100%);
	background: linear-gradient(to right, #520202 0%,#af0017 50%,#520202 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#af0017', endColorstr='#af0017',GradientType=1);
}
#prihead #CDT{
	width:960px;
	padding:1rem 0;
	margin:0 auto;
	color:#fff;
	line-height:1.3;
	font-family: Century Gothic, "Courier New", Consolas, monospace;
}
#prihead #CDT .count_num{
	display:inline-block;
	padding:0 .4rem;
	margin:0 .4rem;
	border-radius:3px;
	color:#222;
	font-size:150%;
	background:#fff;
	font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif,monospace;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop, #prihead #CDT .count_num{	/* IE11 */
		padding:1rem .4rem 0;
		line-height:1;
	}
}

/*----------------------------------------------------------------------------------------------
Countdown
----------------------------------------------------------------------------------------------*/
.timer p{ margin:.5rem 0;}
.timer01{ padding:.5rem 0; color:#fff; font-size:2.2rem; text-align:center; font-weight:bold; line-height:1; background:#222;}
.timer01 .timer_num{ color: #ffff55; font-size:140%; font-family: Century Gothic, "Courier New", Consolas, monospace;}
/*----------------------------------------------------------------------------------------------
Header
----------------------------------------------------------------------------------------------*/
header{ width:100%; margin:0 auto; background:url("../img/sato_letter_head01_bg.jpg") no-repeat bottom;}
/*----------------------------------------------------------------------------------------------
Section
----------------------------------------------------------------------------------------------*/
/*section{ padding:5rem 0 0; }*/
.sec_inner{width: 960px; margin:0 auto;padding: 0 5rem 7rem;}
.sec_inner.full { padding: 0 0 7rem 0;}
.bg_black{padding: 7rem 0 0; background: #000;color: #fff;}
.bg_black .sub_head{margin: 0 auto 2rem;color: #fff;}
.bg_black.last{margin-bottom: 3rem;}
.paper{background: url("../img/base/footer_lodyas.jpg");background-attachment: fixed;padding-top: 7rem;}

/*----------------------------------------------------------------------------------------------
sub_head 
----------------------------------------------------------------------------------------------*/
.sub_head{
	color:#000;
	font-size: 5rem;
	line-height:1.2;
	text-align:center;
	letter-spacing:-2px;
	margin:0 auto 3rem;
	-webkit-font-feature-settings: 'palt' 1;
	font-feature-settings: 'palt' 1;
	font-family: Ryumin ExtraBold KL,serif;
	font-weight: bold;
}
.sub_head .marker { background: linear-gradient(transparent 60%, #fffb85 60%,#fffb85 85%,transparent 85%);}
/*----------------------------------------------------------------------------------------------
ブレッド
----------------------------------------------------------------------------------------------*/
/* 共有 */
ul.check1 li {
    padding: 0 0 1rem 4rem;
    font-weight: bold;
    background: url(../img/base/check3.png) 0 .2rem no-repeat;
    font-size: 2.4rem;
    line-height: 1.3;
}
.check2 li {
    padding: 0 0 1rem 2.6rem;
    background: url(../img/base/check3.png) 0 0.1rem no-repeat;
    line-height: 1.3;
    background-size: 2rem;
}
ul.check2 {
    margin: 2rem 0;
}
.check3 li:nth-child(even) {
    background-color: #fffeec;
}
.check3 li {
    padding: 2rem 5rem 2rem 6rem;
    border-bottom: 2px dotted #ccc;
	background: url(../img/base/icon_check05.png) 1.5rem 2.2rem no-repeat;
	background-size: 38px;
	font-weight: bold;
	letter-spacing: -0.4px;
}
/*----------------------------------------------------------------------------------------------
effect
----------------------------------------------------------------------------------------------*/
.effect {
    margin-top: 7rem;
}
h4.sub_catch {
	font-size: 4.2rem;
    line-height: 1.3;
    display: block;
    text-align: center;
    font-weight: bold;
    margin-bottom: 2rem;
}
h4.sub_catch.middle {
    margin-top: 4rem;
}
.effect_inner {
	width: 960px;
    margin: 0 auto;
    padding: 0 5rem 7rem;
}
.effect_ttl .notice {
	margin: 0 5rem 2rem 5rem;
}

/*----------------------------------------------------------------------------------------------
text_box
----------------------------------------------------------------------------------------------*/
.text_box {
    background: #f2f5ff;
    padding: 2rem;
}
/*text_box02*/
.text_box02_ttl {
    background: #000;
    display: inline-block;
    color: #fff;
    padding: 1rem;
    font-weight: bold;
    font-family: Ryumin ExtraBold KL,serif;
    font-size: 3rem;
}
.text_box02 {
    background: #f2f5ff;
    padding: 5rem;
}
.text_box02_txt {
    margin: 2rem 0;
}
.text_box02_txt_main {
    font-size: 2.6rem;
    line-height: 1.5;
	font-weight: bold;
	font-family: Ryumin ExtraBold KL,serif;
	margin-bottom: 2rem;
}
/*text_box03*/
	.text_box03_ttl {
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#5e5e5e+0,363535+100 */
	background: #5e5e5e; /* Old browsers */
	background: -moz-linear-gradient(left,  #5e5e5e 0%, #363535 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #5e5e5e 0%,#363535 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #5e5e5e 0%,#363535 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5e5e5e', endColorstr='#363535',GradientType=1 ); /* IE6-9 */

    display: block;
    color: #fff;
    padding: 1rem 1.5rem;
    font-weight: bold;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    font-size: 2rem;
    text-align: center;
    line-height: 1.3;
}
.text_box03 {
    background: #fffeec;
	padding: 2rem;
	position: relative;
}
ul.bullet01 li:nth-child(even) .text_box03 {
    background: #fff;
    padding: 2rem;
    position: relative;
}
.text_box03_txt {
    margin: 1rem 0;
	font-size: 1.8rem;
}
/*----------------------------------------------------------------------------------------------
voice
----------------------------------------------------------------------------------------------*/
.voice {
	margin-top: 7rem;
	background: #fdfdf1;
}
h3.voice01_ttl01{
	font-size: 4.2rem;
	line-height: 1.2;
	display: block;
	text-align: center;
	font-weight: bold;
	position: relative;
	font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
}
.voice_ttl_bg01 {
	padding: 2rem 0;
    letter-spacing: -1px;
    background: #f3efc9;
}
.voice_inner {
	margin-top: 2rem;
	padding: 0 5rem 5rem;
}
.voice01_item1 {
	margin-top: 2rem;
    padding: 2rem;
    border: 2px solid #f1ecd8;
	margin-bottom: 2rem;
	background: #fff;
}
.voice01_item1 dt {
    background: #303137;
    display: inline-block;
    margin-bottom: 1rem;
    padding: 1.5rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.3;
}
.voice01_item1 dd {
    font-size: 1.8rem;
    line-height: 1.3;
}
.voice01_item2 {
    background: #666;
    margin-bottom: 1rem;
    padding: .5rem 1rem;
    display: inline-block;
    font-size: 2.4rem;
    font-weight: bold;
    color: #fff;
}
/*ルビ*/
rt {
    font-size: 1.3rem;
}
/*voice　タイトル小さい吹き出し*/
.voice01_bubble_wrap {
    position: absolute;
    top: -55px;
    left: 15px;
}
.voice01_bubble {
    position: relative;
    background: #000;
    padding: 1rem 1.5rem;
    color: #fff;
    font-size: 3rem;
    line-height: 1;
}
.voice01_bubble:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-top-color: #000;
    border-bottom: 0;
    border-right: 0;
    margin-left: -10px;
    margin-bottom: -15px;
}
/*voice02*/
.voice02 {
	background: #f2f5ff;
	padding-bottom: 7rem;
}
.voice02 .voice_inner {
	margin-top: 2rem;
	padding: 0;
}
.voice_box {
    background: #fff;
    padding: 5rem;
    margin: 2rem 5rem 0 5rem;
}
.voice02 p.notice.out {
    margin-bottom: 0;
    padding-bottom: 0;
}
.voice_people {
    width: 300px;
    text-align: center;
}
h4.sub_ttl {
    border-left: 5px solid #bb0000;
    padding: .5rem 0 .5rem 1rem;
    font-size: 3.5rem;
    font-weight: bold;
    line-height: 1.3;
    color: #000;
    font-family: Gothic MB101 Heavy,sans-serif;
	letter-spacing: -1px;
	margin-top: 2rem;
	margin-bottom: 2rem;
	display: inline-block;
}
/*先生の名前*/
.voice_box p.name {
    margin-top: 0.5rem;
    font-size: 80%;
    font-weight: bold;
}
.name_box .name_cap {
    font-size: 70%;
    line-height: 1.3;
    padding: 1rem;
}
.voice02 .name_box {
    background: #f2f5ff;
}
.voice_box .name_box p.name {
    margin-top: 0;
    border-bottom: 1px solid #c5c9d2;
    padding: 1rem;
    background: #000;
    color: #fff;
}
/*----------------------------------------------------------------------------------------------
cause_of_upset 諸症状
----------------------------------------------------------------------------------------------*/
.cause_of_upset {
	padding: 1.5rem 2rem;
	margin-bottom: 2rem;
	background-color: #f2f0d9;
}
.cause_of_upset .ttl {
    text-align: center;
    font-weight: bold;
    font-size: 3rem;
    margin-bottom: 1rem;
    background: #fff;
    line-height: 1.2;
	padding: 1rem;
	margin-bottom: 2rem;
}
/*----------------------------------------------------------------------------------------------
balloon 吹き出し
----------------------------------------------------------------------------------------------*/
.balloon01 {
	background: #112279;
    background: radial-gradient(circle, #387ab5 0%, rgb(17, 34, 121) 100%);
    margin-bottom: 3rem;
    position: relative;
    padding: 3rem 0;
    color: #FFF;
    font-family: Gothic MB101 Heavy, "A-OTF ゴシックMB101 Pr6N" ,sans-serif;
    font-size: 4.2rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    text-shadow: 0 2px 3px rgba(0,0,0,0.5);
}
.balloon01:after {
	position: absolute;
    content: "";
    bottom: -20px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 21px 30px 0 30px;
    border-color: #2d63a5 transparent transparent transparent;
    transform: translateX(-50%);
}

.bf_balloon {
	background: #000;
    margin-bottom: 3rem;
    position: relative;
	color: #000;
    font-family: Ryumin ExtraBold KL,serif;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
	display: block;
	margin-top: 2rem;
}
.bf_balloon:after {
	position: absolute;
    content: "";
    bottom: -20px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #000 transparent transparent transparent;
    transform: translateX(-50%);
}

.bf_balloon_ttl {
	font-size: 2.5rem;
    background: #000;
    padding: 2rem 0;
}
/*bf_bal02*/
.bf_bal02 {
	background: #f7f7f7;
    margin-bottom: 3rem;
    position: relative;
	color: #000;
    font-family: Ryumin ExtraBold KL,serif;
    font-size: 1.8rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
	display: block;
	margin-top: 2rem;
}
.bf_bal02:after {
	position: absolute;
    content: "";
    bottom: -20px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #f7f7f7 transparent transparent transparent;
    transform: translateX(-50%);
}
.bf_bal02_ttl {
	font-size: 2.5rem;
    background: #f7f4b0;
    padding: 2rem 0;
}
.bf_bal02_txt {
    padding: 2rem;
}

/*----------------------------------------------------------------------------------------------
recommend
----------------------------------------------------------------------------------------------*/
.recommend {
    padding-bottom: 7rem;
}
.recommend_ttl {
	margin: 0 auto 6rem;
    position: relative;
    text-align: center;
    line-height: 1.2;
    font-size: 4.9rem;
	font-family: Ryumin ExtraBold KL,serif;
	-webkit-font-feature-settings: 'palt' 1;
    font-feature-settings: 'palt' 1;
	letter-spacing: -1px;
	font-weight: bold;
}
.recommend_ttl::before {
    content: "";
    position: absolute;
    left: 10px;
    top: -1rem;
    width: 90px;
    height: 160px;
    background: url(../img/ico_laurel_left.png) no-repeat;
}
.recommend_ttl::after {
    content: "";
    position: absolute;
    right: 10px;
    top: -1rem;
    width: 90px;
    height: 160px;
    background: url(../img/ico_laurel_right.png) no-repeat;
}
.recommend_inner {
	width: 960px;
    margin: 0 auto;
	padding: 5rem 5rem 7rem 5rem;
}
.recommend_inner.recommend_bg {
    background: #f9f7e7;
}	
/*recommend02*/
.recommend02_ttl{
	margin: 4rem auto 6rem;
    position: relative;
    text-align: center;
    line-height: 1.2;
    font-size: 4.1rem;
    font-family: Ryumin ExtraBold KL,serif;
    -webkit-font-feature-settings: 'palt' 1;
    font-feature-settings: 'palt' 1;
    letter-spacing: -1px;
	font-weight: bold;
	font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
}
.recommend02_ttl::before {
    content: "";
    position: absolute;
    left: -10px;
    top: -3rem;
    width: 100px;
    height: 160px;
    background: url(../img/ico_laurel_left.png) no-repeat;
}
.recommend02_ttl::after {
    content: "";
    position: absolute;
    right: -20px;
    top: -3rem;
    width: 90px;
    height: 160px;
    background: url(../img/ico_laurel_right.png) no-repeat;
}

/*recommend月桂樹上吹き出し*/
.recommend_ttl_balloon {
	background: #000;
    margin-bottom: 3rem;
    position: relative;
    padding: 1rem;
    color: #FFF;
    font-family: Ryumin ExtraBold KL,serif;
    font-size: 4.2rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    text-shadow: 0 2px 3px rgba(0,0,0,0.5);
	display: inline-block;
	font-size: 4.5rem;
}
.recommend_ttl_balloon:after {
	position: absolute;
    content: "";
    bottom: -20px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #000 transparent transparent transparent;
    transform: translateX(-50%);
}
.recommend_head {
    text-align: center;
}
/*recommend吹き出し*/
.recommend_sub_ttl {
	background: #000;
    margin-bottom: 3rem;
    position: relative;
    padding: 2rem;
    color: #FFF;
    font-family: Gothic MB101 Heavy, "A-OTF ゴシックMB101 Pr6N" ,sans-serif;
    font-size: 4.2rem;
    text-align: center;
    font-weight: bold;
    line-height: 1.3;
    text-shadow: 0 2px 3px rgba(0,0,0,0.5);
}
.recommend_sub_ttl:after {
	position: absolute;
    content: "";
    bottom: -20px;
    left: 50%;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 30px 0 30px;
    border-color: #000 transparent transparent transparent;
    transform: translateX(-50%);
}

/*recommend02*/
.recommend02_inner {
    margin-top: 2rem;
}
.recommend02_main_ttl {
    background: #000;
    display: block;
    color: #fff;
    text-align: center;
    padding: 1.5rem;
    font-size: 2.5rem;
    font-weight: bold;
	line-height: 1.3;
	font-family: Ryumin ExtraBold KL,serif;
}
.recommend02_main_txt {
    font-size: 2rem;
}
.recommend02_name {
    text-align: center;
    margin: 2rem 0;
}
/*----------------------------------------------------------------------------------------------
new_facts　新事実画像
----------------------------------------------------------------------------------------------*/
img.new_facts01 {
    margin-bottom: 2rem;
}
img.new_facts02 {
    margin-bottom: 2rem;
}
/*----------------------------------------------------------------------------------------------
メリット
----------------------------------------------------------------------------------------------*/
.merit {
    margin-bottom: 2rem;
}
.merit:last-child {
    margin-bottom: 0;
}
.merit_ttl {
    border-bottom: 1px solid #9f0000;
    margin: 0 0 3rem;
}
.merit .flex {
    margin: 0 0 2rem;
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    align-items: flex-start;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
.merit_ttl h3 {
	width: 85%;
    color: #9f0000;
    background: #fff;
    margin: 0;
    padding: 1.5rem 0 1.5rem 2rem;
    text-align: left;
    font-size: 3.1rem;
    font-weight: bold;
    font-family: Gothic MB101 Heavy, sans-serif;
    line-height: 1.3;
}
.merit_list {
    width: 15%;
    color: #fff;
    font-size: 7rem;
    text-align: center;
	font-family: Gothic MB101 Heavy, sans-serif;
   /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#982d18+0,66110a+100 */
	background: #982d18; /* Old browsers */
	background: -moz-linear-gradient(left,  #982d18 0%, #66110a 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #982d18 0%,#66110a 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #982d18 0%,#66110a 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#982d18', endColorstr='#66110a',GradientType=1 ); /* IE6-9 */
}

/*----------------------------------------------------------------------------------------------
ブレッド
----------------------------------------------------------------------------------------------*/
ul.bullet01 li {
	padding: 2rem 5rem 2rem 6rem;
    border-bottom: 2px dotted #ccc;
    background: url(../img/base/check3.png) 1.5rem 2.2rem no-repeat;
}
ul.bullet01 li p {
    margin-top: 1rem;
    line-height: 1.4;
}
ul.bullet01 li img {
    margin: 1rem 0;
}
.dvd_box_inner {
    width: 960px;
    margin: 0 auto;
    padding: 0 5rem 7rem;
}
ul.bullet01 li:nth-child(even) {
    background-color: #fffeec;
}
/*----------------------------------------------------------------------------------------------
special_about
----------------------------------------------------------------------------------------------*/
.special_about_ttl {
    margin-bottom: 2rem;
}
.special_about_sub_ttl {
    text-indent: -1rem;
    padding-left: 2rem;
    display: block;
    line-height: 1.4;
    margin-bottom: 1rem;
}
.special_about {
    margin-bottom: 2rem;
}
.special_about_txt {
    font-size: 3.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
    margin: 2rem 0;
}
/*----------------------------------------------------------------------------------------------
special
----------------------------------------------------------------------------------------------*/
.special_wrap {
	padding-bottom: 5rem;
	margin-bottom: 7rem;
}
.special {
    padding: 3rem 0 0 0;
}
#special .sub_head {
    margin: 0 auto;
    padding-top: 5rem;
}
.special_inner {
    background: #fff;
    margin: 0 5rem;
    padding: 5rem;
    box-shadow: 5px 5px 5px #c3bd9a;
}
.special_ttl {
    width: 900px;
    position: relative;
    left: -70px;
    top: -20px;
}
.check3 li:last-child {
    border-bottom: 0;
}
.special_txt {
    margin-bottom: 2rem;
}
.next_area_txt {
    font-weight: bold;
    font-size: 3.8rem;
}
.next_area.flex {
    margin-top: 2rem;
}
.special_ttl:before {
	position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border: none;
    border-bottom: solid 2rem transparent;
    border-left: solid 2rem #000;
}
.special_ttl:after {
	position: absolute;
	content: '';
    top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 2rem transparent;
	border-right: solid  2rem #000;
}
/*special_prezent_img 特典画像*/
.special_prezent_img.bg_01 {
    padding: 5rem 0;
}
/*----------------------------------------------------------------------------------------------
hoshou
----------------------------------------------------------------------------------------------*/
.hosho .img_left{width: 50%;}
/* 返金保証の流れ */
.hosho_step{
	margin: 2rem 0;
	-webkit-box-align: start; -moz-box-align: start; -ms-flex-align: start; -webkit-align-items: flex-start; align-items: flex-start;
	-webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
}
.hosho_step .step_box{ width:22%; padding: .4rem; font-size:1.8rem; line-height: 1.4; }
.hosho_step h4{ margin-bottom: 1rem; border-bottom: 1px solid #FFD12F; font-size:2rem; font-weight: bold; text-align: center; }
.hosho_step img.arrow{ width:2%; margin: 0; transform: translate(-20%,80%); }
/* 品質保証 */
.hosho2_flow_wrap {width:90%; margin: 15px auto 0; font-size: 70%; }
.hosho2_flow_list {margin: 0 auto;flex: 1;}
.hosho2_flow_list p{padding: 5px 20px;}
.hosho2_flow_wrap .large {font-size: 118%;}
/* オンライン */
.online_box{padding: 2rem;border: 2px dotted #CCC;margin: 1rem 0 0;font-size: 1.6rem;line-height: 1.3;background: #FFF;}
.online_box li{ padding-left: 1rem;text-indent: -1em;}
.online_caotion {
    line-height: 1.3;
    margin-top: 1rem;
}
/* Q&A */
#qa dt { color: #d71523; font-weight: bold; font-size: 2.5rem; border-bottom: 2px solid; }
#qa dd { line-height: 1.5; font-size: 2rem; margin: 20px 0 30px 0; }

/*----------------------------------------------------------------------------------------------
追伸
----------------------------------------------------------------------------------------------*/
.postscript {
	background: url(../img/bg02.png);
	-webkit-box-shadow: 0 4px 20px rgba(0,0,0,0.1);
	box-shadow: 0 4px 20px rgba(0,0,0,0.1);
	font-family: Ryumin ExtraBold KL,serif;
	margin: 0 auto;
	padding: 5rem;
	width: 960px;
}
.postscript_title {
	border-bottom: 1px solid #777;
    font-size: 3.7rem;
    letter-spacing: 4px;
    line-height: 1.3;
    margin-bottom: 5rem;
    padding-bottom: 2rem;
    font-weight: bold;
}
.postscript_title .small {
	font-size: 3rem;
	letter-spacing: 0.1em;
}
.postscript p {
	/* background: linear-gradient(#ccc 1px, transparent 1px);
    background-size: auto 2em; */
    line-height: 2em;
}
.postscript_box02 {
    margin-top: 2rem;
    position: relative;
}
.sato_img {
    position: absolute;
    right: -15px;
    bottom: -8px;
}
.postscript_side {
    width: 66%;
}
/*----------------------------------------------------------------------------------------------
form
----------------------------------------------------------------------------------------------*/
.formWrap{width:100%;padding: 0 0 2rem;}
/* 料金 */
.price_box{ margin-top:2rem; }
.price_result{
	margin-top: 3rem;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.price_result_main{
	font-size:7rem;
	line-height: 1;
}
.price_month{
	float:left;
	padding-right: 1rem;
}
.price_month span {
    background: #bb0000;
    color: #fff;
    height: 80px;
    width: 80px;
    display: block;
    text-align: center;
    line-height: 80px;
    border-radius: 80px;
    font-size: 2rem;
}
.price_result_sub{
	font-size: 3rem;
	text-align:right;
}
.price_result_split {
    font-size: 3rem;
}
.price_notice{
	padding:2rem;
	margin:1rem auto;
	background:#eee;
	box-sizing:border-box;
	font-family: Ryumin ExtraBold KL,serif;
}
.price_notice p{
	padding-left:1em;
	font-size:2rem;
	text-indent:-1em;
}
/* 価格表 */
.price_table{ width:100%; margin: 2rem auto; border: 2px solid #040000; line-height: 1.4; }
.price_table th{ background: #040000; color: #fff; font-weight: bold; padding: .5rem; }
.price_table tr:nth-child(2n){ background: #f5f5f5; }
.price_table td{ padding: 10px; vertical-align: middle; }
.price_table td:nth-child(odd){font-size: 1.8rem; }
.price_table td:nth-child(even){ width: 30%; text-align: center; font-size: 2.5rem; border-left: 2px solid #040000; }
/*----------------------------------------------------------------------------------------------
フォーム
----------------------------------------------------------------------------------------------*/
.form{ width:100%; padding:0; margin: 0 auto; }
/*----------------------------------------------------------------------------------------------
footer
----------------------------------------------------------------------------------------------*/
footer{ background:#ddd; }
.footer_logo img{ max-width:300px; }
.footer_txt{
	padding:0 0 0 2rem;
	font-size:1.1rem;
	text-align:left;
	line-height:1.9;
}
#footer_wrap{
	display:flex;
	width:800px;
	padding:2rem 0;
	margin:0 auto;
	font-size:80%;
	justify-content:center;
}
#footer_wrap li{
	display:inline-block;
	padding:0 1rem 0;
	border-left:1px solid #aaa;
}
#footer_wrap li:first-child{ border:none; padding:0 1em 0 0; }
/*----------------------------------------------------------------------------------------------
scfooter
----------------------------------------------------------------------------------------------*/
#scfooter{
	z-index:1000;
	position:fixed;
	bottom:0;
	left:0;
	width:100%;
	padding:0;
	background:rgba(202,202,202,.7);
}
.scfooter_inner{
	display:block;
	width:80%;
	padding:1rem 0;
	margin:auto;
	border-radius:20px;
	text-align:center;
}
.scfooter_inner a{ text-decoration:none; }
.btn_ft{
	margin-left: auto;
    margin-right: auto;
    width: 480px;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
}
.hvr-wobble-vertical {
    vertical-align: middle;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;
}
.btn_ft a p {
    color: #fff;
    padding: 1rem 0;
    text-align: center;
    font-family: "Gothic MB101 Heavy";
    line-height: 1;
    background: #0088c9;
    border-radius: 50px;
}
.btn_ft .bg_wht {
    display: inline-block;
    background: #fff;
    color: #003fa7;
    font-size: 125%;
    font-weight: bold;
    padding: 0.5rem;
    line-height: 1;
}
.btn_ft .top_txt {
    top: -3px;
    position: relative;
}
.btn_ft .bottom_txt {
    margin-top: 1rem;
	display: block;
	font-size: 2.7rem;
}
.btn_ft img{ border-radius:4px; }
.btn_ft a{ text-decoration:none !important; display: block; }




@media screen and (max-width:768px){ .btn_ft{width:75%;} }
@media screen and (max-width:425px){ .btn_ft{width:95%;} }

/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
【 SP 】
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (max-width:768px){
	/*----------------------------------------------------------------------------------------------
	Basic Style
	----------------------------------------------------------------------------------------------*/
	body{ width:100%; font-size:4.5vw; overflow: hidden;}
	#main{width: 100%;box-shadow: none;}
	img{ max-width:100%; width: 100%;}
	.img_caption300{ width: auto;}
	.img_caption340{ width: auto;}
	.img_caption350{ width: auto;}
	.img_caption375{ width: auto;}
	.img_caption400{ width: auto;}
	.img_caption420{ width: auto;}
	.img_caption500{ width: auto;}
	.img_caption660{ width: auto;}
	.img_caption670{ width: auto;}
	.img_caption740{ width: auto;}
	.img_caption860{ width: auto;}
	.s_img {width: 80%; margin: 0 auto;}
	p+img{margin: 1rem 0;}
	img.bottom {margin-top: 3vw;}
	img.sp_bottom {margin-bottom: 0;}
	img.middle {margin: 6vw 0;}
	img.s_bottom {
		margin-top: 3vw;
	}
	.mb101{letter-spacing: -1px;}
	.sp_small{font-size: 90%;}
	.xslarge{ font-size:115%; }
	.xlarge{font-size: 125%;}
	.xxlarge{ font-size:140%; }
	.xxxlarge{ font-size:140%; }
	.large110 {font-size: 108%;}
	/* Float */
	.img_right{ float:none; padding:0; margin: 0 auto 1.5rem;}
	.img_left{ float:none; padding:0; margin-bottom: 3vw;}
	.img_sp{width: 60%;}
	.img_center2{margin-top: 1.5rem;}
	.img_center .text_c.mb101{line-height: 1.3;}
	
	/*flex*/
	.flex{display: block;}
	.flex img{margin: 0 auto;}
	.flex_sp_img{width: 90%;margin: 0 auto;}
	.flex_3{width: 90%;margin: 0 auto;}
	.flex_3:first-of-type{margin-top: 1.5rem;}
	.flex .img_center{line-height: 1.3; margin: 0 auto 3vw;}
	.flex .img_center:last-child {
		margin-bottom: 0;
	}
	/*画像キャプション*/
	.caption{
		width: 100%;
		font-size: 4vw;
		text-align: center;
		padding: 3vw 0;
		line-height: 1.2;
	}	
	/* PC/SP表示調整 */
	.display_pc{ display:none; }
	.display_sp{ display:block; }
	.pc{ display:none; }
	.sp{ display:block; }
	.display_inline_pc{ display:none; }
	.display_inline_sp{ display:inline-block; }
	/* 背景色つき見出し */
	.text-box span{width: 100%; padding: 1rem 0;font-size: 6vw;}

	.notice{text-align: left; line-height: 1.2; font-size: 3vw;}
	.notice.out { padding: 3vw;}

	.text_stand_out.middle {
		font-size: 4.4rem;
		text-align: center;
		margin: 2rem 0;
		color: #bb0000;
		font-weight: bold;
	}
	/*----------------------------------------------------------------------------------------------
	prihead
	----------------------------------------------------------------------------------------------*/
	#prihead{ font-size:4.2vw; }
	#prihead #CDT{width:100%;font-size:3.6vw;}
	/*----------------------------------------------------------------------------------------------
	countdown
	----------------------------------------------------------------------------------------------*/
	.timer01 { padding:.5rem 0; font-size:4.5vw; line-height:1.2; }
	.timer01 .timer_num { font-size:130%; }
	/*----------------------------------------------------------------------------------------------
	header
	----------------------------------------------------------------------------------------------*/
	header{padding-bottom: 0;background: none;}
	header h1{padding-top: 0;}
	/*----------------------------------------------------------------------------------------------
	section
	----------------------------------------------------------------------------------------------*/
	.sec_inner{width: 95%;padding: 0 0 12vw;}
	.sec_inner.full { padding: 0 0 12vw 0;}
	/*----------------------------------------------------------------------------------------------
	sub_head
	----------------------------------------------------------------------------------------------*/
	.sub_head{
		padding:0 0 3vw;
		margin:0 auto ;
		font-size: 5.7vw;
		letter-spacing: -1px;
	}
	.sub_head .xxsmall02 {font-size: 80%;}
	.sub_head .sp_xxsmall02 {font-size: 111%;}

	/*タイトル系テキストサイズ調整*/
	.sp_txt01{font-size: 150%;}
	.sp_txt02{font-size: 95%;}
	ul.check1.sp_txt03 li {font-size: 4vw;}
	.sp_txt03{font-size: 90%;}
	.sp_txt04{font-size: 147%;}
	.sp_txt05{font-size: 111%;}
	.sp_txt06{font-size: 116%;}
	.sp_txt07{font-size: 129%;}
	.sp_txt08{font-size: 89%;}
	.sp_txt09{font-size: 113%;}
	.sp_txt10{font-size: 110%;}
	.sp_txt11{font-size: 120%;}
	.sp_txt12{font-size: 192%;}
	.bf_balloon_ttl.sp_txt13{font-size: 87%;}
	.sp_txt14{font-size: 136%;}
	.sp_txt15{font-size: 129%;}
	.sp_txt16{font-size: 87%;}
	.sp_txt17{font-size: 149%;}
	.sp_txt18{font-size: 111%;}
	.sp_txt19{font-size: 90%;}
	.sp_txt20{font-size: 111%;}
	.sp_txt21{font-size: 106%;}
	.voice02 .xxlarge.sp_txt22{font-size: 192%;}
	.sp_txt23{font-size: 134%;}
	.sp_txt24{font-size: 91%;}
	.sp_txt25{font-size: 89%;}
	.sp_txt26{font-size: 136%;}
	.sp_txt27{font-size: 139%;}
	.sp_txt28{font-size: 152%;}
	.sp_txt29{font-size: 88%;}
	.sp_txt30{font-size: 93%;}
	.sp_txt31{font-size: 94%;}
	.sp_txt32{font-size: 100%;}
	.sp_txt33{font-size: 170%; line-height: 1.2;}
	.sp_txt34{font-size: 151%;}
	.sp_txt35{font-size: 130%;}
	.sp_txt36{font-size: 166%;}
	.sp_txt37{font-size: 122%;}
	.sp_txt38{font-size: 170%;}
	.sp_txt39{font-size: 117%;}
	.sp_txt40{font-size: 115%;}
	.sp_txt41{font-size: 310%;}
	.sp_txt42{font-size: 117%;}
	.sp_txt43{font-size: 107%;}
	.sp_txt44{font-size: 90%;}
	.sp_txt45{font-size: 120%;}
	.sp_txt46{font-size: 118%;}
	.sp_txt47{font-size: 125%;}
	.sp_txt48{font-size: 220%;}

	h3.serif{line-height: 1.3;}
	.sub_head_img {margin-bottom: 6vw;}
	.sub_head_inner {
		width: 95%;
		margin: 0 auto;
	}
	/*----------------------------------------------------------------------------------------------
	ブレッド
	----------------------------------------------------------------------------------------------*/
	/* 共有 */
	ul.check1 li,
	ul.check2 li,
	ul.check3 li{ background-size:8%; }
	ul.check1 li,
	ul.check2 li,
	ul.check3 li{ padding:1.2rem 0 1.2rem 3.5rem; }
	.check5,.check6{font-size: 5vw;padding-left: 1.5em;text-indent: -.7em;}
	.check7,.check8{font-size: 5vw;}
	.check7 .fas,.check8 .fas{font-size: 6vw;}
	ul.check2 {
		margin: 0;
	}
	/* 固有 */
	ul.check1 li{ background-position:0 1.4rem; font-size: 5vw;}
	ul.check3 li{ background-position:0 1.4rem; line-height: 1.5;}
	ul.check4 li{ font-size:4.5vw; background-position:0 2vw; }
	ul.xlarge{font-size: 5.5vw;}
	ul.check1 li {
		background-position: 0 3vw;
	    font-size: 5vw;
	    background-size: 5vw;
	    padding: 2vw 0 2vw 7vw;
	}
	ul.check2 li {
		background-position: 0 3vw;
		padding: 2vw 2vw 2vw 7vw;
		background-size: 5vw;
	}
	ul.bullet01 li p {
		margin-top: 0;
		line-height: 1.4;
	}
	/*----------------------------------------------------------------------------------------------
	effect
	----------------------------------------------------------------------------------------------*/
	.effect_inner {
		width: 95%;padding: 0 0 3rem;
	}
	.effect {
		margin-top: 0;
	}
	.effect_ttl .notice {
		margin: 0 3vw 4vw 3vw;
	}
	h4.sub_catch.serif {
		font-size: 5.7vw;
	}
	.effect_inner .caption .xxlarge {
		font-size: 5vw;
	}
	.effect:first-of-type {
		margin-top: 0;
	}
	/*----------------------------------------------------------------------------------------------
	text_box
	----------------------------------------------------------------------------------------------*/
	.text_box {
		padding: 2vw;
		margin-top: 6vw;
	}
	/*text_box02*/
	.text_box02 {
		padding: 3vw;
	}
	.text_box02_ttl {
		font-size: 5vw;
		padding: 3vw;
		line-height: 1;
	}
	.text_box02_txt_main {
		font-size: 5vw;
		margin-bottom: 2vw;
	}
	.text_box02_txt {
		margin: 2vw 0;
	}
	/*text_box03*/
	.text_box03 {
		padding: 2vw;
	}
	.text_box03_ttl {
		padding: 3vw 0;
		font-size: 3.8vw;
		line-height: 1.3;
	}
	.text_box03_txt {
		margin: 2vw 0 0 0;
		font-size: 4vw;
	}
	/*----------------------------------------------------------------------------------------------
	voice
	----------------------------------------------------------------------------------------------*/
	.voice {
		margin-top: 10vw;
	}
	.voice_ttl_bg01 {
		padding: 3vw 0;
	}
	.voice_inner {
		margin-top: 2vw;
		padding: 0 2vw 3vw 2vw;
	}
	h3.voice01_ttl01{
		margin-bottom: 3vw;
		font-size: 5.3vw;
		line-height: 1.4;
	}
	.voice01_item1 dt {
		display: block;
		padding: 2vw;
	}
	.voice01_item1 {
		margin-top: 2rem;
		padding: 3vw;
	}
	.voice01_bubble {
		font-size: 5vw;
		padding: 2vw;
	}
	.voice01_bubble_wrap {
		top: -10vw;
		left: 0;
	}
	.voice.bubble {
		margin-top: 20vw;
	}
	.voice01_item2 {
		margin-bottom: .5rem;
		font-size: 4.5vw;
	}
	.voice_box {
		padding: 2vw;
		margin: 2vw;
	}
	.voice_people {
		margin: 0 auto;
	}
	.voice02 .voice_inner .notice {
		padding: 2vw;
	}
	.voice02 {
		padding-bottom: 6vw;
	}
	.voice_box .name_box p.name {
		margin-bottom: 0;
		font-size: 100%;
		padding: 2vw 0;
	}
	.voice02 .name_box {
		margin-bottom: 3vw;
	}
	h4.sub_ttl {
		font-size: 5.7vw;
	}
	.voice02 .xxlarge {
		font-size: 126%;
	}
	.bf_balloon_ttl {
		font-size: 5vw;
		padding: 3vw 0;
	}
	.voice_box .s_img .name {
		font-size: 100%;
		margin-bottom: 3vw;
	}
	.voice_box p.name {
		font-size: 100%;
	}
	.name_box .name_cap {
		font-size: 90%;
		line-height: 1.6;
	    padding: 2vw 0;
	}
	.voice_box p {
		font-size: 90%;
	}
	/*bf_bal02*/
	.bf_bal02_ttl {
		font-size: 4.8vw;
		padding: 3vw 0;
	}
	.bf_bal02_txt {
		padding: 3vw;
		font-size: 3.5vw;
	}
	/*----------------------------------------------------------------------------------------------
	cause_of_upset 諸症状
	----------------------------------------------------------------------------------------------*/
	.cause_of_upset .ttl {
		font-size: 5.4vw;
		padding: 3vw 0;
	}
	h4.sub_catch {
		font-size: 5.7vw;
	}
	.cause_of_upset {
	    padding: 2vw;
	}
	/*----------------------------------------------------------------------------------------------
	recommend
	----------------------------------------------------------------------------------------------*/
	.recommend {
		padding-bottom: 12vw;
	}
	.recommend_ttl_balloon {
		font-size: 5.5vw;
		display: block;
		margin: 0 2vw 6vw 2vw;
		padding: 3vw 0;
	}
	h3.recommend_ttl {
		font-size: 6vw;
		margin-bottom: 3vw;
	}
	.recommend_ttl::after {
		background-size: 40px;
		width: 40px;
		height: 80px;
	}
	.recommend_ttl::before {
		background-size: 40px;
		width: 40px;
		height: 80px;
	}
	.recommend_inner {
		width: auto;
		padding: 2vw;
	}
	.recommend_sub_ttl {
		font-size: 5.7vw;
		padding: 3vw 0;
	}
	.recommend02_main {
		width: auto;
	}
	.recommend02_main_ttl {
		font-size: 5vw;
		padding: 2vw 0;
	}
	.recommend02_ttl {
		font-size: 6vw;
		margin: 6vw auto 6vw;
	}
	.recommend02_ttl::after {
		background-size: 16vw;
		background-position: right 3vw top 7vw;
	}
	.recommend02_ttl::before {
		background-size: 16vw;
		background-position: left top 7vw;
	}
	.recommend02_ttl.sp_top {margin-top: 0;}
	.recommend02 .img_right {
	    width: 150px;
	    float: left;
	    margin: 0 2vw 0 0;
	}
	.recommend02_main_txt {
	    font-size: 3.7vw;
	}
	.recommend02_name {
	    line-height: 1.2;
	    margin: 2vw 0;
	    text-align: center;
	}
	/*----------------------------------------------------------------------------------------------
	balloon01
	----------------------------------------------------------------------------------------------*/
	.balloon01 {
		font-size: 5.3vw;
		padding: 3vw 0;
		letter-spacing: -1px;
	}
	/*----------------------------------------------------------------------------------------------
	merit
	----------------------------------------------------------------------------------------------*/
	.merit {
		margin-top: 6vw;
	}
	.merit:first-child {
		margin-top: 0;
	}
	.merit .flex {
		display: block;
	}
	.merit_list {
		width: auto;
		font-size: 6vw;
	}
	.merit_ttl h3 {
		width: auto;
		font-size: 5vw;
		padding: 2vw 0;
		text-align: center;
	}
	/*----------------------------------------------------------------------------------------------
	ブレッド
	----------------------------------------------------------------------------------------------*/
	.dvd_box_inner {
		width: auto;
		padding: 2vw 2vw 6vw 2vw;
	}
	ul.bullet01 li {
		padding: 3vw 3vw 3vw 9vw;
		background-size: 5vw;
		background-position: left 2vw top 3vw;
	}
	ul.bullet01 li:nth-child(even) .text_box03 {
		padding: 3vw;
		margin: 3vw 0 2vw 0;
	}
	/*----------------------------------------------------------------------------------------------
	special
	----------------------------------------------------------------------------------------------*/
	.special_wrap {
		margin-bottom: 12vw;
	}
	.special {
		padding: 3vw 0;
	}
	.special_inner {
		margin: 0 auto;
		width: 95%;
		padding: 2vw;
	}
	.special_ttl {
		width: 100vw;
		position: relative;
		left: -4.6vw;
		top: 0vw;
	}
	.special img {width: 80%;}
	.special .special_ttl img {
		width: 100%;
	}
	.special img.img_full {
		width: 100%;
	}
	#special .sub_head {
		padding-top: 0;
	}
	.special .img_area {
		margin: 0 auto;
	}
	.special_about_sub_ttl {
		font-size: 5.2vw;
		text-indent: -2.4vw;
	}
	.special_about_txt {
		font-size: 4.7vw;
		margin: 3vw 0;
	}
	.special_ttl:before{
		display: none;
	}
	.special_ttl:after{
		display: none;
	}
	.special_txt {
		margin-bottom: 2rem;
		margin-top: 2vw;
	}
	.next_area_icon {
		width: 14vw;
    	margin: 2vw auto 0;
	}
	.next_area_txt {
		line-height: 1.2;
		font-size: 8vw;
		text-align: center;
	}
	.special_prezent_img.bg_01 {
		padding: 1vw 0 12vw 0;
	}
	.special_banner .sub_head {
		padding: 0;
	}
	/*----------------------------------------------------------------------------------------------
	hoshou
	----------------------------------------------------------------------------------------------*/
	/* 返金保証 */
	.hosho .img_left{width: 85%;}
	.hosho h2.sub_head {font-size: 7vw;}
	/* 返金保証の流れ */
	.hosho_step{ display: block; margin: 1rem 0; }
	.hosho_step .step_box{ width:100%; padding: 0; font-size:4vw; }
	.hosho_step h4{ font-size:5.4vw; }
	.hosho_step img{ margin-bottom: 1rem; }
	.hosho_step img.arrow{ width:6%; margin: -6vmin auto; transform: rotate(90deg); }
	.hosho h3 {font-size: 7vw;}
	/* 品質保証 */
	.hosho2_flow_wrap {display:block;width:100%; margin: 0 auto 15px; font-size: 4.5vw; }
	.hosho2_flow_list {width:100%;}
	.hosho2_flow_list img {width:55%; margin: 0 auto;flex: 1;}
	.hosho2_flow_list p{width: 95%;padding: 1rem 0;margin: 0 auto 15px;text-align: center;font-size: 4vw;line-height: 1.5;}
	.hosho2_flow_center{border-top:1px solid #BFBFBF; margin: 30px 0;padding:15px 0;}
	/*保証*/
	#qa .sub_head {
		width: 95%;
		margin: 0 auto;
	}
	#qa dt {
		line-height: 1.4;
		font-size: 4.6vw;
	}
	#qa dd:last-child {
		margin-bottom: 0;
		font-size: 4.5vw;
	}
	#qa dd {
		font-size: 4.5vw;
	}
	/*----------------------------------------------------------------------------------------------
	追伸
	----------------------------------------------------------------------------------------------*/
	.postscript {
		width: auto;
		padding: 12vw 2vw;
	}
	.postscript_title {
		font-size: 6.8vw;
		text-align: center;
		margin-bottom: 4vw;
	}
	.postscript p {
		/* background-size: auto 11vw;
		line-height: 11vw; */
		width: auto;
	}
	.postscript img {
		width: 70%;
	}
	.sato_img {
		position: relative;
		bottom: -10px;
		right: 2px;
	}
	/*----------------------------------------------------------------------------------------------
	form
	----------------------------------------------------------------------------------------------*/
	.formWrap{ margin:0; }
	/* 料金 */
	.price_result_main{ font-size: 7.5vw; }
	.price_result_main img{
		width:14vw;
		padding-right:1.4rem
	}
	.price_result_sub{
		font-size:5vw;
		margin-top: 2vw;
		display: inline-block;
	}
	.price_notice{ padding:1rem; }
	.price_notice p{ font-size:3.8vw; }
	.price_result {
		align-items: normal;
	}
	.price_box .large {
		font-size: 13vw;
	}
	.price_month span {
		height: 50px;
		width: 50px;
		display: block;
		text-align: center;
		line-height: 50px;
		border-radius: 80px;
		font-size: 3.5vw;
	}
	.price_month {
		padding-right: 0;
	}
    .price_result_split {
        font-size: 5vw;
    }
    .price_box .large {
        font-size: 13vw;
    }
	/* 価格表 */
	.price_table{ border-width: 1px; box-sizing: border-box; }
	.price_table td{ padding: .6rem; font-size: 4.2vw; }
	.price_table td:nth-child(odd){ font-size: 4vw; }
	.price_table td.top{font-size: 4.5vw;}
	.price_table td:nth-child(even){ border-width: 1px; font-size:4.4vw; }
	/*----------------------------------------------------------------------------------------------
	footer
	----------------------------------------------------------------------------------------------*/
	.footer_logo img{ display:block; }
	.footer_txt{ padding:1rem; }
	#footer_wrap{
		display:block;
		width:100%;
	}
	/*----------------------------------------------------------------------------------------------
	scfooter
	----------------------------------------------------------------------------------------------*/
	.scfooter_inner{ width:100%; }
	.btn_ft .bottom_txt {
		font-size: 5vw;
		margin-top: 1vw;
	}
	.btn_ft .bg_wht {padding: 1vw; font-size: 100%;}



	
}