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

/* -------------------------------------------------- */
/* FONTS -------------------------------------------- */
/* -------------------------------------------------- */
.f01 {
	font-family: "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.f02 {
	font-family: "Hiragino Maru Gothic W4 JIS2004", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: 500;
}

.fb {
	font-weight: bold !important;
}

.fcBlue-bold {
	font-weight: bold;
	color: #039;
}

.fcGreen-bold {
	font-weight: bold;
	color: #13683c;
}

.fcRed-bold {
	font-weight: bold;
	color: #C00;
}

.fcOrenge-bold {
	font-weight: bold;
	color: #fd9535;
}

.fcBrown-bold {
	font-weight: bold;
	color: #404020;
}

/* font-size */
/* bodyの指定：62.5%（10px）、#mainの指定：1.4em（14px）からの相対サイズです。 
　各クラスの最後の（）内のpx数は、大体の数値です。　*/
.fs-xsmall {
	font-size: .64em !important;
	/*9px*/
}

.fs-small {
	font-size: .85em !important;
	/*12px*/
}

.fs-medium {
	font-size: 1em !important;
	/*14px*/
}

.fs-large {
	font-size: 1.14em !important;
	/*16px*/
}

.fs-xlarge {
	font-size: 1.57em !important;
	/*22px*/
}

.fs-xxlarge {
	font-size: 1.86em !important;
	/*26px*/
}

.fs-15 {
	font-size: 15px !important;
	;
}

.u-line {
	text-decoration: underline;
}

.fwNormal {
	font-weight: normal !important;
}


.fcRed01 {
	color: #B50000;
}

.fcBlue {
	color: #039;
}

.fcOrange {
	color: #F90;
}

.fcPink {
	color: #F6C;
}

.fcPurple {
	color: #639;
}

.fcGreen {
	color: #390;
}

.fcBrown {
	color: #404020;
}

.fcWhite {
	color: #FFF !important;
}

.fls-2 {
	letter-spacing: 2px
}


/* -------------------------------------------------- */
/* POSITION ----------------------------------------- */
/* -------------------------------------------------- */

.tc {
	text-align: center;
}

.tl {
	text-align: left;
}

.tr {
	text-align: right;
}

.va {
	vertical-align: middle;
}

.float-l {
	float: left;
}

.float-r {
	float: right;
}

.right-img {
	float: right;
	margin-left: 10px;
}

.left-img {
	float: left;
	margin-right: 10px;
}

@media screen and (max-width: 480px) {

	.left-img,
	.right-img {
		float: none;
		margin: 0 auto 10px auto;
		display: block;
	}
}

.right-img-300 {
	float: right;
	margin-left: 10px;
}

.left-img-300 {
	float: left;
	margin-right: 10px;
}

@media screen and (max-width: 600px) {

	.left-img-300,
	.right-img-300 {
		width: 300px;
		float: none;
		margin: 0 auto 10px auto;
		display: block;
	}

	.cmn-box .left-img-300,
	.cmn-box .right-img-300 {
		width: 260px;
	}
}

/*layout-left, layout-right */
.layout-right,
.layout-left {
	width: 315px;
	margin-bottom: .5em;
}

.layout-left {
	float: left;
}

.layout-right {
	float: right;
}

@media screen and (max-width: 768px) {

	.layout-right,
	.layout-left {
		width: 49%;
	}
}

@media screen and (max-width: 480px) {

	.layout-right,
	.layout-left {
		width: 100%;
		float: none;
	}
}



/* -------------------------------------------------- */
/* SPACE -------------------------------------------- */
/* -------------------------------------------------- */
.overf-hidden {
	overflow: hidden;
}

.margin-auto {
	margin-right: auto;
	margin-left: auto;
}

.mt0 {
	margin-top: 0 !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt15 {
	margin-top: 15px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.mt25 {
	margin-top: 25px !important;
}

.mt40 {
	margin-top: 40px !important;
}

.mt55 {
	margin-top: 55px !important;
}

.mt60 {
	margin-top: 60px !important;
}

.mt80 {
	margin-top: 80px !important;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb5 {
	margin-bottom: 5px !important;
}

.mb10 {
	margin-bottom: 10px !important;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20 {
	margin-bottom: 20px !important;
}

.mb25 {
	margin-bottom: 25px !important;
}

.mb30 {
	margin-bottom: 30px !important;
}

.mb35 {
	margin-bottom: 35px !important;
}

.mb40 {
	margin-bottom: 40px !important;
}

.mb45 {
	margin-bottom: 45px !important;
}

.mb50 {
	margin-bottom: 50px !important;
}

.mb60 {
	margin-bottom: 60px !important;
}

.mb80 {
	margin-bottom: 80px !important;
}

.mb1em {
	margin-bottom: 1.2em !important;
}

.mb2em {
	margin-bottom: 2em !important;
}

.ml25 {
	margin-left: 25px !important;
}

.ml45 {
	margin-left: 45px !important;
}

.ml1em {
	margin-left: 1em !important;
}

.ml2em {
	margin-left: 2em !important;
}

.mr10 {
	margin-right: 10px !important;
}

.pr3 {
	padding-right: 3px !important;
}

.pt15 {
	padding-top: 15px !important;
}

.p-20 {
	padding: 20px;
}

.p-40 {
	padding: 40px;
}

.sp_R1em {
	padding: 0 1em 0 0;
}

.sp_L1em {
	padding: 0 0 0 1em;
}

.sp_L2em {
	padding: 0 0 0 2em;
}

.clear {
	clear: both;
}

.noline {
	text-decoration: none;
}

hr {
	border-top: dashed 1px #CCC;
	height: 1px;
	color: #FFFFFF;
	margin: 0 0 60px 0;
}

.line-marker {
	position: relative;
	padding: 0 .2em .1em;
}

.line-marker::after {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	width: 100%;
	height: 10px;
	background-color: #c3e650;
}

.head-marker:before {
	content: "■";
	color: #B20000;
}

.more {
	text-align: right;
	display: block;
	clear: both;
	margin-right: 5px;
}

.line-heigt01 {
	line-height: 1.5;
}

.line-heigt01 a {
	margin: 0 0 8px;
}

.marker {
	background: linear-gradient(rgba(255, 208, 207, 0), #FFD0CF);
	font-weight: bold;
	color: #333;
}

.marker2 {
	background: linear-gradient(rgba(253, 149, 53, 0), #fd9535);
	font-weight: bold;
	color: #333;
}

.pba {
	page-break-after: always;
}

.pbi {
	page-break-inside: avoid;
}

/* -------------------------------------------------- */
/* COMMON ------------------------------------------- */
/* -------------------------------------------------- */

/* COMMON - ul ---------------- */


.ul-cmn li {
	position: relative;
	margin: 0 0 .6em 1.8em;
}

.ul-cmn li::after,
.ul-cmn li::before {
	display: block;
	content: '';
	position: absolute;
}

.ul-cmn li::after {
	top: .25em;
	left: -1.4em;
	/* 位置 */
	width: 14px;
	height: 14px;
	background-color: #13683C;
	border-radius: 100%;
	/* 色とサイズ */
}

.ul-cmn li::before {
	z-index: 2;
	top: .625em;
	left: -1.15em;
	/* 位置 */
	width: 4px;
	height: 4px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	/* 色とサイズ */
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.ul-cmn-orange li {
	position: relative;
	margin: 0 0 .6em 1.8em;
}

.ul-cmn-orange li::after,
.ul-cmn-orange li::before {
	display: block;
	content: '';
	position: absolute;
}

.ul-cmn-orange li::after {
	top: .25em;
	left: -1.4em;
	/* 位置 */
	width: 14px;
	height: 14px;
	background-color: #D96523;
	border-radius: 100%;
	/* 色とサイズ */
}

.ul-cmn-orange li::before {
	z-index: 2;
	top: .625em;
	left: -1.15em;
	/* 位置 */
	width: 4px;
	height: 4px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	/* 色とサイズ */
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


.ul-cmn ol {
	list-style: decimal;
}

.ul-cmn ol li {
	background: none;
}

.ul-cmn-inline {
	list-style: none outside;
	margin: 1em 0 1em 0;
	padding: 0;
	overflow: hidden;
}

.ul-cmn-inline li {
	margin: 0 .5em .6em;
	line-height: 1.2;
	border: 2px solid #666;
	float: left;
	border-radius: 4px;
}

.ul-cmn-inline li a {
	display: block;
	padding: .4em .6em .2em;
	color: #333;
	text-decoration: none;
	background: #EEE;
}

.ul-cmn-inline li a:hover {
	background: #CCC;
	color: #FFF;
}

.ul-nml {
	list-style: none;
}

.ul-nml li {
	margin-bottom: .4em;
	padding: 1em;
}

.ul-nml li:nth-child(2n) {
	background-color: #fff;
}

.ul-nml li:nth-child(2n+1) {
	background-color: #F6F8F8;
}

.ul-check {}

.ul-check li {
	margin: 0 0 .8em 0;
	padding: 0 0 0 20px;
	background: url(../images/cmn/ul_check_bg.gif) no-repeat left 2px;
}

.ul-check2 li {
	margin: 0 0 1.2em 0;
	padding: 0 0 0 30px;
	background: url(../images/idx/idx_trouble_li_bg.gif) no-repeat left 2px;
}

/* COMMON - ol ---------------- */
.ol-number {
	margin: 0 0 0 1.7em;
	list-style: decimal outside;
}

.ol-number li {
	margin-bottom: .1em;
}

.ol-number li ul li {
	list-style: lower-latin outside !important;
	margin-left: 1em;
}

.ol-number li ul li ul li {
	list-style: lower-roman outside !important;
	margin-left: 1em;
}

@media screen and (max-width: 768px) {
	.ol-number div {
		float: none;
		margin: 0 auto 1em auto;
		width: 230px;
	}
}

.ol-bold {
	color: #900;
	font: italic normal bold 1em/1 Georgia, sans-serif;
	list-style: decimal outside;
}

.ol-bold li {
	margin: 0 0 1em 1.4em;
}

.ol-bold li .li-ttl {
	color: #333;
	font: normal normal bold 1em/160% Avenir, "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	border-bottom: 1px solid #C00;
}

.ol-bold li p {
	color: #333;
	font: normal normal normal 1em/160% Avenir, "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin: 0;
	padding: 0;
}

.ol-bold li span {
	color: #333;
	font: normal normal bold 1em/1 Avenir, "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* flex-box ---------------- */
.flex-box-wrap {
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
}

.flex-box {
	margin-right: 3.5%;
	margin-bottom: 3em;
	padding: 1em;
	width: 31%;
	background-color: #EEEEEE;
}

.flex-box:nth-child(3n) {
	margin-right: 0 !important;
}

.flex-box img {
	display: block;
	margin-bottom: 2em;
	width: 100%;
	height: auto;
}

.flex-box h2 {
	margin-bottom: 1em;
	font-size: 1.2em;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.flex-box-wrap {
		flex-direction: column;
	}

	.flex-box {
		width: 100%;
	}
}

/* COMMON - dl ---------------- */
.dl-cmn {
	border-bottom: 1px dotted #999;
	width: 100%;
	padding: 0;
	background: #F0EFEB;
	overflow: hidden;
}

.dl-cmn dt,
.dl-cmn dd {
	padding: .6em 1%;
	margin: 0;
	border-top: 1px dotted #999;
	display: inline-block;
}

.dl-cmn dt {
	width: 30%;
	float: left;
	clear: both;
}

.dl-cmn dd {
	width: 70%;
	background: #FFF;
	float: right;
}

@media screen and (max-width: 480px) {

	.dl-cmn dt,
	.dl-cmn dd {
		width: 100%;
	}
}

.dl-cmn_white {
	width: 100%;
	padding: 0;
	overflow: hidden;
}

.dl-cmn_white dt,
.dl-cmn_white dd {
	padding: .6em 1%;
	margin: 0;
	display: inline-block;
}

.dl-cmn_white dt {
	width: 30%;
	float: left;
	clear: both;
}

.dl-cmn_white dt img {
	border: 1px solid #ccc;
}

.dl-cmn_white dd {
	width: 70%;
	float: right;
}

@media screen and (max-width: 480px) {

	.dl-cmn_white dt,
	.dl-cmn_white dd {
		width: 100%;
	}
}

/* スマホ縦以外でページ幅の半分：スマホ縦は、ページ全幅 */
.dl-cmn-half {
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	border-left: 1px solid #000;
	display: inline-block;
	width: 468px;
	background: #E7E7E7;
}

.dl-cmn-half dt,
.dl-cmn-half dd {
	padding: .6em 10px;
	border-top: 1px solid #000;
	display: block;
	float: left;
}

.dl-cmn-half dt {
	width: 100px;
	clear: both;
}

.dl-cmn-half dd {
	width: 328px;
	background: #FFF;
}

@media screen and (max-width: 768px) {
	.dl-cmn-half {
		width: 49%;
	}

	.dl-cmn-half dt,
	.dl-cmn-half dd {
		padding: .6em 2%;
	}

	.dl-cmn-half dt {
		width: 24%;
	}

	.dl-cmn-half dd {
		width: 68%;
	}
}

@media screen and (max-width: 480px) {
	.dl-cmn-half {
		width: 300px;
	}

	.dl-cmn-half dt,
	.dl-cmn-half dd {
		padding: .6em 10px;
	}

	.dl-cmn-half dt {
		width: 60px;
	}

	.dl-cmn-half dd {
		width: 200px;
	}
}

/* width : PCの半幅px値に固定版 */
.dl-cmn-half-fix {
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	border-left: 1px solid #999;
	display: inline-block;
	width: 468px;
	background: #E7E7E7;
}

.dl-cmn-half-fix dt,
.dl-cmn-half-fix dd {
	padding: .6em 10px;
	border-top: 1px solid #999;
	display: block;
}

.dl-cmn-half-fix dt {
	width: 100px;
	clear: both;
	float: left;
}

.dl-cmn-half-fix dd {
	margin-left: 100px;
	background: #FFF;
}

.dl-cmn-half-fix-box {
	width: 468px;
	border: 1px solid #999;
	border-top: none;
	margin-top: -5px;
	padding: 14px 14px 1px 14px;
	background: #fff;
}

@media screen and (max-width: 768px) {
	.dl-cmn-half-fix {
		width: 100%;
	}

	.dl-cmn-half-fix dt,
	.dl-cmn-half-fix dd {
		padding: .6em 2%;
	}

	.dl-cmn-half-fix dt {
		width: 30%;
	}

	.dl-cmn-half-fix dd {
		margin-left: 30%;
	}

	.dl-cmn-half-fix-box {
		width: 100%;
		padding: 14px 2% 1px 2%;
	}
}

.dl-cmn-border {
	width: 100%;
}

.dl-cmn-border dt {
	margin: 2em 0 0 0;
	padding: 0;
	border-bottom: 1px solid #999;
	font-weight: bold;
}

.dl-cmn-border dd {
	margin: 0.5em 0;
}


/* table */
.cmn-table {
	width: 100%;
	border-collapse: collapse;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin: 0 auto;
	background: #FFF;
}

.cmn-table th {
	padding: 8px 3px 4px;
	border: 1px solid #ccc;
	box-shadow: 1px 1px 0 #FFF inset;
	font-weight: bold;
	text-align: center;
	background: #ccc;
	width: 15%;
}

.cmn-table th img {
	vertical-align: middle;
}

.cmn-table td {
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	/*width: auto; */
	padding: 4px 4px 2px;
}

.cmn-table tr .cmn-table-row {
	background-color: #FDF7D2;
}

.cmn-table th[scope="row"] {
	background-color: #F7F7F7;
	text-align: left;
	padding: 1em;
}

.cmn-table tr:nth-child(2n) {
	background-color: #f9f9f9;
}

.cmn-table caption {
	text-align: left;
	font-size: 1.25em;
	font-weight: 500;
	margin-bottom: 7px;
}


.table_fee {
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}

.table_fee td {
	border: solid 1px #ccc;
	padding: 0.75em 0.5em 0.75em 1.5em;
}

.table_fee th {
	border-bottom: 1px solid #ccc;
	padding: 0.75em 0.5em 0.75em 1.5em;
	border-right: 1px solid #ccc;
}

.table_fee img {
	border: 1px solid #ccc;
	width: 150px;
	margin: 0 auto;
}

.table_fee a {
	color: #333;
}

@media screen and (max-width: 480px) {
	.cmn-table th {
		width: 30%;
	}
}

/* COMMON - box ---------------- */
.cmn-box {
	background: #EEE;
	border: 1px dotted #999;
	padding: 1em;
}

.box-radius {
	border-radius: 6px;
}

.box-200 {
	width: 200px;
}

.box-300 {
	width: 300px;
}

.box-half {
	width: 450px;
}

.box-980 {
	width: 980px;
}

.box-bg-fff {
	background: #FFF;
}

.box-bg-eee {
	background: #EEE;
}

.box-bg-17 {
	background: #171719;
}

.box-bg-333 {
	background: #333;
}

.box-bg-LGreen {
	background: #f4ffe1;
}

.green-box {
	background-color: cadetblue;
	padding: 10px 5px 10px 10px;
}

.inner-box {
	background: #FFF;
	padding: 5px;
}

/* ul-box */
.ul-box,
.ul-box2,
.ul-2box {
	overflow: hidden;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.ul-box li,
.ul-box2 li {
	width: 31.63%;
}

.idx-voice .nbsp {
	border: none;
}

.ul-2box li {
	width: 50%;
}

.ul-box2 li img {
	border: 1px solid #ccc;
}

@media screen and (max-width: 680px) {

	.ul-box,
	.ul-box2,
	.ul-2box {
		width: 100%;
		display: block;
	}

	.ul-box li,
	.ul-box2 li,
	.ul-2box li {
		width: 98%;
		padding: 0;
		margin: 0 auto 30px;
		text-align: center;
	}
}

@media screen and (max-width: 768px) {
	.box-980 {
		width: 660px;
	}
}

@media screen and (max-width: 480px) {
	.box-half {
		width: 100%;
	}

	.cmn-box {
		width: 100%;
		padding: 4%;
	}

	.box-980 {
		width: 300px;
	}
}

.youtubePcTab {
	display: block;
}

@media screen and (max-width: 480px) {
	.youtubePcTab {
		display: none;
	}
}

/* FORM ---------------- */
fieldset {
	margin: 0 0 10px 0;
	padding: 0 20px 10px 20px;
	border: 1px solid #CCC;
}

legend {
	margin: 0;
	padding: 0.5em 1em;
	border: 1px solid #CCC;
	color: #FFF;
	font-size: 16px;
	background-color: #171719;
}

.label-ttl {
	margin: 1em 0 0.5em 0;
	border-bottom: 1px dashed #999;
	display: block;
}

input {
	margin: 0 0 0.7em 0;
	font-size: 14px;
	background-color: #F8F7F5;
	border: 1px solid #C3C3C3;
}

textarea {
	width: 95%;
	margin: 0 0 1em 0;
	border: 1px solid #999;
	background: #F8F7F5;
	font-size: 14px;
}

.btn-submit {
	padding: .4em 1em;
}

fieldset #email,
#email2 {
	width: 260px;
}

@media screen and (max-width: 480px) {
	fieldset {
		padding: 0 6px;
		width: 94%;
	}

	input,
	textarea {
		width: 90%;
	}
}


/*OTHER/BUTTON ---------------- */
.crcl-flat_btn {
	display: inline-block;
	padding: 7px 20px;
	border-radius: 25px;
	text-decoration: none;
	color: #614100;
	border: solid 1px #A0C040;
	font-size: 16px;
	background-color: #C0E080;
}

.crcl-flat_btn:hover {
	background-color: #F0F0F0;
	text-decoration: none;
}

.crcl-flat_btn:link,
.crcl-flat_btn:visited,
.crcl-flat_btn:active {
	color: #404020;
}


#ac-flat_btn .flat_btn-r10 {
	position: relative;
	display: inline-block;
	padding: 0.5em 1.5em 0.5em 0.75em;
	text-decoration: none;
	color: #FFF;
	background: #B50000;
	border-radius: 4px;
	box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
	font-weight: bold;
	font-size: 22px;
}

#ac-flat_btn .flat_btn-r10:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}


.comment-box-right,
.comment-box-left {
	position: relative;
	display: inline-block;
	margin: 0 0 1.5em 0;
	padding: 7px 10px !important;
	color: #333;
	font-size: 16px;
	background: #FFF;
	border: solid 3px #006766 !important;
	box-sizing: border-box;
	border-radius: 10px;
}

.comment-box-left:before {
	content: "";
	position: absolute;
	top: 25%;
	left: -24px;
	margin-top: -12px;
	border: 12px solid transparent;
	border-right: 12px solid #FFF;
	z-index: 2;
}

.comment-box-left:after {
	content: "";
	position: absolute;
	top: 25%;
	left: -30px;
	margin-top: -14px;
	border: 14px solid transparent;
	border-right: 14px solid #006766;
	z-index: 1;
}

.comment-box-right:before {
	content: "";
	position: absolute;
	top: 25%;
	right: -24px;
	margin-top: -12px;
	border: 12px solid transparent;
	border-left: 12px solid #FFF;
	z-index: 2;
}

.comment-box-right:after {
	content: "";
	position: absolute;
	top: 25%;
	right: -30px;
	margin-top: -14px;
	border: 14px solid transparent;
	border-left: 14px solid #006766;
	z-index: 1;
}

@media screen and (max-width: 480px) {

	.comment-box-right,
	.comment-box-left {
		border: none;
	}

	.comment-box-left:before,
	.comment-box-left:after,
	.comment-box-right:before,
	.comment-box-right:after {
		content: none;
	}
}

.choice-box {
	border: 3px solid #fd9535;
	border-radius: 6px;
	margin: 2em 0;
	padding: 2em 2em 0 !important;
	position: relative;
}

.choice-box::before {
	background-color: #fff;
	color: #F90;
	content: "こんな方にオススメ";
	font-weight: bold;
	left: 1em;
	padding: 0 .5em;
	position: absolute;
	top: -1em;
}


/*LINK ---------------- */
.cmn-column-block a {
	color: #13683c;
}

/* -------------------------------------------------- */
/* PAGES -------------------------------------------- */
/* -------------------------------------------------- */

/* PAGES - INDEX ---------------- */
.idx_ttl {
	width: 100%;
	padding: 0 1em;
	text-align: center;
	margin: 40px 0;
}

.idx_ttl-mb20 {
	width: 100%;
	padding: 0 1em;
	text-align: center;
	margin: 40px 0 20px;
}

.idx_ttl-mt0 {
	width: 100%;
	padding: 0 1em;
	text-align: center;
	margin: 0px 0 40px;
}

@media screen and (max-width: 480px) {
	.idx_ttl {
		margin: 20px 0;
	}

	.idx_ttl-mb20 {
		margin: 20px 0 10px;
	}

	.idx_ttl-mt0 {
		margin: 0px 0 20px;
	}
}

#top-box {
	width: 980px;
	background: #FFF;
	border: 1px #f3f3f3 solid;
	padding: 40px 20px 20px 40px;
	box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.1)
}

#top-box p {
	width: 65%;
}

@media screen and (max-width: 1080px) {
	#top-box {
		width: 90%;
		padding: 40px 3% 20px;
	}

	#top-box p {
		width: 100%;
	}

	#top-box .img-w5 {
		width: 50%;
	}
}

@media screen and (max-width: 760px) {
	#top-box .img-w5 {
		width: auto;
	}
}

@media screen and (max-width: 480px) {
	#top-box {
		width: 100%;
	}

	#top-box .right-img-300 {
		width: auto;
	}
}


/* ul-3box */
.ul-3box {
	overflow: hidden;
	width: 980px;
}

.ul-3box li {
	width: 310px;
	margin-right: 25px;
	float: left;
	display: inline-block;
}

.ul-3box li:last-child {
	margin-right: 0;
}

@media screen and (max-width: 768px) {
	.ul-3box {
		width: 96%;
		margin: 0 auto;
	}

	.ul-3box li:nth-child(2) {
		margin-right: 0;
	}
}

@media screen and (max-width: 680px) {
	.ul-3box {
		width: 310px;
	}

	.ul-3box li {
		margin-right: 0;
		float: none;
	}
}

.idx-voice li {
	border: 1px solid #c5c5c5;
	padding: 19px 19px 5px;
}


.idx-service-txt:before {
	content: "■";
	color: #B20000;
	padding: 0 4px 0 0;
	text-align: left;
}


/* idx-trouble */
#idx-trouble {
	width: 980px;
	margin: 20px auto 0;
	padding-bottom: 70px;
	background: url(../images/idx/idx_trouble_bg.png) no-repeat center bottom;
}

#idx-trouble-inner {
	width: 980px;
	margin: 0 auto;
	background-image: url(../images/idx/t_box_t.gif), url(../images/idx/t_box_b.gif), url(../images/idx/t_box_m.gif);
	background-position: top, bottom, center;
	background-repeat: no-repeat, no-repeat, repeat-y;
	background-size: 100%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}

#idx-trouble-inner img {
	margin: -15px 0 0;
	padding-bottom: 10px;
	width: 300px;
}

#idx-trouble ul {
	float: right;
	width: 65%;
	margin-top: 50px;
}

#idx-trouble li {
	background: url(../images/idx/idx_trouble_li_bg.gif) no-repeat left 5px;
	padding: 0 0 0 30px;
	font-size: 21px;
	font-weight: 700;
	margin-bottom: .6em;
}

@media screen and (max-width: 800px) {
	#idx-trouble {
		width: 100%;
	}

	#idx-trouble-inner {
		width: 96%;
	}

	#idx-trouble ul {
		margin-top: 25px;
		font-size: 18px;
	}

	#idx-trouble li {
		font-size: 16px;
	}

	#idx-trouble-inner img {
		width: 30vw;
	}
}

@media screen and (max-width: 600px) {
	#idx-trouble {
		background: none;
	}

	#idx-trouble-inner img {
		display: none;
	}

	#idx-trouble ul {
		margin: 20px;
		width: 100%;
		margin: 0 auto;
	}
}

/* idx-shop */
#idx-shop {
	background: url(../images/idx/idx_shop_bg.gif) repeat-x left bottom;
	overflow: hidden;
	margin-top: 20px;
}

#idx-shop-inner {
	background: url(../images/idx/idx_shop_bg.png) no-repeat right bottom;
	min-height: 325px;
	width: 1110px;
}

.txt-area {
	width: 830px;
	margin: 35px 0 0 0;
	text-align: center;
}

@media screen and (max-width: 1080px) {
	#idx-shop-inner {
		width: 90vw;
		background: none;
	}

	.txt-area {
		width: auto;
	}
}

@media screen and (max-width: 480px) {
	#idx-shop {
		background-size: 26%;
	}

	#idx-shop-inner {
		background-size: 46%;
		min-height: 220px;
	}
}

/* idx-reason */
.idx-reason {
	width: 1420px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
	justify-content: space-around;
}


@media screen and (max-width:1420px) {
	.idx-reason {
		width: 100vw;
		margin: 0 auto;
	}

	.idx-reason div:nth-child(2n+1) {}
}

@media screen and (max-width: 480px) {
	.idx-reason {
		display: block;
	}

	.idx-reason div {
		width: 90vw;
		margin: 0 auto 30px;
		text-align: center;
	}

	.idx-reason img {}
}

/* idx-what */
#what-area {
	width: 1280px;
	margin: 0 auto;
	padding: 0;
}

#what-1,
#what-3 {
	padding-left: 50%;
	min-height: 420px;
}

#what-2 {
	padding-right: 50%;
	min-height: 420px;
}

#what-area .what-box {
	padding: 8% 10%;
}

#what-area .what-ttl {
	font-size: 28px;
	color: #13683c;
	font-weight: bold;
}

#what-1 {
	background: url(../images/idx/idx_nlp_bg.jpg) no-repeat top left;
}

#what-2 {
	background: url(../images/idx/idx_time_bg.jpg) no-repeat top right;
}

#what-3 {
	background: url(../images/idx/idx_coah_bg.jpg) no-repeat top left;
}

@media screen and (max-width:1280px) {
	#what-area {
		width: 100vw;
		margin: 0 auto;
	}

	#what-1,
	#what-2,
	#what-3 {
		background-size: 50%;
	}
}

@media screen and (max-width: 480px) {
	#what-area {
		width: 100%;
	}

	.what-box {
		padding: 1em;
	}

	#what-1,
	#what-2,
	#what-3 {
		background: none;
		padding: 0;
	}
}

.ul-3box-white {
	overflow: hidden;
	width: 980px;
}

.ul-3box-white li {
	width: 290px;
	margin-right: 25px;
	margin-bottom: 10px;
	float: left;
	background: #FFF;
	padding: 10px;
	display: inline-block;
}

.ul-3box-white li:last-child {
	margin-right: 0;
}

@media screen and (max-width: 768px) {
	.ul-3box-white {
		width: 96%;
		margin: 0 auto;
	}

	.ul-3box-white li:nth-child(2) {
		margin-right: 0;
	}
}

@media screen and (max-width: 680px) {
	.ul-3box-white {
		width: 310px;
	}

	.ul-3box-white li {
		margin-right: 0;
		float: none;
	}
}


#idx-voice-box {
	background: #DFD3B6;
	padding: 10px;
	margin-bottom: 20px;
}

.idx-voice-box-inner {
	background: #FFF;
	padding: 18px;
}

.idx-voice-box-inner a {
	text-decoration: none;
}

.idx-voice-dl {
	width: 280px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #E7E7E7;
}

.idx-voice-dl dt,
.idx-voice-dl dd {
	display: block;
	border-top: 1px solid #ccc;
	padding: 4px;
	font-weight: bold;
}

.idx-voice-dl dt {
	text-align: center;
	width: 80px;
	float: left;
}

.idx-voice-dl dd {
	background: #FFF;
	margin-left: 80px;
}

.idx-voice-dl dd:after {
	content: '';
	display: block;
	clear: both;
}

@media screen and (max-width: 768px) {
	.idx-voice-dl {
		width: 100%;
	}

	.idx-voice-dl dt,
	.idx-voice-dl dd {
		padding: .6em 2%;
	}

	.idx-voice-dl dt {
		width: 28%;
	}

	.idx-voice-dl dd {
		margin-left: 28%;
	}
}

@media screen and (max-width: 580px) {}


/* message */
#idx-message-bg {
	width: 1180px;
	margin: 0 auto;
	padding: 0 1em;
}

#idx-message-ttl {
	text-align: center;
}

#message-img-bg {
	background: url(../images/idx/idx_message_img.png) no-repeat right top;
	width: 1180px;
	height: auto;
	overflow: hidden;
	margin: 0 auto;
}

#idx-message-inner {
	width: 680px;
	margin: 20px 0 0 0;
}

.message-ttl {
	font-size: 28px !important;
	font-weight: bold;
}

@media screen and (max-width: 980px) {
	#idx-message-bg {
		width: 100vw;
	}

	#idx-message-ttl {
		padding: 0;
	}

	#message-img-bg {
		width: 100vw;
		background-size: 50vw;
	}

	#idx-message-inner {
		width: 60vw;
	}
}

@media screen and (max-width: 768px) {}

@media screen and (max-width: 480px) {
	#message-img-bg {
		background: none;
	}

	#idx-message-inner {
		width: 95vw;
	}

	#idx-message-inner img {
		max-width: 300px;
	}
}


.sub-ttl {
	position: relative;
	display: inline-block;
	padding: 0 95px;
}

.sub-ttl:before,
.sub-ttl:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 80px;
	height: 1px;
	background-color: black;
}

.sub-ttl:before {
	left: 0;
}

.sub-ttl:after {
	right: 0;
}

@media screen and (max-width: 480px) {
	.sub-ttl {
		width: auto;
		padding: 0
	}

	.sub-ttl:before,
	.sub-ttl:after {
		display: none;
	}
}

/* -------------------------------------------------- */
/* PAGES - OTHERS ----------------------------------- */
/* -------------------------------------------------- */



/* PAGES - REASON ---------------- */
.sub-reason {
	display: flex;
	justify-content: space-between;
	margin-bottom: 0px;
	padding: 1em;
}

.sub-reason:nth-child(odd) {
	flex-direction: row-reverse;
}

.sub-reason:nth-child(2n) {
	background-color: #eee;
}

.sub-reason:nth-child(2n+1) {
	background-color: #fff;
}

.flex-box-text {
	width: 15%;
}

.sub-reason:nth-child(2n) p {
	padding-left: 1em;
}

.sub-reason:nth-child(2n+1) p {
	padding-right: .5em;
}

.flex-box-img {
	width: 100%;
	margin-bottom: 0 !important;
}

.flex-box-img img {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 0 !important;
}

@media screen and (max-width: 680px) {

	.sub-reason,
	.sub-reason:nth-child(odd) {
		flex-direction: column;
	}

	.flex-box-text,
	.flex-box-img {
		width: 100%;
	}

	.flex-box-img img {
		margin-bottom: 1em !important;
	}

	.flex-box-text {
		padding: 3em;
	}
}


/* PAGES - PROFILE ---------------- */
.certificate .col {
	padding: 0 1em;
	margin-bottom: 15px;
}

.certificate p {
	width: 95%;
}

@media screen and (max-width: 480px) {
	.certificate p {
		width: 100%;
	}
}

/* PAGES - VOICE ---------------- */
.voice-ttl {
	font-weight: bold;
	font-size: 1.2em;
	border-bottom: 1px solid #333;
}

.voice-name {
	margin: 0 0 2em 0;
	padding: 0 0 0 14px;
	font-weight: bold;
	background: url(../images/voice/voice_name_bg.gif) no-repeat 0 6px;
}

/* PAGES - INTERVIEW ---------------- */
.int-ttl {
	position: relative;
	display: inline-block;
	padding: 0 55px;
	clear: both;
}

.int-ttl:before,
.int-ttl:after {
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 45px;
	height: 4px;
	border-top: solid 1px black;
	border-bottom: solid 1px black;
}

.int-ttl:before {
	left: 0;
}

.int-ttl:after {
	right: 0;
}

.int-q {
	padding: .5em .75em;
	margin-top: 40px;
	background-color: #f6f6f6;
}

.int-q-left {
	position: relative;
	display: inline-block;
	margin: 1.5em 0 1.5em 15px;
	padding: 7px 10px;
	min-width: 120px;
	max-width: 100%;
	color: #555;
	font-size: 16px;
	background: #f6f6f6;
}

.int-q-left:before {
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #f6f6f6;
}

.int-q-left p {
	margin: 0;
	padding: 0;
}

.int-img {
	width: 300px;
	float: right;
	padding-left: 20px;
}

.int-img img {
	text-align: right;
	margin-bottom: 10px;
}

.int-img span {
	font-size: .8em;
}

.author:before {
	width: 50px;
	height: 60px;
	margin-right: 20px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	border-radius: 50%;
	border: 1px solid #ddd;
	content: '';
	display: inline-block;
	background-image: url(../images/voice/voice-img_02.JPG);
	background-size: contain;
	vertical-align: bottom;
}

@media screen and (max-width: 480px) {
	.int-img {
		float: none;
		padding-left: 0;
		margin-bottom: 10px;
	}
}


/* PAGES - FAQ ---------------- */
.faq-q {
	background: url(../images/faq/faq_q.gif) no-repeat top left;
	padding: 7px 0 15px 50px;
	min-height: 32px;
	font-weight: bold;
	font-size: 1.2em;
	color: #000;
}

.faq-a {
	background: url(../images/faq/faq_a.gif) no-repeat;
	padding: 0 0 20px 50px;
	min-height: 32px;
}

@media screen and (max-width: 480px) {}


/* PAGES - WORKS ---------------- */
.work-box {
	display: block;
	margin: 0 0 60px;
	padding: 0 0 30px 0;
	border-bottom: dashed 1px #CCC;
}

.work-box:last-child {
	border: none;
}

.work-caption {
	font-size: .95em;
	color: #666;
	margin: 0 0 20px;
	text-align: center;
}

.work-ttl {
	font-size: 1.5em;
	font-weight: bold;
	border-bottom: 4px double #333;
}

.thumbnail {
	display: block;
	padding: 4px;
	margin-bottom: 20px;
	line-height: 1.42857;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 4px;
	-webkit-transition: border 0.2s ease-in-out;
	-o-transition: border 0.2s ease-in-out;
	transition: border 0.2s ease-in-out;
}

.thumbnail > img,
.thumbnail a > img {
	display: block;
	max-width: 100%;
	height: auto;
	margin-left: auto;
	margin-right: auto;
}

.thumbnail .caption {
	padding: 9px;
	color: #333333;
}

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
	border-color: #337ab7;
}

.dl-works {
	width: 630px;
	margin-bottom: 40px;
	float: left;
	overflow: hidden;
	border-bottom: 1px dotted #999;
	display: inline-block;
	background: #F0EFEB;
}

.dl-works dt,
.dl-works dd {
	padding: .6em 10px;
	border-top: 1px dotted #999;
	display: block;
	float: left;
}

.dl-works dt {
	width: 180px;
	clear: both;
}

.dl-works dd {
	width: 410px;
	background: #FFF;
}

@media screen and (max-width: 768px) {
	.dl-works {
		width: 100%;
	}

	.dl-works dt,
	.dl-works dd {
		padding: .6em 2%;
	}

	.dl-works dt {
		width: 24%;
	}

	.dl-works dd {
		width: 68%;
	}
}

@media screen and (max-width: 600px) {
	.dl-works {
		width: 100%;
	}

	.dl-works dt,
	.dl-works dd {
		padding: .6em 2%;
		width: 96%;
	}
}


/* PAGES - ACCESS ---------------- */
#ac_1 p,
#ac_2 p,
#ac_3 p {
	width: 95%;
	background:
}

#ac_1 p:after,
#ac_2 p:after,
#ac_3 p:after {
	content: url(../images/cmn/arrow.gif);
	display: block;
	text-align: center;
	padding-top: 5px;
}

#ac_1 p:last-child:after,
#ac_2 p:last-child:after,
#ac_3 p:last-child:after {
	content: none;
}

@media screen and (max-width: 480px) {

	#ac_1,
	#ac_2,
	#ac_3 {
		width: 100%;
		height: auto;
	}

	#ac_1 p,
	#ac_2 p,
	#ac_3 p {
		width: 100%;
	}
}

.map-box {
	width: 100%;
	height: 450px;
}

@media screen and (max-width: 768px) {
	.map-box {
		width: 84%;
		margin: 0 8%;
	}
}

@media screen and (max-width: 480px) {
	.map-box {
		width: 300px;
		height: 300px;
	}
}


/* PAGES - SERVICE ---------------- */
.icon-service img {
	margin: 5px !important;
}

.menu01-block {
	background: linear-gradient(rgba(19, 104, 60, .8), rgba(35, 126, 79, .8));
	background-size: cover;
	padding: 15px 5px 15px 15px;
	position: relative;
	clear: both;
}

.menu01-block .inner-box {
	background: #FFF;
	position: absolute;
	z-index: 1;
	height: 86px;
}

#service_1 .inner-box,
#service_3 .inner-box,
#service_5 .inner-box,
#service_4-1 .inner-box {
	margin: 15px 0 0 15px;
	width: 52%;
}

#service_2 .inner-box,
#service_4 .inner-box,
#service_5-1 .inner-box {
	margin: 15px 0 0 15px;
	width: 93%;
}

.menu01-block .inner-box img {
	position: absolute;
	z-index: 2;
	margin: -18px 0 0 -20px;
}

.menu01-block .inner-box p {
	margin-top: .6em;
	font-size: .95em !important;
}

@media screen and (max-width: 680px),
print {
	.menu01-block {
		height: 440px;
	}

	.menu01-block .inner-box {
		top: 260px;
		height: auto;
	}

	#service_1 .inner-box,
	#service_3 .inner-box,
	#service_5 .inner-box,
	#service_4-1 .inner-box {
		width: 84%;
		margin-top: 25px;
	}

	#service_2 .inner-box,
	#service_4 .inner-box,
	#service_5-1 .inner-box {
		width: 90%;
	}

	.menu01-block .inner-box img {
		position: static;
	}
}

@media screen and (min-width: 601px) and (max-width: 680px) {
	.menu01-block {
		height: 240px;
	}

	.menu01-block .inner-box {
		top: 80px;
		height: auto;
	}

	#service_1 .inner-box,
	#service_3 .inner-box,
	#service_5 .inner-box,
	#service_4-1 .inner-box {
		width: 50%;
		margin-top: 25px;
	}
}

.table_service {
	table-layout: fixed;
	width: 100%;
	border-collapse: collapse;
	border-left: 1px solid #ccc;
	border-top: 1px solid #ccc;
	margin: 0 auto 20px;
	clear: both;
}

.table_service thead th {
	text-align: center;
}

.table_service th {
	border: 1px solid #ccc;
	background: #F9F9F9;
	padding: 5px;
}

.table_service td,
.service-thumbnail {
	border-bottom: 1px solid #ccc;
	padding: 5px 10px;
	text-align: center;
	background: #FFF;
}

.table_service tbody img {
	width: 150px;
}

.table_service caption {
	text-align: left;
	font-size: 1.25em;
	font-weight: bold;
}

@media screen and (max-width: 480px) {
	.table_service {
		width: 100%;
		border-collapse: collapse;
		margin: 15px auto 10px;
	}

	.table_service td {
		border: none;
		text-align: center;
		background: none;
	}

	.table_service thead {
		display: none;
	}

	.table_service tbody tr {
		display: block;
		margin-bottom: 2em;
	}

	.table_service tbody td {
		display: list-item;
		list-style: none;
		border: none;
		margin-left: 1em;
		background: none;
	}

	.table_service tbody th {
		display: block;
		color: #666;
		text-align: center;
		background: #fff;
	}
}

.service-ttl {
	font-size: 1.35rem !important;
	color: #13683c;
	font-weight: bold;
}
