@charset "utf-8";

html {
	/* ルートのフォントサイズを10pxに設定しておく */
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	/* ルートのフォントサイズを1.6em（16pxと同等のサイズ）に設定 */
	font-size: 1.6em;
	font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic","ヒラギノ角ゴ Pro W2", Hiragino Kaku Gothic Pro, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*font-family: "Zen Kaku Gothic New", sans-serif;*/
	color: #2f2f2f;
}

a[href^="tel:"] {
	color: inherit;
	pointer-events: none;
	text-decoration:none;
	display: inline-block;
}

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

	a[href^="tel:"] {
		color: inherit;
		pointer-events: auto;
	}

}

ul{ padding: 0; list-style-type: none;}

.pc{ display: block ; }
.sp{ display: none ; }

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

.pc{ display: none ; }
.sp{ display: block ; }

}

a img{
	transition: .5s;
}

a img:hover{
	opacity: 0.6;
}

p{ line-height: 2; }

/*----------------------------------------*/

.mt-6 {margin-top: 6rem;}
.btn {
	padding: 0;
	font-size: 1.6rem;
}
.font-red {color: #CC0000;}
.font-25 {font-size: 2.5rem;}
.font-24 {font-size: 2.4rem;}
.font-23 {font-size: 2.3rem;}
.font-22 {font-size: 2.2rem;}
.font-21 {font-size: 2.1rem;}
.font-20 {font-size: 2rem;}
.font-19 {font-size: 1.9rem;}
.font-18 {font-size: 1.8rem;}
.font-17 {font-size: 1.7rem;}
.font-16 {font-size: 1.6rem;}
.font-15 {font-size: 1.5rem;}
.font-14 {font-size: 1.4rem;}
.font-13 {font-size: 1.3rem;}
.font-12 {font-size: 1.2rem;}
.font-11 {font-size: 1.1rem;}
.font-10 {font-size: 1rem;}

.pc-pd15 {margin-left: 15px; margin-right: 15px;}

/*----------------------------------------*/

.pdt8{ padding-top: 8rem; }
.pdt16{ padding-top: 16rem; }

.pdb8{ padding-bottom: 8rem; }
.pdb16{ padding-bottom: 16rem; }

.mgt8{ margin-top: 8rem; }
.mgt16{ margin-top: 16rem; }

.mgb8{ margin-bottom: 8rem; }
.mgb16{ margin-bottom: 16rem; }

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

	.pdt8{ padding-top: 4rem; }
	.pdt16{ padding-top: 8rem; }

	.pdb8{ padding-bottom: 4rem; }
	.pdb16{ padding-bottom: 8rem; }

	.mgt8{ margin-top: 4rem; }
	.mgt16{ margin-top: 8rem; }

	.mgb8{ margin-bottom: 4rem; }
	.mgb16{ margin-bottom: 8rem; }

}

/*----------------------------------------*/

header{
	position: absolute;
	top: 0;
	z-index: 2;
	width: 100%;
	background: rgba(255, 255, 255, .9);
}

header.underlayer_head{
	position: relative;
	background: #fff;
}

.head{
	max-width: 1200px;
	margin: 0 auto;

	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 120px;
}

.head .logo{
	max-width: 40rem;
}

.head .logo img{
	width: 100%;
}

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

	.head{
		padding-left: 3rem;
		padding-right: 3rem;
	}

}

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

	.head .logo{
		margin-top: 0.5rem;
		max-width: 28rem;
		max-width: 73%;
	}
	
}

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

	.head .logo{
		margin-top: 1rem;
		max-width: 22rem;
	}
	
}

.head .call_area{
	color: #386fbb;
}

.head .call_area li{
	display: flex;
	align-items: center;
	justify-content: right;
}

.head .call_area li.tel{
	font-size: 3.2rem;
	font-weight: bold;
	text-align: right;
}

.head .call_area li.tel span{
	font-size: 3.2rem;
	font-weight: bold;
}

.head .call_area li.open{
	font-size: 1.4rem;
	font-weight: bold;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.head .call_area li.open span{
	font-size: 1.2rem;
	padding: 0 0.7rem;
}

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

	.head {
		/*padding: 0 1rem;*/
	}

	.head .logo h1 {
		max-width: 250px;
		margin-right: 10px;
	}

	.head .call_area strong {
		font-size: 2.5rem;
	}

}

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

	header{
		position: fixed;
		transition: .5s;
	}

	header.underlayer_head.fixed{
		position: fixed;
		transition: .5s;
	}

	header .head{
		padding: 0 1rem;
		height: 6rem;
	}

	header.fixed{
		background: rgba(255, 255, 255, 0.2);
		transition: .5s;
	}

	header.fixed .head{
		padding: 0 1rem;
	}

	.head {
		flex-wrap: wrap;
		height: auto;
		padding: 1rem 1rem;
	}

	.head .logo {
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	
	.head .logo h1 {
		max-width: 70%;
	}
	
	.head .logo h1 img {
		width: 100%;
	}
	
	.head .logo p {
		font-size: 1.2rem;
		min-width: 80px;
	}
	
	.head .logo div {
		font-size: 1.1rem;
	}
	
	.head .logo div span {
		font-size: 1.1rem;
		font-weight: normal;
	}
	
	.head .call_area {
		align-items: center;
		margin: 0 auto 2rem;
		display: none;
	}

}

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

	header.fixed {
		height: 6rem;
	}
	
	.head .logo h1 {
        max-width: 78%;
    }

}

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

	.head .logo h1 {
        max-width: 70%;
    }

}

/*-------------*/

nav{
	min-height: 65px;
	padding: 2rem 0;
}

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

	nav{
		padding-left: 3rem;
		padding-right: 3rem;
	}

}


.nav{
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 1200px;
	margin: 0 auto;
	
}

.nav li{
	width : -webkit-calc(100% / 5) ;
	width : calc(100% / 5) ;
	border-left: 1px solid #8b8b8b;
	text-align: center;
	min-height: 40px;
	
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.8rem;
	font-weight: bold;
}

.nav li a{
	width: 100%;
	min-height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 2rem;
	color: #222;
	transition-duration: 0.5s;
	flex-wrap: wrap;
	line-height: 1;
}

.nav li a{
	font-size: 2.0rem;
	font-weight: 700;
}

.nav li a:hover{
	text-decoration: none;
	background: rgba(188, 241, 255, 0.5);
	color: #3283ca;
}

.nav li a i{
	font-size: 2rem;
	margin-right: 0.5rem;
}

.nav li a small{
	width: 100%;
	font-size: 1.1rem;
	margin-top: 0.5rem;
}

.nav li:last-child{
	border-right: 1px solid #8b8b8b;
}

nav .call_area{
	display: none;
}

.p_list{
	display: flex;
	align-items: center;

	max-width: 1200px;
	margin: 0 auto 8rem;
	list-style: none;
	min-height: 3.5rem;
}

.p_list li{
	font-size: 1.2rem;
	padding-right: 0.5rem;
	margin-right: 0.5rem;
}

.p_list li::before{
	content: url(../img/p_list.png);
	margin-right: 0.5rem;
}

.p_list li:first-child::before{
	content: none;
}

.p_list li a{
	color: #212529;
}

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

	.nav li a {
		padding: 0 1rem;
	}
	
	.p_list {
		padding: 0 1rem;
	}

}

@media screen and ( max-width: 1180px ){
	
	.nav {
		flex-wrap: wrap;
		width: auto;
		max-width: none;
	}
	
	.nav li{
		width: 100%;
		border-bottom: 1px solid #fff;
		border-left: none;
	}
	
	.nav li a {
		justify-content: left;
		padding: 0;
		color: #fff;
	}

	.nav li a small{
		display: none;
	}

	.nav li:last-child {
		border-right: none;
	}
	
	nav .call_area{
		display: block;
		margin: 2rem 0;
		border-top: 1px dotted #fff;
		border-bottom: 1px dotted #fff;
		color: #fff;
		padding: 1rem 0.5rem 0.5rem;
	}
	
	nav .call_area li:last-child {
		display: flex;
		align-item: center;
		font-size: 2.0rem;
		align-items: center;
	}
	
	nav .call_area li:last-child a{
		color: #fff;
	}
	
	/*----------------------*/

	.p_list {
		border-top: 1px solid #eee;
		/*border-bottom: 1px solid #eee;*/
		padding-left: 1rem;
	}

}

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

	nav .call_area li:first-child {
		font-size: 1.4vw;
	}

}

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

	nav .call_area li:first-child {
		font-size: 1.8vw;
	}

}

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

	.p_list{
		margin: 0 auto 4rem;
	}

	nav .call_area li:first-child {
		font-size: 3.5vw;
	}

	nav .call_area li:last-child {
		font-size: 2rem;
	}

}

/*---------------------------------------------------*/

article.main_cover_over{
	/*position: absolute;*/
	top: 0;
}

.main_cover{
	position: relative;
}

.carousel-inner{
	max-height: 81.2rem;
}

.main_cover .catch{
	position: absolute;
	z-index: 1;
	top: 7vw;
	max-width: 1200px;
	margin: 0 auto;
	left: 0;
	/*right: 0;*/
	/*padding: 5.2rem 0 0 5.5rem;*/
	background: rgba( 255, 255, 255, .8);
	
	width: 50%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	height: 28rem;
}

.main_cover .catch ul{
	width: 54rem;
	margin-bottom: 0;
}

.main_cover .catch h2{
	font-size: 5rem;
	font-weight: 600;
	margin-bottom: 3rem;

	text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,-2px 2px 0 #FFF, 1px -2px 0 #FFF,0px 2px 0 #FFF, 0 -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;

	/*font-size: calc(5rem + ((1vw - 0.64rem) * 0.7143));/* 20px~24pxで可変*/
	font-size: 4.5rem;
	width: 45rem;
}

.main_cover .catch p{
	font-size: 1.5rem;
	font-weight: 600;

	text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,-2px 2px 0 #FFF, 1px -2px 0 #FFF,0px 2px 0 #FFF, 0 -2px 0 #FFF, -2px 0 0 #FFF, 2px 0 0 #FFF;
	width: 45rem;
}

.main_cover .carousel-control-next-icon,
.main_cover .carousel-control-prev-icon {
	margin-top: 65%;
}

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

	.main_cover .catch{
		top: 6vw;
		height: 21rem;
	}

	.main_cover .catch ul {
		width: 46rem;
		margin-left: 5rem;
	}

	.main_cover .catch h2 {
		margin-bottom: 2rem;
		font-size: 3.5rem;
	}

}

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

	.main_cover .catch{
		top: 5vw;
		padding: 0;
		width: auto;
		height: 18rem;
	}
	
	.main_cover .catch h2 {
		margin-bottom: 1rem;
		font-size: calc(3.3rem + ((1vw - 0.64rem) * 0.7143));
	}
	
	.main_cover .catch p {
		margin-bottom: 0;
	}
	
	.main_cover .taxi img {
		width: 35vw;
		margin: 0 0 -4rem 0rem;
	}
	
	.main_cover .icon {
		right: 2rem;
	}

}

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

	.main_cover .catch {
		padding: 0;
		width: 100%;
		bottom: 0;
		top: auto;
		height: 14rem;
	}
	
	.main_cover .catch ul {
		width: auto;
		margin-left: auto;
		margin-right: auto;
	}

	.main_cover .catch h2 {
		font-size: calc(2.5rem + ((1vw - 0.64rem) * 0.7143));
		margin-bottom: 0.5rem;
		width: auto;
		line-height: 1.4;
	}

	.main_cover .catch p {
		font-size: 1.3rem;
		width: auto;
	}

	.main_cover .icon{
		right: 1rem;
	}

	.main_cover .icon img {
		max-width: 230px;
		width: 32vw;
		margin: 0 0 -4rem -4rem;
	}

	.main_cover .taxi img{
		width: 50vw;
		margin: 0px 1rem -3rem 1rem;
	}


}

/*---------------------------------------------------*/

.top_contents{
	background: url(../img/bg.jpg) no-repeat #fdfae9;
	background-size: contain;
	
	overflow: hidden;
}

/*---------------------------------------------------*/

.news_list{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin: 0;
}

.news_list li{
	width: 100%;

	text-align: center;
	padding-top: 2rem;
	/*padding-left: 2rem;*/
	/*padding-right: 2rem;*/
	padding-bottom: 2rem;
	position: relative;
	margin-left: 1rem;
	margin-right: 1rem;
	display: flex;
	align-items: center;
	border-bottom: 0.1rem dotted #c4c4c4;
}

.news_list li:first-child{
	padding-top: 0;
}

.news_list li img{
	width: 100%;
}

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

	.news_list li{
		text-align: center;
		padding-top: 2rem;
		position: relative;
	}

}

.news_list li .new{
	position: absolute;
	top: 0;
	left: 0;
}

.news_list li .image{
	max-width: 11rem;
	margin-right: 3rem;
}

.news_list li img{

}

.news_list .text{
	margin: 0;
	text-align: left;
}

.news_list .text p{
	font-size: 1.2rem;
	margin-bottom: 0.3rem;
}

.news_list .text a{
	color: #3c3c3c;
}

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

	.news_list li{
		height: auto;
	}

	.news_list li img{
		width: 100%;
	}
	
	.news_list .text {
		margin: 0rem;
	}

}

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

	.news_list {
		flex-wrap: wrap;
	}
	
	.news_list li{
		width: 100%;
		margin-bottom: 2rem;
	}
	
	.news_list li:last-child{
		margin-bottom: 0;
	}

	.news_list li img{
		min-width: 11rem;
	}

}


/*---------------------------------------------------*/

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

	.about_area{
		margin: 0 auto;
	}

	.about_area .image{
		margin-bottom: 2rem;
	}

}

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

	.about_area{
		width: 90%;
		margin: 0 auto;
	}

	.about_area .image{
		margin-bottom: 2rem;
	}

}

/*---------------------------------------------------*/

.h3_title{
	text-align: center;
	max-width: 1200px;
	margin: 0 auto 6rem;
	display: flex;
	align-items: baseline;
}

.h3_title h3{
	/*font-family: Futura, 'Century Gothic', CenturyGothic, AppleGothic, sans-serif;*/

	font-size: 4.0rem;
	font-weight: bold;
	position: relative;
	margin-right: 1rem;
	margin-bottom: 0;
	/*border-left: 1rem solid #386fbb;*/
	padding-left: 4.5rem;
	padding-right: 1rem;
	line-height: 0.8;

	background: url(../img/title.png) no-repeat;
	background-position: left;
	background-size: contain;

}

/*
.h3_title h3::before{
	content: url(../img/title.png);
	transform: scale(0.1);
}
*/
_::-webkit-full-page-media, _:future, :root .h3_title h3 {
	/*font-weight: 500;*/
}

/*
.h3_title h3::before{
	position: absolute;
	content: url(../img/icon_taxi.png);
	bottom: -1rem;
	left: 30%;
}
*/
.h3_title p{
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: 0;
	padding-bottom: 0.4rem;
}

.content{
	width: 100%;
}

.content.news_area{
	width: 100%;
	background: #e4f2f5;
}

.content section{
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

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

	.content section{
		padding-left: 3rem;
		padding-right: 3rem;
	}

}

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

	.content.news_area {
		margin-bottom: 8rem;
	}

	.h3_title h3{
		
	}

}

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

	.h3_title{
		margin: 0 auto 3rem;
		flex-wrap: wrap;
	}

}

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

	.h3_title{
		margin: 0 auto 3rem;
	}

	.h3_title h3 {
		background-position: left top;
		background-size: contain;
	}

	.content section{

	}

	.content.news_area{
		margin-bottom: 6rem;
	}

}

#content{
	margin-left: 15px;
	margin-right: 15px;
}

/* Bootstrap 4 カスタマイズ */

.lead{
	font-size: 2.5rem;
	margin-bottom: 2rem;
	font-weight: 600;
}

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

	#content{
		margin-left: 0;
		margin-right: 0;
	}

	.h3_title {
		width: 100%;
	}

}

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

	.h3_title {
		flex-wrap: wrap;
	}
	
	.h3_title h3::before {
		left: 0%;
	}

	.h3_title h3{
		flex-wrap: wrap;
	}

	.h3_title h3{
		/*font-size: 2.5rem;*/
		text-align: left;
		border-bottom: none;
		padding-right: 0;
		margin-right: 0;
		/*padding-left: 3rem;*/
		padding-left: 5rem;
		font-weight: 700;
		line-height: 1;
	}
	
	.h3_title p {
		/*font-size: 1.4rem;*/
		border-bottom: none;
		margin-left: 2rem;
	}

	.h3_title.line_break p {
		width: 100%;
		text-align: left;
		padding-left: 3.3rem;
	}

}

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

	.h3_title h3 {
		/*font-size: 6.0vw;*/
		font-size: 3.0rem;
		padding-left: 3.5rem;
		background-size: 2.8rem;
	}

	.h3_title p {
		/*width: 100%;*/
		text-align: left;
		margin-left: 0;
		padding-left: 1.0rem;
		margin-bottom: 0;
		padding-bottom: 0;
	}
	
	.h3_title.line_break p {
		width: 100%;
		padding-left: 3.5rem;
	}

}

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

	.h3_title h3{
		font-size: 2.3rem;
		line-height: 1.0;
		padding-left: 3.0rem;
		background-size: 2.3rem;
	}

}

.contents{
	width: 100%;
	margin: 0 auto;
	
}

.contents .left_area{
	width: 850px;
}

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

	.contents {
		max-width: 768px;
		flex-wrap: wrap;
	}
	
	.contents .left_area {
		width: 100%;
	}
	
	.contents .right_area {
		width: 100%;
		border-bottom: 4px solid #fff;
	}

}

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

	.contents {
		flex-wrap: wrap;
	}
	
	.contents .left_area {
		width: 100%;
	}
	
	.contents .right_area {
		width: 100%;
		border-bottom: 4px solid #fff;
	}

}

/*---------------*/

.top_bt{
	background: #bf5454;
	width: 250px;
	height: 70px;
	border-radius: 5rem;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	
	transition: 0.5s ;
}

.top_bt:hover{
	text-decoration: none;
	color: #fff;
	background: #d77777;
}

/*----------------------*/
	
.page_top{
	position: fixed;
	bottom: 1rem;
	right: 1rem;
	z-index: 1;
}
	
.page_top a{
	display: flex;
	align-items: center;
	justify-content: center;
	/* background: rgba( 59, 89, 156, .7); */
	background: #00a9e6;
	width: 50px;
	height: 50px;
	color: #fff;
	text-decoration: none;
	transition: 0.5s;
	border: 0.2rem solid rgba( 255, 255, 255, .5);
}

.page_top a{

}

.page_top a span{
	font-size: 4rem;
	font-weight: bold;
}

.page_top a:hover{
	background: #4bcfff;
}

.page_top a i{
	font-size: 5rem;
}

/*---------------*/


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


}

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

	.recruit_banner img{
		width: 100%;
	}

	.recruit_banner a{
		width: 80%;
		margin: 0 10%;
	}
	
	.recruit_banner a h4 {
		font-size: 2.5rem;
	}

	.recruit_banner a div {
		font-size: 2rem;
	}

}


/*----------------------------*/

.footer_contact_area{
	background: #e4f2f5;
	padding-top: 7rem;
	padding-bottom: 7rem;
	color: #0084cc;
}

.footer_contact_area .footer_contact{
	max-width: 120rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
}

.footer_contact_area .footer_contact li.tel_area{
	display: flex;
	align-items: center;
}

.footer_contact_area .footer_contact li.tel_area .tel{
	text-align: right;
	margin-right: 4rem;
}

.footer_contact_area .footer_contact li.tel_area .call{
	font-size: 3.5rem;
	font-weight: bold;
}

.footer_contact_area .footer_contact li.tel_area .call small{
	font-size: 1.8rem;
	font-weight: bold;
	margin-right: 0.5rem;
}

.footer_contact_area .footer_contact li.tel_area .open{
	font-size: 1.8rem;
	font-weight: bold;
	margin-right: -1rem;
}

.footer_contact_area .footer_contact li.tel_area .bt{

}

.footer_contact_area .footer_contact li.tel_area .bt a{
	display: flex;
	justify-content: center;
	align-items: center;
	border: 0.1rem solid #00a9e6;
	background: #00a9e6;
	color: #fff;
	width: 27rem;
	height: 8rem;
	font-size: 2.3rem;
	font-weight: bold;
	border-radius: 0.5rem;
}

.footer_contact_area .footer_contact li.tel_area .bt a:hover{
	background: #3282ca;
	opacity: 1;
	color: #fff;
}

.footer_contact_area .footer_contact .title{
}

.footer_contact_area .footer_contact .title h3{
	font-size: 4.0rem;
    font-weight: bold;
}

.footer_contact_area .footer_contact p{
	margin-bottom: 0;
	font-weight: 800;
	line-height: 1.4;
}

.footer_link a{
	/*font-size: 2.4rem;*/
	font-weight: 800;
}

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

	.footer_contact_area .footer_contact p {
	    font-size: 1.5rem;
	}

	.footer_contact_area .footer_contact li.tel_area .call {
	    font-size: 3.2rem;
	}

	.footer_contact_area .footer_contact li.tel_area .call small {
	    font-size: 1.6rem;
	}

}

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

	.footer_contact_area .footer_contact {
		flex-wrap: wrap;
		justify-content: center;
	}

	.footer_contact_area .footer_contact .title {
		margin-bottom: 4rem;
		text-align: center;
	}

}

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

	.footer_contact_area .footer_contact {
		max-width: 28rem;
	}

	.footer_contact_area .footer_contact .title h3 {
		font-size: 3.0rem;
		text-align: left;
	}

	.footer_contact_area .footer_contact p {
		line-height: 1.5;
		font-size: 1.4rem;
		text-align: left;
	}

	.footer_contact_area .footer_contact li.tel_area {
		flex-wrap: wrap;
		justify-content: center;
	}

	.footer_contact_area .footer_contact li.tel_area .bt a {
		width: 28rem;
	}

	.footer_contact_area .footer_contact li.tel_area .call {
		font-size: 3rem;
	}

	.footer_contact_area .footer_contact li.tel_area .tel {
		text-align: center;
		margin-right: 0;
		margin-bottom: 2rem;
	}
	
	.footer_contact_area .footer_contact li.tel_area .open{
		font-size: 1.4rem;
	}

}

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

	.footer_contact_area .footer_contact .title {
		margin-bottom: 2rem;
	}

	.footer_contact_area .footer_contact li.tel_area .bt a {
		width: 25rem;
		height: 6rem;
		font-size: 1.6rem;
	}

}

/*----------------------------*/

.footer_banner{
	width: 100%;
	
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 6rem 0;
	background: #ededed;
	margin: 8rem 0 0 0;
}

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

	.footer_banner{
		padding: 4rem 0;
		margin: 3rem 0 0 0;
	}

}

.footer_banner li{
	max-width: 38rem;
	margin: 0 3.5rem;
}

.footer_banner li a{
	transition-duration: 0.5s;
}

.footer_banner li a:hover{
	opacity: 0.6;
}

.footer_banner li img{
	width: 100%;
}


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

	.footer_banner li img{
		width: 100%;
	}

}

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

	.footer_banner {
		width: 100%;
		flex-wrap: wrap;
	}

	.footer_banner img{
		width: 100%;
	}

	.footer_banner li:first-child {
		margin-bottom: 3rem;
	}

}


/*---------------*/

.footer_link{
	width: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.6rem;
	/* height: 8.5rem; */
	margin: 0;
	color: #fff;
	margin-bottom: 6rem;
}

.footer_link a{
	color: #fff;
}

.footer_link li{
	margin: 0 3rem;
}

.footer{
	border-top: 1px solid #fff;
	background: #0084cc;
	padding-top: 7rem;
}

.footer .footer_area{
	max-width: 100rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 5rem;
}

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

	.footer .footer_area{

	}

}

.footer .footer_area > ul{
	display: flex;
/*
	justify-content: center;
	align-items: center;
*/
	width: 50%;
	
	flex-wrap: wrap;
}

.footer .footer_area ul.footer_data{
	width : 36rem;
	margin: auto;
}

.footer .footer_area ul.footer_link{
	width : 100% ;
}

.footer .footer_area ul.footer_link li{
	width : -webkit-calc(100% / 7) ;
	width: calc(100% / 7);
	margin: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

.footer .footer_area ul.footer_data > li:first-child{
	width: 32rem;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5rem;
}

.footer .footer_area ul.footer_data > li:last-child{
	color: #fff;
}

.footer .footer_area ul.footer_data > li:last-child{
	width: 100%;
	text-align: center;
}

.footer .footer_area ul.footer_data > li:last-child ul li{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.4rem;
}

.footer .footer_area ul.footer_data > li:last-child ul li div:first-child{
	font-size: 1.6rem;
	font-weight: normal;
}

.footer .footer_area ul.footer_data > li:last-child ul li div:last-child{
	font-size: 2rem;
}

.footer .footer_area ul.footer_data > li:last-child h4{
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 1rem;
}

.footer .footer_area ul.footer_data > li:last-child p{
	font-size: 1.4rem;
	font-weight: normal;
}

.footer ul li img{
	width: 100%;
}

.footer ul.footer_data li:last-child{
	font-size: 2rem;
	font-weight: bold;
}

.footer ul.footer_data li:last-child small{
	margin-right: 0.5rem;
}

.footer ul.footer_data li:last-child span{
	font-size: 2rem;
}

.footer .copy{
	text-align: center;
	font-size: 1.4rem;
	padding: 2.5rem 0;
	background: #fff;
	color: #222;
	/*border-top: 1px solid #70a3c2;*/
}

.footer .copy a{
	color: #222;
}


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

	.footer .footer_area {
		max-width: 100%;
		flex-wrap: wrap;
	}
	
	.footer .footer_area ul.footer_data {
		width: 80%;
		margin: 0 auto;
	}

	.footer .footer_area ul.footer_data > li:first-child {
		width: 28rem;
		margin: 0 auto 2rem;
	}
	
	.footer .footer_area ul.footer_link {
		width: 90%;
		margin: 0 auto 2rem;
	}

	.footer .footer_area ul.footer_link li {
		width: calc(100% / 4);
		margin-bottom: 2rem;
	}

}


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

	.footer .footer_area{
		max-width: 100%;
		flex-wrap: wrap;
	}

	.footer .footer_area ul.footer_data {
		width: 100% !important;
		margin: 0;
	}

	.footer .footer_area ul.footer_data > li:first-child {
		margin-right: 0;
	}

	.footer .footer_area ul.footer_link {
		width: 100%;
		justify-content: space-between;
	}
	
	.footer .footer_area ul.footer_link li {
		width: 50%;
		width: -webkit-calc(100% / 2);
		width: calc(100% / 2);
		margin-bottom: 0;
	}
	
	.footer .footer_area ul.footer_data > li:first-child {
		margin: 0 auto 2rem;
	}
	
	.footer .footer_area ul.footer_data > li:last-child ul li {
		justify-content: center;
		flex-wrap: wrap;
	}
	
	.footer .footer_area ul.footer_data > li:last-child ul li div:first-child {
		width: 100%;
	}
	
	.footer .copy {
		font-size: 1.2rem;
	}

}

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

	.footer .footer_area ul.footer_data > li:first-child {
		width: 24rem;
	}

}

/*---------------*/

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


}


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

	.top_about {
		background: url(../img/top/bg.png) no-repeat 7rem;
		padding: 6rem 13rem;
	}
	
	.page_top a {
		width: 55px;
		height: 55px;
	}
	
	.footer_link {
		flex-wrap: wrap;
		height: auto;
		padding: 2rem 0;
		line-height: 4rem;
	}

}


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

	.page_top {
		bottom: 0.5rem;
		right: 0.5rem;
	}
	
	.page_top a {
		width: 40px;
		height: 40px;
	}
	
	.page_top a span {
		font-size: 4rem;
	}
	
	.footer_link {
		flex-wrap: wrap;
		height: auto;
	}
	
	.footer_link li{
		width: 50%;
		margin: 0;
		padding: 1rem;
		
		position: relative;
		border-bottom: 1px solid #fff;
	}

	.footer ul {
		flex-wrap: wrap;
	}
	
	.footer ul li:first-child {
		width: 100%;
		margin-right: 0;
		margin-bottom: 1.5rem;
	}
	
	.footer ul.footer_data li:last-child {
		width: 100%;
		text-align: center;
	}

}

.call_bt{
	display: flex;
	position: fixed;
	top: 1rem;
	right: 6rem;
}

.call_bt li{
	margin-left: 1rem;
}

.call_bt li a{
	width: 4rem;
	height: 4rem;
	background: #fff;
	border: 0.1rem solid #0084cc;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #0084cc;
	background: #fff;
}

.call_bt li a:hover{
	text-decoration: none;
	background: #0084cc;
	color: #fff;
}

.call_bt li a span{
	font-size: 3rem;
}


/* スマートフォン　グローバルナビ */

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

	.global-nav {
		position: fixed;
		right: -320px; /* これで隠れる */
		top: 0;
		width: 260px; /* スマホに収まるくらい */
		height: 100vh;
		padding-top: 40px;
		background-color: #0084cc;
		transition: all .6s;
		z-index: 200;
		overflow-y: auto; /* メニューが多くなったらスクロールできるように */
	}
	.hamburger {
		position: fixed;
		right: 1rem;
		top: 1rem;
		width: 40px; /* クリックしやすいようにちゃんと幅を指定する */
		height: 40px; /* クリックしやすいようにちゃんと高さを指定する */
		cursor: pointer;
		z-index: 300;
		background: #0084cc;
	}
	.global-nav__list {
		margin-top: 5rem;

		padding: 0;
		list-style: none;
	}
	.global-nav__item {
		text-align: center;
		padding: 0 14px;
	}
	.global-nav__item a {
		display: block;
		padding: 8px 0;
		border-bottom: 1px solid #eee;
		text-decoration: none;
		color: #111;
	}
	.global-nav__item a:hover {
		background-color: #eee;
	}
	.hamburger__line {
		position: absolute;
		left: 11px;
		width: 18px;
		height: 2px;
		background-color: #fff;
		transition: all .6s;
	}
	.hamburger__line--1 {
		top: 14px;
	}
	.hamburger__line--2 {
		top: 20px;
	}
	.hamburger__line--3 {
		top: 26px;
	}
	.black-bg {
		position: fixed;
		left: 0;
		top: 0;
		width: 100vw;
		height: 100vh;
		z-index: 100;
		background-color: #000;
		opacity: 0;
		visibility: hidden;
		transition: all .6s;
		cursor: pointer;
	}

	/* 表示された時用のCSS */
	.nav-open .global-nav {
		right: 0;
	}
	.nav-open .black-bg {
		opacity: .8;
		visibility: visible;
	}
	.nav-open .hamburger__line--1 {
		transform: rotate(45deg);
		top: 20px;
	}
	.nav-open .hamburger__line--2 {
		width: 0;
		left: 50%;
	}
	.nav-open .hamburger__line--3 {
		transform: rotate(-45deg);
		top: 20px;
	}

}

/*---------------------------------------------------------------------------------------------*/

