﻿@charset "utf-8";
@import url('https://fonts.googleapis.com/earlyaccess/notosansjapanese.css');
/*----------------------------------------------------------------------------------------------
【記載ルール】
・ブレークポイント、キーフレームでインデント
・不要な半角スペースやタブは削除
・短縮できるものは短縮（例）0.7 → .7、#FFFFFF → ＃FFF
・継承を考え、無駄なプロパティを削除（特にSP）
----------------------------------------------------------------------------------------------*/

/* 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}img{margin:0 auto;padding:0;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 W3", 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:960px;
	padding:0 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; }

/* PC/SP表示調整 */
.display_pc{ display:block; }
.display_sp{ display:none; }

/* font */
.b{ font-weight:bold; }
.u{ text-decoration:underline; }
.min{text-decoration:underline; font-weight: bold; font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif; }
.fm{font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif; font-weight: bold;  }
.rub{ font-weight:bold; border-bottom:2px solid #EB0003; }
.r{ color:#d00; }
.blue{ color:#171c77; }
.purple{ color:#664984; }
.orange{ color:#ff5700; }
.gray{background:#eee;}
.gray2{color: #878787;}
.text_c{ text-align:center; }
.text_r{ text-align:right; }
.text_l{ text-align:left; }
.xxsmall{ font-size:30%; }
.xsmall{ font-size:60%; }
.small{ font-size:80%; }
.slarge{ font-size:120%; }
.large{ font-size:150%; }
.xlarge{ font-size:180%; }
/*----------------------------------------------------------------------------------------------
section/letter
----------------------------------------------------------------------------------------------*/
h2.sub-head{
	padding:4rem 0 0;
	margin:0;
	text-align:center;
	font-family: 'Noto Sans Japanese';
	font-size: 5.5rem;
	font-weight: 900;
	letter-spacing: -2px;
	line-height: 1.3;
}
.letter{ padding:3rem 5rem; }
.letter img{
	display:block;
	max-width:100%;
	margin:0 auto;
}
/*----------------------------------------------------------------------------------------------
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/base/bg_headline.png) #FFF center bottom repeat-x;} 
header h1{ margin:0 auto; }
/*----------------------------------------------------------------------------------------------
ブレッド
----------------------------------------------------------------------------------------------*/
/* 共有 */
ul.check1,
ul.check2,
ul.check3,
ul.check4{ margin:2rem 0; }
ul.check1 li,
ul.check2 li{
	padding:1.4rem 0 1.4rem 5rem;
	border-bottom:1px dashed #ccc;
	font-weight:bold;
}

/* 固有 */
ul.check1 li{ background:url(../img/base/check1.png) 0 1rem no-repeat; }
ul.check2 li{ background:url(../img/base/check2.png) 0 1rem no-repeat; }
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,
ul.bullet2{ margin:0 0 2rem; }
ul.bullet1 li p,
ul.bullet2 li p{
	font-size:2rem;
	font-weight:normal;
}

/* 固有 */
ul.bullet1 li{
	padding:2rem 0 2rem 5rem;
	margin:0;
	border-bottom:2px dotted #ccc;
	font-size:2.8rem;
	font-weight:900;
	background:url(../img/base/check3.png) 1rem 2.4rem no-repeat;
}
ul.bullet1 li:nth-child(even){ background-color:#ffffcc4d; }
ul.bullet1 li p{
	padding:1rem 0 0;
	margin:1rem 0 0;
	border-top:1px dashed #aaa;
}
ul.bullet1 img{ margin:2rem auto; }
ul.bullet2{ border:10px solid #704e23; }
ul.bullet2 li{
	padding:2rem 4rem 2rem 6rem;
	border-bottom:2px dotted #f1dcc1;
	font-size:2.6rem;
	font-weight:bold;
	background:url(../img/base/check3.png) 1.5rem 2.2rem no-repeat;
}
ul.bullet2 li:nth-child(even){ background-color:#fff7ec; }
ul.bullet2 li:last-child{ border:none; }
ul.bullet2 li p{ margin:.5rem 0 0; }
/*----------------------------------------------------------------------------------------------
voice
----------------------------------------------------------------------------------------------*/
/* 共通 */
.voice__wrap,
.voice2__wrap{
	width:100%;
	padding:4rem;
	margin:3rem auto;
	background:#FFF;
	box-sizing:border-box;
}

/* 各客声の画像と見出し */
.voice__box{
	float:right;
	width:76%;
	margin:0;
	font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: bold;
}
.voice__img{
	float:left;
	width:20%;
}
.voice__img img{ max-width:100%; }
.voice__box h2{
	margin:2rem 0 .5rem;
	color:#7d8c99;
	font-weight:bold;
	font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	line-height: 1.3;
}
.voice__box h3{
	margin:2rem 0 .5rem;
	color:#7d8c99;
	font-weight:bold;
	font-family:游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	line-height: 1.3;
}
.voice__box p{
	margin:0 auto;
	color:#161964;
	font-size:3.2rem;
	font-weight:bold;
	line-height:1.3;
}

/* 固有 */
.voice__wrap{
	border:4px double #508bb5;
	border-radius:15px;
	box-shadow:4px 2px 16px rgba(0, 0, 0, .3);
}
.voice2__wrap{
	border:1px solid #b3b4d0;
	box-shadow:6px 6px 1px rgba(151, 174, 197, .3);
}
.speech { display: table; font-size: 3rem; position: relative; background: #c4ecff; padding: 20px; border-radius: 10px; font-weight: bold; color: #151965; }
.speech:before { content: ''; position: absolute; border: 40px solid transparent; border-top-color: #c4ecff; left: 50%; bottom: -60px; transform: translateX(-50%); }
.speech:nth-child(even) { margin: 30px auto 40px 0; }
.speech:nth-child(odd) { margin: 30px 0 40px auto; }
/*----------------------------------------------------------------------------------------------
profile
----------------------------------------------------------------------------------------------*/
#profile{
	width:100%;
	margin:0 auto;
	background:url(../img/bg01.jpg) no-repeat center center;
	background-size:cover;
	background-attachment:fixed;
}


.special {background:#FBF1DC;}
.special h5{width:100%; background: #825D00; font-size: 180%; font-weight: bold; color: #FFF; text-align: center; padding: 25px 0; margin: 15px 0 0; line-height: 1.3;}

.hosyou__flow_wrap {width:90%; margin: 20px auto 0; font-size: 75%; border: 1px solid #B9B9B9; padding: 30px; }
.hosyou__flow_wrap_box{display: flex;}
.hosyou__flow_list {margin: 0 auto;flex: 1;}
.hosyou__flow_list p{padding: 5px 10px;}
.hosyou__flow_center{border-top:1px solid #BFBFBF; margin: 15px 0;padding:15px 0;}

.hosyou2__flow_wrap {width:90%; margin: 15px auto 0; font-size: 70%; }
.hosyou2__flow_wrap_box{display: flex;}
.hosyou2__flow_list {margin: 0 auto;flex: 1;}
.hosyou2__flow_list p{padding: 5px 20px;}
.hosyou2__flow_center{border-top:1px solid #BFBFBF; margin: 30px 0;padding:15px 0;}

/*----------------------------------------------------------------------------------------------
list
----------------------------------------------------------------------------------------------*/
.letter_list ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}

.letter_list li {
	padding:2rem 0 2rem 5.5rem;
	margin:0;
	border-bottom:2px dotted #ccc;
	font-size:2.8rem;
	font-weight:900;
    line-height: 1.5;
}
.letter_list li p{
	font-size:2rem;
	font-weight:normal;
}
.letter_list li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #ED4200;
  color: #FFF;
  display: block;
  float: left;
  line-height: 50px;
  margin:.0 0 0 -60px;
  text-align: center;
  height: 50px;
  width: 50px;
  border-radius: 50%;
}
/*----------------------------------------------------------------------------------------------
tokuten
----------------------------------------------------------------------------------------------*/
#tokuten{ margin:0; }
.tokuten-title{ margin:0; }
.tokuten__box + .tokuten__box{ margin:2rem 0 0; }
.tokuten__box .text_c + p{ margin-top:2rem; }
.tokuten__box_contents{
	padding:2rem;
	margin:0 0 2rem;
	background:#f7f7f7;
}
/*----------------------------------------------------------------------------------------------
hosyou
----------------------------------------------------------------------------------------------*/
.hosyou__wrap{
	display:flex;
	align-items:center;
}
.hosyou__wrap img{
	flex:1;
	width:100%;
	height:100%;
	max-width:70%;
	max-height:380px;
}
.hosyou__wrap p{
	flex:1;
	padding:1rem;
	font-size:1.5rem;
	line-height:1.6;
}
/*----------------------------------------------------------------------------------------------
tsuishin
----------------------------------------------------------------------------------------------*/
#tsuishin{
	padding:5rem;
	font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	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;
	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:-200px 0 0 auto;
}
/*----------------------------------------------------------------------------------------------
form
----------------------------------------------------------------------------------------------*/
.formWrap{
	width:100%;
	margin:2rem 0 4rem;
}

/* ボタン */
/* 共通 */
input.btn_submit,
input.btn_submit02,
input.btn_submit03{
	cursor:pointer;
	display:block;
	width:700px;
	height:160px;
	margin:auto;
	border:none;
	text-indent:-9999px;
}
input.btn_submit:hover,
input.btn_submit02:hover,
input.btn_submit03:hover{opacity:.8;}

/* 固有 */
input.btn_submit{ background:url(../img/base/btn04.png) no-repeat 0 0; }
input.btn_submit02{ background:url(../img/base/btn01.gif) no-repeat 0 0; }
input.btn_submit03{ background:url(../img/base/btn03.gif) no-repeat 0 0; }


/* 料金 */
.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:#d00;
	font-size:7rem;
}
.price__result_main img{
	float:left;
	width:120px;
	padding-right:2rem
}
.price__result_sub{
	font-size:6rem;
	text-align:right;
}
.price__notice{
	width:90%;
	padding:2rem;
	margin:1rem auto 0;
	background:#eee;
	box-sizing:border-box;
}
.price__notice p{
	padding-left:1em;
	font-size:2rem;
	text-indent:-1em;
}

/*----------------------------------------------------------------------------------------------
frame
----------------------------------------------------------------------------------------------*/
.frame01{
	width:860px;
	padding:6rem 4rem;
	margin:4rem auto;
	background:url(../img/base/g_frame01_01.jpg) top left no-repeat,
				url(../img/base/g_frame01_03.jpg) bottom left no-repeat,
				url(../img/base/g_frame01_02.jpg) top left repeat-y;
	box-sizing:border-box;
}
.frame02{
	width:860px;
	padding:6rem 4rem;
	margin:4rem auto;
	background:url(../img/base/frame02_01.png) top left no-repeat,
				url(../img/base/frame02_03.png) bottom left no-repeat,
				url(../img/base/frame02_02.png) top left repeat-y;
	box-sizing:border-box;
}
.frame03{
	width:860px;
	padding:6rem 4rem;
	margin:4rem auto;
	background:url(../img/base/frame03_01.png) top left no-repeat,
				url(../img/base/frame03_03.png) bottom left no-repeat,
				url(../img/base/frame03_02.png) top left repeat-y;
	box-sizing:border-box;
}
.frame04{
	width:860px;
	padding:6rem 4rem;
	margin:4rem auto;
	background:url(../img/base/frame04_01.png) top left no-repeat,
				url(../img/base/frame04_03.png) bottom left no-repeat,
				url(../img/base/frame04_02.png) top left repeat-y;
	box-sizing:border-box;
}
/*----------------------------------------------------------------------------------------------
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;
}
.scfooter_inner{
	display:block;
	float: right;
	width:20%;
	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:165px;
	border-radius:4px;
}
.btn_ft img{ border-radius:4px; }
.btn_ft a{ text-decoration:none !important;}

.reason-box { width: 90%; border: 2px solid #d61725; margin: 25px auto; }
.reason-box h3 { background: #d61725; color: #fff; font-weight: bold; padding: 2% 1%; text-align: center; font-size: 3rem; line-height: 1.3; }
.reason-box h3 .mark { display: table; background: #fff; color: #750000; padding: 5px 25px; font-size: 70%; margin: 0 auto 10px; }
.reason-inner {padding: 3% 4%; background: #fff; }
.reason-inner p { line-height: 1.5; }
.reason-inner img { margin: 1.5em auto; }
.reason-inner img:first-child { margin: 0 auto 1.5em; }
.reason02-box { width: 100%; border: 2px solid #2D2D2D; margin: 25px auto; }
.reason02-box h3 { background: #2D2D2D; color: #fff; font-weight: bold; padding: 1% 1%; text-align: center; font-size: 2.5rem; line-height: 1.3; }
.reason02-inner {padding: 3% 4%; background: #fff; }
.reason02-inner p { line-height: 1.5; }
.reason02-inner img { margin: 1.5em auto; }
.reason02-inner img:first-child { margin: 0 auto 1.5em; }
.reason02-inner_left{width:35%; float: left;}
.reason02-inner_right{width:62%; float: right;}

.caution__txt{width:100%; padding: 15px; margin: 15px 0 0; box-sizing: border-box; border: 2px dotted #EB7C00; background: #FFF7F0; font-size: 70%; font-weight: bold; text-decoration: underline;}
.caution__txt02{width:100%; padding: 15px; margin: 15px 0 0; box-sizing: border-box; border: 2px dotted #353535; background: #F4F4F4; font-size: 70%;font-weight: bold; }


@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{
		background:none;
		font-size:4.5vw;
		font-weight: 350;
	}
	img{ max-width:100%; }

	/* Float / Clearfix */
	.side_photo{ width:40%; padding:0 0 1.4rem 1.4rem; }
	.side_photo2{ width:40%; padding:0 1.4rem 1.4rem 0; }
	.side_photo.name{ width:100%; }

	/* PC/SP表示調整 */
	.display_pc{ display:none; }
	.display_sp{ display:block; }

	#main{
		padding:1rem 0;
		width:100%;
		border:none;
	}
.slarge{ font-size:105%; }
	/*----------------------------------------------------------------------------------------------
	section/letter
	----------------------------------------------------------------------------------------------*/
	h2.sub-head{
		width:95%;
		padding: 3rem 0 0;
		margin: 0 auto;
		font-size: 5.2vw;
	}
	.letter{
		width:90%;
		padding:2rem 0 1rem;
		margin:auto;
	}
	/*----------------------------------------------------------------------------------------------
	prihead
	----------------------------------------------------------------------------------------------*/
	#prihead{ font-size:4.2vw; }
	#prihead #CDT{
		width:100%;
		font-size:3.6vw;
	}
	/*----------------------------------------------------------------------------------------------
	header
	----------------------------------------------------------------------------------------------*/
	/*----------------------------------------------------------------------------------------------
	ブレッド
	----------------------------------------------------------------------------------------------*/
	/* 共有 */
	ul.check1,
	ul.check2,
	ul.check3,
	ul.check4{ font-size:6vw; }
	ul.check1 li,
	ul.check2 li,
	ul.check3 li{ background-size:8%; }
	ul.check1 li,
	ul.check2 li,
	ul.check3 li,
	ul.check4 li{ padding:1.2rem 0 1.2rem 4rem; }
	
	/* 固有 */
	ul.check1 li{ background-position:0 1.4rem; }
	ul.check2 li{ background-position:0 1.8rem; }
	ul.check3 li{ background-position:0 1.4rem; }
	ul.check4 li{ font-size:6vw; background-position:0 1.6rem; }

	/* 共有 */
	ul.bullet1 li,
	ul.bullet2 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; }
	ul.bullet2{ border-width:6px; }
	ul.bullet2 li{ padding:1.2rem 1.2rem 1.2rem 4rem; background-position:1rem 1.4rem; }
	/*----------------------------------------------------------------------------------------------
	voice
	----------------------------------------------------------------------------------------------*/
	/* 共通 */
	.voice__wrap,
	.voice2__wrap{
		padding:1.5rem;
		margin:2rem auto;
	}

	/* 各客声の画像と見出し */
	.voice__box{ width:68%; }
	.voice__img{ width:30%; }
	.voice__box h2{ font-size:5vw;  }
	.voice__box p{
		font-size:4.5vw;
		letter-spacing:.5px;
	}
	.voice__box h3{
		margin: 1rem 0 .5rem;
		font-size: 80%;
}
	.speech { font-size: 5vw; padding: 10px; margin: 30px auto!important; }
	.speech:before { border: 20px solid transparent; border-top-color: #c4ecff; bottom: -35px; }
	/*----------------------------------------------------------------------------------------------
	profile
	----------------------------------------------------------------------------------------------*/
	/*----------------------------------------------------------------------------------------------
	tokuten
	----------------------------------------------------------------------------------------------*/
	.tokuten__box .text_c + p{ margin-top:1rem; }
	.tokuten__box_contents{ padding:1.6rem; }
	/*----------------------------------------------------------------------------------------------
	hosyou
	----------------------------------------------------------------------------------------------*/
	.hosyou__wrap{ display:block; }
	.hosyou__wrap p{
		padding:1rem  0;
		font-size:4vw;
	}
	/*----------------------------------------------------------------------------------------------
	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-size:auto 8.5vmin;
	}
	.tsuishin__name{ margin:0 0 0 auto; }
	/*----------------------------------------------------------------------------------------------
	form
	----------------------------------------------------------------------------------------------*/
	.formWrap{ margin:2rem 0 2rem; }

	/* ボタン */
	input.btn_submit,
	input.btn_submit02,
	input.btn_submit03{
		width:100%;
		height:30vmin;
		padding:0;
		background-size: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; }
	/*----------------------------------------------------------------------------------------------
	frame
	----------------------------------------------------------------------------------------------*/
	.frame01,.frame02,.frame03,.frame04{
		width:90%;
		padding:2rem;
		margin:2rem auto;
		background-size:100%;
	}
	/*----------------------------------------------------------------------------------------------
	footer
	----------------------------------------------------------------------------------------------*/
	.footer_logo img{ display:block; }
	.footer_txt{ padding:1rem; }
	#footer__wrap{
		display:block;
		width:100%;
		    padding: 15px 0 100px;

	}
	
/*----------------------------------------------------------------------------------------------
list
----------------------------------------------------------------------------------------------*/
.letter_list ol {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}

.letter_list li {
	padding:2rem 0 2rem 5.5rem;
	margin:0;
	border-bottom:2px dotted #ccc;
	font-size:2rem;
	font-weight:900;
    line-height: 1.5;
}
.letter_list li p{
	font-size:2rem;
	font-weight:normal;
}
.letter_list li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #ED4200;
  color: #FFF;
  display: block;
  float: left;
  line-height: 37px;
  margin:.0 0 0 -50px;
  text-align: center;
  height: 35px;
  width: 35px;
  border-radius: 50%;
}
	/*----------------------------------------------------------------------------------------------
	scfooter
	----------------------------------------------------------------------------------------------*/
	.scfooter_inner{ width:100%; }
	
	    
		.reason-box h3 { font-size: 4.5vw; }
	.merit-box h3 { font-size: 5.5vw; }

	
    .hosyou__flow_wrap {width:90%; margin: 20px auto 0; font-size: 75%; border: 1px solid #B9B9B9; padding: 20px; box-sizing: border-box; }
.hosyou__flow_wrap_box{display: block;}
.hosyou__flow_list {margin: 0 auto;flex: 1;}
.hosyou__flow_list p{padding: 5px 10px;}
.hosyou__flow_center{border-top:1px solid #BFBFBF; margin: 15px 0;padding:15px 0;}

.hosyou2__flow_wrap {width:90%; margin: 15px auto 0; font-size: 70%; }
.hosyou2__flow_wrap_box{display: block;}
.hosyou2__flow_list {margin: 0 auto;flex: 1;}
.hosyou2__flow_list p{padding: 5px 20px; text-align: center; margin: 0 0 15px;}
.hosyou2__flow_center{border-top:1px solid #BFBFBF; margin: 30px 0;padding:15px 0;}
	
.reason02-box h3 { background: #2D2D2D; color: #fff; font-weight: bold; padding: 1% 1%; text-align: center; font-size: 1.5rem; line-height: 1.3; }
	
	.sp_size{width:50%;}
	
}