@charset 'UTF-8';
/*=============================================================
 common.css
=============================================================*/
/*---------------------------------------------
	base
---------------------------------------------*/
/* Contents
----------------------------------------------- */
html {
	overflow: auto;
	font-size: 10px;
}
body {
	font-size: 14px;
	line-height: 1;
	color: #000;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-family: "Noto Sans Japanese", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", sans-serif;
	font-weight: normal;
	letter-spacing: 0.08em;
}
@media only screen and (min-width: 769px) {
	body {
		min-width: 930px;
		overflow: hidden;
	}
}
@media only screen and (max-width: 768px) {
	body {
	font-size: 14px;
	}
}
a {
	color: inherit;
	text-decoration: none;
	transition: all 0.4s;
}
@media only screen and (min-width: 769px) {
	a[href^="tel:"] {
		cursor: default;
		pointer-events: none;
	}
}
a:hover {
}
img {
	width: auto;
	height: auto;
	vertical-align: bottom;
}
@media only screen and (max-width: 768px) {
	img {
		width: 100%;
		height: auto;
	}
}

#main {
}

@media only screen and (min-width: 769px) {
	.pc_innner01 {
		width: 930px;
		margin: 0 auto;
	}
}
@media only screen and (max-width: 768px) {
	.smp_innner01 {
		width: 95%;
		margin: 0 auto;
	}
}
@media only screen and (min-width: 769px) {
	.pc_hdn {
		display: none !important;
	}
}
@media only screen and (max-width: 768px) {
	.smp_hdn {
		display: none !important;
	}
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
.relative {
	position: relative;
}
.absolute {
	position: absolute;
}
.bold {
	font-weight: bold;
}
.underline {
	text-decoration: underline;
}
.fl {
	display:-webkit-box;
	display:-moz-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
}
/* 均等割付 */
.fl-jst {
	-webkit-box-pack:justify;
	-moz-box-pack:justify;
	-webkit-flex-pack:justify;
	-moz-flex-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	-moz-justify-content:space-between;
	justify-content:space-between;
}
/* 均等割付(space-around) */
.fl-around {
	-webkit-box-pack:justify;
	-moz-box-pack:justify;
	-webkit-flex-pack:justify;
	-moz-flex-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-around;
	-moz-justify-content:space-around;
	justify-content:space-around;
}

/* 中央寄せ */
.fl-cen {
	-webkit-box-pack:center;
	-moz-box-pack:center;
	-webkit-flex-pack:center;
	-moz-flex-pack:center;
	-ms-flex-pack:center;
	-webkit-justify-content:center;
	-moz-justify-content:center;
	justify-content:center;
}
/* 折り返し */
.fl-wrap {
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
/* Javascript
----------------------------------------------- */
.overlay {
	display: none;
	position: fixed;
	z-index: 3;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: #000;
	opacity: 0.5;
}
.is-fixed {
	position: fixed!important;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
}
.is-active {
	display: block!important;
}
#js-btn-menu {
	display: block;
	position: absolute;
	top: 30px;
	right: 12px;
	z-index: 10;
}
#gheader .naviArea {
	display: none;
	position: absolute;
	z-index: 10;
	background-color: #fff;
}
#gheader .drawer-open + .naviArea {
	display: block;
}
/* drawer
-------------------------------------------------------------------*/
.drawer-hamburger {
	position: fixed;
	z-index: 104;
	top: 13px;
	right: 12px;
	display: block;
	box-sizing: content-box;
	width: 2.4em;
	height: 2.8em;
	-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	border: 0;
	outline: 0;
}
.drawer-hamburger:hover {
	cursor: pointer;
	background-color: transparent;
}
.drawer-hamburger:hover .drawer-hamburger-icon,
.drawer-hamburger:hover .drawer-hamburger-icon:before,
.drawer-hamburger:hover .drawer-hamburger-icon:after { background-color: #e02c0e; }


.drawer-hamburger-icon {
	position: relative;
	display: block;
	margin-top: 3px;
}
.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	width: 100%;
	height: 2px;
	-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	background-color: #e02c0e;
}
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
	position: absolute;
	top: -10px;
	left: 0;
	content: ' ';
}
.drawer-hamburger-icon:after {
	top: 10px;
}
.drawer-open .drawer-hamburger-icon {
	background-color: transparent;
}
.drawer-open:hover .drawer-hamburger-icon {
	background-color: transparent;
}
.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
	top: 0;
}
.drawer-open .drawer-hamburger-icon:before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.drawer-open .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
/* Common class
----------------------------------------------- */
.opa07:hover {
	opacity: 0.7;
}
.opa05:hover {
	opacity: 0.5;
}
.bgGray {
	background-color: #ececeb;
}
.arrow01 {
	text-align: center;
}
.arrow01 img {
	width: 69px;
}
.cmnBtn01 a {
	display: block;
	width: 298px;
	padding: 11px 0 13px;
	box-sizing: border-box;
	border: 3px solid #e02c0e;
	margin: 0 auto;
	background-color: #e02c0e;
	color: #fff;
	font-size: 16px;
	text-align: center;
	letter-spacing: 0.15em;
}
.cmnBtn01 a:before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 14px;
	margin-right: 5px;
	background: url('../img/top/arrow04.png') no-repeat;
	background-size: contain;
	vertical-align: -7%;
	transition: all 0.4s;
}
.cmnBtn01 a:hover {
	border: 3px solid #e02c0e;
	color: #e02c0e;
	background-color: #fff;
}
.cmnBtn01 a:hover:before {
	background: url('../img/top/arrow04_hov.png') no-repeat;
	background-size: contain;
}
@media only screen and (max-width: 768px) {
	.cmnBtn01 a {
		padding: 12px 0 12px;
		width: 90%;
	}
}
.cmnHr01 {
	margin: 0;
	border: none;
	height: 1px;
	background-color: #000;
}
.cmnSmpTtl01 {
	position: relative;
	display: block;
	background:linear-gradient(0deg,#646464 0%,#646464 50%,#757575 50%,#757575 100%);
	text-align: center;
	padding: 9px 0 11px;
	font-size: 17px;
	color: #fff;
}
.cmnSmpTtl01:before {
	content: '';
	position: absolute;
	top: 0;
	left: -2.5vw;
	display: block;
	width: 2.5vw;
	height: 100%;
	background:linear-gradient(0deg,#bf250c 0%,#bf250c 50%,#e02c0e 50%,#e02c0e 100%);
}
.cmnSmpTtl01:after {
	content: '';
	position: absolute;
	top: 0;
	right: -2.5vw;
	display: block;
	width: 2.5vw;
	height: 100%;
	background:linear-gradient(0deg,#bf250c 0%,#bf250c 50%,#e02c0e 50%,#e02c0e 100%);
}

/*---------------------------------------------
	contents
---------------------------------------------*/
/* #gheader
----------------------------------------------- */
#gheader {
}
/* .firstArea */
#gheader .firstArea {
	position: relative;
	width: 100%;
	z-index: 10;
	padding-bottom: 32px;
	background-color: #fff;
}
#gheader .siteTtl {
	padding-top: 27px;
	float: left;
}
#gheader .subList {
	float: right;
	text-align: right;
	font-size: 0;
	letter-spacing: 0;
}
#gheader .subList li {
	display: inline-block;
	font-size: 14px;
	border-right: 1px solid #000;
	padding: 38px 18px 0 18px;
}
#gheader .subList li:last-child {
	border-right: 0;
	padding: 38px 0 0 18px;
}
#gheader .subList li a:hover {
	text-decoration: underline;
}
/* .secondArea */
#gheader .secondArea {
	background-color: #e02c0e;
	padding: 17px 0 18px;
}
#gheader .secondArea .introTxt {
	float: left;
	color: #fff;
	font-size: 14px;
	line-height: 2.6;
	letter-spacing: 0.03em;
}
#gheader .secondArea .contactArea {
	float: right;
	letter-spacing: 0.05em;
}
#gheader .secondArea .contactAreaTxt {
	text-align: right;
	padding: 8px 0 13px;
}
#gheader .secondArea .telList {
	padding-bottom: 13px;
}
#gheader .secondArea .telList li {
	display: table;
}
#gheader .secondArea .telList a {
	display: table-cell;
	vertical-align: middle;
	font-size: 21px;
	padding: 5px 12px 5px 0;
	letter-spacing: 0.03em;
	color: #fff;
}
#gheader .secondArea .telList a:before {
	display: inline-block;
	content: '';
	width: 14px;
	height: 18px;
	margin-right: 4px;
	background: url(../img/top/icon_tel02.png) no-repeat;
	background-size: contain;
	vertical-align: -5%;
}
#gheader .secondArea .telListTtl {
	display: table-cell;
	vertical-align: middle;
}
#gheader .secondArea .telListTtlIn {
	display: inline-block;
	border: 2px solid #000;
	padding: 2px 4px 3px;
}
#gheader .secondArea .west {
	padding-right: 25px;
}
#gheader .secondArea .east .telListTtlIn {
/*	background-color: #000;
	color: #e02c0e;*/
}
#gheader .secondArea .contactAreaMail {
	text-align: right;
}
#gheader .secondArea .contactAreaMail a {
	font-size: 15px;
}
#gheader .secondArea .contactAreaMail a:before {
	display: inline-block;
	content: '';
	width: 18px;
	height: 13px;
	margin-right: 5px;
	background: url(../img/top/ico_mail01.png) no-repeat;
	background-size: contain;
	vertical-align: bottom;
}
@media only screen and (max-width: 768px) {
	#gheader {
	}
	/* .firstArea */
	#gheader .firstArea {
		position: fixed;
		top:0;
		padding-bottom: 20px;
		border-bottom: 3px solid #e02c0e;
	}
	#gheader .siteTtl {
		padding-top: 20px;
		padding-left: 12px;
		float: none;
		width: 280px;
	}
	/* .secondArea */
	#gheader .secondArea {
		background-color: #e02c0e;
		padding: 86px 0 18px;
	}
	#gheader .secondArea .introTxt {
		float: none;
		color: #fff;
		font-size: 13px;
		line-height: 1.7;
		letter-spacing: 0.03em;
		padding-bottom: 10px;
	}
	#gheader .secondArea .contactArea {
		float: none;
		letter-spacing: 0.05em;
	}
	#gheader .secondArea .contactAreaTxt {
		text-align: left;
		padding: 8px 0 13px;
	}
	#gheader .secondArea .contactAreaBox {
		text-align: center;
	}
	#gheader .secondArea .contactAreaBoxIn {
		display: inline-block;
	}
	#gheader .secondArea .telList {
		display: block;
		padding-bottom: 13px;
	}
	#gheader .secondArea .telList li {
		display: table;
	}
	#gheader .secondArea .telList a {
		display: table-cell;
		vertical-align: middle;
		font-size: 21px;
		padding: 5px 12px 5px 0;
		letter-spacing: 0.03em;
	}
	#gheader .secondArea .telList a:before {
		display: inline-block;
		width: 14px;
		height: 18px;
		margin-right: 4px;
		background-size: contain;
		vertical-align: -5%;
	}
	#gheader .secondArea .telListTtl {
		display: table-cell;
		vertical-align: middle;
	}
	#gheader .secondArea .telListTtlIn {
		display: inline-block;
		border: 2px solid #000;
		padding: 2px 4px 3px;
	}
	#gheader .secondArea .west {
		padding: 0 0 5px 0;
	}
	#gheader .secondArea .contactAreaMail {
		text-align: left;
	}
	#gheader .secondArea .contactAreaMail a {
		font-size: 15px;
	}
	#gheader .secondArea .contactAreaMail a:before {
		display: inline-block;
		content: '';
		width: 18px;
		height: 13px;
		margin-right: 5px;
		background: url(../img/top/ico_mail01.png) no-repeat;
		background-size: contain;
		vertical-align: bottom;
	}
}
@media only screen and (max-width: 360px) {
	#gheader .siteTtl {
		padding-top: 20px;
		width: 240px;
	}
}
/* #gnavi
----------------------------------------------- */
.gnaviWrap {
	position: absolute;
	left: 0;
	right: 0;
	width: 100%;
	border-bottom: 3px solid transparent;
}
.gnaviWrap.is-fixed {
	background-color: #fff;
	border-bottom: 3px solid #e02c0e;
	height: 40px;
}
#gnavi .gnaviList li {
	float: left;
	background-color: rgba(255,255,255,0.7);

}
#gnavi .gnaviList li a {
	display: block;
	padding: 9px 0 10px;
}
#gnavi .gnaviList li a:hover {
	background-color: rgba(255,255,255,1);
}
#gnavi .gnaviList li a span {
	position: relative;
	display: block;
	font-size: 13px;
	width: 155px;
	box-sizing: border-box;
	padding: 4px 12px 4px 12px;
	border-right: 1px solid #e02c0e;
	letter-spacing: 0.01em;
}
#gnavi .gnaviList li a span:before {
	position: absolute;
	right: 11px;
	top: 50%;
	margin-top: -3px;
	content: '';
	width: 11px;
	height: 6px;
	background: url('../img/top/arrow06.png') no-repeat;
	background-size: contain;
}
#gnavi .gnaviList li:last-child a span {
	border-right: none;
}
#gnavi .gnaviList li:hover a span:before {
	background: url('../img/top/arrow06_hov.png') no-repeat;
	background-size: contain;
}
#gnavi .gnaviList li:last-child a {
	border-right: none;
}

@media only screen and (max-width: 768px) {
	.gnaviWrap.is-fixed {
		height: auto;
	}
}

/* #gnavi_smp
----------------------------------------------- */
#gnavi_smp .gnaviList {
	margin-top: 20px;
	background-color: rgba(255,255,255,1);
	border-top: 3px solid #e02c0e;
}
#gnavi_smp .gnaviList li {
	float: left;
	width: 100%;
}
#gnavi_smp .gnaviList li a {
	display: block;
	padding: 0;
}
#gnavi_smp .gnaviList li a span {
	position: relative;
	display: block;
	font-size: 14px;
	width: 100%;
	box-sizing: border-box;
	padding: 16px 12px 16px 12px;
	border-bottom: 1px solid #e02c0e;
	letter-spacing: 0.01em;
}
#gnavi_smp .gnaviList li a span:before {
	position: absolute;
	right: 11px;
	top: 50%;
	margin-top: -3px;
	content: '';
	width: 11px;
	height: 6px;
	background: url('../img/top/arrow06_hov.png') no-repeat;
	background-size: contain;
}
#gnavi_smp .gnaviList li:last-child a {
	border-right: none;
}
/* .subList_smp
----------------------------------------------- */
#gheader .subList_smp {
	padding: 20px;
	flex-wrap:wrap;
}
#gheader .subList_smp li {
}
#gheader .subList_smp li a {
	font-size: 13px;
	display: inline-block;
	background-color: #646464;
	padding: 12px 9px 13px;
	border-radius: 3px;
	color: #fff;
}
@media only screen and (max-width: 480px) {
	#gheader .subList_smp {
		padding: 15px;
	}
	#gheader .subList_smp li {
		 width: 48%;
		margin: 1%;
		background-color: #646464;
		padding: 0;
    	border-radius: 3px;
	}
	#gheader .subList_smp li a {
		padding: 10px 7px 10px;
		font-size: 12px;
	}
}
/* .mv
----------------------------------------------- */
.mv {
	box-shadow:0px 15px 17px -2px rgba(175,175,175,0.7);
}
.mvIn {
	width: 100%;
	height: 719px;
}
.mvTxt {
	text-align: center;
	width: 100%;
	text-align: center;
	z-index: 2;
	padding-top: 188px;
}
.fadeSlider {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.fadeSlider span {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}
.fadeSlider span.fadeSlider_01 {
	background-image: url(../img/top/mainimg01.jpg);
	animation-delay: 4s !important;
	animation: fadeSlideImg01 15s ease-out infinite;
}
.fadeSlider span.fadeSlider_02 {
	opacity: 0;
	background-image: url(../img/top/mainimg02.jpg);
	animation-delay: 4s !important;
	animation: fadeSlideImg02 15s ease-out infinite;
	}
.fadeSlider span.fadeSlider_03 {
	opacity: 0;
	background-image: url(../img/top/mainimg03.jpg);
	animation-delay: 4s !important;
	animation: fadeSlideImg03 15s ease-out infinite;
}

@keyframes fadeSlideImg01 {
	0% { opacity: 1; }
	33% { opacity: 0; }
	66% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes fadeSlideImg02 {
	0% { opacity: 0; }
	33% { opacity: 1; }
	66% { opacity: 0; }
	100% { opacity: 0; }
}
@keyframes fadeSlideImg03 {
	0% { opacity: 0; }
	33% { opacity: 0; }
	66% { opacity: 1; }
	100% { opacity: 0; }
}
@media only screen and (max-width: 768px) {
	.mv {
		box-shadow:0px 8px 10px -2px rgba(175,175,175,0.7);
	}
	.mvIn {
		height: 50vw;
	}
	.mvTxt {
		text-align: center;
		left: 0;
		right: 0;
		width: 90%;
		margin: 0 auto;
		padding-top: 5vw;
	}
}
/* .secConsul
----------------------------------------------- */
.secConsul {
	padding: 82px 0 82px;
}
.secConsulTtl {
	padding-bottom: 50px;
}
.secConsulSub {
	text-align: center;
	font-size: 18px;
	line-height: 2.1;
	padding-bottom: 38px;
}
.secConsul .arrow01 {
	padding-bottom: 55px;
}
.secConsulList{
  display: flex;
  flex-wrap:wrap;
  justify-content: flex-start;
}
.secConsulList li{
	margin-left:18px;
}
.secConsulList li a {
	display: block;
	width: 210px;
	height: 220px;
	box-sizing: border-box;
	background-color: #ececeb;
	border-radius: 10px;
	margin-bottom: 59px;
	box-shadow: 0 4px rgba(0, 0, 0, 0.12);
	padding-top: 10px;
	text-align: center;
}
.secConsulList li img {
	width: 150px;
	height:auto;
}
.secConsulListTxt {
	font-size: 14px;
	letter-spacing: 0.03em;
	line-height: 1.5;
}
.ConsulListspan{
	font-weight:bold;
	font-size:16px;
	color:#e02c0e;
}
.ConsulListsub{
	margin-top:12px;
	font-weight:bold;
}
.ConsulList{
	position:relative;
}
.badge {
	position:absolute;
	top:-10px;
	right:-10px;
    display: inline-block;
    width:40px;
	height:40px;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-align: center;
	line-height:2;
    background-color: #e02c0e;
    border-radius: 50%;
}
.secConsul .bnArea {
	text-align: center;
	background:#ececeb;
	border-radius:10px;
}
.secConsul .bnArea p{
	font-size: 18px;
	line-height: 1.5;
	padding:10px 0 30px;
}
@media only screen and (max-width: 768px) {
	.secConsul {
		padding: 40px 0 40px;
	}
	.secConsulTtl {
		padding-bottom: 25px;
	}
	.secConsulSub {
		text-align: center;
		font-size: 14px;
		line-height: 1.7;
		padding-bottom: 17px;
	}
	.secConsul .arrow01 {
		padding-bottom: 27px;
	}
	.secConsulList {
		justify-content:space-around;
	}
	.secConsulList li{
		margin-left:0;
	}
	.secConsulList::after{
		content:"";
		display: block;
 		width:170px;
}
	.secConsulList li a {
		width: 165px;
		height: 200px;
		margin-bottom: 30px;
	}
	.secConsulList li img {
		width: 70%;
	}
	.secConsulListTxt {
		font-size: 13px;
		padding: 0 5px;
	}
	.ConsulListsub{
		margin-top:8px;
	}

	.secConsul .bnArea p {
		text-align: left;
		font-size: 14px;
		line-height: 1.7;
		padding:0 10px 27px;
	}
	.badge {
		top:-5px;
		right:-5px;
	}
	.bnArea .pc_hdn{
		width:90%;
		height:auto;
	}

}
/* .secBusiness
----------------------------------------------- */
.secBusiness {
	padding: 0 0 190px;
}
.secBusinessTtl {
	padding-bottom: 50px;
}
.secBusinessSub {
	text-align: center;
	font-size: 18px;
	line-height: 2.1;
	padding-bottom: 55px;
}
.secBusiness .serviceArea {
	padding-bottom: 70px;
}
.secBusiness .serviceArea .leftBox,
.secBusiness .serviceArea .rightBox {
	width: 50%;
	box-sizing: border-box;
}
.secBusiness .serviceArea .leftBox {
	float: left;
	border-right: 1px dotted #000;
	padding-right: 34px;
}
.secBusiness .serviceArea .rightBox {
	float: right;
	padding-left: 35px;
}
.secBusiness .serviceAreaTtl {
	background-color: #cbcbcb;
	text-align: center;
	font-size: 16px;
	padding: 14px 0 14px;
	margin-bottom: 38px;
}
.secBusiness .serviceAreaList li {
	margin-bottom: 24px;
}
.secBusiness .serviceAreaList li:last-child {
	margin-bottom: 0;
}
.secBusiness .serviceAreaList li a {
	position: relative;
	display: block;
	background-color: #ececeb;
	border-radius: 10px;
	padding: 17px 0 15px 26px;
	box-sizing: border-box;
	font-size: 16px;
	text-align: left;
	font-weight: bold;
	border-bottom: 3px solid #e5e5e5;
}
.secBusiness .serviceAreaList li a:after {
	position: absolute;
	right: 19px;
	top: 50%;
	margin-top: -11px;
	content: '';
	width: 16px;
	height: 22px;
	background: url('../img/top/arrow02.png') no-repeat;
	background-size: contain;
}
.secBusiness .serviceAreaList li a:hover:after {
	right: 14px;
}
@media only screen and (max-width: 768px) {
	.secBusiness {
		padding: 0 0 60px;
	}
	.secBusinessTtl {
		padding-bottom: 25px;
	}
	.secBusinessSub {
		text-align: center;
		font-size: 14px;
		line-height: 1.7;
		padding-bottom: 27px;
	}
	.secBusiness .serviceArea {
		padding-bottom: 35px;
	}
	.secBusiness .serviceArea .leftBox,
	.secBusiness .serviceArea .rightBox {
		width: 50%;
		box-sizing: border-box;
	}
	.secBusiness .serviceArea .leftBox {
		float: left;
		border-right: 1px dotted #000;
		padding-right: 9px;
	}
	.secBusiness .serviceArea .rightBox {
		float: right;
		padding-left: 10px;
	}
	.secBusiness .serviceAreaTtl {
		background-color: #cbcbcb;
		text-align: center;
		font-size: 12px;
		line-height: 1.5;
		padding: 2.8% 3px 0;
		margin-bottom: 19px;
		min-height: 42px;
	}
	.secBusiness .serviceAreaList li {
		margin-bottom: 12px;
	}
	.secBusiness .serviceAreaList li:last-child {
		margin-bottom: 0;
	}
	.secBusiness .serviceAreaList li a {
		position: relative;
		display: block;
		background-color: #ececeb;
		border-radius: 10px;
		padding: 8px 25px 8px 10px;
		box-sizing: border-box;
		height: 57px;
		font-size: 13px;
		line-height: 1.5;
		text-align: left;
		font-weight: bold;
		border-bottom: 3px solid #e5e5e5;
	}
	.secBusiness .serviceAreaList li a:after {
		position: absolute;
		right: 8px;
		top: 50%;
		margin-top: -9px;
		content: '';
		width: 12px;
		height: 18px;
		background: url('../img/top/arrow02.png') no-repeat;
		background-size: contain;
	}
	.secBusiness .serviceAreaList li a:hover:after {
		right: 5px;
	}
}
/* .secResult
----------------------------------------------- */
.secResult {
	padding: 82px 0 90px;
}
.secResultTtl {
	position: relative;
	color: #e02c0e;
	font-size: 27px;
	font-weight: bold;
	text-align: center;
	padding: 19px 0 20px;
	margin-bottom: 50px;
	border: 3px solid #e02c0e;
}
.secResultTtl:after {
	position: absolute;
	left: -3px;
	bottom: -7px;
	content: '';
	background-color: #d3d3d2;
	width: calc(100% + 6px);
	height: 4px;
}

.secResultSub a {
	position: relative;
	display: block;
	font-size: 15px;
	text-align: center;
	padding: 18px 0 18px;
	margin-bottom: 40px;
	background-color: #fff;
}
.secResultSub a:before {
	position: absolute;
	display: block;
	right: 15px;
	top: 50%;
	margin-top: -7px;
	content: '';
	width: 8px;
	height: 14px;
	background: url('../img/top/arrow04_hov.png') no-repeat;
	background-size: contain;
}
.secResultBox .txtArea {
	float: left;
	width: 650px;
}
.secResultBox .txtArea .university {
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: 0.05em;
	float: left;
	width: 610px;
}
.secResultBox .txtArea .university {
	padding-right: 36px;
	border-right: 1px dotted #000;
}
.secResultBoxImg {
	float: right;
}
@media only screen and (max-width: 768px) {
	.secResult {
		padding: 40px 0 40px;
	}
	.secResultTtl {
		position: relative;
		color: #e02c0e;
		font-size: 18px;
		line-height: 1.5;
		font-weight: bold;
		text-align: center;
		padding: 10px 10px 10px;
		margin-bottom: 25px;
		border: 3px solid #e02c0e;
	}
	.secResultTtl:after {
		position: absolute;
		left: -3px;
		bottom: -7px;
		content: '';
		background-color: #d3d3d2;
		width: calc(100% + 6px);
		height: 4px;
	}
	.secResultSub a {
		font-size: 14px;
		text-align: center;
		padding: 15px 0 15px;
		margin-bottom: 15px;
		background-color: #fff;
	}
	.secResultBox .txtArea {
		float: none;
		width: 100%;
	}
	.secResultBox .txtArea .university {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		float: none;
		width: 100%;
	}
	.secResultBox .txtArea .university {
		padding: 0 0 12px 0;
		margin-bottom: 16px;
		border-right: none;
		border-bottom: 1px dotted #000;
	}
	.secResultBoxImg {
		float: none;
		width: 50%;
		margin: 0 auto;
	}
}
/* .secReason
----------------------------------------------- */
.secReason {
	padding: 180px 0 258px;
}
.secReasonTtl {
	padding-bottom: 60px;
}
@media only screen and (min-width: 769px) {
	.secReasonList li {
		display: block;
		overflow: hidden;
		width: 100%;
		background-color: #ececeb;
		margin-bottom: 67px;
	}
	.secReasonList li:last-child {
		margin-bottom: 0;
	}
	.secReason .secReasonListImg {
		box-sizing: border-box;
	}
	.secReasonList li:nth-child(1) .secReasonListImg,
	.secReasonList li:nth-child(2) .secReasonListImg {
		width: 429px;
	}
	.secReasonList li:nth-child(3) .secReasonListImg {
		width: auto;
	}
	.secReasonList li:nth-child(1) .secReasonListImg {
		float: left;
	}
	.secReasonList li:nth-child(2) .secReasonListImg,
	.secReasonList li:nth-child(3) .secReasonListImg {
		float: right;
	}
	.secReason .txtArea {
		vertical-align: top;
		background-color: #ececeb;
		padding: 35px 0 0 35px;
		box-sizing:  border-box;
	}
	.secReasonList li:nth-child(1) .txtArea {
		float: right;
	}
	.secReasonList li:nth-child(2) .txtArea,
	.secReasonList li:nth-child(3) .txtArea {
		float: left;
	}
	.secReasonList li:nth-child(1) .txtArea,
	.secReasonList li:nth-child(2) .txtArea {
		width: 501px;
	}
	.secReasonList li:nth-child(3) .txtArea {
		width: 100%;
		padding: 35px 35px 0 35px;
	}
	.secReasonList li:nth-child(3) .secReasonListImg {
		box-sizing: border-box;
		padding: 20px 35px 35px;
	}
	.secReasonList li:nth-child(3) .secReasonListImg img {
		width: 100%;
	}
	.secReason .txtAreaTtl {
		color: #e02c0e;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.6;
		letter-spacing: 0.1em;
		padding-bottom: 22px;
	}
	.secReason .txtAreaTxt {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
	}
}
@media only screen and (max-width: 768px) {
	.secReason {
		padding: 40px 0 40px;
	}
	.secReasonTtl {
		padding-bottom: 30px;
	}
	.secReason .txtAreaTtl {
		color: #e02c0e;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.6;
		letter-spacing: 0.1em;
		padding-bottom: 10px;
	}
	.secReason .txtAreaTxt {
		font-size: 14px;
		line-height: 1.7;
		letter-spacing: 0.05em;
		padding-bottom: 15px;
	}
	.secReasonList li {
		background-color: #ececeb;
		padding: 15px;
		margin-bottom: 20px;
	}
	.secReasonList li .txtArea {
	}
}
/* .secNews
----------------------------------------------- */
.secNews {
	padding: 0 0 90px;
}
.secNewsTtl {
	padding-bottom: 24px;
}
.secNewsTtl img {
	width: 120px;
}
.secNewsTtl:after {
	display: inline-block;
	content: '';
	width: 36px;
	height: 26px;
	margin-left: 14px;
	background: url(../img/top/arrow03.png) no-repeat;
	background-size: contain;
	vertical-align: bottom;
}
.secNewsTxt {
	font-size: 14px;
	line-height: 1.7;
	padding-bottom: 50px;
}
.secNewsList {
	padding: 75px 0 75px;
}
.secNewsList li {
}
.secNewsList li a {
	display: block;
	width: 282px;
}
.secNewsListImg {
	padding-bottom: 28px;
}
.secNewsListDate {
	font-size: 18px;
	padding-bottom: 15px;
}
.secNewsListTtl {
	font-size: 15px;
	font-weight: bold;
	line-height: 1.5;
	color: #325faa;
	text-decoration: underline;
}
.secNewsList li a:hover .secNewsListTtl {
	text-decoration: none;
}
@media only screen and (max-width: 768px) {
	.secNews {
		padding: 0 0 40px;
	}
	.secNewsTtl {
		padding-bottom: 12px;
	}
	.secNewsTtl img {
		width: 80px;
	}
	.secNewsTtl:after {
		display: inline-block;
		content: '';
		width: 30px;
		height: 20px;
		margin-left: 10px;
		background: url(../img/top/arrow03.png) no-repeat;
		background-size: contain;
		vertical-align: bottom;
	}
	.secNewsTxt {
		font-size: 14px;
		line-height: 1.7;
		padding-bottom: 50px;
	}
	.secNewsList {
		display: block;
		width: 80%;
		margin: 0 auto;
		padding: 30px 0 30px;
	}
	.secNewsList li {
		padding-bottom: 30px;
	}
	.secNewsList li:last-child {
		padding-bottom: 0;
	}
	.secNewsList li a {
		display: block;
		width: 100%;
	}
	.secNewsListImg {
		padding-bottom: 8px;
	}
	.secNewsListImg img {
		width: 100%;
	}
	.secNewsListDate {
		font-size: 16px;
		padding-bottom: 7px;
	}
	.secNewsListTtl {
		font-size: 14px;
		font-weight: bold;
		line-height: 1.5;
		color: #325faa;
		text-decoration: underline;
	}
	.secNewsList li a:hover .secNewsListTtl {
		text-decoration: none;
	}
}
/* .secRecruit
----------------------------------------------- */
.secRecruit {
	padding: 80px 0 90px;
}
.secRecruitTtl {
	font-size: 21px;
	font-weight: bold;
	letter-spacing: 0.2em;
	padding-bottom: 35px;
}
.secRecruitTxt {
	font-size: 14px;
	line-height: 1.7;
	padding-bottom: 50px;
}
.secRecruitList {
}
.secRecruitList li {
}
.secRecruitList li a {
	font-size: 19px;
	font-weight: bold;
	text-align: center;
	display: block;
	width: 280px;
	padding: 23px 0 23px;
	box-sizing: border-box;
	border: 4px solid #000;
	background-color: #fff;
}
.secRecruitList li a:hover {
	color: #fff;
	background-color: #646464;
}
@media only screen and (max-width: 768px) {
	.secRecruit {
		padding: 40px 0 40px;
	}
	.secRecruitTtl {
		font-size: 19px;
		font-weight: bold;
		letter-spacing: 0.2em;
		padding-bottom: 17px;
	}
	.secRecruitTxt {
		font-size: 14px;
		line-height: 1.7;
		padding-bottom: 25px;
	}
	.secRecruitList {
		display: block;
	}
	.secRecruitList li {
		padding-bottom: 15px;
	}
	.secRecruitList li:last-child {
		padding-bottom: 0;
	}
	.secRecruitList li a {
		font-size: 17px;
		font-weight: bold;
		text-align: center;
		display: block;
			width: 80%;
			margin: 0 auto;
		padding: 19px 0 19px;
		box-sizing: border-box;
		border: 4px solid #000;
		background-color: #fff;
	}
}
/* .secBtns
----------------------------------------------- */
.secBtns {
	padding: 95px 0 97px;
}
.secBtns .btnBoxBtn01 a,
.secBtns .btnBoxBtn02 a {
	position: relative;
	display: block;
	background-color: #e02c0e;
	border-radius: 10px;
	width: 422px;
	padding: 42px 0 42px 0;
	box-sizing: border-box;
	font-size: 21px;
	text-align: center;
	color: #fff;
	border-bottom: 4px solid #e5e5e5;
	transition: all 0.2s;
}
.secBtns .btnBoxBtn01 a:after,
.secBtns .btnBoxBtn02 a:after {
	position: absolute;
	right: 19px;
	top: 50%;
	margin-top: -7px;
	content: '';
	width: 8px;
	height: 14px;
	background: url('../img/top/arrow04.png') no-repeat;
	background-size: contain;
}
.secBtns .btnBoxBtn01 {
	float: left;
}
.secBtns .btnBoxBtn02 {
	float: right;
}
.secBtns .btnBoxBtn03 {
	padding-top: 75px;
	clear: both;
	width: 100%;
}
.secBtns .btnBoxBtn03Ttl {
	padding: 21px 0 20px;
	background-color: #e02c0e;
	border-radius: 10px 10px 0 0;
	font-size: 18px;
	text-align: center;
	color: #fff;
}
.secBtns .btnBoxBtn03 .telList {
	box-sizing: border-box;
	padding: 29px 56px 29px 58px;
	border-radius: 0 0 10px 10px;
	border-bottom: 4px solid #e5e5e5;
}
.secBtns .btnBoxBtn03 .telList li {
	display: table;
}
.secBtns .btnBoxBtn03 .telList a {
	display: table-cell;
	vertical-align: middle;
	font-size: 25px;
	border-right: 1px solid #000;
	padding: 5px 14px 5px 0;
	letter-spacing: 0.03em;
}
.secBtns .btnBoxBtn03 .telList a:before {
	display: inline-block;
	content: '';
	width: 18px;
	height: 24px;
	margin-right: 10px;
	background: url(../img/top/icon_tel01.png) no-repeat;
	background-size: contain;
	vertical-align: -10%;
}
.secBtns .btnBoxBtn03 .telListTtl {
	display: table-cell;
	vertical-align: middle;
	font-size: 19px;
	padding-left: 18px;
}
@media only screen and (min-width: 769px) {
	.secBtns .btnBoxBtn01 a:hover,
	.secBtns .btnBoxBtn02 a:hover {
		margin-top: 4px;
		border-bottom: 0;
	}
}
@media only screen and (max-width: 768px) {
	.secBtns {
		padding: 40px 0 40px;
	}
	.secBtns .btnBoxBtn01 a,
	.secBtns .btnBoxBtn02 a {
		position: relative;
		display: block;
		background-color: #e02c0e;
		border-radius: 8px;
		width: 100%;
		padding: 21px 0 21px 0;
		box-sizing: border-box;
		font-size: 16px;
		text-align: center;
		color: #fff;
		border-bottom: 3px solid #e5e5e5;
	}
	.secBtns .btnBoxBtn01 a:after,
	.secBtns .btnBoxBtn02 a:after {
		position: absolute;
		right: 19px;
		top: 50%;
		margin-top: -7px;
		content: '';
		width: 8px;
		height: 14px;
		background: url('../img/top/arrow04.png') no-repeat;
		background-size: contain;
	}
	.secBtns .btnBoxBtn01 {
		float: none;
		padding-bottom: 15px;
	}
	.secBtns .btnBoxBtn02 {
		float: none;
	}
	.secBtns .btnBoxBtn03 {
		padding-top: 15px;
		clear: both;
		width: 100%;
	}
	.secBtns .btnBoxBtn03Ttl {
		padding: 21px 0 20px;
		background-color: #e02c0e;
		border-radius: 8px 8px 0 0;
		font-size: 16px;
		text-align: center;
		color: #fff;
	}
	.secBtns .btnBoxBtn03 .telList {
		display: block;
		box-sizing: border-box;
		padding: 15px 15px 15px 15px;
		border-radius: 0 0 8px 8px;
		border-bottom: 3px solid #e5e5e5;
	}
	.secBtns .btnBoxBtn03 .telList li {
		display: table;
		padding-bottom: 15px;
	}
	.secBtns .btnBoxBtn03 .telList li:last-child {
		padding-bottom: 0;
	}
	.secBtns .btnBoxBtn03 .telList a {
		display: table-cell;
		vertical-align: middle;
		font-size: 21px;
		border-right: 1px solid #000;
		padding: 5px 10px 5px 0;
		width: 55%;
		letter-spacing: 0.03em;
	}
	.secBtns .btnBoxBtn03 .telList a:before {
		display: inline-block;
		content: '';
		width: 14px;
		height: 18px;
		margin-right: 6px;
		background: url(../img/top/icon_tel01.png) no-repeat;
		background-size: contain;
		vertical-align: -5%;
	}
	.secBtns .btnBoxBtn03 .telListTtl {
		display: table-cell;
		vertical-align: middle;
		font-size: 13px;
		padding-left: 10px;
		width: 45%;
	}
}
@media only screen and (max-width: 360px) {
	.secBtns .btnBoxBtn03Ttl {
		font-size: 14px;
	}
}
/* .secGuide
----------------------------------------------- */
.secGuide {
	padding: 80px 0 90px;
}
.secGuideTtl {
	text-align: center;
	padding-bottom: 114px;
}
.secGuideTtlIn {
	color: #e02c0e;
	font-size: 23px;
	letter-spacing: 0.1em;
	display: inline-block;
	font-weight: bold;
	border-bottom: 3px solid #e02c0e;
	padding: 0 3px 5px;
}
@media only screen and (min-width: 769px) {
	.secGuideList {
		width: 850px;
		margin: 0 auto;
	}
	.secGuideList li {
		font-size: 14px;
		float: left;
		border-left: 1px solid  #e02c0e;
		box-sizing: border-box;
		padding: 1px 0 31px 11px;
	}
	.secGuideList li:nth-child(4n-3) {
		width: 246px
	}
	.secGuideList li:nth-child(4n-2) {
		width: 205px;
	}
	.secGuideList li:nth-child(4n-1) {
		width: 265px;
	}
	.secGuideList li:nth-last-child(-n+3) {
		padding-bottom: 1px;
	}
}
@media only screen and (max-width: 768px) {
	.secGuide {
		padding: 40px 0 40px;
	}
	.secGuideTtl {
		text-align: center;
		padding-bottom: 40px;
	}
	.secGuideTtlIn {
		color: #e02c0e;
		font-size: 23px;
		letter-spacing: 0.1em;
		display: inline-block;
		font-weight: bold;
		border-bottom: 3px solid #e02c0e;
		padding: 0 3px 5px;
	}
	.secGuideList {
		overflow: hidden;
	}
	.secGuideList li {
		float: left;
		width: 50%;
		box-sizing: border-box;
		padding: 0 0 12px 5px;
		border-left: 1px solid  #e02c0e;
	}
	.secGuideList li a {
		font-size: 12px;
	}
}
/* .secBn
----------------------------------------------- */
.secBn {
	padding: 47px 0 165px;
}
.secBnList {

}
.secBnList li {
	float: left;
	padding-right: 35px;
}
.secBnList li img {
	width: 160px;
}
@media only screen and (max-width: 768px) {
	.secBn {
		padding: 40px 0 40px;
	}
	.secBnList {
		display:  flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.secBnList li {
		float: none;
		width: 48%;
		padding: 0 0 4% 0;
	}
	.secBnList li img {
		width: 100%;
	}
}
/* #gfooter
----------------------------------------------- */
#gfooter .footerFirst {
	background-color: #e02c0e;
}
#gfooter .footerTtl {
	padding: 35px 0 31px;
}
#gfooter .footerTtl img {
	width: 338px;
}
/* btnPagetop */
#gfooter .btnPagetop a {
	display: block;
	height: 100%;
	box-sizing: border-box;
	padding: 33px 33px 0;
	border-left: 1px solid #fff;
	border-right: 1px solid #fff;
}
#gfooter .btnPagetop a img {
	width: 20px;
}
.footerSecond {
	padding: 15px 0 15px
}
.footerSecondTxt,
.footerSecondAddress {
	font-size: 14px;
	line-height: 1.4;
}
@media only screen and (min-width: 769px) {
	#gfooter .btnPagetop a:hover {
		padding: 30px 33px 3px;
	}
}
@media only screen and (max-width: 768px) {
	#gfooter .footerTtl {
		padding: 18px 20px 15px;
	}
	#gfooter .footerTtl img {
		width: 100%;
	}
	/* btnPagetop */
	#gfooter .btnPagetop a {
		display: block;
		height: 100%;
		box-sizing: border-box;
		padding: 16px 16px 0;
		border-left: 1px solid #fff;
		border-right: 1px solid #fff;
	}
	#gfooter .btnPagetop a img {
		width: 20px;
	}
	.footerSecond {
		padding: 15px 0 15px
	}
	.footerSecondTxt,
	.footerSecondAddress {
		font-size: 12px;
		line-height: 1.5;
	}
	.footerSecondTxt {
		padding-bottom: 10px;
	}
}
/* footer
---------------------------------------------------------------------------- */


.yasumi {
	margin-bottom: 0.5em;
	padding: 0.5em;
	border: 1px solid #ccc;
}
.yasumi h3 {
	font-size: 130%;
	margin-bottom: 0.5em;
}
.yasumi p ,.yasumi ul{
	line-height: 1.6;
	padding-left: 0.5em;
	border-left: 5px solid #2a83a2;
}
.yasumi p span{
	font-weight: bold;
	color: #e2041b;
}
.yasumi ul{	padding-left: 2em;padding-bottom: 0.5em;}
.yasumi li {
	padding-top: 0.5em;
	list-style-type: disc;
	font-weight: bold;
	color: #000;
}

/*----------------------------------------------------------------------------
submenu
---------------------------------------------------------------------------- */
nav#gnavi{
	position: relative;
}
nav#gnavi .pc_innner01 ul > li{
	display: inline-block;
}
nav#gnavi .pc_innner01 ul > li > a{
	padding: 15px 30px;
	display: block;
	font-size: 0.8em;
	text-transform: uppercase;
	letter-spacing: .2em;
}
nav#gnavi .pc_innner01 ul > li > span{
	margin-left: 1.2em;
}
nav#gnavi .pc_innner01 ul > li:hover > a{
	background-color: #efefef;
	color: #444;
}
 
/* Submenu */
 
nav#gnavi .pc_innner01 ul li ul{
	position: absolute;
	top: 55px;
	left: 0;
}
nav#gnavi .pc_innner01 ul li ul li{
	display: block;
}
nav#gnavi .pc_innner01 ul li ul li a{
	background-color: #efefef;
	color: #444;
}
nav#gnavi .pc_innner01 ul li ul li a:hover{
	background-color: #ddd;
}
nav#gnavi ul li ul{
	display: none;
	background: #fff;
    padding: 3px 0;
}
nav#gnavi ul li:hover ul{
	display: block;
	width: 155px;
}
nav#gnavi ul.gnaviList li ul.submenu li{
	float: none;
	background-color: #eae6e6;
	margin: 5px 5px;
	text-align: center;
	font-size: 13px;
}

.annai_btn{
	text-align: center;
	margin-top: 70px;
}