@charset "utf-8";
/* CSS Document */

/* ---------------------------------
	nonclinical
--------------------------------- */
#nonclinical .mv {
	background: url(../images/bg.jpg) center /cover no-repeat;
}
#nonclinical .mv.__index {
	background: url(../images/bg_index.jpg) center /cover no-repeat;
}
#nonclinical .mv.__index .wrap {
    margin: 0 auto;
}
#nonclinical .mv.__index .box-text{
    width: 80%;
    max-width: 700px;
    margin: 30px auto 0;
    text-align: center;
    padding: 20px 25px;
    background: #39b7ed;
    color: #fff;
    line-height: 1.5;
}
#nonclinical .mv.__index .copy img {
    width: 90%;
    max-width: 700px;
}


#contBtn {
	display: flex;
	justify-content: center;
	align-items: center;
	box-sizing: border-box;
	width: 48px;
	height: 248px;
	border-radius: 24px;
	background: rgba(227,131,5,.84);
	position: fixed;
	z-index: 9999;
	top: 0;
	right: 30px;
	bottom: 0;
	margin: auto;
	transition: background .3s ease;
}
#contBtn::after {
	content: '';
	display: block;
	width: 60px;
	height: 260px;
	border-radius: 30px;
	background: rgba(236,182,111,.5);
	position: absolute;
	top: -6px;
	left: -6px;
	z-index: -1;
}
#contBtn span {
	display: inline-block;
	padding-top: 20px;
	background: url(../images/ico_mail.png) center top /18px auto no-repeat;
	font-size: 16px;
	color: #fff;
	text-align: center;
	font-weight: bold;
	letter-spacing: .14em;
	writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
}
_:-ms-lang(x)::-ms-backdrop, #contBtn span {
	padding-right: 7px;
}
#contBtn:hover {
	text-decoration: none;
	background: rgba(240,176,0,1);
	transition: background .3s ease;
}
_:-ms-lang(x)::-ms-backdrop, .satori__popup_inner_28126f9aa7a6ffe7 .l-image_left .text {
	flex: 1 1 56%!important;
}
@media(max-width:1160px) {
	#contBtn {
		right: 50%;
		margin-right: -540px;
	}
}
.telCircle {
	display: none;
}
.contNav li a.contact {
	display: none;
}

/* index */
.indNonclinical .intro {
	margin-top: 0;
}
.oneThird > div {
	width: calc((100% - (20px * 2)) / 3);
}
.oneThird > div > h4 {
	margin-top: 0;
}
.oneThird .randomList + h4 {
	margin-top: 22px;
}
.oneThird .randomList li {
	width: 100%;
}
.indNonclinical .news {
	padding-bottom: 30px;
}
.indNonclinical .news .btnGray {
	width: 100%;
	margin-top: 20px;
	text-align: center;
}
.skyBlue {
	margin-top: 30px;
}
.skyBlue > div {
	box-sizing: border-box;
	width: calc((100% - 20px) / 2);
	padding: 20px;
	background: #f1fbff;
}
.skyBlue > div h4 {
	margin-top: 0;
	border-bottom: 1px dotted #29b7ec;
}
.skyBlue > div .btnWhite {
	width: 100%;
	border-bottom: 1px solid #ccc;
	text-align: center;
}

.bnr_list {
 display: flex;
    justify-content: space-between;
}
.bnr_list li img {
    width: 100%;
    height: auto;
}
.bnr_list li {
    width: 49%;
    padding: 0;
}
.bnr_list li + li {
	margin-top: 0;
}
.bnr_list li::before {
	display: none;
}
.bnr_list li a {
	display: inline-block;
	border-bottom: 1px solid #ccc;
}
.bnr_list li a img {
	vertical-align: bottom;
	max-width: 100%;
}
.bnr_list li a:hover {
	opacity: 0.7;
	transition: 0.3s ease;
}


/*** 2019/12/05 MCSY追加 ***/
#wrapper .mv h1{
	line-height: 1.1;
	position: relative;
}
#wrapper .mv h1 span.typeA{
	font-size: 70%;
}
#wrapper .mv h1 span.typeB{
	font-size: 50%;
}
/***************************/


/* test */
.testList li::before {
	display: none;
}

.classL > li {
	padding: 0;
}
.classL > li h4 {
	margin: 0;
	padding-bottom: 0;
	border-bottom: 1px solid #29b7ec;
}
.classL > li h4 i {
	display: block;
	width: 20px;
	font-style: normal;
	position: absolute;
	left: 0;
	top: 12px;
}
.classL > li h4 > a,
.classL > li h4 > span {
	display: block;
	padding: 12px 30px 12px 30px;
	text-decoration: none;
	position: relative;
}
.classL > li h4 > span {
	padding-right: 0;
}
.classL > li h4 > a span {
	display: block;
	width: 45px;
	height: 100%;
	position: absolute;
	right: 0;
	bottom: 0;
}
.classL > li h4 > a span::after {
	content: '';
	display: block;
	width: 16px;
	height: 16px;
	background: url(../../../common/images/pdf_ico.png);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.classL > li h4 > a:hover {
	color: #f33333;
}
.classL > li h4 > a:hover span {
	background: #fceded;
	transition: 0.3s ease;
}

.classL > li h4 + p{
	margin: 1em 0;
}

.classL > li + li {
	margin-top: 25px;
}
.classM {
	margin-top: 0!important;
}
.classM > li {
	padding-left: 0;
	border-bottom: 1px solid #ddd;
}
.classM > li + li {
	margin-top: 0;
}
.classM > li > a,
.classM > li > p {
	display: block;
	padding: 12px 50px 12px 45px;
	text-decoration: none;
	position: relative;
}
.classM > li > p {
	padding-right: 0;
}
.classM > li > p > a {
	padding-right: 18px;
	text-decoration: underline;
	background: url(/common/images/pdf_ico.png) center right /14px 14px no-repeat;
}
.classM > li > p > strong {
	font-weight: bold;
}
.classM > li > a + p,
.classM > li > p + p {
	padding-top:0;
}

.classM > li > a {
	cursor: pointer;
}
.classM > li > a > span {
	display: block;
	width: 45px;
	height: 100%;
	position: absolute;
	right: 0;
	bottom: 0;
}
.classM > li > a > span::before,
.classM > li > a > span::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	background: #29b7ec;
}
.classM > li > a > span::before {
	width: 12px;
	height: 2px;
	opacity: 1;
	transition: opacity 0.3s ease;
}
.classM > li > a > span::after {
	width: 2px;
	height: 12px;
	border: none;
	transform: rotate(0);
	transition: transform 0.3s ease;
}
.classM > li > a[href$=".pdf#zoom=100"] > span::before {
	display: none;
}
.classM > li > a[href$=".pdf#zoom=100"] > span::after {
	width: 16px;
	height: 16px;
	background: url(../../../../common/images/pdf_ico.png);
}
.classM > li > a.active span {
	background: #e1f5fd;
}
.classM > li > a:hover span {
	background: #e1f5fd;
	transition: 0.3s ease;
}
.classM > li > a[href$=".pdf#zoom=100"]:hover {
	color: #f33333;
}
.classM > li > a[href$=".pdf#zoom=100"]:hover span {
	background: #fceded;
}
.classM > li > a.active > span::before {
	opacity: 0;
	transition: 0.3s ease;
}
.classM > li > a.active > span::after {
	transform: rotate(90deg);
	transition: 0.3s ease;
}
.classM > li > a > i,
.classM > li > p > i {
	display: block;
	width: 30px;
	font-style: normal;
	position: absolute;
	top: 12px;
	left: 0;
}
.classM > li > div {
	display: none;
	padding: 20px 30px;
	margin-top: 0!important;
	background: #e1f5fd;
}
.classM > li > div.on,
.classM > li > div.open {
	display: block;
}
.classM > li > .classM_list {
	margin-bottom: 0;
	padding: 12px 50px 12px 45px;
}
.classM > li > .classM_list + p {
	padding-top: 0;
}
.classM > li > * + .classM_list {
	margin-top: 0;
	padding: 0 0 12px 45px;
}
.classM > li > .classM_list > li {
	position: relative;
	padding-left: 16px;
	line-height: 1.4;
}
.classM > li > .classM_list > li + li {
	margin-top: 6px;
}
.classM > li > .classM_list > li::before {
	content: '';
	display: block;
	width: 8px;
	height: 1px;
	background: #888;
	position: absolute;
	top: 8px;
	left: 0;
}
.classS > li {
	padding-left: 0;
}
.classS > li + li {
	margin-top: 0;
	border-top: 1px solid #eee;
}
.classS > li > a,
.classS > li > p {
	box-sizing: border-box;
	width: 100%;
	padding-left: 60px;
	margin-top: 0;
	border-bottom: none;
	background: #fff;
	font-size: 12px;
	text-align: left;
}
.classS > li > a::before {
	display: none;
}
.classS > li > .pdfBtn:hover {
	color: #29b7ec!important;
}
.classS > li > .pdfBtn {
    cursor: default;
}
.classS > li > .pdfBtn:hover {
	color: #000!important;
    /* 2020.12.22 add 後で消す */
}


.classS > li > .pdfBtn:hover span {
	background-image: url(/common/images/pdf_ico.png);
}
.classS > li > p,
.classS > li > div{
	padding: 12px 20px 12px 60px;
	background: #fff;
}
.classS > li > a + p,
.classS > li > p + p {
	padding-top: 0;
}

.classS > li > a > span,
.classS > li > p > span {
	display: block;
	box-sizing: border-box;
	width: 100%;
	position: relative;
}
.classS > li > p > span > a {
	text-decoration: underline;
	margin-right: 3px;
	padding-right: 20px;
	background: url(/common/images/pdf_ico.png) center right /16px 16px no-repeat;
}
.classS > li > p > span > a:hover {
	color: #29b7ec;
}

.classS > li > a > span > i,
.classS > li > p > span > i {
	display: block;
	width: 40px;
	/* min-width: 3em; */
	font-style: normal;
	position: absolute;
	top: 0;
	left: -40px;
}
.classS > li > a > span > i {
	top: 2px;
}

.classS.ic-short > li > a,
.classS.ic-short > li > p {
	padding: 12px 20px 12px 40px;
}
.classS.ic-short > li > a > span > i,
.classS.ic-short > li > p > span > i {
	display: block;
	width: 2em;
	font-style: normal;
	position: absolute;
	top: 0;
	left: -2em;
}



.classS > li ul {
	margin-top: 0;
	padding-left: 60px;
	padding-right: 20px;
	background: #fff;
	font-size: 12px;
}
.classS > li ul > li::before {
	display: block;
	top: 8px;
}

.classS > li ul.classS > li::before{
	display: none;
}
.classS > li ul.classS{
	border-top: 1px dotted #ddd;
	padding-left:20px;
	margin-bottom: 0;
}
.classS > li ul.classS .pdfBtn{
	padding-right:0;
}
.classS > li ul.classS .pdfBtn::before {
	display: none;
}
.classS > li ul.classS .pdfBtn:hover {
	color: #f33333;
}
.classS > li ul.classS > li + li {
	border-top: 1px dotted #ddd;
}
/* 分野別サービス */
#sec01 {
	margin-top: 0;
}

.imgDetail{
	margin-top: 40px;
}
.imgDetail h4{
	margin-top: 10px;
	padding-bottom: 0;
	border-bottom: none;
}

/* News & Topics */
.topicsList > li {
	padding: 20px;
	background: #f8f8f8;
}
.topicsList > li + li {
	margin-top: 20px;
}
.topicsList > li::before {
	display: none;
}
.topicsList > li h4 {
	margin-top: 0;
}
.topicsList ol li::before {
	background: none;
}
.pharmacology .anotate {
	margin-top: 20px;
}

/* ---------------------------
	hirinshow_news
--------------------------- */
.hirinshouNews .classL > li h4 > a {
	padding-left: 0;
	padding-right: 50px;
}
.hirinshouNews .classM > li > a,
.hirinshouNews .classM > li > p {
	padding-left: 15px;
}
.hirinshouNews .classS > li > p {
	padding-left: 30px;
}
.hirinshouNews .classS > li > p > span > i {
	left: -15px;
}

/* quality */
.glp {
	display: inline-block;
}

/* topics */
.effective {
	position: relative;
}
.effectiveLink {
	width: 80px;
	background: #fff;
	box-shadow: 0 0 12px rgba(0,0,0,.08);
	position: absolute;
	top: 0;
	right: -95px;
	z-index: 20;
	font-size: 12px;
	line-height: 14px;
}
.effectiveLink.wide {
	width: 90px;
	font-size: 11px;
	right: -105px;
}
.effectiveLink li {
	padding-left: 0;
	height: 80px;
	box-sizing: border-box;
}
.effectiveLink.wide li {
	height: 96px;
}
.effectiveLink li + li {
	margin-top: 0;
	border-top: 1px dotted #ddd;
}
.effectiveLink li::before {
	display: none;
}
.effectiveLink li a {
	display: flex;
	padding-left: 12px;
	height: 100%;
	align-items: center;
	text-decoration: none;
	border-left: 3px solid #ccc;
	position: relative;
}
.effectiveLink li a::after {
	content: '';
	display: block;
	box-sizing: border-box;
	width: 8px;
	height: 8px;
	border: 1px solid #29b7ec;
	border-radius: 4px;
	background: #29b7ec;
	position: absolute;
	top: 5px;
	right: 5px;
}
.effectiveLink li a.on {
	border-left: 3px solid #29b7ec;
	color: #29b7ec;
}
.effectiveLink li a.on::before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 4px;
	border-color: transparent transparent transparent #29b7ec;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.effectiveLink li a.on::after {
	background: #fff;
}
.effective.active .effectiveLink {
	position: fixed;
	top: calc(30px + 49px);
	right: 50%;
	margin-right: -540px;
}
.effective.active .effectiveLink.wide {
	margin-right: -550px;
}
.effective.stop .effectiveLink {
	position: absolute;
	top: auto;
	right: -95px;
	margin-right: auto;
	bottom: 0;
}
.effective.stop .effectiveLink.wide {
	position: absolute;
	top: auto;
	right: -105px;
	margin-right: auto;
	bottom: 0;
}
.topicBox {
	padding: 20px;
	background: #f8f8f8;
	display: flex;
	justify-content: space-between;
}
.topicBox + .topicBox {
	margin-top: 2px;
}
.topicBox h5,
.topicBox figure {
	margin-top: 0;
}
.topicBox h5 {
	line-height: 24px;
}
.topicBox h5 span {
	font-size: 14px;
	font-weight: normal;
}
.topicBox li {
	font-size: 14px;
}
.topicBox li + li {
	margin-top: 4px;
}
.topicBox li > ul > li {
	font-size: 12px;
}
.topicillust {
	background: #eaf6d1!important;
}
.glpPhoto {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.glpPhoto li {
	width: calc((100% - 20px) / 2);
	padding-left: 0;
}
.glpPhoto li::before {
	display: none;
}
.glpPhoto li + li {
	margin-top: 0;
}
.glpPhoto figure figcaption {
	text-align: left;
	background: none;
	padding: 6px 0 4px;
}
.glpPhoto figcaption h5 {
	margin-top: 0;
	font-size: 13px;
}
.glpPhoto figcaption p {
	font-size: 11px;
	line-height: 16px;
}

/* topics02 */
.contMain section > * + .btns {
	margin: 0 0 20px;
}
.btns .btnGray {
	text-decoration: none;
}
.btns .btnGray + .btnGray {
	margin-left: 20px;
}
.lineFig {
	padding: 20px;
	border: 1px solid #eee;
	text-align: center;
}
.pdxNav {
	display: flex;
}
.pdxNav > li {
	padding-left: 0;
	width: calc(100% / 5);
}
.pdxNav > li::before {
	display: none;
}
#pdx01 {
	
}
#pdx01.on {
	
}
.pdxList > li {
	padding-left: 0;
}
.pdxList > li::before {
	display: none;
}
.pdxListItem {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.pdxListItemTxt {
	width: calc(100% - (200px + 30px));
}
.pdxListItemImg {
	width: 200px;
}
.pdxListItemImg img {
	max-width: 100%;
}
[id^="pdx"] figure {
	border: 1px solid #eee;
}
.backAnc {
	display: inline-block;
	padding: 0 20px 0 2px;
	border-bottom: 1px solid #888;
	font-size: 12px;
	text-decoration: none!important;
	position: relative;
}
.backAnc::after {
	content: '';
	display: block;
	box-sizing: border-box;
	width: 6px;
	height: 6px;
	border-top: 1px solid #888;
	border-right: 1px solid #888;
	transform: rotate(-45deg);
	position: absolute;
	top: 8px;
	right: 3px;
}
.backAnc:hover,
.backAnc:hover::after {
	border-color: #29b7ec;
}

@media(max-width:768px) {
	#contBtn {
		display: block;
		box-sizing: border-box;
		width: calc((100% - 50px) / 2);
		height: 44px;
		border-radius: 0;
		color: #fff;
		text-align: center;
		line-height: 46px;
		position: fixed;
		z-index: 9999;
		top: auto;
		right: auto;
		bottom: 0;
		margin-right: auto;
	}
	#contBtn::after {
		display: none;
	}
	#contBtn:hover {
		background: rgba(227,131,5,.84);
	}
	#contBtn span {
		padding: 0;
		background: url(../images/ico_mail.png) center /20px auto no-repeat;
		font-size: 0;
	}
	.telCircle {
		display: block;
	}

	/* index */
	.oneThird {
		display: block;
	}
	.oneThird > div {
		width: 100%;
	}
	.oneThird > div + div {
		margin-left: 0;
	}
	.oneThird > div + div h4 {
		margin-top: 12px;
	}
	.oneThird .randomList + h4 {
		margin-top: 12px;
	}
	.oneThird .randomList li {
		width: 49%;
	}
	.skyBlue {
		display: block;
	}
	.skyBlue > div {
		width: 100%;
	}
	.skyBlue > div + div {
		margin-top: 20px;
		margin-left: 0;
	}

	.classM > li > div {
		padding: 15px;
	}
	.classM > li > div > p {
		font-size: 12px;
	}
	.classS > li > p,
	.classS > li > a {
		padding-left: 55px;
	}
	.classS > li ul {
		padding-left: 15px;
	}
	.classS > li ul.classS {
		padding-top: 0;
		padding-bottom: 0;
	}

	/* topics */
	.effective section + section {
		margin-top: 30px;
	}
	.effectiveLink,
	.effectiveLink.wide {
		width: 100%;
		display: flex;
		position: relative!important;
		top: auto!important;
		right: auto!important;
		flex-wrap: wrap;
	}
	.effectiveLink.wide {
		margin-top: 60px;
	}
	.effectiveLink li {
		width: 33.33333%;
		height: 60px;
		border: none;
	}
	.effectiveLink.wide li {
		height: 76px;
	}
	.effectiveLink li + li {
		border-top: none;
	}
	.effectiveLink li:nth-child(2),
	.effectiveLink li:nth-child(3),
	.effectiveLink li:nth-child(5),
	.effectiveLink li:nth-child(6) {
		border-left: 1px solid #eee!important;
	}
	.effectiveLink li:nth-child(n + 4) {
		border-top: 1px solid #eee;
	}
	.effectiveLink.wide li:nth-child(4),
	.effectiveLink.wide li:nth-child(5) {
		width: 50%;
	}
	.effectiveLink li a {
		display: flex;
		padding-left: 0;
		border: none;
		text-align: center;
		justify-content: center;
	}
	.effectiveLink li a::after {
		box-sizing: border-box;
		border-radius: 0;
		border: none;
		border-top: 2px solid #29b7ec;
		border-right: 2px solid #29b7ec;
		transform: rotate(45deg);
		background: none;
		top: 0;
		right: 10px;
		bottom: 0;
		margin: auto;
	}
	.effectiveLink li a.on {
		border-left: none;
		color: #222;
	}
	.effectiveLink li a.on:hover {
		color: #29b7ec;
	}
	.effectiveLink li a.on::before {
		display: none;
	}
	#map area {
		display: none;
	}
	.topics h4.nonLine {
		margin: 16px 0 10px;
	}
	.topicBox {
		flex-wrap: wrap;
	}
	.topicBoxL,
	.topicBoxR {
		width: 100%;
	}
	.topicBoxR figure {
		margin-top: 20px;
		text-align: left;
	}
}
@media(max-width:480px) {
	/* topics02 */
	.btns .btnGray {
		width: 100%;
	}
	.btns .btnGray + .btnGray {
		margin: 10px 0 0 0;
	}
	.pdxListItem {
		display: block;
	}
	.pdxListItemImg {
		width: 100%;
		padding: 10px 0;
		background: #F4FCFE;
		text-align: center;
	}
	.pdxListItemImg img {
		width: 150px;
	}
	.pdxListItemTxt {
		width: 100%;
		margin-top: 14px;
	}
	.pdxListItemTxt .btnGray {
		width: 100%;
	}
}
@media(max-width:400px) {
	.effectiveLink li a::after {
		width: 7px;
		height: 7px;
		box-sizing: border-box;
		border-top: 1px solid #29b7ec;
		border-right: 1px solid #29b7ec;
		transform: rotate(45deg);
		right: 8px;
	}
}

.contMain .flow-writing section{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 15px 0;
	position: relative;
}
.contMain .flow-writing section:before{
	content: '';
	display: block;
	width: 11px;
	height: 11px;
	background: #ccc;
	position: absolute;
	left: 89px;
	bottom: -14px;
	z-index: 10;
}
.contMain .flow-writing section:after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10.5px 0 10.5px;
	border-color: #ccc transparent transparent transparent;
	position: absolute;
	left: 84px;
	bottom: -21px;
	z-index: 10;
}
.contMain .flow-writing section:last-child:before,
.contMain .flow-writing section:last-child:after{
	display: none;
}
.flow-writing section h5{
	width: 187px;
	border: 1px solid #29b7ec;
	padding: 21px 0;
	box-sizing: border-box;
	color: #29b7ec;
	text-align: center;
	margin-right:4%;
}
@media(max-width:735px) {
	.contMain .flow-writing section{
		display: block;
		margin: 15px 0 30px;
		padding-bottom:10px;
	}
	.contMain .flow-writing section:before{
		left: 50%;
		margin-left:-6px;
	}
	.contMain .flow-writing section:after{
		left: 50%;
		margin-left:-11px;        
	}
	.flow-writing section h5{
		width: 100%;
		padding: 8px 0;
		margin-right:0;
	}
}

.vrl{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;    
}
.cellNowrap{
	white-space: nowrap;
}
.contMain figure.al-left{
	padding: 15px 0;
}
.textRed{
	color: #f33333;    
}

/**/
.box-alert{
	border: 1px solid #97c830;
	background: #fcfff6;
	padding: 24px;
	margin: 30px 0;
	font-size: 14px;
}
.box-alert a{
	color: #97c830;
}

.set-mordal{
	position: fixed;
	z-index: 999999;
	width: 100%;
	height: 100%;
	top:0;
	left: 0;
	display: none;
}
.bg-overlay{
	position: fixed;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .5;
	top:0;
	left: 0;

}
.mordal-dl{
	box-sizing: border-box;
	padding: 25px;
	width: 500px;
	position: absolute;
	left: 50%;
	margin-left:-250px;
	top: 30%;
	background: #fff;
	z-index: 1000;
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
@media(max-width:768px) {
	.mordal-dl{
		width: 84%;
		left: 8%;
		margin-left:0;
	}
}

.mordal-dl p{
	line-height: 1.5;
	margin-bottom:20px;
}
.mordal-dl input{
	margin-right:5px;
}
.mordal-dl .btn-mordal-dl{
	display: block;
	background: #2ab7ed;
	position: relative;
	color: #fff;
	text-align: center;
	padding: 0 20px;
}
.mordal-dl .btn-mordal-dl:hover{
	opacity: .8;
	text-decoration: none;
	transition: .3 all ease;
}
.mordal-dl .btn-mordal-dl span{
	background: url(../../../common/images/pdf_ico_w.png) 100% 50% no-repeat;
	display: block;
	height: 46px;
	line-height: 46px;
}
.mordal-dl .btn-close{
	width: 46px;
	height: 46px;
	border-radius: 50%;
	position: absolute;
	right: -23px;
	top: -23px;
	z-index: 10;
	background: rgba(0,0,0,.9);
	cursor: pointer
}
@media(max-width:768px) {
	.mordal-dl .btn-close{
		width: 30px;
		height: 30px;
		right: -15px;
		top: -15px;
	}
}

.mordal-dl .btn-close:hover{
	opacity: .5;
	transition: .3 all ease;
}
.mordal-dl .btn-close:before{
	content: '';
	display: block;
	width: 2px;
	height: 15px;
	background: #fff;
	position: absolute;
	left: 50%;
	margin:-7px 0 0 -1px;
	top:50%;
	z-index: 10;
	transform: rotate(45deg);
}
.mordal-dl .btn-close:after{
	content: '';
	display: block;
	width: 2px;
	height: 15px;
	background: #fff;
	position: absolute;
	left: 50%;
	margin:-7px 0 0 -1px;
	top:50%;
	z-index: 10;    
	transform: rotate(-45deg);
}

.spListWrap,
.sp-img{
	display: none !important;
}
@media(max-width:735px) {
	.spListWrap{
		display: block !important;
		margin-top:10px;
	}
	.pc-img{
		display: none !important;
	}
	.sp-img{
		display: block !important;
	}
	map, .clkmap{
		position: absolute;
		z-index: -100;
	}
}

.laboData {
	display: flex;
	margin-top: 30px;
	padding: 20px;
	background: #f8f8f8;
}
.laboData.hOffice {
	margin-top: 20px;
}
/*
.laboData.shizuoka {
	margin-top: 50px;
}
*/
.laboData > figure {
	margin-top: 0;
	margin-right: 20px;
}
.laboData > figure img {
	width: 240px;
	max-width: none;
}
.laboData > figure figcaption {
	margin-top: 5px;
	padding: 0;
}


/***20200508_追加***/

.laboData2 {
	display: flex;
	margin-top: 30px;
	padding: 20px;
	background: #f8f8f8;
}
.laboData2 > figure {
	margin-top: 0;
	margin-right: 20px;
}
.laboData2 > figure img {
	width: 158px;
	max-width: none;
}
.laboData2 > figure figcaption {
	margin-top: 5px;
	padding: 0;
}

/*******************/

.directions > li {
	padding-left: 0;
}
.directions > li .note {
	margin-top: 10px;
}
.directions > li > ul > li > ul > li {
	padding-left: 10px;
	text-indent: -0.5em;
}
.directions > li > ul > li > ul > li::before {
	display: none;
}
.directions > li::before {
	display: none;
}
.mapWrap {
	margin-top: 20px;
}
.mapWrap > iframe {
	width: 100%;
}
@media (max-width: 600px) {
	.laboData {
		display: block;
	}
	.laboData > figure {
		margin-bottom: 10px;
		text-align: left;
	}
	
	#kyoten #contBtn {
		width: 86%;
	}
	#kyoten #contBtn span {
		width: auto;
		height: auto;
		margin-top: auto;
		background: url(../images/ico_mail.png) left center /20px 14px no-repeat;
		padding-left: 32px;
		font-size: inherit;
	}
}


.box-message {
 display: flex;
    justify-content: space-between;
}
.box-message .column-text {
    width: 60%;
}
.box-message .column-text p {
    margin-bottom: 1em;
}
.box-message .column-img {
    width: 34%;
}
.box-message .column-img img {
    width: 100%;
    height: auto;
}


div #form_tab {
	margin-left: 20px;
	clear: both;
	width: 600px;
	margin-top: 30px;
}

div #form_tab span {
	display:block;
	margin: 0px 10px 10px 0px;
	padding: 0px 0px 0px 0px;
	float: left;
	width: 240px;
	font-size: 100%;
	text-align:center;
	vertical-align:bottom;
	top:3px;
}

div #form_tab span a {
	display:block;
	padding: 5px 0px 2px;
	text-decoration:none;
	width:240px;
	height: 20px;
	vertical-align:bottom;
}

div #form_tab span.tab_on a {
	background-color: #663399;
	color:#FFFFFF;
	font-weight:bold;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
}

div #form_tab span.tab_off a {
	background-color: #ffffff;
	color:#333333;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	border-right: 1px solid #cccccc;
}

div #form_tab span.tab_off a:hover {
	color:#663399;
	font-weight:bold;
	border-top: 0px solid #ffffff;
	border-left: 3px double #cccccc;
	border-bottom: 0px solid #ffffff;
	border-right: 3px double #cccccc;
}

hr.hr_form_tab {
	margin: 5px 0px 10px 10px;
	clear:both;
	width:580px;
	height:4px;
	color:#727272;
	border-bottom: 3px double #cccccc;
	
}

.form_title{
	margin-left: 20px;
	margin-top: 30px;
	float: left;
	width: 307px;
}

.form_body{
	background:url(images/21-form4.jpg) no-repeat left;
	width: 320px;
	margin-left: 30px;
	margin-top: 0px;
	margin-bottom: 20px;
	overflow: hidden;
	height: 1%;
	line-height: 160%;
	font-size: 12px;
	float: left;
	clear: right;
}

.form_foot4{
	margin-left: 20px;
	margin-bottom: 20px;
	clear: both;
	width: 560px;
	margin-top: 30px;
}
.form_foot4 img{
	margin-right:10px;
}
.form_foot4 table{
	margin-bottom: 20px;
	border: solid 1px #cccccc;
	width: 100%;
}
.form_foot4 table td{
	padding: 5px;
	background-color: #FFECEC;
	padding-right: 5px;
	padding-left: 5px;
	font-size: x-small;
}
.form_foot4 table td.fo-td{
	background-color:#DFDFDF;
	width: 25%;
}
.form_foot4 table td.fo-td-c{
	text-align:center;
	color:#FF0000;
	font-weight: bold;
}


.form_foot4 table td img{
margin-right:5px}

.form_foot4 h2{
	height:26px;
	margin: 0px;
	margin-right: 10px;
}

.form_foot4 h3{
	margin: 0px;
	font-size: 90%;
	margin-bottom: 10px;
	border-bottom: 1px solid #cccccc;
	padding-bottom: 5px;
	padding-left: 10px;
	background-color: #DFF4FF;
	padding-top: 10px;
	border-left: 3px solid #6666CC;
	color: #6666CC;
}

.form_foot4 h4{
	height:26px;
	margin: 0px;
	margin-right: 10px;
	padding-left: 10px;
	font-size:90%;
	padding-top: 10px;
}
.form_foot4 h5{
	margin-right: 10px;
	padding-left: 10px;
	font-size:90%;
	padding-top: 5px;
	margin-bottom: 2px;
	padding-bottom: 5px;
	padding-left: 10px;
	background-color: #FFFFFF;
	border-left: 0px solid #DFF4FF;
	color: #6666CC;
	margin-left: 20px;
	margin-top: 1px;

}


.form_foot4 p{
	margin: 0px;
	margin-bottom: 10px;
	padding-left: 10px;
	border-top:1px #cccccc solid;
	border-right:1px #E0E0E0 solid;
	border-left:1px #cccccc solid;
	border-bottom:1px #E0E0E0 solid;
	padding-right: 10px;
	padding-top: 10px;
	padding-bottom: 10px;
	background-color: #FFF4DF;
	margin-left: 10px;
}

.form_foot4 p.rec{
	width:550px;
	text-align: center;
	background-color: #FFFFE8;
	padding: 10px;
}
.form_foot4 p.rec img{
	margin-right: 20px;
}
.form_foot4 p.mail{
	float:left;
	text-align: left;
	width: 260px;
	height: 20px;
	margin-right: 10px;
	background-color: #FFFFFF;
	}
.form_foot4 p.tel{
	text-align: left;
	background-color: #FFFFFF;
	float: left;
	width: 260px;
	height: 20px;
}


.form_foot4 span{
	margin-left: 10px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	display: block;
	line-height: 160%;
}
.form_foot4 span img{
	position:relative;
	top: 2px;
}

span.coation{
	margin:0px;
	padding:0px;
	display:inline;
	color: #FF0000;
	font-weight: bold;
}
span.coation2{
	margin:0px;
	padding:0px;
	display:inline;
	color: #000099;
}

span.info_thanks{
	background-color:#FFFFFF;
	text-align: left;
	margin-top: 20px;
}

.aqh3{
	margin-left:20px;
	margin-right: 20px;
		padding-bottom: 5px;
	border-bottom: 1px #cccccc solid;
	border-left: 4px #cccccc solid;
	padding-left: 5px;

}
span.ast {
	color: #FF0000;
	display: inline;
	width: auto;
	padding: 0px;
	margin: 0px;
}

/* 2020.04.15霑ｽ險� */
body.is-hidden {
	overflow: hidden;
}
.privacy_opener {
	text-decoration: underline;
	cursor: pointer;
}
.privacy_wrap {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease;
}
.privacy_wrap.is-show {
	opacity: 1;
	pointer-events: auto;
	transition: opacity .3s ease;
}
.overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,.8);
}
.privacy {
	width: 800px;
	height: 80vh;
	border-radius: 4px;
	background: #fff;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	padding: 30px;
	box-sizing: border-box;
}
.privacy_inner {
	height: 100%;
	padding-right: 40px;
	overflow-y: scroll;
}
.privacy .btnClose {
	display: block;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #000;
	border: 2px solid #fff;
	cursor: pointer;
	position: absolute;
	top: -12px;
	right: -12px;
	transform: rotate(45deg);
	transition: background 0.3s ease;
}
.privacy .btnClose::before,
.privacy .btnClose::after {
	content: '';
	display: block;
	width: 12px;
	height: 2px;
	background: #fff;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.privacy .btnClose::after {
	transform: rotate(90deg);
}
.privacy .btnClose:hover {
	background: #555;
	transition: background 0.3s ease;
}
.privacy h2 {
	margin: 0 0 20px;
	padding: 12px 0 10px 10px;
	border-top: 1px solid #29b7ec;
	border-bottom: 1px dotted #ccc;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.4;
}
.privacy h3 {
	margin: 15px 0 10px;
	padding: 7px 0 4px 12px;
	border-bottom: 1px dotted #ccc;
	font-size: 16px;
	font-weight: normal;
	color: #000;
	position: relative;
}
.privacy h3::before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 6px;
	border-color: transparent transparent transparent #29b7ec;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.privacy p {
	margin-left: 0;
}
.privacy ul {
	padding-left: 1.6em;
}
.privacy .intro {
	margin-top: 16px;
	padding: 20px;
	background: #f1fbff;
	position: relative;
}
.privacy .intro::before,
.privacy .intro::after {
	content: '';
	display: block;
	position: absolute;
}
.privacy .intro::before {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-color: #29b8ec transparent transparent transparent;
	top: 8px;
	left: 8px;
}
.privacy .intro::after {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 10px 10px;
	border-color: transparent transparent #29b8ec transparent;
	right: 8px;
	bottom: 8px;
}
.privacy .titleNote {
	font-size: 11px;
	line-height: 1.4;
	text-align: right;
}
.privacy .titleNote span {
	display: inline-block;
	padding-left: 1em;
	text-align: left;
	text-indent: -1em;
}

@media(max-width:768px) {
	.privacy {
		width: 90%;
		height: 90vh;
		padding: 20px;
	}
	.privacy_inner {
		padding-right: 0;
	}
	.privacy h2 {
		padding: 10px 0 8px 6px;
		font-size: 18px;
	}
}
.box-flex {
    display: flex;
    justify-content: space-between;
}
.box-flex._cell2 > div {
    width: 48%;
}
.sitemap h4 {
    border-bottom: none;
}
.sitemap section > div+div {
    margin-top: 60px;
}
@media(max-width:768px) {
    .box-flex {
        display: flex;
        flex-direction: column;
    }
    .box-flex._cell2 > div {
        width: 100%;
    }
    .sitemap section > div+div {
        margin-top: 40px;
    }    
}
.text-signature {
    text-align: right;
    margin-top: 40px !important;
}