@charset "utf-8";
/* CSS Document */

/* メインカラム */
/*#main_area-------------------------------ここから*/
#main_area {
	background: url("../img/counseling/main.jpg") left top repeat;
	padding:11.5% 0;
	background-size: cover;
}
#main_area h1 img {
	width: 63vh !important;
	max-width: 470px;
}
#main_area h1 {
	text-align: center;
	font-family: fot-tsukuardgothic-std, sans-serif;
	color: #272727;
	font-size: 2.2rem;
	text-shadow: 2px 4px 3px rgba(255,255,255,0.8);
}
.svoice {margin-top: 100px;}
.border {
	border: none;
	border-bottom: 1px solid #d9d9d9;
	width: 800px;
	margin:100px auto;
}

h1 .small, h2 .small {
	font-size: 85%;
}
.border {
	border: none;
	border-bottom: 1px solid #d9d9d9;
	width: 800px;
	margin:100px auto;
}

.sec01 h2 {
	font-size: 43px;
	text-align: center;
	color: #333333;
	margin-top: 50px;
	line-height: 1.3;
}
.sec01 h3 {
	font-size: 29px;
	text-align: center;
	font-family: fot-tsukuardgothic-std, sans-serif;
	color: #333333;
	line-height: 1.3;
}
.sec01 h2 {
	font-size: 34px;
}
.ml10 {
	margin-left: -10px;
}
.main {
	font-size: 0;
}
h2 span.small {
	font-size: 23px;
}
section {
	position: relative;
}
.sec01 .icon img, .sec02 .icon img {
	position: absolute;
	top: -70px;
	z-index: 10;
	left: 0;
	right: 0;
	margin: auto;
}
.sec02 .icon img {
	top: -112px;
}
hr.border {
	border: none;
	border-bottom: 1px solid #f1f1f1;
	margin: 110px auto;
}
h1 {
	font-size: 44px;
	padding-top: 25px;
	text-align: center;
}
.sec01 .flex {
	margin: 50px auto;
	width: 750px;
}
.sec01 .BtnBlock{
	margin:110px auto;}
.sec01 .icon02 img{
	top: -98px;
}
.sec01 .meibo_tit {
	padding: 45px 0 30px;
}
.sec01 h4 {
	font-size:130%;
	font-weight:bold;
	margin-top:50px;
	text-align:center;
}
.svoice .body_boxw {
	padding:26px;
}
.svoice .sub_box .head_box {
	padding-left: 33px;
}
 @media screen and (max-width: 800px) {
.sec01 .flex {
	width: 100%;
}
}
.sec01 .flex li:first-child .Btn01 {
	margin-right: 35px;
}
.sec01 .Btn01 {
	background: url("../img/top/btn_case.png") no-repeat right #fff;
	color: #ff6144;
	border: 1px solid #ff6144;
	border-radius: 50px;
	padding: 14px 70px 18px 54px;
	background-position: 83% 62%;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: bold;
	font-size: 19px;
	text-align: center;
	width: 228px;
	display: block;
}
/* ------------------------------
   sec01
------------------------------ */
.sec01 {
	background: url(../img/sec02_bg02.gif) repeat;
	padding-bottom: 100px;
}
.sec01 h3 {
	font-size: 20px;
	color: #ff878f;
	margin-top: 40px;
	line-height: 1.3;
}
.sec01 .flex h2 {
	text-align: left;
	font-size: 36px;
}
.sec01 p, .sec02 p {
	max-width: 815px;
	line-height: 2;
	color: #545454;
	text-align: left;
	margin: 25px auto;
}
.caseBlock {
	background: #fff;
	border-radius: 5px;
	box-shadow: 1px 1px 16px 0px rgba(255,184,171,0.95);
	padding: 50px 4% 50px;
	margin: 0 auto 50px;
	max-width: 900px;
}
 @media screen and (min-width: 1350px) {

}
.caseBlock ul.flex {
	width: auto;
}
.caseBlock ul.flex li:first-child {
	background: url(../img/arrow_case.png) no-repeat right;
	padding-right: 6%;
	background-position: 97% 41%;
}
.tit01 {
	border-bottom: 1px dashed #9e9e9e;
	font-size: 20px;
	margin: 30px 0 30px;
	padding-bottom: 15px;
	text-align: center !important;
}
.caseBlock .flex span {
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	display: block;
	line-height: 1.3;
}
.caseBlock ul.flex li {
	width: 47%;
	font-family: fot-tsukuardgothic-std, sans-serif;
}
.caseBlock dl dt {
	color: #ff6144;
	font-weight: bold;
	padding: 7px 15px;
	border: 1px solid #ff6144;
	margin-right: 25px;
	font-family: fot-tsukuardgothic-std, sans-serif;
	display: inline-table;
	width: 11%;
	text-align: center;
	height: 30px;
}
.caseBlock dl dd {
	width: 79%;
}
.sub_box .head_box {
	background-color: #ff6144;
	color: #fff;
	font-size: 1.5rem;
	padding: 15px 0;
	text-align: center;
}
.sub_box {
	border: 2px solid #ff6144;
	border-radius: 38px;
}
.sub_box .head_box {
	background-color: #ff6144;
	color: #fff;
	font-size: 1.5rem;
	padding: 15px 0;
	text-align: center;
	border-radius:30px 30px 0 0;
}
.sub_box .body_box {
	padding: 40px;
}

.sub_box p,.sub_box h4{
	text-align: left;
	line-height: 1.85;
	margin: 0;
	max-width: inherit;
	padding: 0 20px;
}
.l-col3 {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}
.sub_box table tr th, .sub_box table tr td {
	position: relative;
	vertical-align: text-top;
}
.sub_box table tr th {
	padding-left: 27px;
	color: #ff6144;
	font-size: 18px;
	width: 100px;
	box-sizing: border-box;
	font-weight: bold;
}
.sub_box table tr th:before {
	content: "";
	width: 16px;
	height: 16px;
	background-color: #ff6144;
	border-radius: 100%;
	position: absolute;
	left: 0;
	top: 8px;
	z-index: 10;
}
.sub_box .ti {
	text-indent: -1em;
	padding-left: 1em;
}
.sub_box table tr td {
	padding-left: 30px;
}
.sub_box table tr:not(:last-child) td {
	padding-bottom: 30px;
}
.sub_box table tr:not(:last-child) td:before {
	content: "";
	height: 100%;
	border-left: 1px solid #E9E9E9;
	position: absolute;
	left: -92px;
	top: 15px;
	z-index: 1;
}
.sub_box table tr td .task_label {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
	line-height: 1.3;
	position: relative;
	z-index: 1;
	text-shadow: 3px 3px 5px #FFF;
}
.sub_box table tr td span.small {
	line-height: 1.8;
	font-size: 15px;
}
.head_txt {
	margin-bottom: 25px;
	font-size: 15px;
	line-height: 1.6;
}
.sec01 ol {
	counter-reset: item;
	list-style-type: none;
	padding-left: 0;
}
.sec01 ol li {
	padding-left: 1em;
}
.sec01 ol li {
	text-indent: -1.3em;
	padding-left: 1.3em;
}
.sec01 ol li:before {
	counter-increment: item;
	content: counter(item)'.';
	padding-right: .5em;
	font-weight: bold;
	color: #ff6144;
}
/*もっと見る*/
.mottoBlock .flex {
	width: 81%;
}
.mottoBlock .flex li {
	width: 44%;
}
mottoBlock .flex li:first-child {
	background: url(../img/arrow_case.png) no-repeat right;
	padding-right: 6%;
	background-position: 97% 41%;
}
.hidden_box {
	margin: 4em 0 3.5em;/*前後の余白*/
	padding: 0;
	text-align: center;
}
/*ボタン装飾*/
.hidden_box label,
.mot_btn {
	background: url(../img/top/arrow_01_hover.png) #ff6144 no-repeat right;
	color: #fff;
	font-weight: bold;
	border-radius: 30px;
	font-family: fot-tsukuardgothic-std, sans-serif;
	padding: 14px 70px 16px 60px;
	font-size: 19.5px;
	background-position: 85% 66%;
	border: 2px solid #ff6144;
}


/*ボタンホバー時*/
.hidden_box label:hover{
	background: url(../img/top/btn_case.png) #fff no-repeat right;
	background-position: 85% 50%;
	border: 2px solid #ff6144;
	color: #ff6144;
}
.mot_btn:hover {
	background: url(../img/top/btn_case.png) #fff no-repeat right !important;
	background-position:85% 52% !important;
	color: #ff6144 !important;
}
/*チェックは見えなくする*/
.hidden_box input {
	display: none;
}
/*中身を非表示にしておく*/
.hidden_box .hidden_show {
	height: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.8s;
}
/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
	padding: 10px 0;
	height: auto;
	opacity: 1;
}
.body_boxw {
	padding:30px 25px;
}
/* ------------------------------
   sec02
------------------------------ */

.sec02 {
	background: #fff;
	margin-bottom: 100px;
}
.sec02 .sub_box {
	margin: 73px auto !important;
	width: 92%;
	max-width: 1000px;
}
.sec02 .sub_box .head_box {
	font-size: 20px;
	text-align: left;
	position: relative;
	padding-left: 140px;
}
.sec02 .sub_box .head_box span img {
	position: absolute;
	bottom: 0px;
	left: 30px;
}
.sec02 .sub_box .head_box span img {
	max-width: 92px;
}
.sec02 .blue .head_box {
	background-color: #96dbff;
}
.sec02 .blue {
	border: 2px solid #96dbff;
}
.sec02 .sub_box02 {
	margin-top: 85px;
}

.svoice .head_box{
	padding-left:45px !important;
}