@charset "UTF-8";
/* # =================================================================
   # common
   # ================================================================= */
body {
	background-color: #f4f7f6;
}
.container::after { content: ""; display: block; clear: both; }
.sectionBody {
	width: 90%;
	max-width: 950px;
	margin: 0 auto;
}
.sectionBody::after { content: ""; display: block; clear: both; }
.strong {
	font-weight: bold;
	color: #e04031;
}
.note {
	display: block;
	font-size: 13px;
}
dl.note {
	padding-bottom: 2em;
}
.note dt {
	float: left;
	width: 2.5em;
}
.note dd {
	margin-left: 2.5em;
}
.note dd:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 640px) {
	.pc {
		display: none;
	}
	.sp {
		display: inline;
	}
}
@media only screen and (min-width: 641px) {
	body {
		font-size: 16px;
	}
	.sp {
		display: none;
	}
	.note {
		font-size: 12px;
	}
}
/* # =================================================================
   # main
   # ================================================================= */
main {
	background-color: transparent;
}
main section {
	width: 100%;
	overflow-x: hidden;
	position: relative;
	margin-bottom: 0;
	padding: 3em 0;
}
h2 {
	position: relative;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
	text-align: center;
	padding-bottom: .3em;
	line-height: 1.6;
	font-size: 30px;
	font-weight: bold;
}
h2::after {
	display: none;
}
h2.u::after {
	position: absolute;
	display: block;
	content: '';
	width: 1.5em;
	top: 4em;
	left: 50%;
	border-bottom: #000 5px solid;
	margin-left: -.75em;
}
h3 {
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
}
main .sectionTitle {
    border: none;
	margin: 0;
	padding-bottom: 2em;
}
main .sectionTitle:before,
main .sectionTitle:after {
    display: none;
}
.sectionTitle .en {
	text-align: center;
	font-size: 20px;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
}
.equipment {
	text-align: center;
	border: #000 2px solid;
	margin-bottom: 1em;
	padding: .5em 0;
}
.equipment .txt {
	font-weight: bold;
}
.equipment .txt span {
	font-size: 13px;
}
.lead {
    padding-bottom: 2em;
}
@media only screen and (max-width: 640px) {
	main section br {
		display: none;
	}
}
@media only screen and (min-width: 641px) {
	h2 {
		font-size: 34px;
	}
	h2.u {
		font-size: 40px;
		padding-bottom: 1em;
	}
	h2.u::after {
		top: 2.2em;
	}
	.lead {
		text-align: center;
	}
	.equipment {
		text-align: left;
		margin-bottom: 2em;
	}
	.equipment .heading {
		display: inline-block;
		padding: .8em 2em;
	}
	.equipment .txt {
		display: inline-block;
	}
}
/* # =================================================================
   # mainVisual
   # ================================================================= */
#mainVisual {
	position: relative;
	background-color: #fff;
	padding-bottom: 1em;
}
#mainVisual .img {
	position: absolute;
	background: url(../img/mainVisual_bg.jpg) center bottom no-repeat;
	background-size: cover;
	width: 100%;
	height: 58vw;
	top: 0;
}
#mainVisual .img .enTitle {
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	color: #fff;
	line-height: 1.1;
	font-size: 36px;
	padding: 2vw 3.5%;
}
#mainVisual .img .balloon {
	font-size: 14px;
	position: absolute;
	line-height: 1.4;
	width: 18em;
	background-color: rgba(255, 255, 255, .8);
	right: 14px;
	bottom: 14px;
	padding: 1em;
}
#mainVisual .img .balloon span {
	color: #052a66;
	display: block;
	font-weight: bold;
	font-size: 22px;
	padding-bottom: .2em;
}
#mainVisual .heading {
	position: relative;
	padding-top: 44vw;
}
#mainVisual .heading .catch {
	font-size: 15px;
	font-weight: bold;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Helvetica Neue", HelveticaNeue, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", Verdana, "メイリオ", Meiryo, sans-serif;
	line-height: 1.3;
}
#mainVisual .heading .catch span {
	display: inline-block;
	background-color: #fff;
	padding: .3em .5em;
}
#mainVisual .heading h1 {
	color: #fff;
	line-height: 1;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: .8em;
}
#mainVisual .heading h1 span {
	display: inline-block;
	text-indent: -.5em;
	padding: .5em;
	background: linear-gradient(to right, #052a66 0%, #0e357f 100%);
}
#mainVisual .heading .desc {
	padding: 0 5%;
	padding-bottom: 2em;
}
#mainVisual .contact {
	text-align: center;
	background: linear-gradient(to right, #c8161d 0%, #e04031 100%);
	padding: 1em 0 1.5em;
}
#mainVisual .contact .tel {
	position: relative;
	font-size: 10.8px;
	color: #fff;
	padding-bottom: 1.2em;
    margin-left: 4.2em;
}
#mainVisual .contact .tel::before {
    content: '';
    display: block;
    position: absolute;
    width: 3.5em;
    height: 3.5em;
    left: 50%;
    top: .6em;
    background: url(../img/contact_icon.png) 0 0 no-repeat;
    background-size: contain;
	margin-left: -13em;
}
#mainVisual .contact .tel .num a {
	font-size: 28px;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	text-decoration: none;
	color: #fff;
	letter-spacing: .04em;
	line-height: 1;
}
#mainVisual .contact .btn a {
	display: block;
	width: 15em;
	background-color: #000;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
	padding: 1em 0;
}
#mainVisual .contact .btn a span {
	color: #fff;
	background: url(../img/envelope.svg) 0 center no-repeat;
	background-size: 1.5em auto;
	padding: 1em 0;
	padding-left: 2em;
}
#mainVisual .sectionBody {
	background-color: #fff;
}
#mainVisual .sectionBody .checkList {
	padding: 1em;
	padding-bottom: 0;
}
#mainVisual .sectionBody .checkList li {
	background: url(../img/mainVisual_check_icon.png) .5em .3em no-repeat;
	background-size: 1.2em auto;
	border-bottom: #052a66 1px dotted;
	margin-bottom: .4em;
	padding: 0 0 .4em 2em;
}
#mainVisual .sectionBody .lead {
	padding: 1em;
}
@media only screen and (max-width: 640px) {
	#mainVisual .img .balloon {
		display: none;
	}
	#mainVisual .heading .desc br,
	#mainVisual .check br {
		display: none;
	}
}
@media only screen and (min-width: 641px) {
	#mainVisual .img {
		height: 400px;
	}
	#mainVisual .img .enTitle {
		font-size: 68px;
	}
	#mainVisual .heading {
		padding-top: 310px;
	}
	#mainVisual .heading .catch span {
		font-size: 22px;
	}
	#mainVisual .heading h1 span {
		font-size: 38px;
		padding-right: 1em;
	}
	#mainVisual .heading .desc {
		font-size: 18px;
	}
	#mainVisual .sectionBody .checkList {
		padding: 2em 50px 0;
	}
	#mainVisual .sectionBody .checkList li {
		font-size: 20px;
	}
	#mainVisual .sectionBody .lead {
		padding-top: .5em;
		padding-bottom: 1.5em;
	}
	#mainVisual .contact {
		padding-top: 2em;
	}
	#mainVisual .contact .container {
		width: 784px;
		margin: 0 auto;
	}
	#mainVisual .contact .tel {
		font-size: 17px;
		float: left;
		margin-right: 2em;
	}
	#mainVisual .contact .tel .num a {
		font-size: 44px;
	}
	#mainVisual .contact .btn {
		float: left;
		margin-top: .5em;
	}
	#mainVisual .contact .btn a {
		font-size: 22px;
	}
}
/* # =================================================================
   # banner
   # ================================================================= */
#banner {
	background-color: #fff;
	padding-bottom: 2.5em;
}
#banner .bnr a {
	width: 90%;
	display: block;
	position: relative;
	overflow: hidden;
	background: linear-gradient(to right, #052a66 0%, #0e357f 100%);
	margin: 0 auto;
}
#banner .bnr a .img {
	width: 7em;
	position: absolute;
	left: -1em;;
	top: .5em;
}
#banner .bnr a .img img {
	width: 100%;
	height: auto;
}
#banner .bnr a .txt {
	color: #fff;
	line-height: 1.4;
	margin-left: 6em;
	padding: .5em 0;
}
#banner .bnr a .txt .heading {
	font-weight: bold;
	font-size: 13px;
}
#banner .bnr a .txt .copy {
	font-size: 18px;
	color: #ffff00;
}
#banner .bnr a .txt .copy span {
	display: inline-block;
	background: url(../img/banner_icon.png) right bottom 1.3em no-repeat;
	background-size: 1.3em auto;
	padding-right: .8em;
}
.mfp-wrap {
	z-index: 9999;
}
.mfp-bg {
	z-index: 9998;
}
.mfp-figure:after {
	display: none;
}
@media only screen and (max-width: 640px) {
	#banner .bnr a .txt .date {
		display: none;
	}
}
@media only screen and (min-width: 641px) {
	#banner .bnr {
		padding-bottom: 3em;
	}
	#banner .bnr a {
		width: 950px;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
		background-color: #000;
	}
	#banner .bnr a:hover {
		opacity: .9;
	}
	#banner .bnr a .img {
		width: 325px;
		left: -25px;
		top: -50px;
	}
	#banner .bnr a .txt {
		background: url(../img/banner_icon.png) right 1em top 2em no-repeat;
		background-size: 54px auto;
		margin-left: 300px;
		padding: 2em 0;
	}
	#banner .bnr a .txt .heading {
		font-size: 19px;
		padding-bottom: .5em;
	}
	#banner .bnr a .txt .date {
		float: left;
		font-size: 17px;
		border: #fff 1px solid;
		margin-right: .5em;
		margin-top: .3em;
		padding: .2em .5em;
	}
	#banner .bnr a .txt .copy {
		font-size: 29px;
		color: #ffff00;
	}
	#banner .bnr a .txt .copy span {
		display: block;
		background: none;
		padding-right: 0;
	}
}
/* # =================================================================
   # pageNav
   # ================================================================= */
#pageNav {
	width: 100%;
	background-color: #fff;
	padding-bottom: 1.5em;
}
#pageNav ul::after { content: ""; display: block; clear: both; }
#pageNav ul li {
	float: left;
	width: 20%;
	border-left: #fff 2px solid;
	box-sizing: border-box;
}
#pageNav ul li:first-child {
	border-left: none;
}
#pageNav ul li a {
	text-align: center;
	display: block;
	line-height: 1.4;
	font-size: 14px;
	background-color: #666;
	color: #fff;
	padding: .8em 0;
}
#pageNav ul li a::after {
	font-weight: bold;
	content: '';
	display: block;
    width: .6em;
    height: .6em;
    border-top: 3px solid #fff;
    border-right: 3px solid #fff;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
	margin: 0 auto;
}
@media only screen and (max-width: 640px) {
	#pageNav ul li:last-child a {
		padding-top: 1.3em;
	}
	#pageNav ul li:last-child a::after {
		margin-top: .8em;
	}
}
@media only screen and (min-width: 641px) {
	#pageNav ul {
		width: 950px;
		margin: 0 auto;
	}
	#pageNav ul li a {
		font-size: 17px;
		padding: 1.5em 0;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
	}
	#pageNav ul li a:hover {
		background-color: #000;
	}
	#pageNav ul li a br {
		display: none;
	}
}
/* # =================================================================
   # value
   # ================================================================= */
#value h2 {
	font-size: 24px;
	color: #052a66;
	font-weight: normal;
	line-height: 1.6;
	padding-bottom: .8em;
}
#value .chart {
	padding-bottom: 2em;
}
#value .lead {
	padding-bottom: 0;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#value h2 {
		font-size: 30px;
		padding-bottom: 1.3em;
	}
	#value .sectionBody {
		background-color: #fff;
		padding: 0 50px 50px;
	}
}
/* # =================================================================
   # feature
   # ================================================================= */
#feature {
	background-color: #fff;
}
#feature .balloon {
	position: absolute;
	width: 100px;
	right: -18px;
	top: 7em;
}
#feature .featureList {
	margin-top: .5em;
	padding-bottom: 1em;
}
#feature .featureList::after { content: ""; display: block; clear: both; }
#feature .featureList li {
	float: left;
	margin-left: 2%;
	background: linear-gradient(to right, #052a66 0%, #0e357f 100%);
	width: 49%;
	height: 48vw;
	margin-bottom: 2vw;
}
#feature .featureList li p {
	color: #fff;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background-position: center 17vw;
	background-repeat: no-repeat;
	background-size: 65% auto;
	width: 100%;
	height: 48vw;
	padding-top: 4vw;
}
#feature .featureList li:nth-child(1) p {background-image: url(../img/future_icon1.png);}
#feature .featureList li:nth-child(2) p {background-image: url(../img/future_icon2.png);}
#feature .featureList li:nth-child(3) p {background-image: url(../img/future_icon3.png);}
#feature .featureList li:nth-child(4) p {background-image: url(../img/future_icon4.png);}
#feature .featureList li:nth-child(5) p {background-image: url(../img/future_icon5.png);}
#feature .image {
	padding-bottom: 1em;
}
#feature .image li {
	padding-bottom: .5em;
}
#feature .plan {
	margin-bottom: 1em;
}
#feature .plan .heading {
	font-weight: bold;
	text-align: center;
	background-color: #f4f7f6;
	padding: 1em 0;
}
#feature .plan dl,
#feature .plan dt,
#feature .plan dd {
	box-sizing: border-box;
}
#feature .plan dl {
	border-bottom: 1px solid #ddd;
}
#feature .plan dt,
#feature .plan dd {
	padding: .9em 0 0 0;
}
#feature .plan dt {
	float: left;
	width: 7em;
	font-weight: bold;
	color: #052a66;
	border-top: 1px solid #ddd;
}
#feature .plan dd {
	border-top: 1px solid #ddd;
	background-color: #fff;
	margin-left: 7em;
	padding-bottom: .9em;
}
#feature .plan dd:after { content: ""; display: block; clear: both; }
@media only screen and (max-width: 640px) {
	#feature .featureList li:nth-child(2n+1) {
		clear: both;
		margin-left: 0;
	}
	#feature .featureList li br {
		display: inline;
	}
}
@media only screen and (min-width: 641px) {
	#feature .balloon {
		width: 153px;
		right: auto;
		left: 50%;
		top: 7em;
		margin-left: 20em;
	}
	#feature .featureList {
		padding-bottom: 1.5em;
	}
	#feature .featureList li {
		width: 187px;
		height: 187px;
		margin-left: 3px;
		margin-bottom: 0;
	}
	#feature .featureList li p {
		font-size: 18px;
		background-position: center 65px;
		width: 188px;
		height: 188px;
		padding-top: 20px;
	}
	#feature .image::after { content: ""; display: block; clear: both; }
	#feature .image li {
		float: left;
		width: 32.3333333333%;
		margin-left: 1.5%;
	}
	#feature .image li:first-child {
		margin-left: 0;
	}
	#feature .plan {
		background-color: #f4f7f6;
		margin-bottom: 1em;
	}
	#feature .plan::after { content: ""; display: block; clear: both; }
	#feature .plan .heading {
		float: left;
		width: 122px;
	}
	#feature .plan dl {
		float: right;
		background-color: #fff;
		border-left: #fff 20px solid;
		width: 828px;
	}
}
/* # =================================================================
   # facility
   # ================================================================= */
#facility .lead {
	padding-bottom: 0;
}
#facility .image {
	padding-top: 2em;
	padding-bottom: 2em;
}
#facility .image li {
	padding-bottom: 2px;
}
#facility .btn {
	padding-bottom: 2em;
}
#facility .btn a {
	display: block;
	color: #fff;
	width: 18em;
	background-color: #000;
	border: #000 2px solid;
	margin-bottom: .5em;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	margin: 0 auto;
	padding: .9em 0;
}
#facility .btn a p {
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}
#facility .btn a p br {
	display: inline;
}
#facility .btn a p span {
	display: block;
	font-size: 25px;
	margin: 0 auto;
	padding-top: .2em;
}
#facility .btn a p span::before {
	content: '￥ ';
}
#facility .facilityList {
	margin-top: 1.5em;
}
#facility .facilityList .heading {
	text-align: center;
	font-weight: bold;
	padding-bottom: 1em;
}
#facility .facilityList li {
	background-color: #fff;
	margin-bottom: 1em;
	padding: 5%;
}
#facility .facilityList li .img {
	padding-bottom: 1em;
}
#facility .facilityList li .img img {
	display: block;
}
#facility .facilityList li .txt {
	color: #0e357f;
	text-align: center;
}
#facility .facilityList li .txt p {
	padding: 0;
}
#facility .facilityList li .txt h3 {
	font-size: 21px;
	font-weight: bold;
	color: #052a66;
	padding-bottom: .5em;
}
#facility .facilityList li .txt .btn {
	padding-bottom: 0;
}
#facility .facilityList li .txt .btn a {
	width: auto;
	border: #000 2px solid;
	background-color: #fff;
	color: #000;
}
#facility .facilityList li .txt .btn a p {
	font-size: 14px;
}
#facility .facilityList li .txt .btn a p span {
	font-size: 20px;
}
#facility .facilityList li .txt .btn a p span::before {
	display: none;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#facility .image::after { content: ""; display: block; clear: both; }
	#facility .image li {
		float: left;
		width: 33.2%;
		margin-left: .2%;
	}
	#facility .image li:first-child {
		margin-left: 0;
	}
	#facility .btn {
		padding-bottom: 3em;
	}
	#facility .btn a {
		width: 18em;
		font-size: 23px;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
		padding: .5em 0;
	}
	#facility .btn a:hover {
		background-color: #444;
	}
	#facility .btn a p {
		font-size: 21px;
	}
	#facility .btn a p span {
		font-size: 27px;
	}
	#facility .facilityList .heading {
		font-size: 18px;
	}
	#facility .facilityList ul::after { content: ""; display: block; clear: both; }
	#facility .facilityList ul li {
		float: right;
		width:  470px;
		padding: 0;
	}
	#facility .facilityList ul li:first-child {
		float: left;
	}
	#facility .facilityList ul li::after { content: ""; display: block; clear: both; }
	#facility .facilityList ul li .img {
		float: left;
		width:  170px;
		padding: 20px;
		padding-right: 0;
	}
	#facility .facilityList ul li .txt {
		float: right;
		text-align: left;
		width:  240px;
		line-height: 1.6;
		padding: 20px;
	}
	#facility .facilityList ul li .txt h3 {
		font-size: 20px;
	}
	#facility .facilityList li .txt .btn a {
		position: relative;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
		padding: .4em 0;
	}
	#facility .facilityList li .txt .btn a:hover {
		background-color: #000;
		color: #fff;
	}
	#facility .facilityList li .txt .btn a::before {
		position: absolute;
		content: '▶';
		display: block;
		font-size: 15px;
		left: .5em;
		top: 1.5em;
	}
	#facility .facilityList li .txt .btn a p {
		text-align: left;
		font-size: 13px;
		padding-left: 2.5em;
	}
	#facility .facilityList li .txt .btn a p span {
		font-size: 16px;
	}
}
/* # =================================================================
   # telework
   # ================================================================= */
#telework {
	padding-bottom: 0;
}
#telework .teleworkList {
	padding-bottom: 1.5em;
}
#telework .teleworkList li {
	background-color: #fff;
	text-align: center;
	margin-bottom: 1em;
	padding-bottom: 1em;
}
#telework .teleworkList li .img {
	padding-bottom: 1em;
}
#telework .teleworkList li .txt h3 {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	color: #052a66;
	font-size: 22px;
}
#telework .teleworkList li .txt p {
	font-size: 23px;
}
#telework .teleworkList li .txt p br {
	display: inline;
}
#telework .floor {
	background-color: #fff;
	padding: 2em 0;;
}
#telework .floor .heading {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	padding-bottom: .5em;
}
#telework .floor .img {
	max-width: 567px;
	margin: 0 auto;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#telework .teleworkList::after { content: ""; display: block; clear: both; }
	#telework .teleworkList li {
		float: left;
		width: 32%;
		margin-left: 2%;
		padding-bottom: 2em;
	}
	#telework .teleworkList li:first-child {
		margin-left: 0;
	}
	#telework .teleworkList li .txt h3 {
		padding: .5em 0 .3em;
	}
	#telework .floor {
		padding: 4em 0;
	}
}
/* # =================================================================
   # merit
   # ================================================================= */
#merit {
	background-color: #fff;
}
#merit .meritList {
	padding-top: 1.5em;
}
#merit .meritList li:not(:last-child) {
	padding-bottom: 3em;
}
#merit .meritList li .img {
	padding-bottom: 1em;
}
#merit .meritList li .txt h3 {
	position: relative;
	font-size: 18px;
	color: #052a66;
	margin-bottom: .8em;
	padding-left: 2em;
}
#merit .meritList li .txt h3 span {
	position: absolute;
	display: inline-block;
	font-size: 45px;
	font-family: 'Lato', sans-serif;
	font-weight: 300;
	top: -.55em;
	left: 0;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#merit .meritList li::after { content: ""; display: block; clear: both; }
	#merit .meritList li .img {
		float: left;
		width: 390px;
	}
	#merit .meritList li .txt {
		float: right;
		width: 520px;
	}
	#merit .meritList li .txt h3 {
		font-size: 20px;
		margin-bottom: 1.5em;
		padding-left: 2.5em;
	}
	#merit .meritList li .txt h3 span {
		font-size: 54px;
	}
	#merit .meritList li .txt p {
		font-size: 18px;
	}
}
/* # =================================================================
   # contactBox
   # ================================================================= */
.contactBox {
	background: linear-gradient(to right, #c8161d 0%, #e04031 100%);
}
.contactBox h2 {
	position: relative;
	color: #fff;
	margin-left: 1em;
	margin-bottom: .5em;
}
.contactBox h2::before {
	content: '';
	display: block;
	position: absolute;
	width: 1.5em;
	height: 1.5em;
	left: 50%;
	background: url(../img/contact_icon.png) 0 center no-repeat;
	background-size: contain;
	margin-top: -.2em;
	margin-left: -4.8em;
}
.contactBox .content {
	position: relative;
}
.contactBox .content .heading {
	font-size: 20px;
	position: absolute;
	font-weight: bold;
	color: #fff;
	background-color: #e04031;
	border: #fff 2px solid;
	padding: .15em 1em;
	left: 50%;
	top: -1.5em;
	margin-left: -6em;
}
.contactBox .content ul {
	background-color: #fff;
	padding: 1.5em;
	padding-top: 2em;
}
.contactBox .content ul li {
	text-align: center;
}
.contactBox .content ul li h3 {
	font-size: 20px;
	font-weight: normal;
	padding-top: .8em;
	padding-bottom: .6em;
}
.contactBox .content ul li .tel {
	font-size: 13px;
	color: #e04031;
	padding-bottom: 1.2em;
}
.contactBox .content ul li .tel .num a {
	font-size: 34px;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	text-decoration: none;
	color: #e04031;
	letter-spacing: .04em;
	line-height: 1;
}
.contactBox .content ul li .btn a {
	display: block;
	width: 15em;
	background-color: #000;
	text-decoration: none;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1;
	margin: 0 auto;
	padding: 1em 0;
}
.contactBox .content ul li .btn a span {
	color: #fff;
	background: url(../img/envelope.svg) 0 center no-repeat;
	background-size: 1.5em auto;
	padding: 1em 0;
	padding-left: 2em;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	.contactBox .content ul li {
		width: 685px;
		margin: 0 auto;
		padding-top: 3em;
	}
	.contactBox .content ul li::after { content: ""; display: block; clear: both; }
	.contactBox .content ul li .tel {
		float: left;
	}
	.contactBox .content ul li .tel {
		font-size: 17px;
		margin-right: 1.7em;
	}
	.contactBox .content ul li .tel .num a {
		font-size: 44px;
	}
	.contactBox .content ul li .btn {
		float: left;
		padding-top: .3em;
	}
	.contactBox .content ul li .btn a {
		font-size: 23px;
		-moz-transition: all .3s;
		-o-transition: all .3s;
		-webkit-transition: all .3s;
		transition: all .3s;
	}
	.contactBox .content ul li .btn a:hover {
		background-color: #444;
	}
}
/* # =================================================================
   # special
   # ================================================================= */
#special {
	background-color: #fff;
}
#special .meritList {
	border: #e04031 2px solid;
	margin-bottom: .6em;
	padding: .5em 1em .4em;
}
#special .meritList dt {
	float: left;
	width: 4em;
	color: #e04031;
	font-weight: bold;
	border-top: #ccc 1px solid;
	padding-top: .6em;
}
#special .meritList dd {
	border-top: #ccc 1px solid;
	margin-left: 4em;
	padding-top: .6em;
	padding-bottom: .6em;
}
#special .meritList dt:first-child,
#special .meritList dt:first-child + dd {
	border-top: none;
}
#special .image {
	margin-top: 1em;
}
#special .image li:not(:last-child) {
	padding-bottom: 2em;
}
#special .image li .img {
	padding-bottom: .8em;
}
#special .image li p {
	text-align: center;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#special .meritList {
		padding: 1em 50px .7em;
	}
	#special .meritList dt {
		width: 5em;
		padding-left: .5em;
	}
	#special .meritList dd {
		font-size: 18px;
		margin-left: 4em;
	}
	#special .image::after { content: ""; display: block; clear: both; }
	#special .image li {
		float: left;
		width: 32.3333%;
		margin-left: 1.5%;
	}
	#special .image li:first-child {
		margin-left: 0;
	}
}
/* # =================================================================
   # infection
   # ================================================================= */
#infection {
	background-color: #f5fbfe;
}
#infection .txt {
	padding-bottom: 1em;
}
#infection .txt h2 {
	font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;
	font-weight: normal;
}
#infection .img {
	padding-bottom: 2em;
}
#infection .lead {
	padding-bottom: 0;
}
@media only screen and (max-width: 640px) {
}
@media only screen and (min-width: 641px) {
	#infection .txt {
		float: left;
		width: 580px;
		padding-bottom: 2.5em;
	}
	#infection .txt h2 {
		font-size: 30px;
		text-align: left;
	}
	#infection .img {
		float: right;
		width: 311px;
	}
}







































