﻿@charset "utf-8";

/* rest.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}
*{ box-sizing:border-box; }
img{ padding:0; margin:0 auto; max-width:100%; }
/*----------------------------------------------------------------------------------------------
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}
/*----------------------------------------------------------------------------------------------
reflection
----------------------------------------------------------------------------------------------*/
@keyframes reflection{
	0%{transform:scale(0) rotate(45deg);opacity:0;}
	80%{transform:scale(0) rotate(45deg);opacity:.25;}
	81%{transform:scale(10) rotate(45deg);opacity:.35;}
	100%{transform:scale(75) rotate(45deg);opacity:0;}
}
@-webkit-keyframes reflection{
	0%{-webkit-transform:scale(0) rotate(45deg);opacity:0;}
	80%{-webkit-transform:scale(0) rotate(45deg);opacity:.25;}
	81%{-webkit-transform:scale(10) rotate(45deg);opacity:.35;}
	100%{-webkit-transform:scale(75) rotate(45deg);opacity:0;}
}
@-moz-keyframes reflection{
	0%{-moz-transform:scale(0) rotate(45deg);opacity:0;}
	80%{-moz-transform:scale(0) rotate(45deg);opacity:.25;}
	81%{-moz-transform:scale(10) rotate(45deg);opacity:.35;}
	100%{-moz-transform:scale(75) rotate(45deg);opacity:0;}
}
@-ms-keyframes reflection{
	0%{-ms-transform:scale(0) rotate(45deg);opacity:0;}
	80%{-ms-transform:scale(0) rotate(45deg);opacity:.25;}
	81%{-ms-transform:scale(10) rotate(45deg);opacity:.35;}
	100%{-ms-transform:scale(75) rotate(45deg);opacity:0;}
}
@-o-keyframes reflection{
	0%{-o-transform:scale(0) rotate(45deg);opacity:0;}
	80%{-o-transform:scale(0) rotate(45deg);opacity:.25;}
	81%{-o-transform:scale(10) rotate(45deg);opacity:.35;}
	100%{-o-transform:scale(75) rotate(45deg);opacity:0;}
}
.reflection{position:absolute;top:-180px;left:0;height:100%;width:30px;background-color:#fff;opacity:0;transform:rotate(45deg);animation:reflection 2s ease-in-out infinite;-webkit-transform:rotate(45deg);-webkit-animation:reflection 2s ease-in-out infinite;-moz-transform:rotate(45deg);-moz-animation:reflection 2s ease-in-out infinite;-ms-transform:rotate(45deg);-ms-animation:reflection 2s ease-in-out infinite;-o-transform:rotate(45deg);-o-animation:reflection 2s ease-in-out infinite;}
/*----------------------------------------------------------------------------------------------
Basic
----------------------------------------------------------------------------------------------*/
html{
	font-size:62.5%;
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Yu Gothic",YuGothic,"ヒラギノ角ゴ ProN",Hiragino Kaku Gothic ProN,Arial,"メイリオ",Meiryo,sans-serif;
}
body{
	margin:0;
	color:#3f3f3f;
	font-size:2.2rem;
	font-weight:500;
	line-height:1.7;
	-webkit-font-feature-settings:'palt' 1; font-feature-settings:"palt" 1;
	background:url(../img/base/bg.jpg);
}
#main{
	width:964px;
	padding:5rem 0 1rem;
	margin:0 auto;
	border-left:2px solid #ccc;
	border-right:2px solid #ccc;
	background:#FFF;
}

/* Float / Clearfix */
.clearfix:before,.clearfix:after{ content:" "; display:table; }
.clearfix:after{ clear:both; }
.clearfix{ *zoom:1; }
.side_photo{ float:right; padding:0 0 2rem 2rem; }
.side_photo2{ float:left; padding:0 2rem 2rem 0; }
.img_right{ float:right; width:270px; padding:0 0 2rem 2rem; }
.img_left{ float:left; width:270px; padding:0 2rem 2rem 0; }
.img_full{ width:860px; margin:auto; }
.caption{ max-width:100%; padding:1rem 0 1rem 1rem; margin:0!important; border-left:2px solid #040000; color:#040000; font-size:1.8rem; font-weight:bold; line-height:1.3; }
.side_photo img,.side_photo2 img,.img_full img{ margin:0!important; }

/* PC/SP表示調整 */
.display_pc{ display:block; }
.display_sp{ display:none!important; }

/* font */
.u{ text-decoration:underline; }
.b{ font-weight:bold; }
.r{ color:#AF0000; }
.blu{ color:#002C71; }
.accent{ color:#FFFF84; }
.wht{ color:#FFF; }
.marker{ background:linear-gradient(transparent 80%,#ffff84 80%); }
.text_c{ text-align:center; }
.text_r{ text-align:right; }
.text_l{ text-align:left; }
.xxsmall{ display:inline-block; font-size:30%; line-height:1.4; }
.xsmall{ display:inline-block; font-size:60%; line-height:1.4; }
.small{ display:inline-block; font-size:80%; line-height:1.4; }
.large{ display:inline-block; font-size:120%; line-height:1.4; }
.xlarge{ display:inline-block; font-size:140%; line-height:1.4; }
.xxlarge{ display:inline-block; font-size:160%; line-height:1.4; }
.MB101{ font-family:Gothic MB101 DemiBold,sans-serif; }
.MB101H{ font-family:Gothic MB101 Heavy,sans-serif; }
.mincho{ font-family:Ryumin ExtraBold KL,serif; }

/* 背景 */
.bg_g{ background:#FBFBFB; }
.bg_y{ background:#FFFFF0; }
.bg_r{ background:#FFF9F9; }
.bg_text{ margin-top:2rem; background:url(../img/bg_text.jpg) left top; }

/* グラデテキスト */
.gradation_g{
	color:#A58D38;
	background:linear-gradient(to bottom,#a58d38 0%,#dec057 50%,#a58d38 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
}
@media all and (-ms-high-contrast:none){
	.gradation_g{ background:none; }	/* IE11 */
}

/* BOX */
.attention_box{ padding:2rem 2rem 2rem 4rem; border:2px dotted #CCC; margin:3rem 0; font-size:1.8rem; line-height:1.3; text-indent:-1em; background:#FFF; }
.attention_box.normal{ padding:2rem; text-indent:0; }

/* FlexBox */
.flex{
	display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
	flex-wrap:wrap;
}
/*----------------------------------------------------------------------------------------------
section/letter
----------------------------------------------------------------------------------------------*/
section + section{ margin-top:5rem; }
.sub-head{
	color:#110604;
	font-size:5.5rem;
	font-weight:900;
	text-align:center;
	letter-spacing:-2px;
	line-height:1.3;
	font-family:Gothic MB101 Heavy,sans-serif;
}
.sub-head-extol{
	padding-bottom:.5rem;
	margin:3rem auto 1rem;
	border-bottom:1px dashed #003C99;
	color:#002C71;
	font-size:5rem;
	font-weight:900;
	line-height:1.3;
	text-align:center;
	letter-spacing:-2px;
	font-family:Ryumin Ultra KL,serif;
}
.sub-head-grad{
	padding:2rem 0;
	color:#FFF;
	font-size:5.5rem;
	font-weight:900;
	text-align:center;
	letter-spacing:-2px;
	line-height:1.3;
	font-family:Gothic MB101 Heavy,sans-serif;
	text-shadow:2px 3px 8px #000C2D;
	background:#FFFFF0;
	background:-moz-linear-gradient(left,#FFFFF0 0%,#C5A95B 8%,#C5A95B 25%,#FFF3AF 50%,#C5A95B 75%,#C5A95B 92%,#FFFFF0 100%);
	background:-webkit-linear-gradient(left,#FFFFF0 0%,#C5A95B 8%,#C5A95B 25%,#FFF3AF 50%,#C5A95B 75%,#C5A95B 92%,#FFFFF0 100%);
	background:linear-gradient(to right,#FFFFF0 0%,#C5A95B 8%,#C5A95B 25%,#FFF3AF 50%,#C5A95B 75%,#C5A95B 92%,#FFFFF0 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFF0',endColorstr='#FFFFF0',GradientType=1);
}
.sub-head-grad .r{ color:#FF4848; }
.sub-head-bg{
	padding:2rem 0;
	color:#FFF;
	font-size:5.5rem;
	font-weight:900;
	text-align:center;
	letter-spacing:-2px;
	line-height:1.3;
	font-family:Gothic MB101 Heavy,sans-serif;
	background:#000C2D;
}
.sub-head-bg .r{ color:#FF4848; }

/* letter */
.letter{ padding:3rem 5rem; }
.letter img{ display:block; max-width:100%; margin:0 auto; }

/* letter内 見出し */
.laurel_ttl{
	position:relative;
	height:115px;
	margin-bottom:3rem;
	font-size:3.2rem;
	line-height:1.2;
	text-align:center;
	font-family:Ryumin ExtraHeavy KL,serif;
}
.laurel_ttl:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:40px;
	height:115px;
	background:url(../img/ico_laurel_left.png) no-repeat;
}
.laurel_ttl:after{
	content:"";
	position:absolute;
	right:0;
	top:0;
	width:40px;
	height:115px;
	background:url(../img/ico_laurel_right.png) no-repeat;
}
/*----------------------------------------------------------------------------------------------
prihead
----------------------------------------------------------------------------------------------*/
#prihead{
	z-index:10;
	position:fixed;
	width:100%;
	font-size:2.4rem;
	font-weight:bold;
	text-align:center;
	background:#960000;
	background:-moz-linear-gradient(left,#960000 0%,#cf0404 50%,#960000 100%);
	background:-webkit-linear-gradient(left,#960000 0%,#cf0404 50%,#960000 100%);
	background:linear-gradient(to right,#960000 0%,#cf0404 50%,#960000 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#960000',endColorstr='#960000',GradientType=1);
}
#prihead #CDT{
	width:960px;
	padding:1rem 0;
	margin:0 auto;
	color:#fff;
	line-height:1.3;
}
#prihead #CDT .count_num{
	display:inline-block;
	padding:0 .4rem;
	margin:0 .4rem;
	border-radius:3px;
	color:#333;
	font-size:150%;
	background:#fff;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop,#prihead #CDT .count_num{	/* IE11 */
		padding:1rem .4rem 0;
		line-height:1;
	}
}
/*----------------------------------------------------------------------------------------------
header
----------------------------------------------------------------------------------------------*/
header{ background:url(../img/bg_header.jpg) no-repeat; background-size:cover; }
header h1{ margin:0 auto; }
.jb{
	height:120px;
	background:#002C71;
	background:-moz-linear-gradient(left,#002C71 0%,#002C71 20%,#003C99 50%,#002C71 80%,#002C71 100%);
	background:-webkit-linear-gradient(left,#002C71 0%,#002C71 20%,#003C99 50%,#002C71 80%,#002C71 100%);
	background:linear-gradient(to right,#002C71 0%,#002C71 20%,#003C99 50%,#002C71 80%,#002C71 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#002C71',endColorstr='#002C71',GradientType=1);
}
.jb_inner{ position:relative; width:1080px; margin:auto; }
.jb img{ position:absolute; top:-30px; }
/*----------------------------------------------------------------------------------------------
ブレッド
----------------------------------------------------------------------------------------------*/
/* 共有 */
ul.check3,ul.check4{ overflow:auto; margin:2rem 0; }

/* 固有 */
ul.check3 li{
	padding:1rem 0 1rem 4rem;
	font-weight:bold;
	background:url(../img/base/check3.png) 0 .8rem no-repeat;
}
ul.check4 li{
	padding:1.6rem 0 1.6rem 4rem;
	border-bottom:1px solid #aaa;
	font-size:2.8rem;
	font-weight:bold;
	line-height:1.3;
	background:url(../img/base/check4.png) 0 2rem no-repeat;
}

/* 共有 */
ul.bullet1{ margin:3rem 0; }
ul.bullet1 li p{ font-size:1.8rem; font-weight:normal; }

/* 固有 */
ul.bullet1 li{
	padding:1.6rem 0 1.6rem 5rem;
	margin:0;
	border-bottom:2px dotted #ccc;
	font-size:2.8rem;
	font-weight:bold;
	line-height:1.3;
	background:url(../img/base/check4.png) 1rem 2rem no-repeat;
}
ul.bullet1 li:nth-child(even){ background-color:#FFFFF0; }
ul.bullet1 li p{ padding:1rem 0 0; margin:1rem 0 0; border-top:1px dashed #aaa; }
ul.bullet1 img{ margin:2rem auto; }

/* メリット */
ul.merit{ counter-reset:count; list-style-type:none; }
.merit li{ padding:2rem 0; border-bottom:1px dotted #CCC; }
.merit li:nth-child(2n){ background:#FFFFF0; }
.merit .ttl{
	position:relative;
	min-height:8rem;
	padding:0 0 1rem 8rem;
	border-bottom:1px solid #AF0000;
	color:#AF0000;
	font-size:3.6rem;
	font-weight:bold;
	line-height:1.3;
	font-family:Gothic MB101 Heavy,sans-serif;
}
.merit .ttl:before{
	counter-increment:count;
	content:counter(count);
	position:absolute;
	top:0;
	left:0;
	width:70px;
	height:50px;
	padding:1rem 0;
	border-radius:100%;
	color:#FFF;
	text-align:center;
	line-height:1.2;
	font-weight:bold;
	font-family:Gothic MB101 DemiBold,sans-serif;
	background:#AF0000;
}
.merit p{ padding:1rem 0 0; }
/*----------------------------------------------------------------------------------------------
voice
----------------------------------------------------------------------------------------------*/
.voice{ padding-top:3rem; background:#FFF9F9; }
p + .voice_box{ margin-top:3rem; }
.voice_box + p{ margin-top:3rem; }
.voice_box + .voice_box{ margin-top:5rem; }

/* 客声全体の境界線 */
.voice_border{ border:3px double #CCC; border-radius:5px; box-shadow:2px 2px 0 0 #EFEFEF; }
.voice_border_y{ border-color:#F9D557; }
.voice_border .voice_bg_ttl{ width:543px; }

/* 二重の境界線 */
.voice_line_box{
	padding:2rem 0;
	margin-bottom:3rem;
	border-top:6px solid #AF0000;
	border-bottom:6px solid #AF0000;
}
.voice_line_pic{
	padding:0 2rem 0 0;
	font-size:1.8rem;
	line-height:1.4;
	text-align:center;
}
.voice_line_box.order .voice_line_pic{ order:1; padding:0 0 0 2rem; }
.voice_line_pic img{ margin-bottom:1rem; }
.voice_line_ttl{
	width:590px;
	font-size:3rem;
	line-height:1.4;
	font-family:Gothic MB101 Heavy,sans-serif;
}
.voice_line_box.no_pic .voice_line_ttl{ width:100%; font-size:3.8rem; text-align:center; }

/* 症状 */
.voice_line_sub{
	display:inline-block;
	padding:.6rem 1rem;
	margin-bottom:1rem;
	color:#FFF;
	font-size:2.6rem;
	background:#AF0000;
}

/* リボン背景 */
.voice_ribon_box{
	padding:2rem 0;
	margin-bottom:3rem;
	color:#FFF;
	font-size:3rem;
	text-align:center;
	line-height:1.4;
	font-family:Ryumin Bold KL,serif;
	text-shadow:0 1px 1px #002052;
	background:#002C71;
	background:-moz-linear-gradient(left,#FFF 0%,#002C71 8%,#002C71 25%,#003C99 50%,#002C71 75%,#002C71 92%,#FFF 100%);
	background:-webkit-linear-gradient(left,#FFF 0%,#002C71 8%,#002C71 25%,#003C99 50%,#002C71 75%,#002C71 92%,#FFF 100%);
	background:linear-gradient(to right,#FFF 0%,#002C71 8%,#002C71 25%,#003C99 50%,#002C71 75%,#002C71 92%,#FFF 100%);
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF', endColorstr='#FFF',GradientType=1);
}

/* 背景画像あり */
.voice_bg_box{ padding:2rem; background:url(../img/bg_voice.jpg) no-repeat; background-size:cover; }
.voice_bg_box_y{ background:url(../img/bg_voice_02.jpg) no-repeat; background-size:cover; }
.voice_bg_box_y .voice_bg_subttl{ font-size:3.4rem; line-height:1.6; }
.voice_bg_box.order .voice_bg_pic{ order:2; padding:0 0 0 2rem; }
.voice_bg_pic{ padding-right:2rem; font-size:1.8rem; text-align:center; }
.voice_bg_pic img{ margin-bottom:1rem; }
.voice_bg_ttl{ width:550px; line-height:1.4; }
.voice_bg_ttl_txt{ font-size:3rem; font-family:Ryumin Ultra KL,serif; }
.voice_bg_subttl{
	position:relative;
	height:115px;
	padding:0 0 1rem;
	margin-bottom:1rem;
	color:#AF0000;
	font-size:3.2rem;
	text-align:center;
	font-family:Ryumin ExtraHeavy KL,serif;
}
.voice_bg_subttl:before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:40px;
	height:115px;
	background:url(../img/ico_laurel_left.png) no-repeat;
}
.voice_bg_subttl:after{
	content:"";
	position:absolute;
	right:0;
	top:0;
	width:40px;
	height:115px;
	background:url(../img/ico_laurel_right.png) no-repeat;
}
.voice_bg_ttl_name{ padding-top:1rem; margin-top:1rem; border-top:1px solid #CCC; }

/* 解説 */
.voice_info_box{
	-webkit-box-pack:justify; -moz-box-pack:justify; -ms-flex-pack:justify; -webkit-justify-content:space-between; justify-content:space-between;
	-webkit-box-align:center; -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center;
	padding:1rem 2rem;
	font-size:1.8rem;
	line-height:1.4;
	background:#FBEFBD;
}
.voice_info_box p{ order:1; width:75%; }
.voice_info_box img{ width:22%; margin:0; }

/* 本文見出し */
.voice_txt.bg_g{ padding:2rem; }
.voice_txt.bg_r{ padding:2rem; }
.voice_txt.bg_y{ padding:2rem; background:#FEFDF8; }
.voice_txt_ttl{
	overflow:hidden;
	padding-left:1rem;
	margin-bottom:2rem;
	border-left:4px solid #AF0000;
	font-size:3rem;
	line-height:1.4;
	font-family:Gothic MB101 Heavy,sans-serif;
}
p + .voice_txt_ttl{ margin-top:4rem; }
.voice_txt_name{
	overflow:auto;
	padding-bottom:1rem;
	margin-bottom:1rem;
	border-bottom:1px solid #CCC;
	font-size:2.2rem;
	font-family:Gothic MB101 DemiBold,sans-serif;
}
.voice_txt .img_full{ width:100%; }

/* 報告 */
.report_box{ padding:2rem; margin-top:2rem; background:#FFFFF0; }
.report_ttl{
	padding:0 0 1rem 1rem;
	margin-bottom:1rem;
	border-bottom:1px solid #AF0000;
	border-left:4px solid #AF0000;
	color:#AF0000;
	font-size:3rem;
	line-height:1.4;
	font-family:Gothic MB101 DemiBold,sans-serif;
}
.report_box ul{ margin-top:0; }
/*----------------------------------------------------------------------------------------------
profile
----------------------------------------------------------------------------------------------*/
#profile{ width:100%; padding-top:0; background:#EEE; }
.profile_ttl{
	overflow:hidden;
	padding-left:1rem;
	margin-bottom:2rem;
	border-left:4px solid #002C71;
	color:#002C71;
	font-size:3rem;
	line-height:1.4;
	font-family:Gothic MB101 Heavy,sans-serif;
}
p + .profile_ttl{ margin-top:4rem; }
/*----------------------------------------------------------------------------------------------
result
----------------------------------------------------------------------------------------------*/
.result_box{ margin:3rem 0; }
.result_ttl_box{
	padding:0 2rem;
	background:url(../img/bg_result.jpg) no-repeat bottom left;
	background-size:cover;
}
.result_ttl{
	-webkit-box-align:center; -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center;
	padding:2rem;
	line-height:1.4;
	background:rgba(255,255,255,.9);
}
.result_num{
	width:20%;
	font-size:7rem;
	text-align:center;
	font-family:Ryumin Ultra KL,serif;
}
.result_ttl_txt{ width:80%; font-size:4rem; font-family:Ryumin Ultra KL,serif; }

/* 本文 */
.result_txt{
	-webkit-box-pack:justify; -moz-box-pack:justify; -ms-flex-pack:justify; -webkit-justify-content:space-between; justify-content:space-between;
	-webkit-box-align:start; -moz-box-align:start; -ms-flex-align:start; -webkit-align-items:flex-start; align-items:flex-start;
	padding:2rem;
	background:#F5FCFF;
}

/* 症状 */
.result_list{
	width:66%;
	font-size:2rem;
	line-height:1.4;
}
.result_list dt{
	width:20%;
	padding:.6rem;
	margin-bottom:1rem;
	color:#FFF;
	font-weight:bold;
	text-align:center;
	background:#AF0000;
}
.result_list dd{
	width:80%;
	padding:.6rem .6rem .6rem 1.2rem;
	margin-bottom:1rem;
	border-bottom:1px solid #AF0000;
}
.result_list img{ margin:0; }
/*----------------------------------------------------------------------------------------------
restart
----------------------------------------------------------------------------------------------*/
.restart_ttl{
	margin-bottom:2rem;
	color:#AF0000;
	font-size:5rem;
	text-align:center;
	font-family:Gothic MB101 Heavy,sans-serif;
}
.restart_subttl{
	margin:2rem 0 1rem;
	font-size:4rem;
	font-family:Gothic MB101 Heavy,sans-serif;
}
/*----------------------------------------------------------------------------------------------
recording
----------------------------------------------------------------------------------------------*/
.recording{ padding-top:3rem; background:#FFF9F9; }
.recording_box{ padding:2rem; margin:2rem 0; background:#FFF; box-shadow:2px 2px 0 0 #EFEFEF; }
.recording_ttl{
	margin-bottom:2rem;
	font-size:5rem;
	line-height:1.4;
	text-align:center;
	font-family:Gothic MB101 Heavy,sans-serif;
}
/*----------------------------------------------------------------------------------------------
style_pic
----------------------------------------------------------------------------------------------*/
.style_pic_box{
	-webkit-box-align:center; -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center;
	margin:3rem 0;
}
.style_pic_box li{ width:47%; }
.style_pic_box li.style_pic_arrow{ width:6%; }
/*----------------------------------------------------------------------------------------------
release
----------------------------------------------------------------------------------------------*/
.release_box{
	-webkit-box-align:center; -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center;
	margin:3rem 0;
}
.release_list{ width:47%; padding:2rem; border:1px solid #CCC; }
.release_list:nth-of-type(1){ border-color:#FFE3A0; background:#FFFFF0; }
.release_list:nth-of-type(2){ border-color:#AF0000; background:#FFF9F9; }
.release_list dt{ padding-bottom:.6rem; margin-bottom:1rem; border-bottom:1px solid #AF0000; color:#AF0000; font-weight:bold; text-align:center; }
.release_arrow{ width:6%; }
/*----------------------------------------------------------------------------------------------
tokuten
----------------------------------------------------------------------------------------------*/
.tokuten_ttl{
	padding:3rem 0;
	margin-top:3rem;
	color:#FFF;
	font-size:4rem;
	text-align:center;
	line-height:1.3;
	font-family:Gothic MB101 Heavy,sans-serif;
	text-shadow:0 2px 2px #520000;
	background:url(../img/bg_tokuten.jpg) no-repeat;
}
.tokuten_ttl .sub_ttl{
	display:inline-block;
	padding:.6rem 1rem;
	margin-bottom:1rem;
	border:1px solid #FFF;
	color:#AF0000;
	font-size:80%;
	text-shadow:none;
	background:#FFF;
	box-shadow:1px 1px 1px 0 #520000;
}
.tokuten .letter{ background:#FFFFF0; }
/*----------------------------------------------------------------------------------------------
online_tokuten
----------------------------------------------------------------------------------------------*/
.online_tokuten_box{ margin-top:2rem; }
.online_tokuten_ttl{
	margin:0 0 3rem;
	font-size:3rem;
	line-height:1.4;
	text-align:center;
	font-family:Gothic MB101 Heavy,sans-serif;
}
/*----------------------------------------------------------------------------------------------
value
----------------------------------------------------------------------------------------------*/
.comparison_value_box{
	-webkit-box-align:center; -moz-box-align:center; -ms-flex-align:center; -webkit-align-items:center; align-items:center;
	margin:3rem 0;
}
.comparison_value_big{ width:60%; }
.comparison_value_mini{ width:34%; }
.comparison_value_mini table{ margin-bottom:1rem!important; font-size:114%; }
.comparison_value_mini th{ background:#FFF9F9!important; }
.comparison_value_mini td{ text-align:center; font-weight:bold; }
.comparison_value_arrow{ width:6%; }
.value_box{ width:100%; margin-bottom:3rem; border:1px solid #CCC; }
.value_box th{ padding:.6rem; border:1px solid #CCC; text-align:center; font-weight:bold; background:#FFFFF0; }
.value_box td{ padding:.6rem; border:1px solid #CCC; }
/*----------------------------------------------------------------------------------------------
hosyou
----------------------------------------------------------------------------------------------*/
.hosho .side_photo2{ width:40%; }
.hosho_step{
	margin:2rem 0;
	display:-webkit-flex; display:-moz-flex; display:-ms-flex; display:-o-flex; display:flex;
	flex-wrap:wrap;
	-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 .step_box img{ margin-bottom:1rem; }
.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:1.5rem auto 0; font-size:70%; }
.hosho2__flow_wrap_box{ display:-webkit-flex; display:-moz-flex; display:-ms-flex; display:-o-flex; display:flex; }
.hosho2__flow_list{ margin:0 auto; flex:1; }
.hosho2__flow_list p{ padding:.5rem 2rem; }
.hosho2__flow_center{ border-top:1px solid #BFBFBF; margin:3rem 0; padding:1.5rem 0; }
/*----------------------------------------------------------------------------------------------
tsuishin
----------------------------------------------------------------------------------------------*/
#tsuishin{
	padding:5rem;
	color:#3C3C3C;
	background:url(../img/base/bg_tsuishin.jpg);
}
.tsuishin__sub h2{
	margin:0 auto .5em;
	font-size:5rem;
	line-height:1.3;
}
.tsuishin__sub p{
	margin:0 !important;
	border-bottom:4px double;
	font-size:3rem;
	line-height:1.3;
	background-image:none !important;
}
.tsuishin__box{
	padding:5rem;
	font-family:Ryumin ExtraBold KL,serif;
	box-shadow:0 3px 10px -2px rgba(0,0,0,.4);
	background:url(../img/base/bg_tsuishin__box.jpg);
}
.tsuishin__box p{
	margin:1em 0 0;
	font-weight:500;
	background-image:linear-gradient(#e5d6b6 1px,transparent 1px);
	background-size:auto 3.7rem;
	background-position:0 -3px;
}
.tsuishin__name{
	position:relative;
	display:block;
	margin:-410px -10px 0 auto;
}
/*----------------------------------------------------------------------------------------------
form
----------------------------------------------------------------------------------------------*/
.formWrap{ width:100%; margin-top:2rem; }

/* ボタン */
input.btn_submit{ cursor:pointer; display:block; width:700px; height:160px; margin:auto; border:none; text-indent:-9999px; background:url(../img/base/btn04.png) no-repeat 0 0; }
input.btn_submit:hover{ opacity:.8; }

/* 料金 */
.form{ margin:0; }
.price__box{ margin-top:2rem; }
.price__result{
	width:90%;
	margin:0 auto;
	font-weight:bold;
	font-family:Arial,Helvetica,"sans-serif";
}
.price__result_main{ color:#DD0000; font-size:7rem; line-height:1; }
.price__result_main img{ float:left; width:120px; padding-right:2rem }
.price__result_sub{ font-size:6rem; text-align:right; }
.price__notice{ padding:3rem; margin:1rem auto 0; background:#eee; }
.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:1rem; vertical-align:middle; }
.price_table td:nth-child(odd){ width:60%; font-size:1.8rem; }
.price_table td:nth-child(even){ width:40%; text-align:center; font-size:2.5rem; border-left:2px solid #040000; }
/*----------------------------------------------------------------------------------------------
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:-webkit-flex; display:-moz-flex; display:-ms-flex; display:-o-flex; display:flex;
	-webkit-box-pack:justify; -moz-box-pack:justify; -ms-flex-pack:justify; -webkit-justify-content:space-between; justify-content:space-between;
	width:800px;
	padding:2rem 0;
	margin:0 auto;
	font-size:80%;
}
#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;
	margin:0 auto;
	text-align:center;
}
.scfooter_inner a{ text-decoration:none; }

.btn_ft{
	position:relative;
	overflow:hidden;
	width:480px;
	border-radius:4px;
}
.btn_ft img{ border-radius:4px; }
.btn_ft a{ text-decoration:none !important; }

@media screen and (max-width:768px){ .btn_ft{width:75%;} }
@media screen and (max-width:425px){ .btn_ft{width:100%;} }








/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
【 SP 】
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (max-width:768px){
	/*----------------------------------------------------------------------------------------------
	basic
	----------------------------------------------------------------------------------------------*/
	body{ font-size:4.5vw; font-weight:normal; background:none; }
	#main{ padding:2rem 0; width:100%; border:none; }

	img{ width:100%; max-width:100%; }
	.arrow{ width:40%; }

	/* Float / Clearfix */
	.side_photo{ float:none; width:80%; padding:0; margin:0 auto 1rem!important; }
	.side_photo2{ float:none; width:80%; padding:0; margin:0 auto 1rem!important; }
	.img_right{ float:none; width:80%; padding:0; margin:0 auto 1rem; }
	.img_left{ float:none; width:80%; padding:0; margin:0 auto 1rem; }
	.img_full{ width:100%; }
	.caption{ padding:.6rem 0 .6rem .6rem; font-size:4vw; }

	/* PC/SP表示調整 */
	.display_pc{ display:none!important; }
	.display_sp{ display:block!important; }

	.sp_small{ display:inline-block; font-size:4vw; }
	.sp_large{ display:inline-block; font-size:7vw; }
	.sp_small_p{ display:inline-block; font-size:90%; }
	.sp_large_p{ display:inline-block; font-size:120%; }

	.attention_box{ padding:1.5rem 1.5rem 1.5rem 2.5rem; border:2px dotted #CCC; margin:2rem 0; font-size:3.8vw; }
	.attention_box.normal{ padding:1.5rem; text-indent:0; }

	/* FlexBox */
	.flex{ align-items:center; }
	/*----------------------------------------------------------------------------------------------
	section/letter
	----------------------------------------------------------------------------------------------*/
	.sub-head{ width:100%; padding:0 .5rem 0; font-size:6vw; }
	.sub-head-extol{ width:95%; padding-bottom:0; font-size:5.6vw; }
	.sub-head-grad{ font-size:6.5vw; }
	.sub-head-bg{ font-size:7vw; }

	.letter{ width:100%; padding:1.5rem; margin:auto; }

	/* letter内 見出し */
	.laurel_ttl{ height:31vw; padding:4vw 5vw 0; margin-bottom:2rem; font-size:5vw; line-height:1.4; }
	.laurel_ttl:before{ width:10vw; height:31vw; }
	.laurel_ttl:after{ width:10vw; height:31vw; }
	/*----------------------------------------------------------------------------------------------
	prihead
	----------------------------------------------------------------------------------------------*/
	#prihead{ font-size:4.2vw; }
	#prihead #CDT{ width:100%; padding:.4rem 0; font-size:3.6vw; font-family:Century Gothic,"Courier New",Consolas,monospace; }
	/*----------------------------------------------------------------------------------------------
	header
	----------------------------------------------------------------------------------------------*/
	.jb{ height:22vw; }
	.jb_inner{ width:100%; }
	.jb img{ top:-2vw; }
	/*----------------------------------------------------------------------------------------------
	ブレッド
	----------------------------------------------------------------------------------------------*/
	/* 共有 */
	ul.check3,ul.check4{ font-size:5vw; }
	ul.check3 li{ background-size:8%; }
	ul.check4 li{ padding:1.2rem 0 1.2rem 3.2rem; }

	/* 固有 */
	ul.check3 li{ padding:1rem 0 1rem 4rem; line-height:1.3; background-position:0 .6rem; }
	ul.check4 li{ font-size:5vw; background-position:0 2vw; }

	/* 共有 */
	ul.bullet1 li{ font-size:5vw; background-size:8%; }

	/* 固有 */
	ul.bullet1 li{ padding:1.2rem 0 1.2rem 4rem; background-position:0 1.4rem; }
	ul.bullet1 img{ margin:1rem auto; }

	/* メリット */
	.merit li{ padding:1.5rem 0; }
	.merit .ttl{ min-height:15vw; padding:0 0 1rem 5rem; font-size:5vw; }
	.merit .ttl:before{ width:12vw; height:12vw; padding:0; line-height:2.4; }
	/*----------------------------------------------------------------------------------------------
	voice
	----------------------------------------------------------------------------------------------*/
	.voice_box + .voice_box{ margin-top:2rem; }

	/* 二重の境界線 */
	.voice_line_box{ padding:1.5rem 0; margin-bottom:2rem; border-width:4px; }
	.voice_line_pic{ order:4; width:80%; padding:0; margin:auto; font-size:4vw; }
	.voice_line_ttl{
		order:0;
		width:100%;
		padding-bottom:1rem;
		font-size:4.5vw;
	}
	.voice_line_box.no_pic .voice_line_ttl{ padding-bottom:0; font-size:4.5vw; }

	/* 症状*/
	.voice_line_sub{ margin-bottom:.6rem; font-size:4vw; }

	/* リボン背景 */
	.voice_ribon_box{ padding:1.5rem .5rem; margin-bottom:2rem; font-size:4.5vw; }

	/* 背景画像あり */
	.voice_bg_box{ padding:1.5rem 1.5rem 0; background-position:right top; }
	.voice_bg_box_y .voice_bg_subttl{ font-size:6vw; line-height:1.4; }
	.voice_bg_box.order .voice_bg_pic{ order:2; padding:0 0 0 2rem; }
	.voice_bg_pic{ order:2; padding:0; margin:auto; font-size:4vw; }
	.voice_bg_ttl{ order:0; width:100%; font-size:4.5vw; }
	.voice_bg_ttl_txt{ margin-bottom:1rem; font-size:4.5vw }
	.voice_bg_subttl{ height:31vw; padding:2vw 5vw 0; font-size:6vw; line-height:1.4; }
	.voice_bg_subttl span{ display:inline-block; }
	.voice_bg_subttl:before{ width:10vw; height:31vw; }
	.voice_bg_subttl:after{ width:10vw; height:31vw; background-position:right top; }
	.voice_bg_ttl_name{ padding:1rem 0; margin-top:0; border:none; }

	/* 解説 */
	.voice_info_box{ padding:1.5rem; font-size:4vw; }

	/* 本文見出し */
	.voice_txt_ttl{ border-width:2px; font-size:5vw }
	p + .voice_txt_ttl{ margin-top:3rem; }

	/* 報告 */
	.report_box{ padding:1.5rem; }
	.report_ttl{ border-left-width:2px; font-size:5vw; }
	/*----------------------------------------------------------------------------------------------
	profile
	----------------------------------------------------------------------------------------------*/
	.profile_ttl{ border-left-width:2px; font-size:5vw; }
	p + .profile_ttl{ margin-top:2rem; }
	/*----------------------------------------------------------------------------------------------
	result
	----------------------------------------------------------------------------------------------*/
	.result_box{ margin:2rem 0; }
	.result_ttl_box{ padding:0 1rem; }
	.result_ttl{ padding:1.5rem; }
	.result_num{ width:100%; margin-bottom:.5rem; font-size:5vw; background:#FFF; }
	.result_ttl_txt{ width:100%; font-size:5vw; text-align:center; }

	/* 本文 */
	.result_txt{ padding:1.5rem; }

	/* 症状 */
	.result_list{ width:100%; margin-bottom:.5rem; font-size:4vw; }
	/*----------------------------------------------------------------------------------------------
	restart
	----------------------------------------------------------------------------------------------*/
	.restart_ttl{ margin-bottom:0; font-size:7vw; }
	.restart_subttl{ font-size:6vw; }
	/*----------------------------------------------------------------------------------------------
	recording
	----------------------------------------------------------------------------------------------*/
	.recording_box{ padding:1.5rem; }
	.recording_ttl{ font-size:5.8vw; }
	/*----------------------------------------------------------------------------------------------
	style_pic
	----------------------------------------------------------------------------------------------*/
	.style_pic_box{ margin:2rem 0; }
	/*----------------------------------------------------------------------------------------------
	release
	----------------------------------------------------------------------------------------------*/
	.release_box{ margin:2rem 0; }
	.release_list{ width:100%; padding:1.5rem; }
	.release_arrow{ margin:-6vw auto; transform:rotate(90deg); }
	/*----------------------------------------------------------------------------------------------
	tokuten
	----------------------------------------------------------------------------------------------*/
	.tokuten_ttl{ padding:1.5rem .5rem; margin-top:2rem; font-size:4.8vw; }
	.tokuten_ttl .sub_ttl{ padding:.4rem .6rem; margin-bottom:.4rem; }
	.tokuten h4{ padding-left:1rem; margin:0 0 1rem; border-width:3px; font-size:5vw; }
	/*----------------------------------------------------------------------------------------------
	online_tokuten
	----------------------------------------------------------------------------------------------*/
	.online_tokuten_box{ margin-top:2rem; }
	.online_tokuten_ttl{ font-size:5vw; }
	/*----------------------------------------------------------------------------------------------
	value
	----------------------------------------------------------------------------------------------*/
	.value_box{ margin-bottom:1rem; }
	.comparison_value_box{ margin:2rem 0; }
	.comparison_value_big{ width:100%; }
	.comparison_value_mini{ width:100%; }
	.comparison_value_mini table{ font-size:110%; }
	.comparison_value_arrow{ margin:-8vw auto -6vw; transform:rotate(90deg); }
	/*----------------------------------------------------------------------------------------------
	hosyou
	----------------------------------------------------------------------------------------------*/
	.hosho .side_photo2{ width:80%; }
	.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); }
	.hosho2__flow_wrap{ width:100%; margin:0 auto 1.5rem; font-size:4.5vw; }
	.hosho2__flow_wrap_box{ display:block; }
	.hosho2__flow_list{ margin:0 auto; flex:1; }
	.hosho2__flow_list img{ width:80%; margin:0 auto; flex:1; }
	.hosho2__flow_list p{ width:95%; padding:.5rem 0; text-align:center; margin:0 0 1.5rem; }
	.hosho2__flow_center{ border-top:1px solid #BFBFBF; margin:3rem 0; padding:1.5rem 0; }
	/*----------------------------------------------------------------------------------------------
	tsuishin
	----------------------------------------------------------------------------------------------*/
	#tsuishin{ padding:1rem; }
	.tsuishin__sub h2{ font-size:8vw; }
	.tsuishin__sub p{ font-size:5.2vw; }
	.tsuishin__box{ padding:2rem; }
	.tsuishin__box p{ font-size:5vw; background:none; }
	.tsuishin__name{ width:60%; margin:0 auto; }
	/*----------------------------------------------------------------------------------------------
	form
	----------------------------------------------------------------------------------------------*/
	.formWrap{ margin:2rem 0 0; }

	/* ボタン */
	input.btn_submit{
		width:100%;
		height:24vw;
		padding:0;
		background-size:100%;
	}

	/* 料金 */
	.price__result{ width:100%; }
	.price__result_main{ font-size:7.5vw; }
	.price__result_main img{ width:14vw; padding-right:1.4rem }
	.price__result_sub{ font-size:5.8vw; }
	.price__notice{ padding:1rem; }
	.price__notice p{ font-size:3.8vw; }
	.price_table{ margin:0 auto 2rem; border-width:1px; }
	.price_table th{ padding:.5rem; }
	.price_table td{ padding:1rem; font-size:3.8vw!important; }
	.price_table td:nth-child(odd){ width:56%; }
	.price_table td:nth-child(even){ width:44%; }
	.price_table td .small{ display:inline-block; font-size:3.4vw; line-height:1.3; }
	/*----------------------------------------------------------------------------------------------
	footer
	----------------------------------------------------------------------------------------------*/
	.footer_logo img{ display:block; }
	.footer_txt{ padding:1rem; }
	#footer__wrap{ display:block; width:100%; }
	/*----------------------------------------------------------------------------------------------
	scfooter
	----------------------------------------------------------------------------------------------*/
	.scfooter_inner{ width:100%; padding:.4rem; }
}
