@charset "utf-8";
/* ------------------------------------------------------------ common */
body {
	position: relative;
	min-width: 1100px;
	height: 100%;
	opacity: 0;
	transition: 1s;
	font-family: "游明朝体", "Yu Mincho","ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", "Sawarabi Mincho",serif;
}

#wrapper {
	transition: 0s;
}

#wrapper.fixed {
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
}

.inner {
	width: 1100px;
	margin: 0 auto;
	box-sizing: border-box;
}

.m_inner {
	width: 980px;
	margin: 0 auto;
	box-sizing: border-box;
}

.SP {
	display: none;
}

@font-face {
font-family: 'Noto-Sans-JP-Regular';
 src: url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff2) format('woff2'),
      url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.woff) format('woff'),
      url(//fonts.gstatic.com/ea/notosansjapanese/v6/NotoSansJP-Regular.otf) format('opentype');
}

.title {
	font-size: 27px;
	text-align: center;
	letter-spacing: 2px;
	padding: 0 0 40px;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
}

.title span {
	display: block;
	font-size: 16px;
	color: #5bb330;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
	letter-spacing: 0px;
	padding: 10px 0 0;
}


/* ------------------------------------------------------------ header */
header {
	position: fixed;
	left: 0;
	top: 0;
	z-index: 1;
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	min-width: 1100px;
	padding: 0 25px 0 0;
	box-sizing: border-box;
	z-index: 1000;
}

	header .logo {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 120px;
		height: 120px;
		background: #fff;
	}
	
	header .logo img {
		width: 100%;
		height: auto;
	}
	
	header .header_contact {
		display: flex;
		align-items: center;
		margin: 0 0 0 auto;
	}
	
	header .header_contact .tel_box {
		display: flex;
		align-items: center;
	}
	
	header .header_contact .tel_box .reserve {
		background: #f5814a;
		color: #fff;
		font-size: 14px;
		font-family: 'Noto-Sans-JP-Regular';
		text-align: center;
		padding: 10px;
	}
	
	header .header_contact .tel_box .tel {
		margin: 10px 0 0 12px;
	}
	
	header .header_contact .tel_box .tel .number span {
		font-size: 18px;
		font-family: helvetica, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, sans-serif;
		font-weight: bold;
	}
	
	header .header_contact .tel_box .tel .number strong {
		font-size: 28px;
		font-weight: bold;
		padding: 0 0 0 10px;
	}
	
	header .header_contact .tel_box .tel .business_time {
		font-size: 12px;
		font-family: 'Noto-Sans-JP-Regular';
	}
	
	header .header_contact .mail_btn {
		text-align: center;	
		margin: 0 0 0 15px;
		width: 215px;
	}
	
	header .header_contact .mail_btn a {
		display: inline-block;
		background: url(../images/mail.svg) no-repeat 25px center #5bb330;
		background-size: 22px auto;
		font-size: 16px;
		font-family: 'Noto-Sans-JP-Regular';
		letter-spacing: 1px;
		color: #fff;
		padding: 12px 36px 14px 60px;
		border-radius: 100px; 
	}


/* ------------------------------------------------------------ fv */
#fv {
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	background: url(../images/fv.jpg) no-repeat center center/cover;
	height: 100vh;
	flex-direction: column;
	flex-wrap: wrap;
    min-height: 600px;
}

#fv .fv_box{position: relative;}

	#fv h2 {
		font-size: 20px;
		color: #000000;
		font-family: 'Noto-Sans-JP-Regular';
		position: relative;
		z-index: 1;
		padding: 0 0 353px;
		line-height: 160%;
	}
	
	#fv h1{position: absolute; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); top: 90px;}
	#fv h2 span{
		color: #000000;
		font-size: 46px;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
		display: inline-block;
		padding: 0 0 5px;
	}
	
	#fv p {
		font-size: 37px;
		line-height: 160%;
		color: #000000;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
		position: relative;
		z-index: 1;
	}

	#fv p span {
		display: block;
		font-size: 18px;
		padding: 0 0 10px;
		color: #666666;
	}

	#fv p small {
		display: block;
		font-size: 12px;
		color: #666666;
	}
	
	#menu div { width: 350px; float: left; margin: 0 5px ; background: #fff; min-height: 200px;}
	#menu div h3 { background: #f5814a; color: #fff; padding: 5px 0;}
	#menu div h3 span { font-size: 12px; }
	#menu div p { text-align: left; font-size: 14px; padding: 10px; }
	
	
	
	
/* ------------------------------------------------------------ subject */
#subject {
	width: 810px;
	margin: 0 auto;
	padding: 67px 0 75px;
}
	
	#subject .intro {
		font-size: 22px;
		text-align: center;
		padding: 0 0 30px;
	} 
	
	#subject > h3 {
		font-size: 25px;
		background: #5bb330;
		text-align: center;
		color: #fff;
		padding: 10px;
		margin: 0 auto 21px;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
	}
	
	#subject ul {
		display: flex;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
	}
	
	#subject ul li {
		flex: 1;
/* 		border-right: solid 1px #e5e5e5; */
		text-align: center;
		padding: 0px 0px 26px;
	}
	
/*
	#subject ul li:nth-child(2n+1) {
		border-left: solid 1px #e5e5e5;
	}
*/
	
	#subject ul li h3 {
		font-size: 27px;
		color: #5bb330;
		padding: 0 0 20px;
	}
	
	#subject ul li h4 {
		font-size: 30px;
		padding: 0 0 10px;
	}
	
	#subject .caution {
		font-size: 16px;
		text-align: center;
		padding: 40px 0 0;
	} 
	

/* ------------------------------------------------------------ consultation */
/*
#consultation {
	padding: 0 0 80px;	
}
*/

	#consultation table,
	#consultation td,
	#consultation th {
		border: 1px solid #fff;
		border-collapse: collapse;
		box-sizing: border-box;
	}
	
	#consultation table {
		width: 96%;
		margin: 0 auto;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
	}
	
	#consultation table th {
		background: #5bb330;
		font-size: 20px;
		color: #fff;
		text-align: center;
		vertical-align: middle;
		width: 12.5%;
		padding: 8px;
	}
	
	#consultation table td {
		background: #fff8ec;
		font-size: 20px;
		text-align: center;
		vertical-align: middle;
		width: 12.5%;
		padding: 22px;
		line-height: 190%;
	}
	
	#consultation table td span {
		writing-mode: vertical-lr;
		text-align: justify;
		text-justify: inter-ideograph;
	}
	
	#consultation .caution {
		text-align: center;
	}
	

/* ------------------------------------------------------------ message_career */
#message_career {
	background: url(../images/message_bg.jpg) no-repeat center center/cover;
	padding: 50px 0 95px;
}

	#message_career .inner {
		width: 1060px;
	}

	#message_career .white_box {
		background: #fff;
		padding: 70px 65px;
	}
	
	#message_wrap {
		padding: 0 0 75px;
	}
	
	#message_wrap .message_box img {
		float: left;
		width: 244px;
		height: auto;
	}
	
	#message_wrap .message_box .textbox {
	} 
	
	#message_wrap .message_box .textbox .message {
		text-align: center;
		line-height: 250%;
		padding: 0 0 40px;
	}
	
	#message_wrap .message_box .textbox .director {
		text-align: right;
	}
	
	#message_wrap .message_box .textbox .director strong {
		font-size: 26px;	
		padding: 0 0 0 10px;
	}
	
	#career_wrap {
		
	} 
	
	#career_wrap dl {
		border-top: 1px solid #e5e5e5;
		padding: 65px 75px 0;
	} 
	
	#career_wrap dl dt {
		float: left;
		width: 175px;
		padding: 0 0 30px;
	}
	
	#career_wrap dl dt:nth-of-type(n+2) {
		clear: both;
	}
	
	#career_wrap dl dt:last-of-type {
		padding: 0;
	}
	
	#career_wrap dl dd {
		float: left;
		width: calc(100% - 175px);
		padding: 0 0 30px;
	}
	
	#career_wrap dl dd:last-of-type {
		padding: 0;
	}


/* ------------------------------------------------------------ btns */
.orange_btn {
	text-align: center;
}

.orange_btn a,
.blue_btn a {
	position: relative;
	display: inline-block;
	font-size: 20px;
	line-height: 180%;
	color: #fff;
	text-align: center;
	letter-spacing: 2px;
	padding: 29px 0;
	box-sizing: border-box;
	font-family: fot-tsukuardgothic-std, sans-serif;
	font-weight: 400;
	font-style: normal;
	width: 430px;
}

.orange_btn a {
	background: #5bb330;
}

.blue_btn a {
	background: #35c8c5;
}

/*
.orange_btn a::before,
.blue_btn a::before {
	position: absolute; 
	content: ''; 
	top: 0; 
	bottom: 0; 
	margin: auto 0; 
	right: 25px; 
	display: block; 
	width: 15px; 
	height: 15px; 
	border-top: solid 1px #fff; 
	border-right: solid 1px #fff; 
	-webkit-transform: rotate(45deg); 
	transform: rotate(45deg); 
}
*/

.orange_btn a::after,
.blue_btn a::after {
	position: absolute;
	content: "";
	left: 12px;
	top: 12px;
	width: 430px;
	height: 95px;
	z-index: -1;
}

.orange_btn a::after {
	background: url(../images/pattern_orange.gif) repeat left top;
}

.blue_btn a::after {
	background: url(../images/pattern_blue.gif) repeat left top;
}

#btns {
	text-align: center;
	padding: 75px 0 180px;
}

	#btns .blue_btn a {
		min-width: 390px;
		padding: 31px 105px 32px 110px;
	}

	#btns .cfx {
		display: inline-block; *display: inline; *zoom: 1;
	}
	
	#btns .btn {
		float: left;
		margin: 0 0 0 40px;
	}
	
	#btns .btn:nth-of-type(2n+1) {
		clear: both;
		margin: 0 auto;
	} 


/* ------------------------------------------------------------ about_pcr_test */
#about_pcr_test {
	position: relative;
	margin: 0 0 165px;
	padding: 90px 0;
	overflow: hidden;
}

	#about_pcr_test .white_box {
		width: 610px;
		min-height: 380px;
		padding: 109px 49px 75px;
		background: #fff;
		box-shadow: 0 0 40px rgba(0,0,0,0.05); 
		box-sizing: border-box;
		margin: 0 auto 0 20px;
	}
	
	#about_pcr_test .white_box h2 {
		text-align: left;
		padding: 0 0 11px;
		color: #5bb330;
		font-size: 30px;
	}
	
	#about_pcr_test .white_box p {
		line-height: 180%;
		font-family: 'Noto-Sans-JP-Regular';
		font-size: 18px;
		font-feature-settings: "palt";
		letter-spacing: -0.05em;
	}
	
	#about_pcr_test img {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 50%;
		margin: auto -750px auto 0;
		z-index: -1;
	}


/* ------------------------------------------------------------ negative_certificate_issuance */
#negative_certificate_issuance {
	position: relative;
	margin: 0 0 160px;
	padding: 75px 0;
	overflow: hidden;
}

	#negative_certificate_issuance .white_box {
		width: 610px;
		min-height: 380px;
		padding: 75px 60px;
		background: #fff;
		box-shadow: 0 0 40px rgba(0,0,0,0.05); 
		box-sizing: border-box;
		margin: 0 20px 0 auto;
	}
	
	#negative_certificate_issuance .white_box h2 {
		text-align: left;
		padding: 0 0 30px;
	}
	
	#negative_certificate_issuance .white_box h2 small {
		font-size: 14px;
	}
	
	#negative_certificate_issuance .white_box p {
		line-height: 250%;
	}
	
	#negative_certificate_issuance .white_box p a {
		color: #268ec4;
		text-decoration: underline;
	}
	
	#negative_certificate_issuance img {
		position: absolute;
		top: 0;
		bottom: 0;
		left: 50%;
		margin: auto 0 auto -750px;
		z-index: -1;
	}


/* ------------------------------------------------------------ medical_institution */
#medical_institution {
	padding: 0 0 100px;
}

	#medical_institution .m_inner {
		border: solid 1px #f5814a;
		padding: 0 85px 45px;
	}
	
	#medical_institution h3 {
		text-align: center;
		margin: -17px 0 40px;
	}
	
	#medical_institution h3 span {
		display: inline-block; *display: inline; *zoom: 1;
		font-size: 25px;
		text-align: center;
		background: #fff;
		padding: 0 25px;
	}
	
	#medical_institution .intro {
		text-align: center;
		line-height: 250%;
		padding: 0 0 30px;
	}
	
	#medical_institution .mail {
		background: #f3f2e8;
		padding: 30px 30px 35px;
	}
	
	#medical_institution .mail h4 {
		font-size: 23px;
		text-align: center;
		padding: 0 0 15px;
	}
	
	#medical_institution .mail .address {
		text-align: center;
	}
	
	#medical_institution .mail .address a {
		font-size: 26px;
		background: url(../images/mail_orange.svg) no-repeat left 10px/18px;
		padding: 0 0 0 35px;
	}
	

/* ------------------------------------------------------------ access */
#access {
	padding: 0 0 100px;
}
	
	#access p {
		text-align: center;
		padding: 0 0 29px;
		font-family: 'Noto-Sans-JP-Regular';
	}
	
	#access .map iframe {
		width: 100%;
		height: 365px;
	}
#access .title {padding: 0 0 18px;}

/* ------------------------------------------------------------ contact */
#contact {
	background: url(../images/contact_bg.jpg) no-repeat center center/cover;
	padding: 55px 0;
}

	#contact .inner {
		width: 1060px;
	}

	#contact .white_box {
		position: relative;
		width: calc((100% - 16px) / 2);
		background: #fff;
		padding: 61px 50px 99px 45px;
		box-sizing: border-box;
		margin: 0 0 0 15px;
	}
	
	#contact .white_box:nth-of-type(2n+1) {
		clear: both;
		margin: 0 auto;
	}
	
	#contact .contact_box h2 {
		padding: 0 0 25px;	
	}
	
	#contact .contact_box .description {
		font-size: 17px;
		text-align: center;
		line-height: 180%;
		padding: 0 0 50px;
	}
	
	#contact .contact_box .address {
		text-align: center;
	}
	
	#contact .contact_box .address a {
		font-size: 26px;
		background: url(../images/mail_orange.svg) no-repeat left 10px/18px;
		padding: 0 0 0 35px;
	}
	
	#contact .pcr_form h3 {
		font-size: 25px;
		text-align: center;
		line-height: 150%;
		padding: 0 0 29px;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
	} 
	
	#contact .pcr_form p {
		font-size: 15px;
		text-align: center;
		line-height: 200%;
		padding: 0 0 25px;
	}
	#contact .pcr_form .orange_btn_bg{
		position: relative;
		width: 430px; height: auto;
	}
	#contact .pcr_form .orange_btn_bg a {
		display: inline-block;
		background: #5bb330;
		color: #fff;
		font-size: 20px;
		font-family: fot-tsukuardgothic-std, sans-serif;
		font-weight: 400;
		font-style: normal;
		text-align: center;
		letter-spacing: 1px;
		width: 100%;
		padding: 34px 0 ;
		position: relative;
		z-index: 2;
	}
	

	#contact .pcr_form .orange_btn_bg::after {
		position: absolute;
		content: "";
		left: 12px;
		top: 12px;
		width: 100%;
		height: 95px;
		z-index: 1;
		background: url(../images/pattern_orange.gif) repeat left top;
	}
/* ------------------------------------------------------------ footer */
footer { padding: 75px 0 87px;}

	footer .logo {
		text-align: center;
		padding: 0 0 25px;
	}
	
	footer .logo a img {
		width: 123px;
		height: auto;
	}
	
	footer .address {
		font-size: 16px;
		line-height: 160%;
		text-align: center;
		font-family: 'Noto-Sans-JP-Regular';
		padding: 0 0 3px;
	}
	
	footer .tel { text-align: center; padding: 0 0 65px;	}
	
	footer .tel a { font-size: 16px; font-family: 'Noto-Sans-JP-Regular'; }
	
	footer small { display: block; text-align: center; font-size: 12px; font-family: 'Noto-Sans-JP-Regular'; }






/* ------------------------------- mobile ---------------------------- */
@media only screen and (max-width: 640px) {

/* ------------------------------------------------------------ common */
body {
	min-width: 100%;
}
	
.inner,
.m_inner {
	width: 90%;
}

.PC {
	display: none;
}

.SP {
	display: block;
}

.title {
	font-size: 22px;	
	padding: 0 0 25px;
}

.title span {
	font-size: 12px;
	padding: 6px 0 0;
}


/* ------------------------------------------------------------ header */
header {
	display: block;
	min-width: inherit;
	padding: 0;
	z-index: 100;
}

	header .logo {
		float: left;
		width: 60px;
		height: 60px;
	}
	
	header .logo img {
		width: 100%;
		height: auto;
	}
	
	header .header_contact {
		display: block;
		float: right;
	}
	
	header .header_contact .tel_box {
		display: block;
		float: left;
		width: 60px;
	}
	
	header .header_contact .tel_box .tel { margin: 0; }
	
	header .header_contact .tel_box .number{
		background: #35c8c5;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 60px;
		height: 60px;
	}
	header .header_contact .tel_box .number img{width: 35px; height: auto;}
	
	header .header_contact .tel_box .reserve {display: none;}
	
	header .header_contact .tel_box .business_time {display: none;}
		
	header .header_contact .mail_btn {
		float: left;
		text-align: center;	
		margin: 0 0 0 2px;
		width: 60px;
	}
	
	header .header_contact .mail_btn a {
		display: inline-block; *display: inline; *zoom: 1;
		background: url(../images/mail.svg) no-repeat center center #5bb330;
		background-size: 40px auto;
		padding: 30px;
		border-radius: 0; 
	}


/* ------------------------------------------------------------ fv */
#fv {
	height: 100vh;

    min-height: auto;
	height: -webkit-fill-available;
}

#fv h1 {
	text-align: center;
	width: 90%;
	top: 31%;
}

#fv h1 img {
	width: 100%;
	height: auto;
}
	
	#fv .fv_box {
   		padding: 20% 0;	
   }
	
	#fv h2 {
		padding: 0 0 65%;
		font-size: 13px;
	}
	#fv h2 span{
		
		font-size: 32px;
	}

	#fv p {
		font-size: 18px;
	}

	#fv p span {
		display: block;
		font-size: 3.73vw;
		padding: 0 0 10px;
	}

	#fv p small {
		display: block;
		font-size: 2.6vw;
		line-height: 120%;
		padding: 10px 0 0;
	}


	#menu div { width: 94%; float: left; margin: 0 3% 2%; background: #fff; min-height: inherit;}
	#menu div h3 { background: #f5814a; color: #fff; padding: 5px 0; font-size: 16px;}
	#menu div h3 span { font-size: 12px; }
	#menu div p { text-align: left; font-size: 12px; padding: 10px; }
	

/* ------------------------------------------------------------ subject */
#subject {
	width: 90%;
	margin: 0 auto;
	padding: 40px 0 30px;
}
	
	#subject .intro {
		font-size: 18px;
		text-align: center;
		line-height: 170%;
		padding: 0 0 30px;
	} 
	
	#subject > h3 {
		font-size: 18px;
		padding: 10px;
		margin: 0 auto;
	}
	
	#subject ul {
		display: block;
/*
		border-left: 1px solid #e5e5e5;
		border-right: 1px solid #e5e5e5;
*/
	}
	
	#subject ul li {
		padding: 15px 15px 20px;
		border-right: none;
/* 		border-bottom: 1px solid #e5e5e5; */
	}
	
	#subject ul li:nth-child(2n+1) {
		border-left: none;
	}
	
	#subject ul li h3 {
		font-size: 20px;
		padding: 0 0 15px;
	}
	
	#subject ul li h4 {
		font-size: 19px;
		padding: 0 0 10px;
	}
	
	#subject ul li p {
		font-size: 13px;
	}
	
	#subject .caution {
		font-size: 14px;
		padding: 20px 0 0;
	} 

/* ------------------------------------------------------------ consultation */
/*
#consultation {
	padding: 0 0 60px;	
}
*/
	
	#consultation table {
		width: 100%;
		margin: 0 0 20px;
	}
	
	#consultation table th {
		font-size: 14px;
		width: 50px;
		padding: 10px;
	}
	
	#consultation table td {
		font-size: 16px;
		width: calc(100% - 50px);
		padding: 10px;
	}
	
	#consultation table td img{width: 20px; height: auto;}
	
	#consultation table td span {
	}
	
	#consultation .caution {
		font-size: 13px;
		line-height: 150%;
	}
	

/* ------------------------------------------------------------ message_career */
#message_career {
	padding: 50px 0 60px;
}

	#message_career .inner {
		width: 90%;
	}

	#message_career .white_box {
		padding: 40px 15px;
	}
	
	#message_wrap {
		padding: 0 0 60px;
	}
	
	#message_wrap .message_box img {
		float: none;
		width: 100%;
		height: auto;
	}
	
	#message_wrap .message_box .textbox {
		float: none;
		width: 100%;
		padding: 15px 0 0;
	} 
	
	#message_wrap .message_box .textbox .message {
		font-size: 14px;
		line-height: 170%;
		padding: 0 0 30px;
		text-align: left;
	}
	
	#message_wrap .message_box .textbox .director {
		font-size: 12px;
	}
	
	#message_wrap .message_box .textbox .director strong {
		font-size: 20px;	
		padding: 0 0 0 10px;
	}
	
	#career_wrap dl {
		padding: 0;
	} 
	
	#career_wrap dl dt {
		float: none;
		width: 100%;
		padding: 15px 0 8px;
		font-size: 14px;
	}
	
	#career_wrap dl dt:nth-of-type(n+2) {
		clear: inherit;
	}
	
	#career_wrap dl dt:last-of-type {
		padding: 15px 0 8px;
	}
	
	#career_wrap dl dd {
		float: none;
		width: 100%;
		padding: 0 0 15px;
		font-size: 14px;
		border-bottom: solid 1px #e5e5e5;
	}
	
	#career_wrap dl dd:last-of-type {
		padding: 0 0 15px;
	}


/* ------------------------------------------------------------ btns */
.orange_btn {
	text-align: center;
}

.orange_btn a,
.blue_btn a {
	font-size: 16px;
	line-height: 150%;
	letter-spacing: 2px;
	padding: 20px 0;
	width: 280px;
}

.orange_btn a::before,
.blue_btn a::before {
	right: 15px; 
	width: 10px; 
	height: 10px; 
}

.orange_btn a::after,
.blue_btn a::after {
	position: absolute;
	content: "";
	left: 7px;
	top: 7px;
	width: 280px;
	height: 64px;
}

#btns {
	padding: 50px 0;
}

	#btns .blue_btn a {
		min-width: inherit;
		padding: 24px 63px;
	}
	
	#btns .btn {
		float: none;
		margin: 0 auto 30px;
	}
	
	#btns .btn:nth-of-type(2n+1) {
		clear: both;
		margin: 0 auto 30px;
	} 


/* ------------------------------------------------------------ about_pcr_test */
#about_pcr_test {
	position: relative;
	margin: 0;
	padding: 0 0 80px;
}

	#about_pcr_test .inner {
		width: 100%;
	}

	#about_pcr_test .white_box {
		position: relative;
		width: 90%;
		min-height: inherit;
		padding: 30px 20px;
		box-shadow: 0 0 20px rgba(0,0,0,0.1); 
		margin: -50px auto 0;
		z-index: 1;
	}
	
	#about_pcr_test .white_box h2 {
		text-align: left;
		padding: 0 0 15px;
		font-size: 24px;
	}
	
	#about_pcr_test .white_box p {
		font-size: 14px;
		line-height: 200%;
	}
	
	#about_pcr_test img {
		position: static;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}


/* ------------------------------------------------------------ negative_certificate_issuance */
#negative_certificate_issuance {
	position: relative;
	margin: 0;
	padding: 0 0 80px;
}

	#negative_certificate_issuance .inner {
		width: 100%;
	}

	#negative_certificate_issuance .white_box {
		position: relative;
		width: 90%;
		min-height: inherit;
		padding: 30px 20px;
		box-shadow: 0 0 20px rgba(0,0,0,0.1); 
		margin: -50px auto 0;
		z-index: 1;
	}
	
	#negative_certificate_issuance .white_box h2 {
		text-align: left;
		padding: 0 0 20px;
	}
	
	#negative_certificate_issuance .white_box h2 small {
		display: block;
		font-size: 12px;
	}
	
	#negative_certificate_issuance .white_box p {
		font-size: 14px;
		line-height: 200%;
	}
	
	#negative_certificate_issuance .white_box p a {
	}
	
	#negative_certificate_issuance img {
		position: static;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}


/* ------------------------------------------------------------ medical_institution */
#medical_institution {
	padding: 0 0 70px;
}

	#medical_institution .m_inner {
		padding: 0 15px 35px;
	}
	
	#medical_institution h3 {
		text-align: center;
		margin: -13px 0 20px;
	}
	
	#medical_institution h3 span {
		font-size: 20px;
		padding: 0 15px;
	}
	
	#medical_institution .intro {
		font-size: 14px;
		text-align: left;
		line-height: 200%;
		padding: 0 0 20px;
	}
	
	#medical_institution .mail {
		padding: 20px 15px 27px;
	}
	
	#medical_institution .mail h4 {
		font-size: 15px;
		text-align: center;
		line-height: 170%;
		padding: 0 0 15px;
	}
	
	#medical_institution .mail .address {
		text-align: center;
	}
	
	#medical_institution .mail .address a {
		font-size: 22px;
		background: url(../images/mail_orange.svg) no-repeat left 8px/20px;
		padding: 0 0 0 35px;
	}
	

/* ------------------------------------------------------------ access */
#access {
	padding: 0 0 90px;
}
	
	#access p {
		font-size: 14px;
		line-height: 170%;
		text-align: center;
		padding: 0 0 20px;
	}
	
	#access .map { 
		position: relative; 
		padding-bottom: 56.25%; 
		height: 0; 
		overflow: hidden; 
	}
	
	#access .map iframe { 
		position: absolute; 
		top: 0; 
		left: 0; 
		width: 100%; 
		height: 100%;
	}


/* ------------------------------------------------------------ contact */
#contact {
	padding: 40px 0 25px;
}

	#contact .inner {
		width: 90%;
	}

	#contact .white_box {
		float: none;
		width: 100%;
		padding: 30px 15px 35px;
		margin: 0 auto 15px;
	}
	
	#contact .white_box:nth-of-type(2n+1) {
		clear: inherit;
		margin: 0 auto 15px;
	}
	
	#contact .contact_box h2 {
		padding: 0 0 20px;	
	}
	
	#contact .contact_box .description {
		font-size: 16px;
		line-height: 170%;
		padding: 0 0 25px;
	}
	
	#contact .contact_box .address {
		text-align: center;
	}
	
	#contact .contact_box .address a {
		font-size: 22px;
		background: url(../images/mail_orange.svg) no-repeat left 8px/20px;
		padding: 0 0 0 35px;
	}
	
	
	#contact .pcr_form h3 {
		font-size: 20px;
		text-align: center;
		line-height: 150%;
		padding: 0 0 15px;
	} 
	
	#contact .pcr_form p {
		font-size: 14px;
		line-height: 170%;
		padding: 0 0 20px;
	}
	
	#contact .pcr_form .orange_btn_bg {
		text-align: center;
		width: 280px;
		margin: 0 auto;
	}
	#contact .pcr_form .orange_btn_bg::after {height: 60px;left: 7px; top: 7px;}
	#contact .pcr_form .orange_btn_bg a {
/* 		background: url(../images/btn_orange_sp.png) no-repeat center center/260px; */
		width: 100%;
		font-size: 16px;
		min-width: inherit;
		padding: 20px 0;
	}
	

/* ------------------------------------------------------------ footer */
footer {
	padding: 30px 0 20px;
}

	footer .logo {
		text-align: center;
		padding: 0 0 20px;
	}
	
	footer .logo a img {
		width: 30%;
		height: auto;
	}
	
	footer .address {
		font-size: 13px;
		line-height: 170%;
		padding: 0 0 15px;
	}
	
	footer .tel {
		padding: 0 0 30px;
	}
	
	footer .tel a {
		font-size: 13px;
	}
	
	footer small {
		font-size: 10px;
	}
	
}
