@charset "utf-8";

/* 汎用 */
.clearfix:after{
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	visibility: hidden;
	content: ".";
}

@-webkit-keyframes oi{100%{opacity:1;}}
@keyframes oi{100%{opacity:1;}}

@font-face{
	font-family: "ipamp_subset";
	src: url("./fonts/ipamp_subset.otf") format('truetype'),
	url("./fonts/ipamp_subset.eot?") format('eot'),
	url("./fonts/ipamp_subset.woff") format('woff');
}

*{
	font-size: 15px;
	line-height: 1.5;
	font-family: "ipamp_subset", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", "serif";
	font-weight: normal;
	color: #333333;
}

html{
	overflow-y: scroll;
}

body,h1,h2,h3,h4,h5,h6,form,div,abbr,header,footer,section,nav,dl,dt,dd{
	margin: 0;
	padding: 0;
}

body{
	background-color: #efefef;
}

abbr{
	border-bottom-width: 0;
}

p{
	margin: 0;
	padding: 0 0 0.6em 0;
}

img{
	display: block;
}

hr{
	clear: both;
	border: 1px solid transparent;
}

dt{
	font-weight: bold;
}

dd{
	margin-bottom: 0.5em;
}

ul{
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

@media all and (min-width:1400px){
.pc_only{
	display: block;
}
.sp_only{
	display: none;
}

	#header{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#header .corset{
		margin: 0 auto;
		width: 1000px;
		height: 91px;
	}
	#header .logo1{
		display: block;
		padding-top: 22px;
		width: 309px;
		float: left;
	}
	#header .logo1 img{
		width: 309px;
	}
	#header .logo2{
		display: none;
	}

	#navigation{
		float: right;
		padding: 26px 0 0 0;
		text-shadow: 0px 0px 0px #333333;
	}
	#navigation > label,
	#navigation > input{
		display: none;
	}
	#navigation > ul{
		*zoom: 1;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	#navigation > ul:before,
	#navigation > ul:after{
		content: "";
		display: table;
	}
	#navigation > ul:after{
		clear: both;
	}
	#navigation > ul li{
		position: relative;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		background: url(./images/navigation_separator.png) right center no-repeat;
	}
	#navigation > ul li:last-child{
		background: none;
	}
	#navigation > ul li span{
		display: block;
		margin: 0;
		padding: 1em 1.5em;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
		cursor: pointer;
	}
	#navigation > ul li span:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li a{
		display: block;
		margin: 0;
		padding: 1em 1.5em;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
	}
	#navigation > ul li a:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li ul{
		list-style: none;
		position: absolute;
		z-index: 9999;
		top: 100%;
		left: 0;
		margin: 0;
		padding: 0;
	}
	#navigation > ul li ul li{
		width: 100%;
	}
	#navigation > ul li ul li a{
		padding: 13px 15px;
		background: #eaeaea;
		text-align: left;
	}
	#navigation > ul li ul li a:hover{
		padding: 13px 15px;
		color: #ffffff;
		background: #28a7e1;
		text-align: left;
	}
	#navigation > ul li ul{
		visibility: hidden;
		opacity: 0;
		transition: 0s;
	}
	#navigation > ul li:hover ul{
		visibility: visible;
		opacity: 1;
	}
	#navigation > ul li ul li a{
		width: 200px;
		visibility: hidden;
		opacity: 0;
		transition: 0.3s;
	}
	#navigation > ul li:hover ul li a{
		visibility: visible;
		opacity: 1;
	}

	#lang_pc{
		float: right;
		margin: 0 0 0 20px;
		padding: 36px 0 0 0;
		width: 105px;
		text-shadow: 0px 0px 0px #aaaaaa;
	}
	#lang_pc a{
		float: right;
		display: block;
		margin: 0 0 0 1px;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #f9f9f9;
		border: 1px solid #dfdfdf;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
	}
	#lang_pc a:hover{
		color: #ffffff;
		background: #28a7e1;
		border: 1px solid #28a7e1;
	}
	#lang_pc span{
		float: right;
		display: block;
		margin: 0 0 0 1px;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #28a7e1;
		border: 1px solid #28a7e1;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		color: #ffffff;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
	}
	#lang_sp{
		display: none;
	}

	#catch{
		width: 100%;
		height: 448px;
		background: url("./images/catch_bg.png") #f9f9f9 center center;
		background-size: cover;
	}
	#catch .text{
		margin: 0 auto;
		padding-top: 5vw;
		width: 60vw;
	}
	#catch .text img{
		width: 50vw;
		max-width: 590px;
	}

	#toppage_contents{
		width: 100%;
		border-top: 1px solid #bbbbbb;
	}
	#toppage_contents .corset{
		margin: 0 auto;
		padding-top: 32px;
		width: 1000px;
		min-height: calc(100vh - 132px - 92px - 448px - 1px - 32px); /* 132px=Footer, 92px=Header, 448px=Catch, 32px=PaddingTop of Corset */
	}
	#toppage_contents .for_two_col{
		display: none;
	}
	#toppage_contents .box{
		padding: 0 20px;
		width: 210px;
		float: left;
	}
	#toppage_contents .box h2{
		margin-bottom: 16px;
		padding-top: 4px;
		padding-bottom: 2px;
		padding-left: 18px;
		font-size: 24px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		background: url(./images/toppage_h2_bg.png) left center no-repeat;
		background-size: 8px 28px;
	}
	#toppage_contents .box p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}
	#toppage_contents .who_we_are{
		margin: 0 auto;
		width: 80%;
	}
	#toppage_contents .who_we_are h2{
		text-align: center;
		margin-bottom: 16px;
		padding-bottom: 6px;
		font-size: 16px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		border-bottom: 1px solid #bbbbbb;
	}
	#toppage_contents .who_we_are p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}
	#subpage_contents{
		width: 100%;
	}
	#subpage_contents .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_contents .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_contents .corset{
		margin: 0 auto;
		padding-top: 32px;
		width: 1000px;
		min-height: calc(100vh - 132px - 92px - 42px - 32px); /* 132px=Footer, 92px=Header, 42px=H1, 32px=PaddingTop of Corset */
	}
	#subpage_contents h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_contents h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_contents h2 a:hover{
		color: #28a7e1;
	}
	#subpage_contents h3{
		font-weight: bold;
	}
	#subpage_contents table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		border-top: 1px solid #cccccc;
/*		border-left: 1px solid #cccccc; */
	}
	#subpage_contents table.default tr.odd{
		background-color: #efefef;
	}
	#subpage_contents table.default tr.even{
		background-color: #ffffff;
	}
	#subpage_contents table.default th{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
/*		background-color: #28a7e1; */
		font-weight: bold;
		color: #333333;
		white-space: nowrap;
		vertical-align: middle;
		text-align: left;
	}
	#subpage_contents table.default td{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
	}
	#subpage_contents table.default td.number{
		text-align: right;
	}
	#subpage_contents .staff{
		float: left;
		width: 460px;
		margin-bottom: 60px;
	}
	#subpage_contents .staff_single{
		float: none;
		width: 800px;
		margin-right: auto;
		margin-left: auto;
	}
	#subpage_contents .staff_odd{
		margin-right: 80px;
	}
	#subpage_contents .staff_even{
		margin-right: 0;
	}
	#subpage_contents .staff h2{
		margin-bottom: 1.5em;
		padding: 2px 0 0 20px;
		background: url(./images/subpage_staff_h2_bg.png) left bottom no-repeat;
		background-size: 6px 37px;
		line-height: 1;
	}
	#subpage_contents .staff h2 > span{
		display: block;
		padding-top: 4px;
		font-size: 14px;
		text-indent: 0.1em;
		line-height: 1;
	}
	#subpage_contents .staff img{
		width: 200px;
		float: right;
		margin-left: 20px;
		margin-bottom: 10px;
	}
	#subpage_contents .staff h3{
		font-weight: bold;
	}
	#subpage_contents .overview_exterior{
		float: right;
		margin-left: 40px;
		width: 270px;
	}
	#subpage_contents table.overview{
		width: 690px;
	}

	/* blog */
	#subpage_contents a.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_contents .blog_contents{
		width: 750px;
		margin-right: 80px;
		float: left;
	}
	#subpage_contents .blog_contents img{
		max-width: 750px;
		margin-bottom: 1em;
	}
	#subpage_contents .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_contents .blog_navigation{
		width: 170px;
		float: right;
	}
	#subpage_contents .blog_navigation li a{
		text-decoration: none;
	}
	#subpage_contents .blog_navigation li a:hover{
		color: #28a7e1;
	}

	/* access.html */
	#subpage_contents .google_map{
		width: 998px;
		height: 450px;
		border: 1px solid #bbbbbb;
	}
	#subpage_contents .route,
	#subpage_contents .route_entrance{
		width: 1000px;
		padding: 6px 0;
	}
	#subpage_contents .route .pc{display: block;}
	#subpage_contents .route .sp{display: none;}
	#subpage_contents .route img{
		width: 230px;
		height: 307px;
		float: left;
	}
	#subpage_contents .route span.arrow{
		display: block;
		float: left;
		margin: 123px 20px 0 20px;
		width: 60px;
		height: 60px;
		background: url(./images/arrow_right.png);
		background-size: cover;
	}
	#subpage_contents .route a.click{
		display: block;
		float: left;
		margin: 123px 20px 0 20px;
		width: 60px;
		height: 60px;
		background: url(./images/arrow_click.png);
		background-size: cover;
	}
	#subpage_contents .route_entrance img{
		width: 1000px;
	}

	/* contact.html */
	#subpage_contents .contact_by_tel{
		margin-right: 80px;
		float: left;
		width: 360px;
	}
	#subpage_contents .contact_by_form{
		float: left;
		width: 560px;
	}
	#subpage_contents img.contact_phone{
		width: 100%;
	}
	#subpage_contents div.contact{
		margin: 0 auto;
		display: table;
	}
	#subpage_contents div.contact dl{
		display: table-row;
	}
	#subpage_contents div.contact dt,
	#subpage_contents div.contact dd{
		display: table-cell;
		vertical-align: middle;
	}
	#subpage_contents div.contact dt{
		padding: 5px 20px 5px 0;
	}
	#subpage_contents div.contact dd{
		padding: 5px 0 5px 20px;
	}

	#subpage_contents div.contact span.require{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #28a7e1;
		color: #ffffff;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
	#subpage_contents div.contact span.any{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #efefef;
		color: #666666;
		border: 1px solid #bbbbbb;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}

	input, textarea, select{
		background-color: #f9f9f9;
		padding: 8px 10px;
		border: 1px solid #bbbbbb;
		margin: 0 5px 0 0;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		width: 480px;
		outline: none;
		line-height: 1;
	}
	input[type="radio"]{
		width: auto;
	}
	button{
		display: block;
		margin: 2em auto 0 auto;
		padding: 16px 64px;
		background: #333333;
		color: white;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-style: none;
		cursor: pointer;
	}
	button:hover{
		background: #666666;
		color: white;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-style: none;
	}
	textarea{
		height: 10em;
	}
	input::-webkit-input-placeholder,
	textarea::-webkit-input-placeholder{
		color: #999999;
	}
	input:-ms-input-placeholder,
	input:-ms-input-placeholder{
		color: #999999;
	}
	input::-moz-placeholder,
	input::-moz-placeholder{
		color: #999999;
	}
	input[type="text"]:focus,
	input[type="email"]:focus,
	textarea:focus,
	select:focus{
		background-color: #ffffff;
		border: 1px solid #28a7e1;
	}
	label{
		margin-left: 48px;
	}
	.form_warning{
		background-color: #ffcccc !important;
	}
	span.pbox{
		display: block;
		width: 480px;
		background-color: #f9f9f9;
		padding: 8px 10px;
		border: 1px solid #bbbbbb;
		margin: 0 5px 0 0;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		outline: none;
		line-height: 1;
	}

	#footer{
		width: 100%;
		height: 132px;
		background: #333333;
	}
	#footer img{
		margin: 0 auto;
		padding: 16px;
		width: 60px;
	}
	#footer > span{
		display: block;
		margin: 0 0 5px 0;
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		color: #efefef;
		line-height: 1;
	}
	#footer > address{
		display: block;
		text-align: center;
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		color: #efefef;
		line-height: 1.5;
	}
	#footer > address > br{
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		line-height: 1.5;
	}
	
	/* greeting.html */
	.greeting_image{
		width: 400px;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	/* office.html */
	#subpage_office{
		width: 100%;
	}
	#subpage_office .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_office .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_office .corset{
		margin: 0 auto;
		padding-top: 0;
		width: 100%;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_office #img1{
		position: relative;
		float: left;
		width: 43%;
		height: calc((100vh - 132px - 92px) * 0.63); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img1.jpg);
		-webkit-animation: oi 0.5s ease 0.2s 1 forwards;
		animation: oi 0.5s ease 0.2s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img2{
		position: relative;
		float: left;
		width: 57%;
		height: calc((100vh - 132px - 92px) * 0.63); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img2.jpg);
		-webkit-animation: oi 0.5s ease 0.4s 1 forwards;
		animation: oi 0.5s ease 0.4s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img3{
		position: relative;
		float: left;
		width: 34%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img3.jpg);
		-webkit-animation: oi 0.5s ease 0.6s 1 forwards;
		animation: oi 0.5s ease 0.6s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img4{
		position: relative;
		float: left;
		width: 40%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img4.jpg);
		-webkit-animation: oi 0.5s ease 0.8s 1 forwards;
		animation: oi 0.5s ease 0.8s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img5{
		position: relative;
		float: left;
		width: 26%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img5.jpg);
		-webkit-animation: oi 0.5s ease 1s 1 forwards;
		animation: oi 0.5s ease 1s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img1_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		top: 0;
		right: 0;
		min-width: calc(55% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #img2_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		left: 0;
		bottom: 0;
		min-width: calc(40% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #caption1{
		display: none;
	}
	#subpage_office #caption2{
		display: none;
	}

	/* interview.html */
	#interview h2{
		font-size: 19px;
		font-weight: bold;
		margin-bottom: 1em;
	}
	#interview h3{
		padding: 11px 0 10px 49px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.4;
		text-decoration: underline;
		margin-bottom: 0.3em;
		background: url(./images/q.png) left center no-repeat;
		background-size: 39px 39px;
	}
	#interview img{
		width: 420px;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	#joboffer{
		padding-top: 1em;
		text-align: center;
	}
	#joboffer h2{
		font-weight: bold;
		color: #ff3333;
	}
	#joboffer a:link{
		font-size: 14px;
		text-decoration: none;
	}
	#joboffer a:hover{
		font-size: 14px;
		text-decoration: underline;
	}

	/* overview.html */
	#subpage_overview{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_overview_bg.jpg);
	}
	#subpage_overview .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 75vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_overview img.arrow{
		display: none;
	}
	#subpage_overview .whitebox{
		display: none;
		margin-bottom: 3em;
		padding: 2.3em 1.9em;
		width: calc(460px - 1.9em - 1.9em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_overview .whitebox p{
		font-size: 19px;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 1.9;
		color: #333333;
	}
	#subpage_overview table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
	}
	#subpage_overview table.default th{
		padding: 7px 10px 7px 0;
		font-family: "メイリオ";
		color: #333333;
		white-space: nowrap;
		vertical-align: top;
		text-align: right;
	}
	#subpage_overview table.default td{
		padding: 7px 0 7px 10px;
		font-family: "メイリオ";
	}
	#subpage_overview table.default td small{
		font-size: 85%;
		font-family: "メイリオ";
	}
	#subpage_contents #notice_asahi_kazuo,
	#subpage_contents #notice_masuda_tatsuya{
		margin: 0 auto;
		width: 60%;
		line-height: 1.4;
		padding-bottom: 2em;
	}

	/* info/ */
	#subpage_info{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_info_bg.jpg);
	}
	#subpage_info .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
		background-color: #efefef;
	}
	#subpage_info .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_info .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 75vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_info .whitebox{
		margin: 0 auto;
		margin-bottom: 3em;
		padding: 1.9em 1.9em;
		width: calc(70vw - 1.9em - 1.9em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_info a.pagelink{
		display: block;
		background-color: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_info .blog_contents img{
		max-width: 100%;
		margin-bottom: 1em;
	}
	#subpage_info .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_info h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_info h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_info h2 a:hover{
		color: #28a7e1;
	}

}

@media all and (max-width:1399px){
.pc_only{
	display: block;
}
.sp_only{
	display: none;
}

	#header{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#header .corset{
		margin: 0 auto;
		width: 1000px;
		height: 91px;
	}
	#header .logo1{
		display: block;
		padding-top: 22px;
		width: 309px;
		float: left;
	}
	#header .logo1 img{
		width: 309px;
	}
	#header .logo2{
		display: none;
	}

	#navigation{
		float: right;
		padding: 26px 0 0 0;
		text-shadow: 0px 0px 0px #333333;
	}
	#navigation > label,
	#navigation > input{
		display: none;
	}
	#navigation > ul{
		*zoom: 1;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	#navigation > ul:before,
	#navigation > ul:after{
		content: "";
		display: table;
	}
	#navigation > ul:after{
		clear: both;
	}
	#navigation > ul li{
		position: relative;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		background: url(./images/navigation_separator.png) right center no-repeat;
	}
	#navigation > ul li:last-child{
		background: none;
	}
	#navigation > ul li span{
		display: block;
		margin: 0;
		padding: 1em 1.5em;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
		cursor: pointer;
	}
	#navigation > ul li span:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li a{
		display: block;
		margin: 0;
		padding: 1em 1.5em;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
	}
	#navigation > ul li a:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li ul{
		list-style: none;
		position: absolute;
		z-index: 9999;
		top: 100%;
		left: 0;
		margin: 0;
		padding: 0;
	}
	#navigation > ul li ul li{
		width: 100%;
	}
	#navigation > ul li ul li a{
		padding: 13px 15px;
		background: #eaeaea;
		text-align: left;
	}
	#navigation > ul li ul li a:hover{
		padding: 13px 15px;
		color: #ffffff;
		background: #28a7e1;
		text-align: left;
	}
	#navigation > ul li ul{
		visibility: hidden;
		opacity: 0;
		transition: 0s;
	}
	#navigation > ul li:hover ul{
		visibility: visible;
		opacity: 1;
	}
	#navigation > ul li ul li a{
		width: 200px;
		visibility: hidden;
		opacity: 0;
		transition: 0.3s;
	}
	#navigation > ul li:hover ul li a{
		visibility: visible;
		opacity: 1;
	}

	#lang_pc{
		float: right;
		margin: 0 0 0 20px;
		padding: 36px 0 0 0;
		width: 105px;
		text-shadow: 0px 0px 0px #aaaaaa;
	}
	#lang_pc a{
		float: right;
		display: block;
		margin: 0 0 0 1px;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #f9f9f9;
		border: 1px solid #dfdfdf;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
	}
	#lang_pc a:hover{
		color: #ffffff;
		background: #28a7e1;
		border: 1px solid #28a7e1;
	}
	#lang_pc span{
		float: right;
		display: block;
		margin: 0 0 0 1px;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #28a7e1;
		border: 1px solid #28a7e1;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		color: #ffffff;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
	}
	#lang_sp{
		display: none;
	}

	#catch{
		width: 100%;
		height: 32vw;
		background: url("./images/catch_bg.png") #f9f9f9 center center;
		background-size: cover;
	}
	#catch .text{
		margin: 0 auto;
		padding-top: 5vw;
		width: 60vw;
	}
	#catch .text img{
		width: 50vw;
		max-width: 590px;
	}

	#toppage_contents{
		width: 100%;
		border-top: 1px solid #bbbbbb;
	}
	#toppage_contents .corset{
		margin: 0 auto;
		padding-top: 32px;
		width: 1000px;
		min-height: calc(100vh - 132px - 92px - 32vw - 1px - 32px); /* 132px=Footer, 92px=Header, 32vw=Catch, 1px=Border, 32px=PaddingTop of Corset */
	}
	#toppage_contents .for_two_col{
		display: none;
	}
	#toppage_contents .box{
		padding: 0 20px;
		width: 210px;
		float: left;
	}
	#toppage_contents .box h2{
		margin-bottom: 16px;
		padding-top: 4px;
		padding-bottom: 2px;
		padding-left: 18px;
		font-size: 24px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		background: url(./images/toppage_h2_bg.png) left center no-repeat;
		background-size: 8px 28px;
	}
	#toppage_contents .box p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}
	#toppage_contents .who_we_are{
		margin: 0 auto;
		width: 80%;
	}
	#toppage_contents .who_we_are h2{
		text-align: center;
		margin-bottom: 16px;
		padding-bottom: 6px;
		font-size: 16px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		border-bottom: 1px solid #bbbbbb;
	}
	#toppage_contents .who_we_are p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}

	#subpage_contents{
		width: 100%;
	}
	#subpage_contents .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_contents .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_contents .corset{
		margin: 0 auto;
		padding-top: 32px;
		width: 1000px;
		min-height: calc(100vh - 132px - 92px - 42px - 32px); /* 132px=Footer, 92px=Header, 42px=H1, 32px=PaddingTop of Corset */
	}
	#subpage_contents h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_contents h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_contents h2 a:hover{
		color: #28a7e1;
	}
	#subpage_contents h3{
		font-weight: bold;
	}
	#subpage_contents table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		border-top: 1px solid #cccccc;
/*		border-left: 1px solid #cccccc; */
	}
	#subpage_contents table.default tr.odd{
		background-color: #efefef;
	}
	#subpage_contents table.default tr.even{
		background-color: #ffffff;
	}
	#subpage_contents table.default th{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
/*		background-color: #28a7e1; */
		font-weight: bold;
		color: #333333;
		white-space: nowrap;
		vertical-align: middle;
		text-align: left;
	}
	#subpage_contents table.default td{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
	}
	#subpage_contents table.default td.number{
		text-align: right;
	}
	#subpage_contents .staff{
		float: left;
		width: 460px;
		margin-bottom: 60px;
	}
	#subpage_contents .staff_single{
		float: none;
		width: 800px;
		margin-right: auto;
		margin-left: auto;
	}
	#subpage_contents .staff_odd{
		margin-right: 80px;
	}
	#subpage_contents .staff_even{
		margin-right: 0;
	}
	#subpage_contents .staff h2{
		margin-bottom: 1.5em;
		padding: 2px 0 0 16px;
		background: url(./images/subpage_staff_h2_bg.png) left bottom no-repeat;
		background-size: 6px 37px;
		line-height: 1;
	}
	#subpage_contents .staff h2 > span{
		display: block;
		padding-top: 4px;
		font-size: 14px;
		text-indent: 0.1em;
		line-height: 1;
	}
	#subpage_contents .staff img{
		width: 200px;
		float: right;
		margin-left: 20px;
		margin-bottom: 10px;
	}
	#subpage_contents .staff h3{
		font-weight: bold;
	}
	#subpage_contents .overview_exterior{
		float: right;
		margin-left: 40px;
		width: 270px;
	}
	#subpage_contents table.overview{
		width: 690px;
	}

	/* blog */
	#subpage_contents a.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_contents .blog_contents{
		width: 750px;
		margin-right: 80px;
		float: left;
	}
	#subpage_contents .blog_contents img{
		max-width: 750px;
		margin-bottom: 1em;
	}
	#subpage_contents .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_contents .blog_navigation{
		width: 170px;
		float: right;
	}
	#subpage_contents .blog_navigation li a{
		text-decoration: none;
	}
	#subpage_contents .blog_navigation li a:hover{
		color: #28a7e1;
	}

	/* access.html */
	#subpage_contents .google_map{
		width: 998px;
		height: 450px;
		border: 1px solid #bbbbbb;
	}
	#subpage_contents .route,
	#subpage_contents .route_entrance{
		width: 1000px;
		padding: 6px 0;
	}
	#subpage_contents .route .pc{display: block;}
	#subpage_contents .route .sp{display: none;}
	#subpage_contents .route img{
		width: 230px;
		height: 307px;
		float: left;
	}
	#subpage_contents .route span.arrow{
		display: block;
		float: left;
		margin: 123px 20px 0 20px;
		width: 60px;
		height: 60px;
		background: url(./images/arrow_right.png);
		background-size: cover;
	}
	#subpage_contents .route a.click{
		display: block;
		float: left;
		margin: 123px 20px 0 20px;
		width: 60px;
		height: 60px;
		background: url(./images/arrow_click.png);
		background-size: cover;
	}
	#subpage_contents .route_entrance img{
		width: 1000px;
	}

	/* contact.html */
	#subpage_contents .contact_by_tel{
		margin-right: 80px;
		float: left;
		width: 360px;
	}
	#subpage_contents .contact_by_form{
		float: left;
		width: 560px;
	}
	#subpage_contents img.contact_phone{
		margin: 0 auto;
		width: 360px;
	}
	#subpage_contents div.contact{
		margin: 0 auto;
		display:table;
	}
	#subpage_contents div.contact dl{
		display:table-row;
	}
	#subpage_contents div.contact dt,
	#subpage_contents div.contact dd{
		display: table-cell;
		vertical-align: middle;
	}
	#subpage_contents div.contact dt{
		padding: 5px 20px 5px 0;
	}
	#subpage_contents div.contact dd{
		padding: 5px 0 5px 20px;
	}
	#subpage_contents div.contact span.require{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #28a7e1;
		color: #ffffff;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
	#subpage_contents div.contact span.any{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #efefef;
		color: #666666;
		border: 1px solid #bbbbbb;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}

	input, textarea, select{
		background-color: #f9f9f9;
		padding: 8px 10px;
		border: 1px solid #bbbbbb;
		margin: 0 5px 0 0;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		width: 480px;
		outline: none;
		line-height: 1;
	}
	input[type="radio"]{
		width: auto;
	}
	button{
		display: block;
		margin: 2em auto 0 auto;
		padding: 16px 64px;
		background: #333333;
		color: white;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-style: none;
		cursor: pointer;
	}
	button:hover{
		background: #666666;
		color: white;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-style: none;
	}
	textarea{
		height: 10em;
	}
	input::-webkit-input-placeholder,
	textarea::-webkit-input-placeholder{
		color: #999999;
	}
	input:-ms-input-placeholder,
	input:-ms-input-placeholder{
		color: #999999;
	}
	input::-moz-placeholder,
	input::-moz-placeholder{
		color: #999999;
	}
	input[type="text"]:focus,
	input[type="email"]:focus,
	textarea:focus,
	select:focus{
		background-color: #ffffff;
		border: 1px solid #28a7e1;
	}
	label{
		margin-left: 48px;
	}
	.form_warning{
		background-color: #ffcccc !important;
	}
	span.pbox{
		display: block;
		width: 480px;
		background-color: #f9f9f9;
		padding: 8px 10px;
		border: 1px solid #bbbbbb;
		margin: 0 5px 0 0;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		outline: none;
		line-height: 1;
	}

	#footer{
		width: 100%;
		height: 132px;
		background: #333333;
	}
	#footer img{
		margin: 0 auto;
		padding: 16px;
		width: 60px;
	}
	#footer > span{
		display: block;
		margin: 0 0 5px 0;
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		color: #efefef;
		line-height: 1;
	}
	#footer > address{
		display: block;
		text-align: center;
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		color: #efefef;
		line-height: 1.5;
	}
	#footer > address > br{
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		line-height: 1.5;
	}

	/* greeting.html */
	.greeting_image{
		width: 400px;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	/* office.html */
	#office_interior_img1{width:60%;float:left;text-align:center;padding-bottom:15px;}
	#office_interior_img2{width:60%;float:left;text-align:center;}
	#office_interior_img3{width:38%;float:right;text-align:center;}
	#office_interior_img1>img{width:100%;margin-bottom:0.1em;}
	#office_interior_img2>img{width:100%;margin-bottom:0.1em;}
	#office_interior_img3>img{width:100%;margin-bottom:0.1em;}

	#subpage_office{
		width: 100%;
	}
	#subpage_office .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_office .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_office .corset{
		margin: 0 auto;
		padding-top: 0;
		width: 100%;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_office #img1{
		position: relative;
		float: left;
		width: 43%;
		height: calc((100vh - 132px - 92px) * 0.63); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img1.jpg);
		-webkit-animation: oi 0.5s ease 0.2s 1 forwards;
		animation: oi 0.5s ease 0.2s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img2{
		position: relative;
		float: left;
		width: 57%;
		height: calc((100vh - 132px - 92px) * 0.63); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img2.jpg);
		-webkit-animation: oi 0.5s ease 0.4s 1 forwards;
		animation: oi 0.5s ease 0.4s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img3{
		position: relative;
		float: left;
		width: 34%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img3.jpg);
		-webkit-animation: oi 0.5s ease 0.6s 1 forwards;
		animation: oi 0.5s ease 0.6s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img4{
		position: relative;
		float: left;
		width: 40%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img4.jpg);
		-webkit-animation: oi 0.5s ease 0.8s 1 forwards;
		animation: oi 0.5s ease 0.8s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img5{
		position: relative;
		float: left;
		width: 26%;
		height: calc((100vh - 132px - 92px) * 0.37); /* 132px=Footer, 92px=Header */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img5.jpg);
		-webkit-animation: oi 0.5s ease 1s 1 forwards;
		animation: oi 0.5s ease 1s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img1_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		top: 0;
		right: 0;
		min-width: calc(55% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #img2_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		left: 0;
		bottom: 0;
		min-width: calc(40% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #caption1{
		display: none;
	}
	#subpage_office #caption2{
		display: none;
	}

	/* interview.html */
	#interview h2{
		font-size: 19px;
		font-weight: bold;
		margin-bottom: 1em;
	}
	#interview h3{
		padding: 11px 0 10px 49px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.4;
		text-decoration: underline;
		margin-bottom: 0.3em;
		background: url(./images/q.png) left center no-repeat;
		background-size: 39px 39px;
	}
	#interview img{
		width: 420px;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	#joboffer{
		padding-top: 1em;
		text-align: center;
	}
	#joboffer h2{
		font-weight: bold;
		color: #ff3333;
	}
	#joboffer a:link{
		font-size: 14px;
		text-decoration: none;
	}
	#joboffer a:hover{
		font-size: 14px;
		text-decoration: underline;
	}

	/* overview.html */
	#subpage_overview{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_overview_bg.jpg);
	}
	#subpage_overview .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 75vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_overview img.arrow{
		display: none;
	}
	#subpage_overview .whitebox{
		display: none;
		margin-bottom: 3em;
		padding: 2.3em 1.9em;
		width: calc(460px - 1.9em - 1.9em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_overview .whitebox p{
		font-size: 19px;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 1.9;
		color: #333333;
	}
	#subpage_overview table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
	}
	#subpage_overview table.default th{
		padding: 7px 10px 7px 0;
		font-family: "メイリオ";
		color: #333333;
		white-space: nowrap;
		vertical-align: top;
		text-align: right;
	}
	#subpage_overview table.default td{
		padding: 7px 0 7px 10px;
		font-family: "メイリオ";
	}
	#subpage_overview table.default td small{
		font-size: 85%;
		font-family: "メイリオ";
	}
	#subpage_contents #notice_asahi_kazuo,
	#subpage_contents #notice_masuda_tatsuya{
		margin: 0 auto;
		width: 60%;
		line-height: 1.4;
		padding-bottom: 2em;
	}

	/* info/ */
	#subpage_info{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_info_bg.jpg);
	}
	#subpage_info .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
		background-color: #efefef;
	}
	#subpage_info .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(1000px - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_info .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 75vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_info .whitebox{
		margin: 0 auto;
		margin-bottom: 3em;
		padding: 2.3em 1.9em;
		width: calc(70vw - 1.9em - 1.9em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_info a.pagelink{
		display: block;
		background-color: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_info .blog_contents img{
		max-width: 100%;
		margin-bottom: 1em;
	}
	#subpage_info .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_info h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_info h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_info h2 a:hover{
		color: #28a7e1;
	}

}

@media all and (max-width:1040px){
.pc_only{
	display: none;
}
.sp_only{
	display: block;
}

	#header{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#header .corset{
		margin: 0 auto;
		width: 100%;
		height: auto;
	}
	#header .logo1{
		display: none;
	}
	#header .logo2{
		display: block;
		padding: 12px 0 8px 0;
		text-align: center;
		float: none;
		font-size: 13px;
		font-weight: bold;
		text-shadow: 0px 0px 1px #999999;
		letter-spacing: 0.1em;
		border-bottom: 1px solid #bbbbbb;
	}
	#header .logo2 img{
		margin: 0 auto 4px auto;
		width: 83px;
	}
	#header .logo2 a{
		font-size: 13px;
		font-weight: bold;
		text-shadow: 0px 0px 1px #999999;
		letter-spacing: 0.1em;
		text-decoration: none;
	}

	#navigation{
		margin: 0 auto;
		padding: 0;
		width: 600px;
		float: none;
		text-shadow: 0px 0px 0px #333333;
	}
	#navigation > label,
	#navigation > input{
		display: none;
	}
	#navigation > ul{
		*zoom: 1;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	#navigation > ul:before,
	#navigation > ul:after{
		content: "";
		display: table;
	}
	#navigation > ul:after{
		clear: both;
	}
	#navigation > ul li{
		position: relative;
		float: left;
		margin: 0;
		padding: 0;
		text-align: center;
		background: url(./images/navigation_separator.png) right center no-repeat;
	}
	#navigation > ul li:last-child{
		background: none;
	}
	#navigation > ul li span{
		display: block;
		margin: 0;
		padding: 1em 0;
		text-align: center;
		width: 120px;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
		cursor: pointer;
	}
	#navigation > ul li span:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li a{
		display: block;
		margin: 0;
		padding: 1em 0;
		text-align: center;
		width: 120px;
		color: #333333;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
	}
	#navigation > ul li a:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li ul{
		list-style: none;
		position: absolute;
		z-index: 9999;
		top: 100%;
		left: 0;
		margin: 0;
		padding: 0;
	}
	#navigation > ul li ul li{
		width: 100%;
	}
	#navigation > ul li ul li a{
		padding: 13px 15px;
		background: #eaeaea;
		text-align: left;
	}
	#navigation > ul li ul li a:hover{
		padding: 13px 15px;
		color: #ffffff;
		background: #28a7e1;
		text-align: left;
	}
	#navigation > ul li ul{
		visibility: hidden;
		opacity: 0;
		transition: 0s;
	}
	#navigation > ul li:hover ul{
		visibility: visible;
		opacity: 1;
	}
	#navigation > ul li ul li a{
		width: 200px;
		visibility: hidden;
		opacity: 0;
		transition: 0.3s;
	}
	#navigation > ul li ul.last li a{
		width: auto;
		white-space: nowrap;
		padding-right: 1em;
	}
	#navigation > ul li:hover ul li a{
		visibility: visible;
		opacity: 1;
	}

	#lang_pc{
		display: none;
	}
	#lang_sp{
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		float: none;
		margin: 0 auto;
		padding: 9px 0;
		width: 36px;
		text-shadow: 0px 0px 0px #aaaaaa;
	}
	#lang_sp a{
		display: block;
		margin: 0 0 3px 0;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #efefef;
		border: 1px solid #dfdfdf;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
		float: none;
	}
	#lang_sp a:hover{
		color: #ffffff;
		background: #28a7e1;
		border: 1px solid #28a7e1;
	}
	#lang_sp span{
		display: block;
		margin: 0 0 3px 0;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		color: #333333;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
		float: none;
	}

	#catch{
		width: 100%;
		height: 32vw;
		background: url("./images/catch_bg.png") #f9f9f9 center center;
		background-size: cover;
	}
	#catch .text{
		margin: 0 auto;
		padding-top: 5vw;
		width: 80vw;
	}
	#catch .text img{
		width: 50vw;
		max-width: 590px;
	}

	#toppage_contents{
		width: 100%;
		border-top: 1px solid #bbbbbb;
	}
	#toppage_contents .corset{
		margin: 0 auto;
		width: calc(100vw - 10vw);
		padding-top: 32px;
		min-height: calc(100vh - 132px - 92px - 32vw - 1px - 32px); /* 132px=Footer, 92px=Header, 32vw=Catch, 1px=Border, 32px=PaddingTop of Corset */
	}
	#toppage_contents .for_two_col{
		display: block;
	}
	#toppage_contents .box{
		padding: 0 4vw;
		padding-bottom: 1vw;
		width: calc(45vw - 6vw);
		float: left;
/*		background: #ffcccc; */
	}
	#toppage_contents .b1{padding-right: 2vw;}
	#toppage_contents .b2{padding-left: 2vw;}
	#toppage_contents .b3{padding-right: 2vw;}
	#toppage_contents .b4{padding-left: 2vw;}
	#toppage_contents .box h2{
		margin-bottom: 16px;
		padding-top: 4px;
		padding-bottom: 2px;
		padding-left: 18px;
		font-size: 24px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		background: url(./images/toppage_h2_bg.png) left center no-repeat;
		background-size: 8px 28px;
	}
	#toppage_contents .box p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}

	#subpage_contents{
		width: 100%;
	}
	#subpage_contents .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_contents .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_contents .corset{
		margin: 0 auto;
		padding-top: 32px;
		width: calc(100vw - 10vw);
		min-height: calc(100vh - 132px - 90px - 43px - 42px - 32px); /* 132px=Footer, 90px=Header, 43px=Navi, 42px=H1, 32px=PaddingTop of Corset */
	}
	#subpage_contents h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_contents h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_contents h2 a:hover{
		color: #28a7e1;
	}
	#subpage_contents table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		border-top: 1px solid #cccccc;
/*		border-left: 1px solid #cccccc; */
	}
	#subpage_contents table.default tr.odd{
		background-color: #efefef;
	}
	#subpage_contents table.default tr.even{
		background-color: #ffffff;
	}
	#subpage_contents table.default th{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
/*		background-color: #28a7e1; */
		font-weight: bold;
		color: #333333;
		white-space: nowrap;
		vertical-align: middle;
		text-align: left;
	}
	#subpage_contents table.default td{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
	}
	#subpage_contents table.default td.number{
		text-align: right;
	}
	#subpage_contents .staff{
		float: none;
		width: 100%;
		margin-bottom: 60px;
	}
	#subpage_contents .staff_odd{
		margin-right: 0;
	}
	#subpage_contents .staff_even{
		margin-right: 0;
	}
	#subpage_contents .staff h2{
		margin-bottom: 1.5em;
		padding: 2px 0 0 16px;
		background: url(./images/subpage_staff_h2_bg.png) left bottom no-repeat;
		background-size: 6px 37px;
		line-height: 1;
	}
	#subpage_contents .staff h2 > span{
		display: block;
		padding-top: 4px;
		font-size: 14px;
		text-indent: 0.1em;
		line-height: 1;
	}
	#subpage_contents .staff img{
		width: 200px;
		float: right;
		margin-left: 20px;
		margin-bottom: 10px;
	}
	#subpage_contents .staff h3{
		font-weight: bold;
	}
	#subpage_contents .overview_exterior{
		display: none;
	}
	#subpage_contents table.overview{
		width: 100%;
	}

	/* blog */
	#subpage_contents a.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_contents .blog_contents{
		width: 100%;
	}
	#subpage_contents .blog_contents img{
		width: 100%;
		margin-bottom: 1em;
	}
	#subpage_contents .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_contents .blog_navigation{
		margin: 0 auto;
		width: 420px;
		float: none;
	}
	#subpage_contents .blog_navigation li a{
		text-decoration: none;
	}
	#subpage_contents .blog_navigation li a:hover{
		color: #28a7e1;
	}

	/* access.html */
	#subpage_contents .google_map{
		width: 100%;
		height: 40vw;
		border: 1px solid #bbbbbb;
	}
	#subpage_contents .route,
	#subpage_contents .route_entrance{
		width: 100%;
		padding: 6px 0;
	}
	#subpage_contents .route .pc{display: none;}
	#subpage_contents .route .sp{display: block;}
	#subpage_contents .route img{
		width: 100%;
		height: auto;
		float: none;
	}
	#subpage_contents .route span.arrow{
		display: block;
		float: none;
		margin: 20px auto;
		width: 7vw;
		height: 7vw;
		background: url(./images/arrow_bottom.png) no-repeat;
		background-size: cover;
	}
	#subpage_contents .route a.click{
		display: block;
		float: none;
		margin: 20px auto;
		width: 7vw;
		height: 7vw;
		background: url(./images/arrow_click.png);
		background-size: cover;
	}
	#subpage_contents .route_entrance img{
		width: 100%;
	}

	/* contact.html */
	#subpage_contents .contact_by_tel{
		margin-bottom: 80px;
		float: none;
		width: 100%;
	}
	#subpage_contents .contact_by_form{
		float: none;
		width: 100%;
	}
	#subpage_contents img.contact_phone{
		margin: 0 auto;
		width: 360px;
	}

	input, textarea, select{
		width: calc(100vw - 26em);
	}
	input[type="radio"]{
		width: auto;
	}

	span.pbox{
		width: calc(100vw - 26em);
	}

	#footer{
		width: 100%;
		height: 132px;
		background: #333333;
	}
	#footer img{
		margin: 0 auto;
		padding: 16px;
		width: 60px;
	}
	#footer > span{
		display: block;
		margin: 0 0 5px 0;
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		color: #efefef;
		line-height: 1;
	}
	#footer > address{
		display: block;
		text-align: center;
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		color: #efefef;
		line-height: 1.5;
	}
	#footer > address > br{
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		line-height: 1.5;
	}

	/* greeting.html */
	.greeting_image{
		width: 40vw;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	/* office.html */
	#office_interior_img1{width:60%;float:left;text-align:center;padding-bottom:15px;}
	#office_interior_img2{width:60%;float:left;text-align:center;}
	#office_interior_img3{width:38%;float:right;text-align:center;}
	#office_interior_img1>img{width:100%;margin-bottom:0.1em;}
	#office_interior_img2>img{width:100%;margin-bottom:0.1em;}
	#office_interior_img3>img{width:100%;margin-bottom:0.1em;}

	#subpage_office{
		width: 100%;
	}
	#subpage_office .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_office .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_office .corset{
		margin: 0 auto;
		padding-top: 0;
		width: 100%;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_office #img1{
		position: relative;
		float: left;
		width: 43%;
		height: calc((100vh - 132px - 92px - 41px) * 0.63); /* 132px=Footer, 92px=Header, 41px=H1 */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img1.jpg);
		-webkit-animation: oi 0.5s ease 0.2s 1 forwards;
		animation: oi 0.5s ease 0.2s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img2{
		position: relative;
		float: left;
		width: 57%;
		height: calc((100vh - 132px - 92px - 41px) * 0.63); /* 132px=Footer, 92px=Header, 41px=H1 */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img2.jpg);
		-webkit-animation: oi 0.5s ease 0.4s 1 forwards;
		animation: oi 0.5s ease 0.4s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img3{
		position: relative;
		float: left;
		width: 34%;
		height: calc((100vh - 132px - 92px - 41px) * 0.37); /* 132px=Footer, 92px=Header, 41px=H1 */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img3.jpg);
		-webkit-animation: oi 0.5s ease 0.6s 1 forwards;
		animation: oi 0.5s ease 0.6s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img4{
		position: relative;
		float: left;
		width: 40%;
		height: calc((100vh - 132px - 92px - 41px) * 0.37); /* 132px=Footer, 92px=Header, 41px=H1 */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img4.jpg);
		-webkit-animation: oi 0.5s ease 0.8s 1 forwards;
		animation: oi 0.5s ease 0.8s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img5{
		position: relative;
		float: left;
		width: 26%;
		height: calc((100vh - 132px - 92px - 41px) * 0.37); /* 132px=Footer, 92px=Header, 41px=H1 */
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img5.jpg);
		-webkit-animation: oi 0.5s ease 1s 1 forwards;
		animation: oi 0.5s ease 1s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img1_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		top: 0;
		right: 0;
		min-width: calc(55% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #img2_caption{
		color: #ffffff;
		font-size: 85%;
		font-family: "メイリオ";
		background: rgba(61, 61, 61, 0.9);
		position: absolute;
		left: 0;
		bottom: 0;
		min-width: calc(40% - 3em - 3em);
		text-align: center;
		padding: 2em 3em;
	}
	#subpage_office #caption1{
		display: none;
	}
	#subpage_office #caption2{
		display: none;
	}

	/* interview.html */
	#interview h2{
		font-size: 19px;
		font-weight: bold;
		margin-bottom: 1em;
	}
	#interview h3{
		padding: 11px 0 10px 49px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.4;
		text-decoration: underline;
		margin-bottom: 0.3em;
		background: url(./images/q.png) left center no-repeat;
		background-size: 39px 39px;
	}
	#interview img{
		width: 40vw;
		float: right;
		margin-left: 20px;
		margin-bottom: 20px;
	}

	#joboffer{
		padding-top: 1em;
		text-align: center;
	}
	#joboffer h2{
		font-weight: bold;
		color: #ff3333;
	}
	#joboffer a:link{
		font-size: 14px;
		text-decoration: none;
	}
	#joboffer a:hover{
		font-size: 14px;
		text-decoration: underline;
	}

	/* overview.html */
	#subpage_overview{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_overview_bg.jpg);
	}
	#subpage_overview .h1{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_overview .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_overview .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 75vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_overview img.arrow{
		display: none;
	}
	#subpage_overview .whitebox{
		display: none;
		margin-bottom: 3em;
		padding: 2.3em 1.9em;
		width: calc(460px - 1.9em - 1.9em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_overview .whitebox p{
		font-size: 19px;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 1.9;
		color: #333333;
	}
	#subpage_overview table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
	}
	#subpage_overview table.default th{
		padding: 7px 10px 7px 0;
		font-family: "メイリオ";
		color: #333333;
		white-space: nowrap;
		vertical-align: top;
		text-align: right;
	}
	#subpage_overview table.default td{
		padding: 7px 0 7px 10px;
		font-family: "メイリオ";
	}
	#subpage_overview table.default td small{
		font-size: 85%;
		font-family: "メイリオ";
	}
	#subpage_contents #notice_asahi_kazuo,
	#subpage_contents #notice_masuda_tatsuya{
		margin: 0 auto;
		width: 90%;
		line-height: 1.4;
		padding-bottom: 2em;
	}

	/* info/ */
	#subpage_info{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_info_bg.jpg);
	}
	#subpage_info .h1{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_info .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_info .corset{
		margin: 0 auto;
		padding-top: 80px;
		width: 90vw;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_info .whitebox{
		margin: 0 auto;
		margin-bottom: 3em;
		padding: 1.2em 1.2em;
		width: calc(90vw - 1.2em - 1.2em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_info a.pagelink{
		display: block;
		background-color: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_info .blog_contents{
		width: 100%;
	}
	#subpage_info .blog_contents img{
		width: 100%;
		margin-bottom: 1em;
	}
	#subpage_info .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_info h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_info h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_info h2 a:hover{
		color: #28a7e1;
	}

}

@media all and (max-width:639px){
.pc_only{
	display: none;
}
.sp_only{
	display: block;
}

	#header{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#header .corset{
		margin: 0 auto;
		width: 100%;
		height: auto;
	}
	#header .logo1{
		display: none;
	}
	#header .logo2{
		display: block;
		padding: 12px 0 8px 0;
		text-align: center;
		float: none;
	}
	#header .logo2 img{
		margin: 0 auto 4px auto;
		width: 83px;
	}

	#navigation{
		width: 100%;
		text-shadow: 0px 0px 0px #333333;
	}
	#navigation > label{
		width: 100%;
		background: #efefef;
		color: #333333;
		padding: 8px 0;
		display: block;
		margin: 0 auto;
		text-align: center;
		font-size: 12px;
		cursor: pointer;
	}
	#navigation > input[type="checkbox"].toggle{
	    display: none;
	}
	#navigation > input[type="checkbox"].toggle + ul{
		height: 0;
		overflow: hidden;
	}
	#navigation > input[type="checkbox"].toggle:checked + ul{
		height: auto;
	}
	#navigation > ul{
		*zoom: 1;
		list-style-type: none;
		margin: 0;
		padding: 0;
		color: #ffffff;
		background: #333333;
	}
	#navigation > ul:before,
	#navigation > ul:after{
		content: "";
		display: table;
	}
	#navigation > ul:after{
		clear: both;
	}
	#navigation > ul li{
		position: relative;
		float: none;
		margin: 0;
		padding: 0;
		text-align: center;
		background: none;
	}
	#navigation > ul li:last-child{
		background: none;
	}
	#navigation > ul li:last-child a{
		border-bottom: none;
	}
	#navigation > ul li:last-child ul li a{
		border-bottom: 1px solid #666666;
	}
	#navigation > ul li span{
		display: block;
		margin: 0;
		padding: 0.8em 0 0.8em 2em;
		text-align: left;
		width: auto;
		color: #ffffff;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
		cursor: pointer;
		border-bottom: 1px solid #666666;
	}
	#navigation > ul li span:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li a{
		display: block;
		margin: 0;
		padding: 0.8em 0 0.8em 2em;
		text-align: left;
		width: auto;
		color: #ffffff;
		font-size: 14px;
		font-weight: normal;
		line-height: 1;
		text-decoration: none;
		border-bottom: 1px solid #666666;
	}
	#navigation > ul li a:hover{
		color: #28a7e1;
		transition: 0.2s;
	}
	#navigation > ul li ul{
		list-style: none;
		position: relative;
		z-index: 9999;
		top: 100%;
		left: 0;
		margin: 0;
		padding: 0;
	}
	#navigation > ul li ul li{
		width: auto;
	}
	#navigation > ul li ul li a{
		padding: 0.8em 0 0.8em 4em;
		background: #333333;
		color: #ffffff;
		text-align: left;
	}
	#navigation > ul li ul li:last-child{
		border-bottom: 1px solid #666666;
	}
	#navigation > ul li ul li a:hover{
		padding: 0.8em 0 0.8em 4em;
		background: #333333;
		color: #28a7e1;
		text-align: left;
	}
	#navigation > ul li ul{
		visibility: visible;
		opacity: 1;
		transition: 0s;
	}
	/*
	#navigation > ul li:hover ul{
		visibility: visible;
		opacity: 1;
	}
	*/
	#navigation > ul li ul li a{
		width: auto;
		visibility: visible;
		opacity: 1;
		transition: 0.3s;
	}
	/*
	#navigation > ul li:hover ul li a{
		visibility: visible;
		opacity: 1;
	}
	*/

	#lang_pc{
		display: none;
	}
	#lang_sp{
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		float: none;
		margin: 0 auto;
		padding: 9px 0;
		width: 36px;
		text-shadow: 0px 0px 0px #aaaaaa;
	}
	#lang_sp a{
		display: block;
		margin: 0 0 3px 0;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #efefef;
		border: 1px solid #dfdfdf;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
		float: none;
	}
	#lang_sp a:hover{
		color: #ffffff;
		background: #28a7e1;
		border: 1px solid #28a7e1;
	}
	#lang_sp span{
		display: block;
		margin: 0 0 3px 0;
		padding: 3px 0 1px 0;
		width: 30px;
		line-height: 1.2;
		background: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		color: #333333;
		font-size: 11px;
		text-align: center;
		text-decoration: none;
		float: none;
	}

	#catch{
		width: 100%;
		height: 52vw;
		background: url("./images/catch_bg.png") #f9f9f9 center center;
		background-size: cover;
	}
	#catch .text{
		margin: 0 auto;
		padding-top: 7vw;
		width: 90vw;
	}
	#catch .text img{
		width: 70vw;
		max-width: 590px;
	}

	#toppage_contents{
		width: 100%;
		border-top: 1px solid #bbbbbb;
	}
	#toppage_contents .corset{
		margin: 0 auto;
		width: calc(100vw - 10vw);
		padding-top: 12px;
		min-height: calc(100vh - 132px - 90px - 32vw - 1px - 32px); /* 132px=Footer, 90px=Header, 32vw=Catch, 1px=Border, 32px=PaddingTop of Corset */
	}
	#toppage_contents .for_two_col{
		display: none;
	}
	#toppage_contents .box{
		padding: 0 2vw;
		padding-bottom: 1vw;
		width: calc(90vw - 4vw);
		float: left;
/*		background: #ffcccc; */
	}
	#toppage_contents .b1{padding-right: 2vw;}
	#toppage_contents .b2{padding-left: 2vw;}
	#toppage_contents .b3{padding-right: 2vw;}
	#toppage_contents .b4{padding-left: 2vw;}
	#toppage_contents .box h2{
		padding: 4px 0;
		margin: 0 0 16px 0;
		font-size: 18px;
		font-weight: bold;
		line-height: 1;
		letter-spacing: 1px;
		text-align: center;
/*		background: url(./images/toppage_h2_sp_bg.png) center bottom no-repeat;*/
		background: none;
/*		background-size: 28px 8px; */
		border-bottom: 2px solid #28a7e1;
	}
	#toppage_contents .box p{
		text-align: justify;
		text-justify: inter-ideograph;
		text-shadow: 0px 0px 0px #333333;
	}

	#subpage_contents{
		width: 100%;
	}
	#subpage_contents .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_contents .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_contents .corset{
		margin: 0 auto;
		width: calc(100vw - 10vw);
		padding-top: 12px;
		min-height: calc(100vh - 132px - 90px - 33px - 42px - 12px); /* 132px=Footer, 90px=Header, 33px=Navi, 42px=H1, 12px=PaddingTop of Corset */
	}
	#subpage_contents h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_contents h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_contents h2 a:hover{
		color: #28a7e1;
	}
	#subpage_contents table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		border-top: 1px solid #cccccc;
/*		border-left: 1px solid #cccccc; */
	}
	#subpage_contents table.default tr.odd{
		background-color: #efefef;
	}
	#subpage_contents table.default tr.even{
		background-color: #ffffff;
	}
	#subpage_contents table.default th{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
/*		background-color: #28a7e1; */
		font-weight: bold;
		color: #333333;
		white-space: nowrap;
		vertical-align: middle;
		text-align: left;
	}
	#subpage_contents table.default td{
		padding: 10px 16px;
/*		border-right: 1px solid #cccccc; */
		border-bottom: 1px solid #cccccc;
	}
	#subpage_contents table.default td.number{
		text-align: right;
	}
	#subpage_contents .staff img{
		width: 40vw;
		float: right;
		margin-left: 2vw;
		margin-bottom: 1vw;
	}

	/* blog */
	#subpage_contents a.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 1.2em;
		-webkit-border-radius: 1.2em;
		-moz-border-radius: 1.2em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2.4em;
		width: 2.4em;
		height: 2.4em;
	}
	#subpage_contents .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_contents .blog_contents{
		width: 100%;
	}
	#subpage_contents .blog_contents img{
		width: 100%;
		margin-bottom: 1em;
	}
	#subpage_contents .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_contents .blog_navigation{
		width: 170px;
/*		float: right; */
	}
	#subpage_contents .blog_navigation li a{
		text-decoration: none;
	}
	#subpage_contents .blog_navigation li a:hover{
		color: #28a7e1;
	}

	/* access.html */
	#subpage_contents .route span.arrow{
		width: 9vw;
		height: 9vw;
	}
	#subpage_contents .route a.click{
		width: 9vw;
		height: 9vw;
	}

	/* contact.html */
	#subpage_contents .contact_by_tel{
		margin-bottom: 80px;
		float: none;
		width: 100%;
	}
	#subpage_contents .contact_by_form{
		float: none;
		width: 100%;
	}
	#subpage_contents img.contact_phone{
		max-width: 360px;
		width: 80vw;
	}
	#subpage_contents div.contact{
		margin: 0 auto;
		display: block;
	}
	#subpage_contents div.contact dl{
		display: block;
	}
	#subpage_contents div.contact dt,
	#subpage_contents div.contact dd{
		display: block;
		padding: 5px 0;
		vertical-align: middle;
	}
	#subpage_contents div.contact span.require{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #28a7e1;
		color: #ffffff;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}
	#subpage_contents div.contact span.any{
		position: absolute;
		padding: 2px 5px;
		text-align: center;
		font-size: 12px;
		background-color: #efefef;
		color: #666666;
		border: 1px solid #bbbbbb;
		border-radius: 3px;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
	}

	input, textarea, select{
		width: 83vw;
	}
	input[type="radio"]{
		width: auto;
	}

	span.pbox{
		width: 83vw;
	}

	#footer{
		width: 100%;
		height: 132px;
		background: #333333;
	}
	#footer img{
		margin: 0 auto;
		padding: 16px;
		width: 60px;
	}
	#footer > span{
		display: block;
		margin: 0 0 5px 0;
		text-align: center;
		font-size: 16px;
		font-weight: bold;
		color: #efefef;
		line-height: 1;
	}
	#footer > address{
		display: block;
		text-align: center;
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		color: #efefef;
		line-height: 1.5;
	}
	#footer > address > br{
		font-size: 10px;
		font-weight: bold;
		font-style: normal;
		line-height: 1.5;
	}

	/* greeting.html */
	.greeting_image{
		width: 100%;
		float: none;
		margin-left: 0;
		margin-bottom: 0;
	}

	/* office.html */
	#subpage_office{
		width: 100%;
	}
	#subpage_office .h1{
		width: 100%;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_office .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_office .corset{
		margin: 0 auto;
		padding-top: 0;
		width: 100%;
		min-height: calc(100vh - 132px - 92px - 80px); /* 132px=Footer, 92px=Header, 80px=PaddingTop of Corset */
	}
	#subpage_office #img1{
		position: relative;
		float: left;
		width: 100%;
		height: 67vw;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img1.jpg);
		-webkit-animation: oi 0.5s ease 0.2s 1 forwards;
		animation: oi 0.5s ease 0.2s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img2{
		position: relative;
		float: left;
		width: 55%;
		height: 40vw;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img5.jpg);
		-webkit-animation: oi 0.5s ease 0.4s 1 forwards;
		animation: oi 0.5s ease 0.4s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img3{
		position: relative;
		float: left;
		width: 100%;
		height: 46vw;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img3.jpg);
		-webkit-animation: oi 0.5s ease 0.6s 1 forwards;
		animation: oi 0.5s ease 0.6s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img4{
		position: relative;
		float: left;
		width: 100%;
		height: 67vw;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img2.jpg);
		-webkit-animation: oi 0.5s ease 0.8s 1 forwards;
		animation: oi 0.5s ease 0.8s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img5{
		position: relative;
		float: left;
		width: 100%;
		height: 67vw;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_office_img4.jpg);
		-webkit-animation: oi 0.5s ease 1s 1 forwards;
		animation: oi 0.5s ease 1s 1 forwards;
		opacity: 0;
	}
	#subpage_office #img1_caption{
		display: none;
	}
	#subpage_office #img2_caption{
		display: none;
	}
	#subpage_office #caption1{
		display: block;
		position: relative;
		float: right;
		width: calc(45% - 2em);
		height: calc(40vw - 3em);
		color: #ffffff;
		font-size: 3vw;
		font-family: "メイリオ";
		letter-spacing: 0.2em;
		line-height: 2.2;
		background: rgba(61, 61, 61, 0.9);
		text-align: left;
		padding-top: 3em;
		padding-left: 2em;
	}
	#subpage_office #caption2{
		display: block;
		position: relative;
		float: left;
		width: calc(100% - 1em - 1em);
		height: auto;
		color: #ffffff;
		font-size: 3vw;
		font-family: "メイリオ";
		letter-spacing: 0.2em;
		background: rgba(61, 61, 61, 0.9);
		text-align: center;
		padding: 3.5em 1em;
	}

	/* interview.html */
	#interview h2{
		font-size: 19px;
		font-weight: bold;
		margin-bottom: 1em;
	}
	#interview h3{
		padding: 11px 0 10px 49px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1.4;
		text-decoration: underline;
		margin-bottom: 0.3em;
		background: url(./images/q.png) left center no-repeat;
		background-size: 39px 39px;
	}
	#interview img{
		width: 100%;
		float: none;
		margin-left: 0;
		margin-bottom: 0;
	}

	#joboffer{
		padding-top: 1em;
		text-align: center;
	}
	#joboffer h2{
		font-weight: bold;
		color: #ff3333;
	}
	#joboffer a:link{
		font-size: 14px;
		text-decoration: none;
	}
	#joboffer a:hover{
		font-size: 14px;
		text-decoration: underline;
	}

	/* overview.html */
	#overview_bg{
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		background-position: center;
		background-size: cover;
		background-image: url(./images/subpage_overview_bg.jpg);
	}
	#subpage_overview{
		width: 100%;
		background-attachment: initial;
		background-size: initial;
		background-position: initial;
		background-image: none;
	}
	#subpage_overview .h1{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_overview .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_overview .corset{
		padding-top: calc(100vh - 350px);
		width: 100%;
	}
	#subpage_overview img.arrow{
		display: block;
		margin: 0 auto;
		margin-bottom: 1em;
		width: 45px;
	}
	#subpage_overview .whitebox{
		display: none;
		margin: 0 auto;
		margin-bottom: 3em;
		padding: 2.3em 1.5em;
		width: calc(90vw - 1.5em - 1.5em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_overview .whitebox p{
		font-size: 16px;
		font-weight: bold;
		letter-spacing: 0.1em;
		line-height: 1.9;
		color: #333333;
	}
	#subpage_overview table.default{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
	}
	#subpage_overview table.default th{
		padding: 7px 10px 7px 0;
		font-family: "メイリオ";
		color: #333333;
		white-space: nowrap;
		vertical-align: top;
		text-align: right;
	}
	#subpage_overview table.default td{
		padding: 7px 0 7px 10px;
		font-family: "メイリオ";
	}
	#subpage_overview table.default td small{
		font-size: 85%;
		font-family: "メイリオ";
	}
	#subpage_contents #notice_asahi_kazuo,
	#subpage_contents #notice_masuda_tatsuya{
		margin: 0 auto;
		width: 100%;
		line-height: 1.4;
		padding-top: 2em;
		padding-bottom: 2em;
	}

	/* info/ */
	#info_bg{
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		width: 100%;
		height: 100vh;
		background-position: center;
		background-size: cover;
		background-image: url(./images/subpage_info_bg.jpg);
	}
/*	#subpage_info{
		width: 100%;
		background-attachment: initial;
		background-size: initial;
		background-position: initial;
		background-image: none;
	}
	#subpage_info .h1{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_info .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
*/
	#subpage_info{
		width: 100%;
		background-attachment: fixed;
		background-size: cover;
		background-position: center;
		background-image: url(./images/subpage_info_bg.jpg);
	}
	#subpage_info .h1{
		width: 100%;
		background: #efefef;
		border-bottom: 1px solid #bbbbbb;
	}
	#subpage_info .h1 h1{
		margin: 0 auto;
		padding-left: 70px;
		width: calc(100% - 70px);
		height: 41px;
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
		background: url(./images/subpage_h1_bg.png) left center no-repeat;
		background-size: 57px 114px;
	}
	#subpage_info .corset{
		padding-top: 4vh;
		width: 100%;
	}
	#subpage_info .whitebox{
		margin: 0 auto;
		margin-bottom: 3em;
		padding: 1.2em 1.2em;
		width: calc(90vw - 1.2em - 1.2em);
		background: rgba(255, 255, 255, 0.9);
	}
	#subpage_info a.pagelink{
		display: block;
		background-color: #efefef;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		text-decoration: none;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info span.pagelink{
		display: block;
		border: 1px solid #28a7e1;
		border-radius: 0.5em;
		-webkit-border-radius: 0.5em;
		-moz-border-radius: 0.5em;
		background: #28a7e1;
		color: #ffffff;
		margin: 0 6px 6px 0;
		float: left;
		text-align: center;
		line-height: 2em;
		width: 2em;
		height: 2em;
	}
	#subpage_info .h1 h1 span{
		font-size: 19px;
		font-weight: bold;
		line-height: 42px;
	}
	#subpage_info .blog_contents{
		width: 100%;
	}
	#subpage_info .blog_contents img{
		max-width: 100%;
		margin-bottom: 1em;
	}
	#subpage_info .blog_contents .postdate{
		text-align: right;
		font-size: 80%;
		margin-bottom: 2em;
	}
	#subpage_info h2{
		padding: 11px 0 10px 30px;
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 0.3em;
		background: url(./images/subpage_h2_bg.png) left center no-repeat;
		background-size: 20px 20px;
	}
	#subpage_info h2 a{
		font-size: 17px;
		font-weight: bold;
		line-height: 1;
		text-decoration: none;
	}
	#subpage_info h2 a:hover{
		color: #28a7e1;
	}
}

@media print{
	body{
		background-color: #ffffff;
	}
}
