@charset "utf-8";

/* ==================================
Reset
================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}nav ul,li{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}ins{background-color:#ff9;color:#000;text-decoration:none;}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}table{border-collapse:collapse;border-spacing:0;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}
img{display:block;margin:0 auto;max-width:100%;}
/*----------------------------------------------------------------------------------------------
CSSアニメーション
----------------------------------------------------------------------------------------------*/
.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;}
@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;}
}

.blinking{ -webkit-animation:blink 0.6s ease-in-out infinite alternate; -moz-animation:blink 0.6s ease-in-out infinite alternate; animation:blink 0.6s ease-in-out infinite alternate; color:#DD0000; font-size:120%; }
@-webkit-keyframes blink{
	0%{opacity:0;}
	70%{opacity:1;}
}
@-moz-keyframes blink{
	0%{opacity:0;}
	70%{opacity:1;}
}
@keyframes blink{
	0%{opacity:0;}
	70%{opacity:1;}
}

/* ==================================
PC
================================== */
html{
	width:100%;
	margin:0 auto;
	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);
}
#body__wrap{
	width:964px;
	margin:0 auto;
	border-left:2px solid #CCC;
	border-right:2px solid #CCC;
	background:#FFF;
}
#header_wrap{
	margin:0 auto;
	border-left:2px solid #CCC;
	border-right:2px solid #CCC;
	background: url("../img/yonezawa_letter_bg2.jpg")center bottom;
}
/* 端末表示（ほぼ使用しないが保険で記載） */
.pc{ display:block; }
.sp{ display:none; }
/* 文字装飾 */
.r{ color:#AF0000; }
.y{ color: #FFFF00; }
.blue{ color:#003C99; }
.b{ font-weight:bold; }
.u{ text-decoration:underline; }
.large{ font-size:150%; }
.small{ font-size:80%; }
.xsmall{ font-size:90%; }
.text_c {text-align: center; margin: 20px 0;font-weight: bold;line-height: 1.3;}
.marker{ background-color:#fdfdb9; }
.notice {font-size: 1.4rem;}
/* Clearfix/Float ----------------------------------------------- */
.clearfix:after{ content:" "; display:block; clear:both; }
.side_photo{ float:right; margin:0 0 1em 1em; }
.side_photo_l{ float:left; margin:0 1em 1em 0; }
.img_right{ float:right; width:330px; margin:0 0 1em 1em; }
.img_left{ float:left; width:330px; margin:0 1em 1em 0; }
.caption{ max-width:100%; padding:1rem; margin:0!important; border-left:2px solid #110604; color:#000C2D; font-size:1.8rem; font-weight:bold; line-height:1.4; }

/* PC/SP表示調整 */
.display_pc{ display:block; }
.display_sp{ display:none; }
.side_photo {
	float: right;
	padding: 0 0 2rem 2rem;
}
.side_photo2 {
	float: left;
	padding: 0 2rem 2rem 0;
}
.side_photo img {
	margin: 0
}
.side_photo2 img {
	margin: 0
}
.img_right {
	float: right;
	display: table;
	max-width: 50%;
	margin: 0 0 2rem 2rem;
	line-height: 1.3;
}
.img_left {
	float: left;
	display: table;
	max-width: 50%;
	margin: 0 2rem 2rem 0;
	line-height: 1.3;
}
.img_right img {
	margin: 0
}
.img_left img {
	margin: 0
}
.img_right .caption, .img_left .caption {
	max-width: 250px;
}
.img_full {
	width: 86rem;
}
.img_full div {
	max-width: 48%;
	margin-bottom: 2rem;
}
.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;
}

/*----------------------------------------------------------------------------------------------
prihead
----------------------------------------------------------------------------------------------*/
#prihead{
	z-index:10;
	position:fixed;
	padding-top: 1rem;
	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 p { color: #fff; }
#prihead #CDT{
	width:960px;
	padding:0 0 1rem ;
	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%;
	font-family: monospace;
	background:#fff;
}
@media all and (-ms-high-contrast:none){
	*::-ms-backdrop,#prihead #CDT .count_num{	/* IE11 */
		padding:1rem .4rem 0;
		line-height:1;
	}
}
/*----------------------------------------------------------------------------------------------
zansu
----------------------------------------------------------------------------------------------*/
.zansu{ width:100%; height:auto; margin:0 auto; background: #fff; }
.zansu__inner{
	width:865px;
	padding:.3em 0 0;
	margin:0 auto;
	font-weight:bold;
	font-size:1.6rem;
	line-height:1.3;
}
.headline_mini .zansu__inner{ padding:0 5rem; font-size:1.8rem; box-sizing:border-box; }
.zansu__inner ul{
	display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	padding-top:1rem;
}
.zansu__inner li{ width:18%; padding:0 0 .4rem .4rem; margin-bottom:1rem; border-bottom:1px solid #333; border-left:1px solid #333; }
.zansu__sub { font-size: 3rem; background: #cb2525; color: #fff; text-align: center; display: table; margin: 1rem auto; padding: 0.5rem; }

/*----------------------------------------------------------------------------------------------
header
----------------------------------------------------------------------------------------------*/
header,.head_min{ background:url(../img/base/bg.jpg); }

.jb{
	width:100%;
	height:11rem;
	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:960px; margin:auto; }
.jb_inner img{ position:absolute; top:-30px; left:calc(50% - 442px); z-index: 1;}


/* sub-head ----------------------------------------------- */
.sub-head{
	margin:1em 0 .5em;
	font-size:4.7rem;
	line-height:1.3;
	text-align:center;
	color: #000C2D;
    font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    font-weight: 800;
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: "palt"1;
}
.sub-head_fast{margin:0 auto;padding: 25px 0 0;}
.sub-head2 {
    font-size: 4rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -0.03em;
    margin: 5rem auto 3rem;
    text-align: center;
}
.attention{
	display:inline-block;
	padding:.2em;
	margin-bottom:.4em;
	border:2px solid #AF0000;
	color:#AF0000;
	font-size:70%;
}
/* section ----------------------------------------------- */
section + section{ margin:6rem 0 0; }
section .sec__inner{ padding:1em 5rem; }
/* チェック/ブレット ----------------------------------------------- */
ul.check4{margin: 0 auto 2rem; }
ul.check4 li{
	border-bottom: 1px solid #aaa;
	padding:.7em 0 .7em 1.5em;
	font-size:130%;
	font-weight:bold;
	line-height:1.4;
	background: url(../img/base/check4.png) 0 .65em no-repeat;
}
.check4 p{
	margin-top: 2rem;
	overflow: hidden;
}
ul.bullet1{ margin:0 0 2em; }
ul.bullet1 li{
	padding: .6em 0 .6em 2em;
	margin:0;
	border-bottom:2px dotted #ccc;
	font-size:2.6rem;
	font-weight:bold;
	line-height:1.4;
	background: url(../img/base/check3.png) .2em 1em no-repeat;
}
ul.bullet1 li p{
	margin:.5em 0 0;
	padding:.5em 0 0;
	border-top:1px dashed #aaa;
	font-size:1.8rem;
	font-weight:normal;
	line-height:1.5;
}
ul.bullet1 img{ margin:1em auto; }
/* カリキュラム ----------------------------------------- */
.curriculum {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.curriculum + .curriculum {
	margin-top: 5rem;
}
.curriculum:nth-of-type(even) {
	flex-direction: row-reverse;
}
.curriculum.last .cur-txt {
	width: 100%;
}
.curriculum.last .cur-txt {
	width: 100%;
}
.curriculum.last .cur-img {
	display: none;
}
.cur-txt {
	width: 62%;
}
.cur-img {
	width: 35%;
}
.cur-num {
	background: #cb2525;
	color: #fff;
	font-size: 4rem;
	font-weight: bold;
	padding: 0 1rem;
}
.cur-txt h3 {
	font-size: 3.5rem;
	font-weight: bold;
	line-height: 1.3;
	margin: 1rem 0;
}
.cur-box {
	background: #f5f5f5;
	border: 1px solid #ddd;
	padding: 3rem 5rem;
	margin-bottom: 5rem;
}
.cur-box h4 {
	font-size: 3rem;
	font-weight: bold;
	border-bottom: 2px solid;
	margin-bottom: 2rem;
}
.cur-box li {
	padding-left: 1em;
	text-indent: -1em;
}
.cur-box li:before {
	content:"◉";
}
/* 客声 ----------------------------------------------- */
/* recommendation */
.recommendation{ padding-top:5rem; color:#FFF; background:#2A2220; }
.recommendation .sub-head{ color:#FFF; }
.recommendation .r{ color:#f35151; }
.recommendation_bigone_box{ margin:4rem 0; }
.recommendation_bigone_box:nth-of-type(1){ background:url(../img/img_02_08.png) no-repeat left 8rem; background-size:44%; }
.recommendation_bigone_box:nth-of-type(1) .recommendation_bigone_info{ margin-left:29rem; }
.recommendation_bigone_box:nth-of-type(2){ background:url(../img/img_02_09.png) no-repeat right 8rem; background-size:42%; }
.recommendation_bigone_box:nth-of-type(2) .recommendation_bigone_info{ margin-right:29rem; }
.recommendation_bigone_ttl{
	padding:1rem;
	margin-bottom:2rem;
	color:#0C0C0E;
	font-size:4rem;
	line-height:1.3;
	text-align:center;
	font-family:Gothic MB101 DemiBold,sans-serif;
	background:#FFF;
}
.recommendation_bigone_txt{ margin-bottom:2rem; }
.recommendation_bigone_info{ width:66%; text-shadow:2px 0 0 #2A2220; }
.recommendation_bigone_info .r{ color:#ff7272; }
.recommendation_bigone_subttl{
	padding-bottom:2rem;
	margin-bottom:2rem;
	border-bottom:1px solid #FFF;
	font-size:3.2rem;
	line-height:1.4;
	font-family:Ryumin ExtraBold KL,serif;
}
.recommendation_bigone_funase_prof{
	display:-webkit-box; display:-moz-box; display:-ms-flexbox; display:-webkit-flex; display:flex;
	-ms-flex-wrap:wrap; flex-wrap:wrap;
	-webkit-box-align:start; -moz-box-align:start; -ms-flex-align:start; -webkit-align-items:flex-start; align-items:flex-start;
}
.recommendation_bigone_funase_prof_pic{ order:2; width:270px; padding:0 0 2rem 2rem; }
.recommendation_bigone_funase_prof_pic img{ margin:0; }
.recommendation_bigone_funase_prof_pic .caption{ border-color:#FFF; color:#FFF; }
.recommendation_bigone_funase_prof dl{ width:590px; }
.recommendation_bigone_box dl{
	overflow:auto;
	padding:2rem;
	border:1px solid #FFF;
}
.recommendation_bigone_box dt{
	padding-bottom:1rem;
	margin-bottom:1rem;
	border-bottom:1px dotted #FFF;
	font-size:3rem;
	line-height:1.4;
	font-family:Ryumin ExtraBold KL,serif;
}

.voice01 {
/*	border: 2px solid #004462;*/
	-webkit-box-shadow: 0 3px 3rem 0 rgba(0,0,0,0.15);
	box-shadow: 0 3px 3rem 0 rgba(0,0,0,0.15);
}
.voice01 + .voice01 {
	margin-top: 5rem;
}
.voice01 .voice__title {
	background: #004462;
	color: #fff;
	font-size: 4rem;
	font-weight: 900;
	letter-spacing: -0.03em;
	line-height: 1.3;
	padding: 3rem 0;
	text-align: center;
	text-shadow: 0 2px 5px rgba(0,0,0,0.5);
}
.voice01 .voice__inner {
	background: #e8feff;
	padding: 5rem;
}
.voice01 .voice__inner .img_left, .voice01 .voice__inner .img_right {
	width: auto;
}
.voice01 .voice__inner h4 {
	border-left: 5px solid;
	color: #cb2525;
	font-size: 3rem;
	line-height: 1.3;
	letter-spacing: -0.04em;
	margin: 4rem 0 2rem;
	overflow: auto;
	padding: 1rem 0 1rem 2rem;
}
.voice01 .voice__name {
	border-bottom: 2px solid;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	font-size: 3rem;
	font-weight: 600;
	margin-bottom: 2rem;
	overflow: auto;
}
.voice01 .notice {
	text-align: right;
	margin-top: 1rem;
}

/* リボン背景 */
.voice_ribon_box {
	padding: 2rem 0;
	color: #FFF;
	font-size: 3.5rem;
	text-align: center;
	line-height: 1.2;
	font-family: "Gothic MB101 Heavy", "A-OTF ゴシックMB101 Pr6N";
    font-weight: 800;
    -webkit-font-feature-settings: 'palt'1;
    font-feature-settings: "palt"1;
	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_txt.bg_g {
	padding: 2rem;
}
.voice_txt.bg_r {
	padding: 2rem;
}
.voice_txt.bg_y {
	padding: 2rem;
	background: #FEFDF8;
}
.voice_txt.bg_b {
	padding: 2rem;
	background: #F0FCFF;
}
.youtube {
	position: relative;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.toggle_btn {
	padding: 1rem;
	text-align: center;
	text-shadow: 0 2px 10px rgba(0,0,0,0.2);
	font-size: 3rem;
	color: #fff;
	line-height: 1.3;
	background: #2694ff;
	border-radius: 5px;
	-webkit-box-shadow: 0 3px 10px rgba(0,0,0,0.3);
	box-shadow: 0 3px 10px rgba(0,0,0,0.3);
	cursor: pointer;
	transition: 0.2s;
}

.toggle_btn:hover {
	background: #26b7ff;
}

.bg_b .voice_txt_name {
	font-size: 2.5rem;
	font-weight: bold;
	border-bottom: 2px solid;
	overflow: hidden;
	text-align: center;
}
.bg_b .voice_txt_name.flex {
	justify-content: center;
}
.bg_b .voice_txt_name.flex p {
	margin: 0 1rem;
}
.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;
}
/* 青の小さい客声 */
.small-voice_left, .small-voice_right {
	width: 48%;
	font-size: 70%;
}
.small-voice_left .voice_ribon_box, .small-voice_right .voice_ribon_box {
	font-size: 2.5rem;
	padding: .5rem 0;
}
.small-voice_left .voice_txt_name, .small-voice_right .voice_txt_name {
	font-size: 1.8rem;
	line-height: 1.3;
}
.small-voice_left img, .small-voice_right img {
	width: 115px;
	height: 115px;
}
/* 症例 */
.symptom dt {
	width: 24%;
	padding: .6rem 1rem;
	margin-bottom: 1rem;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.symptom01 {
	background: #AE0007;
}
.symptom02 {
	background: #005a88;
}
.symptom03 {
	background: #824c8e;
}
.symptom04 {
	background: #1b7e60;
}
.symptom05 {
	background: #6d6d6d;
}
.symptom06 {
	background: #000000;
}
.symptom dd {
	width: 76%;
	padding: .6rem 1rem;
	margin-bottom: 1rem;
	color: #fff;
}
/* 境界線の客声 */
.voice_line {
	border-top: 5px solid #20286E;
	margin-top: 3rem;
	line-height: 1.3;
	-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;
}
.voice_line:nth-child(even) {
	background: #eafaff;
}
.voice_line:last-child {
	border-bottom: 5px solid #20286E;
}
.voice_line + .voice_line {
	margin-top: 0;
}
.voice_line img {
	width: 25rem;
}
.voice_line .txt {
	width: 61rem;
	padding-left: 2rem;
}
.voice_line h3 {
	margin-bottom: 1rem;
	font-size: 3.2rem;
	font-family: Gothic MB101 DemiBold, sans-serif;
}
.voice_line .small {
	font-size: 1.8rem;
}
/* 客声全体の境界線 */
.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_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/base/ico_laurel_left.png") no-repeat;
}
.voice_bg_subttl:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	width: 40px;
	height: 115px;
	background: url("../img/base/ico_laurel_right.png") no-repeat;
}
.voice_bg_ttl_name {
	padding-top: 1rem;
	margin-top: 1rem;
	border-top: 1px solid #CCC;
}
/* 吹き出しタイトル客声 */
.voice_arrow {
	margin-top: 3rem;
}
.voice_ttl {
	position: relative;
	padding: 3rem 0;
	color: #FFF;
	font-size: 4rem;
	text-align: center;
	font-weight: bold;
	line-height: 1.3;
	font-family: Gothic MB101 Heavy, sans-serif;
	background: #AE0007;
}
.voice_arrow.bu .voice_ttl {
	background: #20286E;
}
.voice_arrow .point_color {
	color: #FFFAA0;
}
.voice_ttl:after {
	position: absolute;
	content: "";
	bottom: -20px;
	left: 50%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 30px 0 30px;
	border-color: #AE0007 transparent transparent transparent;
	transform: translateX(-50%);
}
.voice_arrow.bu .voice_ttl:after {
	border-color: #20286E transparent transparent transparent;
}
.voice_name {
	overflow: hidden;
	padding-bottom: 1rem;
	margin-bottom: 2rem;
	border-bottom: 2px solid #3f3f3f;
	font-size: 3.6rem;
	font-weight: bold;
	line-height: 1.4;
}
.voice_txt {
	padding: 4rem 5rem;
	background: #FFF0F0;
}
.voice_arrow.bu .voice_txt {
	background: #eafaff;
}
.voice_txt .subttl {
	overflow: hidden;
	padding-left: 1.4rem;
	margin: 4rem 0 2rem;
	border-left: 5px solid #AE0007;
	color: #AE0007;
	font-size: 3rem;
	line-height: 1.3;
}
.voice_box {
	margin-top: 5rem;
	background: #FFF;
}
.voice_box + p {
	margin-top: 3rem;
}
.voice_box .ttl {
	padding-left: 1.4rem;
	margin-bottom: 2rem;
	border-left: 5px solid #AE0007;
	color: #AE0007;
	font-size: 3rem;
}
/* スケジュール ----------------------------------------------- */
.schedule_ttl{ padding:0 0 0 .5em; margin-bottom:2rem; border-left:3px solid #333; font-weight:bold; }
.course_list{ width:100%; margin-bottom:.5rem; }
.schedule_box th{ padding:.6rem; border:1px solid #CCC; color:#FFF; background:#333; }
.course_box { background: #ddd; position: relative; font-weight: bold; display: flex; cursor: pointer; -ms-align-items: center; align-items: center; justify-content: space-between; padding:.6rem; border:1px solid #CCC; margin-top: 2rem; transition: all 0.2s; }
.course_box:hover { background: #777; color: #fff; box-shadow: 0 3px 15px rgba(0,0,0,0.3) }
.course_box:after { position: absolute; right: 1.5rem; top: 50%; transform: translateY(-50%); content: "\f078"; font-family: "Font Awesome 5 Free"; transition: all 0.3s; }
.course_box.open:after { position: absolute; right: 1.5rem; top: 50%; transform: translateY(-50%) rotateX(-180deg); content: "\f078"; font-family: "Font Awesome 5 Free"; }
.course_name { width: 30%; }
.course_time { width: 40%; }
.course_limit { width: 30%; text-align: center; }
.course_toggle { display: none; }
.course_info { width: 100%; }
.course_info tr { border: 1px solid #ccc; }
.course_info th { width: 20%; vertical-align: top; text-align: left; padding: 1rem; }
.course_info td { width: 80%; vertical-align: top; text-align: left; padding: 1rem; }
iframe{ width:100%; margin-top:2rem; }
/* 追伸 ----------------------------------------------- */
.tuishin .sec__inner{ background:url(../img/bg_tsuishin.jpg); }
.tuishin_txt{ padding:2em; background:url(../img/bg_tsuishin__box.jpg); box-shadow:2px 2px 4px 0 #B7B7B7; }
.flex .worth {
	width: 60%;
}
.flex .worth.rokuso {
	width: 30%;
}
/* FlexBox */
.flex {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}
.flex_center {
	-webkit-box-align: center;
	-moz-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.flex_btw {
	-webkit-box-pack: justify;
	-moz-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
/*----------------------------------------------------------------------------------------------
Button
----------------------------------------------------------------------------------------------*/
.btn{ display:block; margin-top:4rem; }
.button {
	width:70%;
	display:block;
	vertical-align:middle;
	padding:1.5rem 0;
	margin:2rem auto .5rem;
	font-weight:bold;
	font-size:4rem;
	text-align:center;
	text-decoration:none;
	color:#fff;
	border-radius: 5px;
	background-color:#0692ea;
	-webkit-transition:all .3s; transition: all .3s;
	line-height: 1.2;
}
.button:hover{
	color:#0692ea;
	background-color:#e1f4ff;
	border-radius: 60px;
}
/*----------------------------------------------------------------------------------------------
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 11rem;
	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{
	position:relative;
	overflow:hidden;
	width:480px;
    margin: 0 auto;
	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){
	.pc{ display:none; }
	.sp{ display:block; }
	.large{ font-size:110%; }
	html{ width:100%; }
		body{ font-size:4.5vw; font-weight:normal; }
	#body__wrap{ width:100%; padding:2rem 0 0; border:none; }
	img { max-width:100%; }
	/* Clearfix/Float ----------------------------------------------- */
	.img_right{ width:40%; margin:0 0 1em 1em; }
	.img_left{ width:40%; margin:0 1em 1em 0; }
	.side_photo{ width:40%; margin:0 0 1em 1em; }
	.side_photo_l{ width:40%; margin:0 1em 1em 0; }
	.caption{ font-size:3.6vw; }
	/* Float / Clearfix */
	.side_photo {
		width: 46%;
		padding: 0 0 1.4rem 1.4rem;
	}
	.side_photo2 {
		width: 46%;
		padding: 0 1.4rem 1.4rem 0;
	}
	.side_photo.full {
		width: 100%;
		padding: 0 0 1.4rem 0;
	}
	.img_right {
		float: none;
		width: 80%;
		max-width: 100%;
		padding: 0 0 1em;
		margin: 0 auto;
	}
	.img_right.big {
		width: 100%;
		max-width: 100%;
	}
	.img_left {
		float: none;
		width: 80%;
		max-width: 100%;
		padding: 0 0 1em;
		margin: 0 auto;
	}
	.img_full {
		width: 100%;
	}
	.img_full.flex div {
		max-width: 100%;
	}
	.caption {
		padding: .6rem 0 .6rem .6rem;
		font-size: 3.5vw;
	}
	/* FlexBox */
	.flex {
		align-items: center
	}
#header_wrap{width:100%;}
	/* header ----------------------------------------------- */
	#prihead{ font-size:4vw; }
	/*----------------------------------------------------------------------------------------------
	prihead
	----------------------------------------------------------------------------------------------*/
	#prihead{ font-size:4.2vw; }
	#prihead #CDT{ width:100%; padding:.4rem 0; font-size:3.2vw; font-family:Century Gothic,"Courier New",Consolas,monospace; }
	/*----------------------------------------------------------------------------------------------
	zansu
	----------------------------------------------------------------------------------------------*/
	.zansu__inner{ width:98%; font-size:3vw; }
	.zansu__inner ul{ padding-top:1rem; }
	.zansu__inner li{ width:23%; }
	.headline_mini .zansu__inner{ padding:0; font-size:4vw; }
	.zansu__sub { font-size: 3.5vw; }
	/*----------------------------------------------------------------------------------------------
	header
	----------------------------------------------------------------------------------------------*/
	.jb{ height:14vw; padding:1rem 2%; }
	.jb_inner{ width:100%; }
	.jb_inner img{ top:-5vw; left:0; }
	/* sub-head ----------------------------------------------- */
	.sub-head{ font-size:5vw;}
	.attention{ font-size:3.6vw; }
	/* section ----------------------------------------------- */
	section + section{ margin:2em 0 0; }
	section .sec__inner{ padding:1em; }
	/* チェック/ブレット ----------------------------------------------- */
	ul.check4 li{ background-position:0 .5em; line-height:1.3; font-size:110%; }
	ul.bullet1 li{ font-size:5vw; }
	ul.bullet1 li p{ font-size:4vw; }
    
	/* PC/SP表示調整 */
	.display_pc{ display:none; }
	.display_sp{ display:block; }
	/*----------------------------------------------------------------------------------------------
	curriculum
	----------------------------------------------------------------------------------------------*/
	.curriculum {
		flex-direction: row-reverse;
	}
	.cur-img { width: 100%; }
	.cur-txt { width: 100%; }
	.cur-num { font-size: 5.5vw; }
	.cur-txt h3 { font-size: 5.5vw; }
	.cur-box { padding: 5%; font-size: 4vw; }
	.cur-box h4 { font-size: 4.5vw; line-height: 1.3; padding-bottom: 1rem; }
	/*----------------------------------------------------------------------------------------------
	voice;
	----------------------------------------------------------------------------------------------*/	/* recommendation */
	.recommendation_bigone_box{ margin:2rem 0; }
	.recommendation_bigone_box:nth-of-type(1){ background:none; }
	.recommendation_bigone_box:nth-of-type(1) .recommendation_bigone_info{ margin-left:0; }
	.recommendation_bigone_box:nth-of-type(2){ background:none; }
	.recommendation_bigone_box:nth-of-type(2) .recommendation_bigone_info{ margin-right:0; }
	.recommendation_bigone_ttl{ margin-bottom:1rem; font-size:5vw; }
	.recommendation_bigone_txt{ margin-bottom:1rem; }
	.recommendation_bigone_txt img{ width:80%; margin:auto; }
	.recommendation_bigone_info{ width:100%; text-shadow:2px 0 0 #2A2220; }
	.recommendation_bigone_info .r{ color:#ff7272; }
	.recommendation_bigone_subttl{ padding-bottom:1rem; margin-bottom:1rem; font-size:5vw; }
	.recommendation_bigone_funase_prof_pic{ width:80%; padding:0; margin:2rem auto 0; }
	.recommendation_bigone_funase_prof dl{ width:100%; }
	.recommendation_bigone_box dl{ padding:1.5rem; }
	.recommendation_bigone_box dt{ font-size:5vw; }

	.voice01 .voice__title {
		font-size: 5vw;
		padding: 2rem 1rem;
	}
	.voice01 .voice__inner {
		padding: 5vw;
	}
	.voice01 .voice__inner .img_left {
		margin: 0 auto 1rem;
	}
	.voice01 .voice__name {
		font-size: 4.5vw;
		text-align: center;
	}
	.voice01 .voice__inner h4 {
		font-size: 5vw;
		padding-left: 1rem;
	}

	/* リボン背景 */
	.voice_ribon_box {
		padding: 1.5rem .5rem;
		margin-bottom: 0;
		font-size: 4.5vw;
	}
	/* 症例 */
	.symptoms_list li {
		font-size: 4vw;
	}
	/* 評価 */
	.valuation {
		overflow: hidden;
		margin-bottom: 2rem;
	}
	.valuation li {
		width: 100%;
		font-size: 4vw;
	}
	.valuation img {
		width: auto;
	}
	/* レビュー画像 */
	.review_pic {
		margin: 2rem 0 1rem;
	}
	.review_pic img {
		width: 50%;
		margin: 0 0 1rem;
	}
	.voice_box {
		padding: 0;
		margin: 0 auto;
		width: 100%;
	}
	.voice_box + .voice_box {
		margin: 3rem auto;
	}
	.voice_face {
		order: 2;
		width: 100%;
	}
	.voice_sub {
		padding: 1rem;
		order: 1;
		width: 100%;
	}
	.voice_sub h3 {
		font-size: 6vw;
	}
	.voice_symptoms {
		padding: 1rem;
		order: 3;
	}
	.voice_symptoms_title {
		font-size: 2rem;
	}
	.voice_txt h4 {
		font-size: 6vw;
		line-height: 1.3;
	}
	
	/*----------------------------------------------------------------------------------------------
	voice
	----------------------------------------------------------------------------------------------*/
	.voice_box + .voice_box {
		margin-top: 3rem;
	}
	/* 二重の境界線 */
	.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: 0;
		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: 2rem;
		margin-bottom: 1rem;
	}
	.laurel_ttl {
		font-size: 4.5vw;
		height: auto;
	}
	.laurel_ttl:before, .laurel_ttl:after {
		height: 20vw;
		width: 7vw;
		-webkit-background-size: contain;
		background-size: contain;
	}
	.voice_arrow {
		margin-top: 0;
	}
	.voice_arrow + .voice_arrow {
		margin-top: 3rem;
	}
	.voice_ttl {
		font-size: 4.8vw;
		padding: 1rem 0;
	}
	.voice_txt {
		padding: 10% 5% 5%;
	}
	.voice_name {
		font-size: 4.5vw;
	}
	.voice_txt.bg_b {
		padding: 5%;
	}
	.bg_b .voice_txt_name {
		font-size: 4vw;
	}
	.toggle_btn {
		font-size: 5vw;
		margin-bottom: 1rem;
	}
	.toggle_btn .small {
		font-size: 3vw;
	}
	.small-voice_left, .small-voice_right {
		width: 100%;
	}
	.small-voice_left .voice_ribon_box, .small-voice_right .voice_ribon_box {
		font-size: 4vw;
		margin-bottom: 0;
	}
		.flex .worth {
		width: 100%;
	}
	.flex .worth.rokuso {
		width: 100%;
	}
	.flex .worth img {
		width: 6%;
		margin: -12vw auto;
		transform: rotate(90deg);
	}
    /*----------------------------------------------------------------------------------------------
	Button
	----------------------------------------------------------------------------------------------*/
	.btn{ margin:4rem 0; }
	.button{
		height:auto;
		line-height:40px;
		padding:.5em 0 .3em;
		font-size:6vw;
		margin:.5em auto;
		width:90%;
		box-shadow:0 3px 2px 0 rgba(100, 100, 100, 0.43);
	}
	/*----------------------------------------------------------------------------------------------
	Course
	----------------------------------------------------------------------------------------------*/
	.course_box { font-size: 3.5vw; }
    /*----------------------------------------------------------------------------------------------
	footer
	----------------------------------------------------------------------------------------------*/
	.footer_logo img{ display:block; }
	.footer_txt{ padding:1rem; }
	#footer__wrap{ display:block; width:100%; }
	/*----------------------------------------------------------------------------------------------
	scfooter
	----------------------------------------------------------------------------------------------*/
	.scfooter_inner{ width:96%; padding:.5rem 0; }
     .br_sp {white-space: nowrap;line-height: 1.4;display: block;}
}