@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&display=swap");
/*font-family: 'Noto Sans JP', sans-serif;*/
@import url("https://fonts.googleapis.com/css2?family=Roboto&display=swap");
/*font-family: 'Roboto', sans-serif;*/
@import url("https://use.typekit.net/egt0haf.css");
/*font-family: urw-din, sans-serif;
font-weight: 400;
font-weight: 600;*/

/* body
-------------------------- */
/* 12px @ 768px increasing to 16px @ 1400px */
@media (min-width: 768px) {
	:root {
		/*font-size: calc(.75rem + ((1vw - 7.68px) * .6329));*/
		font-size: calc(0.6329vw + 7.1392px);
	}
}
@media (min-width: 1400px) {
	:root {
		font-size: 16px;
	}
}
body {
	width: 100%;
	height: 100%;
	color: #545454;
	background: #fff;
	font-family: "Noto Sans JP", sans-serif;
	line-height: 2;
	text-align: left;
	position: relative;
	-webkit-text-size-adjust: 100%;
}
a {
	color: #545454;
	text-decoration: none;
}
a:hover {
	color: #1591c6;
}
a,
a img,
.easing {
	transition: .3s ease-in-out;
	border: none;
	outline: none;
	position: relative;
}
/*a img:hover {
	opacity: .7 !important;
}
*/
figure {
	text-align: center;
}
sup {
	font-size: 85%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
	top: -0.25rem;
}
sub {
	font-size: 85%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
	bottom: -0.25rem;
}
@keyframes show {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
/* responsive
-------------------------- */
.spSet {
	display: none !important;
}
.tbSet {
	display: none !important;
}
.pcSet {
	display: block !important;
}
@media (max-width: 900px) {
	.tbSet {
		display: block !important;
	}
}
/* clearfix
--------------------------
.cf {
	zoom: 1;
}
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
.clear {
	clear: both;
	display: block;
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	overflow: hidden;
}*/
/* header
-------------------------- */
header {
	z-index: 1000;
	width: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	border-bottom: 1px solid #ccc;
}
header .inner {
	max-width: 1400px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	/*padding: 0 2.5%;*/
	padding: 0 1.5%;
}
h1 {
	width: 8%;
	margin: 0;
}
h1 img {
	width: 100%;
	max-width: 111px;
	display: block;
}
@media (max-width: 985px) {
	h1 {
		width: 100%;
		margin: .5rem 0 -0.5rem;
	}
}
header nav {
	width: auto;
	/*margin: 0 2rem 0 auto;*/
	margin: 0 6rem 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
	line-height: 1.25;
	padding-top: 1.25rem;
}
header nav div {
	padding: 1rem .5rem 0;
	font-size: .875rem;
	/*font-size: .75rem;*/
}
@media (max-width: 985px) {
	header nav {
		width: 100%;
		margin: 0 auto;
	}
}
header nav div a {
	padding: 0 0 2.25rem;
}
header nav div a {
	display: block;
}
header nav .sub_menu {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 100%;
	background: url(../_img/bg_submenu.jpg) center center;
	background-size: 100%;
	padding: 1.25rem 2.85%;
	position: absolute;
	/*top: ; js */
	left: 0;
	z-index: 99;
	font-size: 1rem;
	box-shadow: 0 .125rem .125rem rgba(0, 0, 0, .1);
	opacity: 0;
	visibility: hidden;
	transition: all .3s ease-in-out;
}
header nav div.hover .sub_menu {
	z-index: 999;
	opacity: 1;
	visibility: visible;
	transition: all .3s ease-in-out;
}
header nav .sub_menu .sub_ttl {
	width: 37%;
	padding-left: calc(22.1518vw - 170.1265px);
	margin: 0;
	font-size: 1.5rem;
	font-weight: 500;
	align-self: center;
}
header nav .sub_menu ul {
	width: 21%;
}
header nav .sub_menu ul li a {
	padding: .5rem 0 .5rem 1.1rem;
	margin: 1rem 0;
	position: relative;
	display: block;
}
header nav .sub_menu ul li a:before {
	content: "";
	width: .5rem;
	height: .5rem;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-top: 2px solid #1591c6;
	border-right: 2px solid #1591c6;
	transform: rotate(45deg);
}
header.topHeader {
	background: none;
	border-bottom: none;
}
header.topHeader:hover {
	background: #fff;
	border-bottom: 1px solid #ccc;
}
header.topHeader:hover nav div>a {
	color: #545454;
	text-shadow: none;
}
header.topHeader:hover nav div>a:hover {
	color: #1591c6;
}
header.topHeader nav div>a {
	color: #fff;
	/*text-shadow: 0 0 2px rgba(0, 0, 0, 1);*/
	text-shadow: #545454 1px 1px 0, #545454 -1px -1px 0, #545454 -1px 1px 0, #545454 1px -1px 0, #545454 -1px 0 0, #545454 1px 0 0, #545454 0px 1px 0, #545454 0 -1px 0;
}
#langSet {
	width: auto;
	margin: 0;
	display: flex;
	justify-content: flex-end;
	font-family: Arial;
	font-size: 1rem;
	position: absolute;
	top: 1.25rem;
	/*right: 2.5%;*/
	right: 1.5%;
}
#langSet a {
	width: 2.5rem;
	color: #77cdf2;
	background: #1591c6;
	padding: .4rem 0;
	text-align: center;
}
#langSet a:hover {
	filter: brightness(120%);
	/*background: #A2A2A2;
	color: #FFF;*/
}
#langSet a.current {
	background: #c61591;
	color: #fff;
}
/* footer
-------------------------- */
.to_contact {
	position: fixed;
	right: 5rem;
	bottom: 1.25rem;
	background: #c61591;
	border-radius: 1.25rem;
	color: #fff;
	line-height: 2.5rem;
	padding: 0 .75rem;
	display: none;
	z-index: 999;
	opacity: 1;
}
.to_contact:hover {
	filter: brightness(120%);
	color: #fff;
	/*background: #A2A2A2;*/
}
.to_top {
	position: fixed;
	right: 1rem;
	bottom: 1rem;
	width: 3rem;
	height: 3rem;
	background: #1591c6;
	display: none;
	z-index: 999;
	opacity: 1;
}
.to_top:after {
	content: "";
	position: absolute;
	width: .5rem;
	height: .5rem;
	top: .25rem;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(-45deg);
}
.to_top:hover {
	filter: brightness(120%);
	/*background: #A2A2A2;*/
}
footer {
	width: 100%;
	background: #f0f9fd;
	color: #fff;
}
footer nav {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 1rem 2.85% 0;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
footer nav>div {
	width: 20%;
	padding: 1.5rem 0 0;
	line-height: 1.25;
}
footer nav>div:nth-of-type(4) {
	/*width: 25%;*/
	width: 20%;
}
footer nav>div:nth-of-type(5) {
	/*width: 15%;*/
	width: 20%;
}
footer nav a.sub_ttl {
	display: block;
	color: #1591c6;
	font-weight: 500;
	margin: 1.5rem 0;
}
footer nav a.sub_ttl:hover {
	color: #434a82;
}
footer nav ul li a {
	font-size: .875rem;
	color: #1591c6;
	padding: 0 0 .25rem 1rem;
	margin: .75rem 0;
	position: relative;
	display: block;
}
footer nav ul li a:hover {
	color: #434a82;
}
footer nav ul li a:before {
	content: "";
	width: .375rem;
	height: .375rem;
	position: absolute;
	top: .4rem;
	left: 0;
	/*top: 0;
	bottom: 0;
	left: 0;
	margin: auto;*/
	border-top: 1px solid #434a82;
	border-right: 1px solid #434a82;
	transform: rotate(45deg);
}
footer ul.sub_menu {
	width: calc(100% - 5.8%);
	max-width: calc(1280px - 5.8%);
	margin: 1rem auto;
	padding: 1.5rem .875rem 1rem;
	border-top: 1px solid #ccc;
	font-size: .875rem;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-evenly;
}
footer ul.sub_menu a {
	display: block;
	color: #1591c6;
}
footer ul.sub_menu a:hover {
	color: #434a82;
}
#copy {
	width: 100%;
	background: #1591c6;
	color: #fff;
	padding: 2rem 2.85%;
	text-align: center;
	line-height: 1;
}
#footer_ir {
	width: 100%;
	background: #1591c6;
	color: #fff;
	padding: 1rem 0;
}
#footer_ir nav {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 2rem 2.85%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
#footer_ir h5 {
	width: 100%;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.5;
	margin: .25rem auto;
}
#footer_ir a {
	color: #fff;
}
#footer_ir a:hover {
	color: #77cdf2;
}
#footer_ir nav div {
	padding: 0;
	line-height: 1.5;
}
#footer_ir nav>div:nth-of-type(2) {
	width: 20%;
}
#footer_ir nav>div:nth-of-type(3) {
	width: 19%;
}
#footer_ir nav>div:nth-of-type(4) {
	width: 13%;
}
#footer_ir nav>div:nth-of-type(5) {
	width: 17%;
}
#footer_ir nav>div:nth-of-type(6) {
	width: 14%;
}
#footer_ir nav>div:nth-of-type(7) {
	width: 17%;
}
#footer_ir nav .sub_ttl {
	font-size: .875rem;
	display: block;
	font-weight: 500;
	margin: 1.5rem 0;
}
#footer_ir nav ul li a {
	font-size: .8125rem;
	padding: 0 0 .25rem 1rem;
	margin: .75rem 0;
	position: relative;
	display: block;
}
#footer_ir nav ul li a:before {
	content: "";
	width: .375rem;
	height: .375rem;
	position: absolute;
	top: .4rem;
	bottom: 0;
	left: 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
/* baseLayoutParts
-------------------------- */
/* block ======== */
/*main {
	margin-top: ; js
}
*/
#top00 main {
	margin-top: 0 !important;
}
section {
	width: 100%;
	padding: 0;
}
section:nth-of-type(odd) {
	background: #f6f6f6;
}
.inner {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 1rem 2.85%;
	position: relative;
}
.btn_tgl+.hidden {
	display: none;
	width: 100%;
	padding: 3rem 0 1.5rem;
}
.row {
	display: flex;
	flex-wrap: wrap;
}
.box_wht {
	width: 100%;
	background: #fff;
}
/* background ======== */
#type01 {
	background: url(../_img/bg_type01.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
}
#type02 {
	background: url(../_img/bg_type02.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
}
/* heading ======== */
h2 {
	width: 100%;
	max-width: 1400px;
	/*color: rgba(255, 255, 255, .75);*/
	color: #fff;
	font-size: 1.5rem;
	/*line-height: 1.25;*/
	line-height: 1.5;
	letter-spacing: .25rem;
	padding: 5.25rem 1.425%;
	margin: 0 auto;
	text-shadow: 0 0 .5rem #1591c6;
	text-align: center;
}
h2 span {
	color: #fff;
	font-size: 4.5rem;
	display: block;
	font-family: urw-din, sans-serif;
	font-weight: 600;
	letter-spacing: 0;
	padding-bottom: .5rem;
}
h3 {
	font-size: 2rem;
	font-weight: 500;
	margin: 2rem auto 1rem;
	text-align: center;
	position: relative;
}
h3.ej {
	font-size: 1rem;
	font-weight: 400;
	letter-spacing: .25rem;
	margin: 0;
	padding: .5rem 0;
	line-height: 1.5;
	position: relative;
	color: #666;
}
h3.ej span {
	font-size: 2.25rem;
	font-family: Roboto, sans-serif;
	letter-spacing: 0;
	color: #1591c6;
	display: block;
}
.btn_tgl {
	cursor: pointer;
	transition: .3s ease-in-out;
	position: relative;
}
.btn_tgl:hover {
	filter: brightness(120%);
}
.btn_tgl .btn_plus {
	font-size: 1rem;
	background: #1591c6;
	border-radius: .25rem;
	width: 1.75rem;
	height: 1.75rem;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	cursor: pointer;
}
.btn_tgl .btn_plus:before,
.btn_tgl .btn_plus:after {
	content: "";
	height: 3px;
	width: 60%;
	background: #fff;
	position: absolute;
	top: 50%;
	right: 20%;
	margin-top: -1.5px;
}
.btn_tgl .btn_plus:before {
	transform: rotate(90deg);
}
.btn_tgl .btn_plus:before {
	transition: transform .3s ease;
}
.btn_tgl.open .btn_plus {
	background: #c61591;
}
.btn_tgl.open .btn_plus:before {
	transform: rotate(0);
}
h4 {
	font-size: 1.375rem;
	font-weight: 500;
	text-align: center;
}
h4 span {
	display: block;
	font-size: 1.3125rem;
}
h5.btn_tgl {
	font-size: 1.375rem;
	font-weight: 500;
	margin: 1rem 0 0;
	padding: 1rem 3rem 1rem 1rem;
	line-height: 1.5;
	background: #fff;
	position: relative;
	cursor: pointer;
}
.btn_tgl .btn_arrow {
	width: 1.25rem;
	height: 1rem;
	position: absolute;
	top: 1.5rem;
	right: 1.5rem;
	padding: 0;
	background: #fff;
	cursor: pointer;
}
.btn_tgl .btn_arrow:after {
	content: "";
	display: block;
	border-top: 1rem solid #1591c6;
	border-right: .5773rem solid transparent;
	border-left: .5773rem solid transparent;
	transition: transform .3s ease;
}
.btn_tgl.open .btn_arrow:after {
	transform: scale(1, -1);
}
h6 {
	width: 100%;
	font-size: 1rem;
	margin: 2rem auto .5rem;
}
p {
	width: 100%;
	margin: 1rem auto;
}
p a,
a.f_sky {
	color: #1591c6;
}
p a:hover,
a.f_sky:hover {
	text-decoration: underline;
}
p.strong {
	font-size: 1.125rem;
	font-weight: 500;
}
.attn {
	font-size: .875rem;
	margin: 1rem auto;
}
/* button ======== */
.btn_sky {
	display: inline-block;
	width: auto;
	padding: 1rem 3rem;
	margin: 2rem auto;
	background: #1591c6;
	border: 1px solid #1591c6;
	color: #fff;
	letter-spacing: .075em;
	text-align: center;
	position: relative;
	cursor: pointer;
	transition: .3s ease-in-out;
}
.btn_sky:after {
	content: "\2192";
	width: 1rem;
	height: 2rem;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.5rem;
	margin: auto;
}
.btn_sky:hover {
	filter: brightness(120%);
	color: #fff;
	/*background: #A2A2A2;
	border: 1px solid #A2A2A2;*/
}
.btn_sky0 {
	display: block;
	width: 100%;
	padding: 1rem 2rem;
	margin: 0 auto;
	background: #1591c6;
	border: 1px solid #1591c6;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 500;
	position: relative;
	transition: .3s ease-in-out;
}
.btn_sky0:hover {
	color: #fff;
	filter: brightness(120%);
}
.btn_sky0:before,
.btn_sky0:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.btn_sky0:before {
	width: 2.125rem;
	height: 2px;
	right: 1.75rem;
	background: #fff;
	transform: rotate(45deg);
}
.btn_sky0:after {
	width: 1.6875rem;
	height: 1.6875rem;
	right: 2rem;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn_sky0.up:before {
	transform: rotate(135deg);
}
.btn_sky0.up:after {
	border-top: 2px solid #fff;
	border-bottom: none;
	border-right: 2px solid #fff;
}
.btn_sky1 {
	display: block;
	width: 20em;
	padding: 1rem 2rem;
	margin: 1.5rem auto;
	background: #1591c6;
	border: 1px solid #1591c6;
	border-radius: .25rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 500;
	text-align: center;
	position: relative;
	transition: .3s ease-in-out;
}
.btn_sky1:hover {
	color: #fff;
	filter: brightness(120%);
}
.wrap_center {
	text-align: center;
	margin: 1rem auto;
}
.btn_text {
	display: inline-block;
	margin: .5rem auto;
	position: relative;
	transition: .3s ease-in-out;
	color: #1591c6;
}
.btn_text:hover {
	filter: brightness(120%);
}
.btn_pink {
	display: block;
	width: 20em;
	padding: 1rem 2rem;
	margin: .5rem auto;
	background: #c61591;
	border: 1px solid #c61591;
	border-radius: .25rem;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 500;
	text-align: center;
	position: relative;
	transition: .3s ease-in-out;
}
.btn_pink:hover {
	color: #fff;
	filter: brightness(120%);
}
.btn_pink0 {
	display: block;
	width: 100%;
	padding: 1rem 2rem;
	margin: 0 auto;
	background: #c61591;
	border: 1px solid #c61591;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 500;
	position: relative;
	transition: .3s ease-in-out;
}
.btn_pink0:hover {
	color: #fff;
	filter: brightness(120%);
}
.btn_pink0:before,
.btn_pink0:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}
.btn_pink0:before {
	width: 2.125rem;
	height: 2px;
	right: 1.75rem;
	background: #fff;
	transform: rotate(45deg);
}
.btn_pink0:after {
	width: 1.6875rem;
	height: 1.6875rem;
	right: 2rem;
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
}
.btn_wht {
	display: inline-block;
	width: auto;
	max-width: 18.75rem;
	padding: .75rem 4rem;
	margin: 2rem auto 0;
	background: #fff;
	border: 1px solid #1591c6;
	color: #1591c6;
	letter-spacing: .075em;
	text-align: center;
	position: relative;
}
.btn_wht:after {
	content: "\2192";
	width: 1rem;
	height: 2rem;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.5rem;
	margin: auto;
}
.btn_wht:hover {
	background: #c61591;
	border: 1px solid #c61591;
	color: #fff;
}
.btn_gray {
	display: inline-block;
	width: auto;
	height: 3rem;
	line-height: 3rem;
	padding: 0 1.5rem;
	margin: 0 0 0 1rem;
	background: #d1d1d1;
	border: 1px solid #707070;
	color: #707070;
	text-align: center;
	position: relative;
}
.btn_gray:hover {
	background: #a2a2a2;
	border: 1px solid #a2a2a2;
	color: #fff;
}
.btn_trp {
	display: inline-block;
	width: auto;
	max-width: 18.75rem;
	padding: 1rem 4rem 1rem 2rem;
	margin: 1.5rem auto 2rem;
	background: rgba(0, 0, 0, 0);
	border: 1px solid #fff;
	color: #fff;
	font-size: 1rem;
	letter-spacing: .075em;
	text-align: center;
	/*box-shadow: 0 0 .125rem #545454;*/
	box-shadow: #545454 1px 1px 0, #545454 -1px -1px 0, #545454 -1px 1px 0, #545454 1px -1px 0, #545454 -1px 0 0, #545454 1px 0 0, #545454 0px 1px 0, #545454 0 -1px 0;
	/*text-shadow: 0 0 .125rem #545454;*/
	text-shadow: #545454 1px 1px 0, #545454 -1px -1px 0, #545454 -1px 1px 0, #545454 1px -1px 0, #545454 -1px 0 0, #545454 1px 0 0, #545454 0px 1px 0, #545454 0 -1px 0;
}
.btn_trp:after {
	content: "\2192";
	width: 1rem;
	height: 1rem;
	line-height: 1;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1.5rem;
	margin: auto;
}
.btn_trp:hover {
	background: rgba(0, 0, 0, .25);
	color: #fff;
}
/* icon ======== */
a.mini_pdf:after {
	content: "";
	display: inline-block;
	width: .9rem;
	height: 1.2rem;
	background: url(../_img/icon_pdf.png) no-repeat center top;
	background-size: contain;
	margin: 0 0 -0.25rem .25rem;
}
a.icon_pdf {
	display: block;
	padding-right: 2.5rem;
}
a.icon_pdf:before {
	content: "";
	display: inline-block;
	width: 1.5rem;
	height: 2rem;
	background: url(../_img/icon_pdf.png) no-repeat center top;
	background-size: contain;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
a.icon_mov {
	display: block;
	padding-right: 2.5rem;
}
a.icon_mov:before {
	content: "";
	display: inline-block;
	width: 1.5rem;
	height: 2rem;
	background: url(../_img/icon_mov.png) no-repeat center top;
	background-size: contain;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
a.icon_pdf:hover,
a.icon_mov:hover {
	filter: brightness(120%);
}
a.icon_pdf.sgl,
a.icon_mov.sgl {
	width: 1.5rem;
	height: 2rem;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	padding: 0;
}
a.mark_new:after {
	content: "NEW";
	font-weight: 500;
	color: #1591c6;
	display: inline;
	margin-left: .5rem;
}
a.mark_arrow {
	display: block;
	color: #1591c6;
	margin: .5rem auto;
}
a.mark_arrow:before {
	content: "";
	width: .5rem;
	height: .5rem;
	margin-right: .5rem;
	margin-bottom: .125rem;
	display: inline-block;
	border-top: 2px solid #1591c6;
	border-right: 2px solid #1591c6;
	transform: rotate(45deg);
}
a.mark_square {
	display: block;
	color: #1591c6;
	margin: .5rem auto;
	padding-left: 1.5rem;
	text-indent: -0.875rem;
	font-size: 1rem;
}
a.mark_square:before {
	content: "";
	width: .625rem;
	height: .625rem;
	margin: 0 .25rem 0 0;
	display: inline-block;
	background: #1591c6;
}
a.mark_new:hover,
a.mark_arrow:hover,
a.mark_square:hover {
	filter: brightness(120%);
}
/* table ======== */
table {
	width: 100%;
	font-size: .875rem;
	line-height: 1.75;
	margin: 0 auto;
	white-space: normal;
}
th {
	font-weight: 400;
	border: 1px solid #1591c6;
	background: #1591c6;
	color: #fff;
	padding: .5rem 1rem;
	vertical-align: middle;
}
td {
	border: 1px solid #1591c6;
	padding: .5rem 1rem;
	vertical-align: middle;
	color: #333;
}
td.logo {
	border-right: none;
	padding: .25rem 1rem;
}
td.logo+td {
	border-left: none;
}
td.logo img {
	height: 3rem;
	object-fit: contain;
	margin: 0 auto;
}
/* list ======== */
#bread_crumb {
	width: 100%;
	background: #eeeeee;
	font-size: .75rem;
	font-weight: 500;
	line-height: 1;
}
#bread_crumb ul {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
	padding: .5rem 2.85%;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
}
#bread_crumb li {
	position: relative;
	white-space: nowrap;
}
#bread_crumb li a {
	padding-right: .5rem;
}
#bread_crumb li:after {
	content: ">";
	padding-right: .5rem;
}
#bread_crumb li:last-child:after {
	content: "";
}
.list_type01 {
	margin: 1.5rem auto;
}
.list_type01 li {
	display: block;
	padding-left: 1.25em;
	text-indent: -1.25em;
	margin: .5rem auto;
}
/* scroll ======== */
.scroll_x {
	overflow-x: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
	padding-bottom: .25rem;
}
.scroll_y {
	overflow-y: scroll;
	white-space: nowrap;
	-webkit-overflow-scrolling: touch;
}
.scroll_x::-webkit-scrollbar {
	height: 4px;
}
.scroll_y::-webkit-scrollbar {
	width: 8px;
}
.scroll_x::-webkit-scrollbar-track,
.scroll_y::-webkit-scrollbar-track {
	background: none;
}
.scroll_x::-webkit-scrollbar-thumb,
.scroll_y::-webkit-scrollbar-thumb {
	background: #bcbcbc;
	border-radius: 2px;
}
/* top
-------------------------- */
#top_mv {
	width: 100%;
	height: 56.25vw;
	max-height: 100vh;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	/*padding-bottom: 56.25%;*/
}
/*#top_mv video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}*/
#top_mv iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
	/*object-fit: cover;
	object-position: 50% 50%;*/
}
#top_mv .cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/*background: rgba(0, 0, 0, .15);*/
	border-bottom: 1px solid #ccc;
}
#top_mv h2 {
	letter-spacing: 0;
	font-size: 2.625rem;
	text-align: left;
	/*text-shadow: 0 0 .25rem #545454;*/
	text-shadow: #545454 1px 1px 0, #545454 -1px -1px 0, #545454 -1px 1px 0, #545454 1px -1px 0, #545454 -1px 0 0, #545454 1px 0 0, #545454 0px 1px 0, #545454 0 -1px 0;
	position: absolute;
	/*bottom: 25%;*/
	bottom: 0;
	left: 0;
	padding: 0 2.85%;
}
#top_mv h2 span {
	font-family: Arial, sans-serif;
	font-weight: 400;
	letter-spacing: .05em;
	display: block;
	font-size: 1.75rem;
	padding-bottom: 0;
}
#top_news .inner {
	padding: 3rem 2.85% 1.5rem;
}
#top_news .box_topic {
	width: 100%;
	max-width: 1100px;
	margin: 1.5rem auto 3rem;
	border: 3px solid #1591c6;
	background: #1591c6;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
#top_news .box_topic dt {
	width: 15%;
	text-align: center;
	color: #fff;
	padding: .75rem 1rem;
}
#top_news .box_topic dd {
	width: 85%;
	font-size: 1.625rem;
	background: #fff;
}
#top_news .box_topic dd a {
	padding: .75rem 4.5rem .75rem 1.5rem;
	color: #1591c6;
	font-weight: 500;
	display: block;
	position: relative;
}
#top_news .box_topic dd a:after {
	content: "\2192";
	color: #fff;
	background: #1591c6;
	width: 3.5rem;
	height: 100%;
	padding: .75rem 1.25rem;
	position: absolute;
	top: 0;
	right: 0;
}
#top_news .box_topic dd a:hover {
	filter: brightness(120%);
}
.sortSet {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.sortSet .btn_sort {
	flex-basis: calc(100% / 6);
	text-align: center;
	background: #eee;
	padding: .5rem;
	margin: .5rem 0 1.5rem;
	cursor: pointer;
	border: .1875rem solid #fff;
	transition: .3s ease-in-out;
	cursor: pointer;
}
.sortSet .btn_sort:hover,
.sortSet .btn_sort.select {
	background: #c61591;
	color: #fff;
}
.sortSet dl {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	transition: all 1s;
	animation: show .5s ease-out 0s;
}
.sortSet dl dt {
	width: 24%;
	padding: .75rem 0 .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
.sortSet dl dt span {
	padding-left: 1rem;
	width: calc(100% - 5em);
	display: inline-block;
	text-align: center;
}
.sortSet dl dd {
	width: 76%;
	padding: .75rem 1rem .75rem .5rem;
	border-bottom: 1px solid #ccc;
	position: relative;
}
#top_news .btn_sky {
	width: 100%;
	max-width: 20rem;
	display: block;
	margin: 2rem auto;
}
#top_banner .inner {
	width: 100%;
	max-width: calc(1280px + 5.7%);
	margin: 0 auto;
	padding: 1rem 2.85%;
	position: relative;
}
#top_banner .overlap {
	width: 100%;
	margin: 0 auto;
	padding: 2rem 0;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
#top_banner .overlap:nth-of-type(even) {
	flex-direction: row-reverse;
}
#top_banner .overlap:nth-of-type(odd) .box_wht,
#top_banner .overlap:nth-of-type(even) .box_img {
	width: 60%;
	margin-right: -10%;
}
#top_banner .overlap:nth-of-type(even) .box_wht,
#top_banner .overlap:nth-of-type(odd) .box_img {
	width: 60%;
	margin-left: -10%;
}
#top_banner .overlap .box_wht {
	padding: 3rem;
	background: #fff;
	margin-top: 4rem;
	z-index: 10;
	box-shadow: 0 0 .25rem rgba(0, 0, 0, .1);
}
#top_banner .overlap .box_wht h3 {
	padding: 1.5rem 0 0 0;
	text-align: left;
	position: relative;
}
#top_banner .overlap .box_wht h3:before {
	content: "";
	width: 3rem;
	height: .1875rem;
	background: #1591c6;
	position: absolute;
	top: 0;
	left: 0;
}
#top_banner .overlap .box_img {
	height: 0;
	padding-top: 30%;
}
#top_banner .overlap:nth-of-type(1) .box_img {
	background: url(../_img/bg_top01.jpg) no-repeat center center;
	background-size: cover;
}
#top_banner .overlap:nth-of-type(2) .box_img {
	background: url(../_img/bg_top02.jpg) no-repeat center center;
	background-size: cover;
}
#top_blog h3.ej {
	margin: 2rem 0;
}
#top_blog dl,
#covid_blog dl {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
#top_blog dt,
#covid_blog dt {
	width: 10%;
	padding: .75rem 0 .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#top_blog dd,
#covid_blog dd {
	width: 90%;
	padding: .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#top_blog dl.pick {
	margin: 1.5rem auto;
	padding: 1.5rem;
	border: .1875rem solid #1591c6;
}
#top_blog dl.pick dt {
	width: 15%;
	border-bottom: none;
	font-size: 1.5rem;
	line-height: 1.5;
	color: #1591c6;
}
#top_blog dl.pick dd:nth-of-type(1) {
	width: 85%;
	border-bottom: none;
}
#top_blog dl.pick dd:nth-of-type(1) a {
	font-size: 1.5rem;
	line-height: 1.5;
	color: #1591c6;
	position: relative;
	display: block;
	padding-right: 5rem;
}
#top_blog dl.pick dd:nth-of-type(1) a:hover {
	filter: brightness(120%);
}
#top_blog dl.pick dd:nth-of-type(1) a:after {
	content: "\2192";
	position: absolute;
	top: 0;
	right: 0;
}
#top_blog dl.pick dd:nth-of-type(2) {
	width: 100%;
	padding: .75rem 1rem 0;
	border-bottom: none;
}
#top_blog .btn_sky {
	width: 100%;
	max-width: 20rem;
	display: block;
	margin: 2rem auto;
}
/* news
-------------------------- */
#news h3.btn_tgl {
	max-width: 1100px;
	font-size: 1.5rem;
	font-weight: 400;
	text-align: left;
	color: #1591c6;
}
#news .hidden {
	padding: 0 0 3rem;
}
/* company
-------------------------- */
#company .inner {
	padding: 1rem 2.85% 3rem;
}
#company img.sig {
	width: 100px;
	margin: 0 0 -0.5rem 1rem;
	display: inline-block;
}
#company .ceo {
	text-align: center;
	margin: 3rem 0;
}
#company .ceo img {
	width: 100%;
	max-width: 420px;
	margin: 1rem auto;
}
#philosophy h3.sub {
	color: #1591c6;
	margin: 2rem auto 0;
}
#philosophy h3.sub:first-of-type {
	margin: 0 auto;
}
#philosophy ul {
	width: 85%;
	max-width: 900px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 0 auto 3rem;
	color: #333;
}
#philosophy li {
	width: 20%;
	text-align: center;
	line-height: 1.5;
}
#philosophy li span {
	display: block;
	background: #f6f6f6;
	color: #666;
	margin: .5rem auto;
	padding: .5rem;
	font-family: Arial, sans-serif;
	font-weight: 400;
	font-style: italic;
	font-size: 6rem;
	line-height: 1;
}
#philosophy dl {
	width: auto;
	max-width: 960px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin: 3rem auto 0;
	line-height: 1.5;
	color: #333;
}
#philosophy dt {
	width: 18em;
	padding-left: 6em;
}
#philosophy dd {
	width: calc(100% - 18em);
	padding: 0 0 .5rem .5rem;
}
#philosophy dd:before {
	content: " ： ";
}
/*#philosophy ul {
	width: 100%;
	max-width: 1000px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin: 3rem auto;
	color: #333;
}
#philosophy li {
	width: 20%;
	text-align: center;
	line-height: 1.2;
}
#philosophy li span {
	display: block;
	width: 84%;
	background: #c61591;
	color: #fff;
	margin: .5rem auto;
	padding: 2.5rem 3rem;
	font-family: urw-din, sans-serif;
	font-size: 5rem;
	font-weight: 600;
	line-height: 1;
}
#philosophy dl {
	width: 100%;
	max-width: 1000px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	margin: 3rem auto 0;
	line-height: 1.5;
	color: #333;
}
#philosophy dt {
	width: 20%;
}
#philosophy dd {
	width: 80%;
	text-indent: -0.5rem;
	padding: 0 0 .5rem .5rem;
}
#philosophy dd:before {
	content: " : ";
}*/
#area .box {
	width: 100%;
	background: #fff;
	padding: .5rem 1rem;
	display: flex;
	align-items: center;
	margin: 0 auto 2rem;
}
#area .box dt {
	width: 30%;
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
}
#area .box dd {
	width: 70%;
	line-height: 1.75;
	color: #333;
}
#area ul {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	/*justify-content: space-around;*/
	justify-content: center;
	margin: 1rem auto 3rem;
	color: #333;
}
#area ul:last-of-type {
	margin: 1rem auto 0;
}
#area li {
	width: 25%;
	font-size: .8125rem;
	letter-spacing: -0.05em;
	text-align: center;
	line-height: 1.75;
}
#area li>a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	margin: .5rem auto;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.6;
	width: calc(15.0316vw + 29.5569px);
	height: calc(15.0316vw + 29.5569px);
	border-radius: 50%;
	background: #1591c6;
}
@media (min-width: 1400px) {
	#area li>a {
		width: 240px;
		height: 240px;
	}
}
#area li>a:hover {
	filter: brightness(120%);
}
/*#area li span {
	display: block;
	color: #fff;
	margin: .5rem auto;
	padding-top: 30%;
	font-size: 1.25rem;
	font-weight: 500;
	line-height: 1.5;
	width: calc(15.0316vw + 29.5569px);
	height: calc(15.0316vw + 29.5569px);
	border-radius: 50%;
	background: #1591c6;
}
@media (min-width: 1400px) {
	#area li span {
		width: 240px;
		height: 240px;
	}
}*/
#model .model01 {
	width: 100%;
	max-width: 1120px;
	margin: 3rem auto 1rem;
}
#profile dl {
	width: 100%;
	max-width: 960px;
	margin: 0 auto 3rem;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.75;
	color: #333;
}
#profile dl dt {
	width: 25%;
	padding: .75rem 0;
	border-bottom: 1px solid #9f9f9f;
}
#profile dl dd {
	width: 75%;
	padding: .75rem 3rem;
	border-bottom: 1px solid #9f9f9f;
}
#profile .box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
}
#profile .box img {
	margin: 1.5rem auto;
	width: 32%;
	height: auto;
	border: 1px solid #dfdfdf;
}
#profile .box p {
	width: 68%;
	padding-left: 3rem;
}
#profile .box .btn_sky {
	position: absolute;
	bottom: 0;
	right: 0;
	min-width: 20rem;
}
#history dl {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.75;
	color: #333;
}
#history dl dt {
	width: 14%;
	padding: .75rem 0;
	border-bottom: 1px solid #9f9f9f;
}
#history dl dd {
	width: 86%;
	padding: .75rem 0;
	border-bottom: 1px solid #9f9f9f;
}
#officers h5.btn_tgl+div.hidden {
	padding: 0 1rem;
	background: #fff;
}
#officers h5+div dl {
	background: #fff;
	padding: 1.25rem 0;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.5;
	border-top: 1px solid #707070;
	color: #333;
}
#officers h5+div dl dt {
	width: 14%;
	padding: .25rem 0;
}
#officers h5+div dl dd {
	width: 86%;
	padding: .25rem 0;
}
#office dl {
	width: 100%;
	max-width: 960px;
	margin: 0 auto 2rem;
	display: flex;
	flex-wrap: wrap;
	line-height: 1.75;
	color: #333;
}
#office dl dt {
	width: 24%;
	padding: .75rem 0;
	border-bottom: 1px solid #9f9f9f;
}
#office dl dd {
	width: 76%;
	padding: .75rem 0;
	border-bottom: 1px solid #9f9f9f;
}
.group {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
.group p:nth-of-type(odd) {
	width: 20%;
	margin: .25rem auto;
}
.group p:nth-of-type(even) {
	width: 80%;
	margin: .25rem auto;
}
#alliance table td {
	background: #fff;
}
#alliance .scroll_x {
	overflow-x: auto;
}
/* pipeline
-------------------------- */
#pipeline00 .strong {
	font-size: 1.375rem;
}
#pipeline00 h3.btn_tgl {
	color: #1591c6;
	margin: 0;
	padding: .5rem 3rem;
}
#pipeline00 .btn_tgl+.hidden {
	padding: 1.5rem 0;
}
#pipeline00 h4 {
	font-size: 1.375rem;
	font-weight: 500;
	color: #1591c6;
	text-align: left;
	margin: 2rem auto .25rem;
}
#pipeline_note h3 span {
	font-size: 1rem;
	position: absolute;
	right: 0;
	bottom: 0;
}
#pipeline_note .scroll_x {
	overflow-x: scroll;
	overflow-y: hidden;
}
#pipeline_note table {
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	min-width: 1000px;
}
#pipeline_note th,
#pipeline_note td {
	border: 1px solid #707070;
	padding: .5rem .25rem;
}
#pipeline_note td {
	color: #707070;
	position: relative;
	white-space: nowrap;
	height: 3.75rem;
}
#pipeline_note td.round_new:before {
	content: "NEW";
	text-align: center;
	font-size: .75rem;
	font-weight: bold;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: #c61591;
	color: #fff;
	display: inline-block;
	position: absolute;
	top: .25rem;
	left: .25rem;
	margin: auto;
	padding: .25rem;
	line-height: 2.375;
}
td span.arrow_td {
	position: relative;
	display: block;
	color: #fff;
	font-size: 85%;
	font-weight: 500;
	line-height: 1.25;
	padding-right: .5rem;
	z-index: 10;
}
.arrow_td:before {
	content: "";
	position: absolute;
	top: 50%;
	left: calc(-0.25rem + 1px);
	margin: auto;
	transform: translateY(-50%);
	width: calc(100% - .5rem - 2px);
	height: 2.5rem;
	background: #c61591;
	z-index: -1;
}
.arrow_td.stop:before {
	background: #6d6d6d;
}
.arrow_td:after {
	content: "";
	position: absolute;
	top: 50%;
	right: calc(-1.5rem + 2px);
	margin: auto;
	transform: translateY(-50%);
	border: 1.25rem solid transparent;
	border-left: 1rem solid #c61591;
	z-index: -1;
}
.arrow_td.stop:after {
	border-left: 1rem solid #6d6d6d;
}
.arrow_td.bg_gray:before {
	background: #e4e4e4;
}
.arrow_td.bg_gray:after {
	border-left: 1rem solid #e4e4e4;
}
.arrow_td.bg_skip:before {
	background: repeating-linear-gradient(90deg, #e4e4e4, #e4e4e4 4px, #fff 4px, #fff 8px);
}
.arrow_td.bg_skip:after {
	border-left: 1rem solid #e4e4e4;
}
td span.balloon {
	display: block;
	position: absolute;
	top: .5rem;
	left: .125rem;
	background: #1591c6;
	padding: .125rem .25rem;
	/*height: 2.5rem;*/
	color: #fff;
	font-size: 10px;
	line-height: 1.2;
	/*font-size: 80%;
	font-weight: 500;
	line-height: 1.375;*/
	z-index: 10;
}
.balloon::before {
	content: "";
	position: absolute;
	border: .375rem solid transparent;
	border-right: .75rem solid #1591c6;
	top: .375rem;
	left: -1rem;
}
td span.round_new:after {
	content: "NEW";
	text-align: center;
	font-size: .75rem;
	font-weight: bold;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: #c61591;
	color: #fff;
	display: inline-block;
	position: absolute;
	top: .125rem;
	right: -1.125rem;
	margin: auto;
	padding: .25rem;
	line-height: 2.375;
}
#pipeline_note .attn {
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 3rem;
}
#hgf figure {
	margin: 3rem auto;
	padding: .5rem 0;
}
#hgf .row {
	justify-content: space-around;
	margin: 3rem auto 1.5rem;
}
#hgf .row div {
	width: 15%;
}
#hgf .row .box_pink {
	width: 100%;
	padding-top: 100%;
	background: #c61591;
	position: relative;
}
#hgf .row .box_pink span {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.33;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
}
#hgf .row span.mark {
	display: block;
	width: 3.75rem;
	height: 3.75rem;
	border-radius: 50%;
	background: #1591c6;
	color: #fff;
	font-size: .875rem;
	position: absolute;
	top: -1.875rem;
	right: -1.875rem;
	line-height: 3.75rem;
	z-index: 10;
}
#hgf .row span.mark.bg_gray {
	background: #707070;
}
#hgf .row p {
	line-height: 1.5;
	margin: .5rem auto;
}
#hgf .attn {
	text-indent: -1em;
	padding-left: 1em;
	margin: 0 auto;
}
#nfk figure {
	max-width: 1100px;
	margin: 3rem auto;
}
#vaccine .strong {
	margin: 0 auto 1rem;
}
#vaccine .bg_wht {
	background: #fff;
	padding: .75rem;
	font-size: .9375rem;
	text-align: center;
}
#vaccine .attn {
	padding-left: 1rem;
	text-indent: -1rem;
}
#vaccine .row {
	justify-content: space-between;
}
#vaccine .box_wht {
	width: 48%;
	margin: 0 0 1rem;
	padding: 1.5rem 2rem;
}
#vaccine .hidden>figure:nth-of-type(1) {
	max-width: 1100px;
	margin: 3rem auto;
}
#vaccine h5 {
	color: #707070;
	font-size: 1.375rem;
	font-weight: 500;
	margin: 0 0 1rem;
}
#vaccine figcaption {
	display: inline-block;
	background: #e4e4e4;
	border: 1px solid #707070;
	color: #707070;
	font-size: 1.375rem;
	font-weight: 500;
	padding: .5rem 2rem;
	margin: 1.5rem auto;
}
#vaccine figure .row {
	align-items: flex-start;
}
#vaccine .img03_1 {
	width: 60%;
}
#vaccine .img03_2 {
	width: 40%;
	border-left: 2px dashed #969595;
}
#pipeline_doc .box_wht {
	/*margin: 3rem auto;*/
	padding: 1.5rem 3rem;
	position: relative;
}
#pipeline_doc ul {
	padding: 0 2rem;
	margin: 1rem auto 1.5rem;
}
#pipeline_doc ul li {
	padding: 1rem 0;
	border-bottom: 1px solid #ccc;
	position: relative;
}
#pipeline_doc ul li span {
	padding-right: 6rem;
}
/* alliance
-------------------------- */
#alliance00 .strong {
	font-size: 1.375rem;
}
#alliance00 h3.btn_tgl {
	color: #1591c6;
	margin: 0;
	padding: .5rem 3rem;
}
#alliance00 .btn_tgl+.hidden {
	padding: 1.5rem 0;
}
#alliance00 h4 {
	font-size: 1.375rem;
	font-weight: 500;
	color: #c61591;
	text-align: center;
	margin: 0 auto .5rem;
}
#alliance00 h5 {
	font-size: 1.375rem;
	font-weight: 500;
	text-align: center;
	margin: 2rem auto .5rem;
}
#alliance00 p {
	margin: 0 auto 1rem;
}
#alliance00 .box_wht {
	justify-content: space-between;
	align-items: center;
	padding: 1.75rem 2rem 1.5rem;
	margin: 1rem auto;
}
#alliance00 .box_wht div {
	width: 28%;
	text-align: center;
}
#alliance00 .box_wht a {
	color: #1591c6;
	padding-top: .5rem;
}
#alliance00 .box_wht a:hover {
	filter: brightness(120%);
}
#alliance00 .box_wht dl {
	width: 68%;
	font-size: 1.25rem;
	font-weight: 500;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
#alliance00 .box_wht dt {
	width: 7rem;
	padding: .25rem 0;
}
#alliance00 .box_wht dd {
	width: calc(100% - 7rem);
	padding: .25rem 0;
}
#genome .point {
	color: #c61591;
	text-align: center;
}
#genome figure.row {
	justify-content: space-between;
}
#genome figure.row img {
	width: 34%;
	margin: 0 8%;
}
#genome .bg_pink {
	text-align: center;
	margin: 1rem auto;
}
#genome .bg_pink span {
	background: #c61591;
	color: #fff;
	font-size: 1.375rem;
	font-weight: 500;
	padding: .5rem 4.5rem;
	margin: 1rem auto;
}
#genome .row {
	justify-content: space-between;
	align-items: center;
}
#genome .row:last-of-type {
	margin: 3rem auto;
}
#genome .row figure {
	width: 34%;
	margin: 0 8%;
}
#genome .row ul {
	width: 50%;
	list-style: disc;
	padding-left: 1.5rem;
}
#genome .row ul li {
	line-height: 1.5;
	padding: .25rem 0;
}
#cancer figure,
#microbiome figure {
	max-width: 840px;
	margin: 1.5rem auto 3rem;
}
/* ir
-------------------------- */
.masonry {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 1.5rem auto;
}
.masonry div {
	width: 31%;
	margin: 1rem 0;
}
.masonry div:not(.two_third) a {
	display: block;
	width: 100%;
}
.masonry .two_third {
	width: 65.5%;
	padding: .75rem 4rem;
	background: #fff;
	/*display: flex;
	flex-wrap: wrap;
	justify-content: center;*/
}
.masonry div .tile {
	width: 100%;
	height: 18.5rem;
	margin: 0;
	padding: .625rem;
	font-size: 1.75rem;
	color: #fff;
	transition: .3s ease-in-out;
}
.masonry div a:hover .tile {
	padding: 1rem;
	filter: brightness(120%);
}
.masonry div a:hover .tile span {
	background: rgba(0, 0, 0, .65);
}
.masonry div:nth-of-type(1) .tile {
	background: url(../ir/_img/bg_tile01.jpg) no-repeat center center;
	background-size: cover;
}
.masonry div:nth-of-type(3) .tile {
	background: url(../ir/_img/bg_tile03.jpg) no-repeat center center;
	background-size: cover;
}
.masonry div:nth-of-type(4) .tile {
	background: url(../ir/_img/bg_tile04.jpg) no-repeat center center;
	background-size: cover;
}
.masonry div:nth-of-type(5) .tile {
	background: url(../ir/_img/bg_tile05.jpg) no-repeat center center;
	background-size: cover;
}
.masonry div:nth-of-type(6) .tile {
	background: url(../ir/_img/bg_tile06.jpg) no-repeat center center;
	background-size: cover;
}
.masonry div .tile span {
	text-align: center;
	line-height: 1.3;
	background: rgba(0, 0, 0, .35);
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: .3s ease-in-out;
}
.masonry div h5 {
	font-size: 1.375rem;
	font-weight: 500;
	position: relative;
	padding: 0 0 0 1.5rem;
}
.masonry div h5:before {
	content: "";
	width: .75rem;
	height: .75rem;
	position: absolute;
	top: 1rem;
	left: 0;
	border-top: 3px solid #1591c6;
	border-right: 3px solid #1591c6;
	transform: rotate(45deg);
}
.masonry .two_third h5 {
	width: 100%;
	padding: 0 0 .5rem;
	text-align: center;
}
.masonry .two_third h5:before {
	display: none;
}
.masonry .two_third dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.masonry .two_third dt {
	width: 12rem;
	padding: .5rem 0;
	border-bottom: 1px solid #ccc;
}
.masonry .two_third dd {
	width: calc(100% - 12rem);
	padding: .5rem 3rem .5rem 0;
	border-bottom: 1px solid #ccc;
	position: relative;
}
.masonry .two_third dd a.icon_mov.sgl {
	right: 2.5rem;
}
.masonry .two_third .btn_sky {
	margin: .75rem auto 0;
	padding: 1rem 5rem;
	width: 100%;
	max-width: 20rem;
	display: block;
}
#analyst div {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 0 1rem;
}
#analyst div a {
	display: block;
	width: 45%;
	text-align: center;
}
#analyst div a span {
	display: block;
	margin: 3rem auto 0;
	line-height: 1.5;
}
#analyst div a:hover img {
	filter: brightness(120%);
}
.masonry .full {
	width: 100%;
	padding: .75rem 2rem;
	background: #fff;
}
.masonry .full h5 {
	width: 100%;
	padding: 0 0 .5rem;
	text-align: center;
}
.masonry .full h5:before {
	display: none;
}
#ir_street div {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	padding: 0 0 1rem;
}
#ir_street div a {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 48%;
}
#ir_street div a span {
	display: block;
	margin: 0 auto;
	line-height: 1.5;
	text-align: left;
}
#ir_street div a img {
	margin: 0 auto;
	width: 30%;
	padding: 0 1%;
}
#ir_street div a:hover img {
	filter: brightness(120%);
}
#calendar h3.ej {
	margin: 2rem 0;
}
#calendar .scroll_x {
	margin: 2rem auto;
}
#calendar table {
	text-align: center;
}
#calendar tr:nth-child(n + 3) {
	height: 6.25rem;
}
#calendar th {
	border: .1875rem solid #fff;
	background: #1591c6;
	color: #fff;
	padding: .75rem .25rem;
}
#calendar th.month {
	background: #d9d9d9;
	color: #545454;
	padding: .5rem .25rem;
	width: 7.6%;
}
#calendar td {
	border: .1875rem solid #fff;
	background: #f6f6f6;
	position: relative;
	overflow: visible;
	white-space: nowrap;
}
#calendar td span {
	display: block;
	position: absolute;
	top: 2rem;
	left: 45%;
	text-align: left;
	padding-left: .75rem;
	line-height: 1.25;
	z-index: 10;
}
#calendar td span:before {
	content: "";
	width: .5rem;
	height: .5rem;
	border-radius: 50%;
	background: #545454;
	position: absolute;
	top: .3rem;
	left: 0;
}
#calendar td span.m_early {
	left: 5%;
}
#calendar td span.m_late {
	left: 75%;
}
#calendar td span.v_line1 {
	top: 1rem;
}
#calendar td span.v_line2 {
	top: 3rem;
}
#ir_banner .masonry {
	margin: 1.5rem auto 0;
}
#ir_banner .masonry div:nth-of-type(1) .tile {
	background: url(../ir/_img/bg_tile08.jpg) no-repeat center center;
	background-size: cover;
}
#ir_banner .masonry div:nth-of-type(2) .tile {
	background: url(../ir/_img/bg_tile09.jpg) no-repeat center center;
	background-size: cover;
}
#ir_banner .masonry div:nth-of-type(3) .tile {
	background: url(../ir/_img/bg_tile10.jpg) no-repeat center center;
	background-size: cover;
}
#ir_news h3.ej,
#covid_news h3.ej {
	margin: 2rem 0;
}
#ir_news dl,
#covid_news dl {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
#ir_news dt,
#covid_news dt {
	width: 22%;
	padding: .75rem 0 .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#ir_news dt span,
#covid_news dt span {
	margin: 0 1rem;
	width: calc(100% - 7em);
	display: inline-block;
	text-align: center;
}
#ir_news dd,
#covid_news dd {
	width: 78%;
	padding: .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#ir_news .btn_sky {
	width: 100%;
	max-width: 20rem;
	display: block;
	margin: 2rem auto;
}
#ir00 #profile .box {
	margin: 0 auto 3rem;
}
/* first ======== */
#first h4 {
	margin: 2rem auto 1rem;
}
#first h5 {
	font-size: 1rem;
	margin: 1.5rem auto .5rem;
	text-align: center;
}
#first p {
	margin: 0 auto 1.5rem;
}
/* stock ======== */
#stock00 h4.btn_tgl {
	padding: .5rem 3rem;
	position: relative;
}
#stock00 .btn_tgl+.hidden {
	/*display: block;*/
	padding: 1.5rem 0;
}
#stock00 .box_wht {
	margin: 2rem auto;
	padding: 1.5rem 3rem;
}
#procedures ul {
	list-style: disc;
	padding-left: 3rem;
	margin: 1.5rem auto;
}
#procedures ul li {
	padding: .25rem;
}
#procedures dl {
	justify-content: space-between;
	margin: 1rem auto;
}
#procedures dt {
	width: 22em;
	padding: .75rem 0;
	border-bottom: 1px solid #ccc;
}
#procedures dd {
	width: calc(100% - 22em);
	padding: .75rem 0 .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#stockrating h5 {
	font-size: 1rem;
	font-weight: 500;
	color: #1591c6;
	max-width: 1100px;
	margin: 0 auto;
}
#stockrating dl {
	max-width: 1100px;
	justify-content: space-between;
	margin: 0 auto 3rem;
}
#stockrating dt {
	width: 22em;
	padding: .625rem 0;
	border-bottom: 1px solid #ccc;
}
#stockrating dd {
	width: calc(100% - 22em);
	padding: .625rem 0 .625rem 1rem;
	border-bottom: 1px solid #ccc;
}
#stockrating .box_wht {
	border: 1px solid #1591c6;
	margin: 4.5rem auto 3rem;
}
#stockrating .box_wht dl {
	justify-content: space-between;
	margin: .5rem auto 1.5rem;
}
#stockrating .box_wht dt {
	width: 76%;
	padding: .625rem 0;
	border-bottom: 1px solid #ccc;
}
#stockrating .box_wht dd {
	width: 12%;
	padding: .625rem 0 .625rem 1rem;
	border-bottom: 1px solid #ccc;
	text-align: center;
}
#stockrating .box_wht dt:nth-of-type(1),
#stockrating .box_wht dd:nth-of-type(1),
#stockrating .box_wht dd:nth-of-type(2) {
	color: #1591c6;
	font-weight: 500;
}
#stockrating .box_wht p.attn {
	margin: 0 auto;
	text-align: center;
}
#preferential dl {
	justify-content: space-between;
	max-width: 1100px;
	margin: .5rem auto 1.5rem;
}
#preferential dt {
	width: 55%;
	padding: .625rem 0;
	border-bottom: 1px solid #ccc;
}
#preferential dd {
	width: 45%;
	padding: .625rem 0 .625rem 1rem;
	border-bottom: 1px solid #ccc;
}
#preferential dt:nth-of-type(1),
#preferential dd:nth-of-type(1) {
	color: #1591c6;
}
#preferential ul.attn {
	padding-left: 2rem;
	text-indent: -2.25rem;
}
#preferential ul.attn li {
	padding: .25rem;
}
#preferential .box_tmb {
	justify-content: center;
	align-items: flex-end;
	margin: 3rem auto 1.5rem;
	max-width: 960px;
}
#preferential .box_tmb img {
	width: 30%;
	margin: 0 3rem;
	height: auto;
	border: 1px solid #dfdfdf;
}
#preferential .box_tmb div {
	width: 40%;
	padding-left: 3rem;
}
#preferential .box_tmb .btn_sky {
	margin: 0 auto;
}
#elepub ul {
	max-width: 1100px;
	margin: 3rem auto;
	border-top: 1px solid #ccc;
}
#elepub li {
	padding: 1rem 0;
	border-bottom: 1px solid #ccc;
	position: relative;
}
/* document ======== */
#doc_note .inner {
	padding-bottom: 10rem;
}
.tab {
	margin: -5.75rem auto 0;
	justify-content: space-between;
}
.tab>li {
	width: 48%;
	padding: 1rem;
	text-align: center;
	font-size: 1.375rem;
	font-weight: 500;
	color: #fff;
	background: #1591c6;
	cursor: pointer;
	transition: .3s ease-in-out;
}
.tab>li.select {
	color: #545454;
	background: #f6f6f6;
	cursor: auto;
}
.tab>li:not(.select):hover {
	filter: brightness(120%);
}
.tab_content>li {
	padding: 4.5rem 0 1.5rem;
}
#doc_tab .box_wht {
	margin: 0 auto 1rem;
	padding: 1.5rem 3rem;
}
#tab_cont1 .box_wht dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
#tab_cont1 .box_wht .mark_arrow {
	text-align: right;
}
#tab_cont1 .box_wht dt {
	width: 12rem;
	padding: 1rem 1.5rem;
	border-bottom: 1px solid #ccc;
}
#tab_cont1 .box_wht dd {
	width: calc(100% - 12rem);
	padding: 1rem 1.5rem;
	border-bottom: 1px solid #ccc;
}
#tab_cont1 .box_wht .btn_sky {
	width: 100%;
	max-width: 20rem;
	display: block;
	margin: 2rem auto;
}
#tab_cont1 .row {
	justify-content: space-between;
	margin-bottom: 1.5rem;
}
#tab_cont1 .row a {
	width: 48%;
	padding: 0;
	margin: 3rem 0 0;
}
#tab_cont1 p {
	margin: .5rem auto 0;
}
#tab_cont1 .row a:hover {
	filter: brightness(120%);
}
#tab_cont2 .box_wht {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	padding: 1.5rem 3rem 3rem;
}
#tab_cont2 .year_select {
	width: 22%;
	padding: 4.5rem 0 0;
	cursor: pointer;
	transition: .3s ease-in-out;
}
#tab_cont2 .year_select.scroll_y {
	overflow-y: auto;
}
#tab_cont2 .year_select li {
	display: block;
	padding: .25rem 0;
	font-size: 1.25rem;
	text-align: right;
}
#tab_cont2 .year_select li:hover,
#tab_cont2 .year_select li.select {
	color: #1591c6;
}
#tab_cont2 .year_content {
	width: 76%;
}
#tab_cont2 .year_content h4 {
	text-align: left;
	margin: 1rem auto 1.5rem;
}
#tab_cont2 .year_content .scroll_x {
	overflow-x: auto;
}
.year_content table {
	text-align: center;
}
.year_content th {
	border: .125rem solid #fff;
	background: #1591c6;
	color: #fff;
	padding: .75rem .5rem;
	width: 21%;
}
.year_content th:nth-of-type(1) {
	width: 16%;
}
.year_content td {
	border: .125rem solid #fff;
	background: #f6f6f6;
	padding: .75rem .5rem;
	line-height: 1.5;
	height: 5.8125rem;
	vertical-align: top;
}
.year_content td:nth-of-type(1) {
	padding: .75rem .125rem;
	vertical-align: middle;
}
.year_content a.icon_pdf,
.year_content a.icon_mov {
	padding: .75rem .75rem .125rem;
}
.year_content a.icon_pdf:before {
	content: "";
	display: block;
	position: relative;
}
.year_content a.icon_mov:before {
	content: "";
	display: block;
	position: relative;
}
.year_content .row {
	justify-content: center;
}
/* modal_IRdocument
-------------------------- */
#doc,
#mov {
	background: #fff;
	position: relative;
}
#doc img.logo,
#mov img.logo {
	width: 8%;
	max-width: 111px;
	position: absolute;
	top: 1.5rem;
	left: 3rem;
}
#doc .inner,
#mov .inner {
	max-width: 1100px;
	padding: 6rem 2.85% 3rem;
}
#doc h2 {
	font-size: 2rem;
	font-weight: 500;
	color: #545454;
	padding: 0;
	margin: 0 auto 1.5rem;
	text-shadow: none;
	text-align: left;
	letter-spacing: 0;
}
#doc h3 {
	font-size: 1.375rem;
	text-align: left;
}
#doc .inner>ul {
	border: 3px solid #ccc;
	padding: 0 2rem;
	margin: 1rem auto 1.5rem;
}
#doc .inner>ul li {
	padding: 1rem 0;
	position: relative;
}
#doc .inner>ul li.w_narrow {
	padding: 1rem 6rem 1rem 0;
}
#doc .inner>ul li:last-of-type {
	border-bottom: none;
}
#doc .inner>ul li a {
	color: #1591c6;
}
#doc .inner>ul li a.icon_mov.sgl {
	right: 3.5rem;
}
#doc ul li {
	padding: .5rem 2rem;
	border-bottom: 1px solid #ccc;
}
#doc ul li span {
	padding-right: 6rem;
}
#doc h3.btn_tgl {
	padding: .75rem 0;
	margin: 0;
	border-bottom: 1px solid #ccc;
	cursor: pointer;
}
#doc h3.btn_tgl.open {
	color: #c61591;
}
#doc h3.btn_tgl+.hidden {
	padding: 0 0 1.5rem;
}
#doc .btn_sky,
#mov .btn_sky {
	display: block;
	max-width: 300px;
	margin: 2rem auto 0;
}
#doc .btn_sky:after,
#mov .btn_sky:after {
	content: "";
}
#doc_nav {
	background: #f0f9fd;
}
#doc_nav .inner {
	max-width: 1100px;
	padding: 1.5rem 2.85%;
}
#doc_nav .row {
	justify-content: space-between;
}
#doc_nav a {
	color: #1591c6;
	font-size: .9375rem;
	padding: 0 1rem;
	position: relative;
}
#doc_nav a:hover {
	filter: brightness(120%);
}
#doc_nav a:before {
	content: "";
	width: .5rem;
	height: .5rem;
	position: absolute;
	top: .125rem;
	bottom: 0;
	left: 0;
	margin: auto;
	border-top: 2px solid #1591c6;
	border-right: 2px solid #1591c6;
	transform: rotate(45deg);
}
.fancybox-content {
	width: 95% !important;
	max-width: 1200px !important;
	max-height: 95% !important;
	margin: 0;
}
#mov .outer_mv {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	border: 1px solid #ccc;
}
#mov .outer_mv>div {
	position: absolute !important;
	top: 0;
	left: 0;
}
.control-list li span {
	font-size: 13px !important;
}
.btn-fullscreen.miovip-btn {
	display: none !important;
}
/* medical
-------------------------- */
#zokinvy .inner {
	padding: 1rem 2.85% 4.5rem;
}
#zokinvy h3>img {
	width: 100%;
	max-width: 580px;
	margin: 3rem auto 1.5rem;
}
#zokinvy .btn_sky1 {
	margin: 3rem auto 0;
}
#medical .inner {
	padding: 1rem 2.85% 4.5rem;
}
#medical h3:last-of-type {
	margin: 3rem auto 1rem;
}
#medical .row {
	max-width: 900px;
	margin: 1.5rem auto;
}
#medical .row a {
	width: 42%;
}
#mdl1 {
	display: none;
	max-width: 800px !important;
	padding: 3rem;
}
#mdl1 .row {
	justify-content: center;
	margin: 3rem auto .5rem;
}
#mdl1 .row a {
	width: 42%;
}
#mdl1 .row a span {
	display: block;
	font-size: .875rem;
}
#mdl1 .btn_sky0:hover,
#mdl1 .btn_pink0:hover {
	filter: brightness(120%);
}
/* patient
-------------------------- */
#patients01 .inner {
	padding: 1rem 2.85% 4.5rem;
}
#patients01 h3>img {
	width: 100%;
	max-width: 580px;
	margin: 3rem auto 1.5rem;
}
#patients01 .row {
	justify-content: space-between;
	margin: 3rem auto;
}
#patients01 .row dl {
	width: 100%;
	max-width: 980px;
	display: flex;
	flex-wrap: wrap;
	margin: 3rem auto;
}
#patients01 .row dl dt {
	width: 25rem;
	padding: 1rem 1rem .5rem;
	border-bottom: 1px solid #ccc;
	margin-bottom: .5rem;
}
#patients01 .row dl dd {
	width: calc(100% - 25rem);
	padding: 1rem 3rem .5rem 0;
	border-bottom: 1px solid #ccc;
	margin-bottom: .5rem;
	position: relative;
}
#patients01 .row dl dd a.icon_pdf:before {
	right: 1rem;
	bottom: -.5rem;
}
/* faq
-------------------------- */
#faq .inner {
	padding: 1rem 2.85% 4.5rem;
}
#faq .frequency {
	width: 100%;
	margin: 1.5rem auto 6rem;
}
#faq .frequency dt {
	padding: .75rem 1rem;
	color: #1591c6;
	border-bottom: 1px solid #ccc;
	position: relative;
}
#faq .frequency dt.round_new:after {
	content: "NEW";
	text-align: center;
	font-size: .75rem;
	font-weight: bold;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: #c61591;
	color: #fff;
	display: inline-block;
	padding: .25rem;
	margin-left: .5rem;
	line-height: 2.25;
}
#faq .frequency dd {
	padding: .75rem 1rem .75rem 2rem;
	border-bottom: 1px solid #ccc;
}
#faq .frequency div {
	text-align: center;
	padding: .75rem 2rem;
}
#faq .row {
	justify-content: space-between;
	margin: 1rem auto 3rem;
}
#faq .row a {
	width: 30%;
	margin: .75rem auto;
}
#faq h4 {
	color: #1591c6;
	text-align: left;
	margin: 3rem auto 0;
}
#faq h5.btn_tgl {
	font-size: 1rem;
	font-weight: 400;
	color: #1591c6;
	border-bottom: 1px solid #ccc;
	margin: 0;
}
#faq h5.btn_tgl.open {
	color: #c61591;
}
#faq h5.btn_tgl+.hidden {
	padding: 1rem 3rem 1.5rem;
}
#faq h5.btn_tgl+.hidden p {
	margin: 0 auto .75rem;
}
#faq h5.btn_tgl+.hidden img {
	width: 100%;
	max-width: 840px;
	/*max-width: 960px;*/
	margin: 1rem auto;
}
#faq h5.btn_tgl+.hidden dl.row {
	margin: 0 auto;
}
#faq h5.btn_tgl+.hidden dt {
	width: 25%;
	padding: .25rem;
}
#faq h5.btn_tgl+.hidden dd {
	width: 75%;
	padding: .25rem;
}
#faq h6.btn_tgl {
	margin: 0;
	padding: .75rem 3.5rem .75rem 0;
}
#faq h6.btn_tgl.open {
	color: #1591c6;
}
#faq h6.btn_tgl span {
	/*display: block;*/
	font-size: .875rem;
	margin: .25rem 0 0;
}
#faq h6.btn_tgl+.hidden {
	padding: 0 1.5rem 1rem;
	border-bottom: 1px dotted #ccc;
}
#faq h5.btn_tgl.round_new:after {
	content: "NEW";
	text-align: center;
	font-size: .75rem;
	font-weight: bold;
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 50%;
	background: #c61591;
	color: #fff;
	display: inline-block;
	padding: .25rem;
	margin-left: .5rem;
	line-height: 2.25;
}
#faq h6.btn_tgl.round_new:before {
	content: "NEW";
	text-align: center;
	font-size: .75rem;
	font-weight: bold;
	background: #c61591;
	color: #fff;
	display: inline-block;
	position: absolute;
	top: 1.25rem;
	left: -2.5rem;
	padding: .25rem;
	line-height: 1;
}
#faq img.tmb_pdf {
	max-width: 400px !important;
	border: 2px solid #ededed;
}
#faq img.tmb_pdf:hover {
	border: 2px solid #f33c8e;
}
/* progress
-------------------------- */
#covid_vaccine .inner {
	padding: 3rem 2.85%;
}
#covid_vaccine h4,
#covid_faq h4 {
	color: #1591c6;
	text-align: left;
}
#covid_vaccine .row {
	justify-content: space-between;
}
#covid_vaccine .box_wht {
	width: 48%;
	margin: 0 0 1rem;
	padding: 1.5rem 2rem;
}
#covid_vaccine h5 {
	color: #707070;
	font-size: 1.375rem;
	font-weight: 500;
	margin: 0 0 1rem;
}
#covid_vaccine figcaption {
	display: inline-block;
	background: #e4e4e4;
	border: 1px solid #707070;
	color: #707070;
	font-size: 1.375rem;
	font-weight: 500;
	padding: .5rem 2rem;
	margin: 1.5rem auto;
}
#covid_vaccine figure .row {
	align-items: flex-start;
}
#covid_vaccine .img03_1 {
	width: 60%;
}
#covid_vaccine .img03_2 {
	width: 40%;
	border-left: 2px dashed #969595;
}
#covid_news .mark_square {
	margin: .5rem auto;
	max-width: 1100px;
}
#covid_news .box_wht {
	margin: 0 auto 1.5rem;
	padding: 1.5rem 3rem 4.5rem;
	position: relative;
}
#covid_blog .box_wht {
	margin: 3rem auto;
	padding: 1.5rem 3rem 4.5rem;
	position: relative;
}
#covid_news .box_wht h3,
#covid_blog .box_wht h3 {
	margin-bottom: 1.5rem;
}
#covid_news .btn_tgl,
#covid_blog .btn_tgl {
	position: absolute;
	right: 3rem;
	bottom: 1.5rem;
	max-width: calc(100% - 6rem);
}
#covid_news .hidden,
#covid_blog .hidden {
	padding: 0;
}
#covid_faq .inner {
	padding: 1rem 2.85% 3rem;
}
#covid_faq h6.btn_tgl {
	font-size: 1rem;
	color: #1591c6;
	border-bottom: 1px solid #ccc;
	margin: 0;
	padding: 1rem 3.5rem 1rem 1rem;
	line-height: 1.5;
}
#covid_faq h6.btn_tgl span {
	/*display: block;*/
	font-size: .875rem;
	margin: .25rem 0 0;
}
#covid_faq h6.btn_tgl .btn_plus {
	top: 1rem;
	bottom: auto;
}
#covid_faq h6.btn_tgl+.hidden {
	padding: 1rem 3rem 1.5rem;
}
#covid_faq h6.btn_tgl+.hidden p {
	margin: 0 auto .75rem;
}
#covid_faq h6.btn_tgl.open {
	color: #c61591;
}
#covid_doc .box_wht {
	margin: 3rem auto;
	padding: 1.5rem 3rem;
	position: relative;
}
#covid_doc ul {
	padding: 0 2rem;
	margin: 1rem auto 1.5rem;
}
#covid_doc ul li {
	padding: 1rem 0;
	border-bottom: 1px solid #ccc;
	position: relative;
}
#covid_doc ul li span {
	padding-right: 6rem;
}
#covid_contact .btn_sky {
	width: 100%;
	max-width: 20rem;
	display: block;
	margin: 3rem auto;
}
/* other
-------------------------- */
#sitepolicy .inner,
#privacy .inner {
	padding-bottom: 3rem;
}
#sitepolicy h5,
#privacy h5 {
	font-size: 1rem;
	margin: 2rem auto .5rem;
}
#sitepolicy p,
#privacy p {
	margin: 0 auto 1.5rem;
}
#sitepolicy dt,
#privacy dt {
	width: 4rem;
	text-align: right;
	padding: 0 1rem;
}
#sitepolicy dd,
#privacy dd {
	width: calc(100% - 4rem);
}
#privacy .box_gray {
	background: #f6f6f6;
	padding: .75rem 3rem;
	margin: 3rem auto;
}
#privacy .box_gray dt {
	width: 8rem;
	text-align: left;
	padding: 0;
}
#privacy .box_gray dd {
	width: calc(100% - 8rem);
}
/* contact
-------------------------- */
#contact_note .list_type01 {
	max-width: 840px;
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.75;
}
#contact_note .row .btn_sky {
	flex-basis: 45%;
	max-width: 45%;
}
#contact_form .inner {
	padding-bottom: 3rem;
}
#contact_form dl {
	width: 100%;
	max-width: 1000px;
	margin: 1.5rem auto;
	display: flex;
	flex-wrap: wrap;
}
#contact_form dt {
	width: 25%;
	padding: .75rem 0;
}
#contact_form dt.reqd:before {
	content: "\203B";
	color: #c61591;
}
#contact_form dt.reqd_int:before {
	content: "＊";
	color: #1591c6;
}
#contact_form dd {
	width: 75%;
	padding: .75rem 0;
}
#contact_form dd p {
	margin: 0;
	font-weight: 500;
}
#contact_form dd span {
	font-weight: 500;
	margin-right: 1rem;
}
#contact_form dd span~label {
	margin-right: 6rem;
}
#contact_form dd span+label {
	margin-right: 1rem;
}
#contact_form .in {
	padding: 0 0 1rem 1rem;
}
#contact_form .eq {
	padding: 0 0 1.5rem 1rem;
}
#contact_form .eq label {
	margin-right: auto;
	letter-spacing: -0.04rem;
}
#contact_form .eq label:nth-of-type(3n + 1) {
	flex-basis: 50%;
}
#contact_form .eq label:nth-of-type(3n + 2) {
	/*flex-basis: 25%;*/
	flex-basis: 50%;
}
#contact_form .eq label:nth-of-type(3n) {
	/*flex-basis: 25%;*/
	flex-basis: 50%;
}
#contact_form label {
	cursor: pointer;
	margin-right: 2rem;
}
#contact_form label.pp_chk {
	font-size: 1.5rem;
	font-weight: 500;
	margin: 0 auto;
	display: block;
	text-align: center;
	line-height: 1.5;
}
#contact_form input[type="radio"],
#contact_form input[type="checkbox"] {
	border: 1px solid #707070;
	border-radius: 50%;
	vertical-align: -0.25rem;
	-webkit-appearance: none;
	width: 1.25rem;
	height: 1.25rem;
	margin-right: .5rem;
	position: relative;
}
#contact_form input[type="radio"]:checked:after,
#contact_form input[type="checkbox"]:checked:after {
	content: "";
	background: #1591c6;
	width: .75rem;
	height: .75rem;
	border-radius: 50%;
	position: absolute;
	left: .2rem;
	top: .2rem;
}
#contact_form input[type="text"],
#contact_form input[type="tel"],
#contact_form input[type="email"],
#contact_form textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	border: 1px solid #707070;
	height: 3rem;
	padding: .5rem 1rem;
	-webkit-appearance: none;
	width: 100%;
}
#contact_form input.w_s {
	width: 30%;
	min-width: 12rem;
}
#contact_form input[type="text"]:focus,
#contact_form input[type="tel"]:focus,
#contact_form input[type="email"]:focus,
#contact_form textarea:focus {
	border: 1px solid #1591c6;
	color: #1591c6;
	outline: 0;
}
#contact_form textarea {
	height: 10rem;
}
::placeholder {
	color: #b8b8b8;
}
::-webkit-input-placeholder {
	color: #b8b8b8;
}
::-moz-placeholder {
	color: #b8b8b8;
}
::-ms-input-placeholder {
	color: #b8b8b8;
}
:-ms-input-placeholder {
	color: #a5a5a5;
}
#contact_form .row .btn_sky {
	flex-basis: 45%;
}
#contact_form a.btn_sky:after {
	content: "";
}
input[type="submit"] {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: #fff;
	background: none;
	letter-spacing: .075em;
	cursor: pointer;
}
#contact_form #err {
	border: 1px solid #f00;
	background: #fcc;
	padding: 1em;
	margin: 0 auto 1em;
	width: 100%;
	max-width: 1000px;
	font-size: 93.75%;
	/*display: none;*/
}
#contact_form #err .inner {
	background: #fff url(../_img/icon_attention.gif) no-repeat 2rem 1rem;
	width: 100%;
	height: 100%;
	padding: 1em 1em 1em 8em;
	min-height: 3em;
}
#contact_form #err .inner span {
	display: block;
	color: #f00;
}
#contact_form .fld {
	background: #fff;
}
#contact_form .err-fld {
	background: #fcc;
}
/* recruit
-------------------------- */
#recruit00 h4 {
	margin: 1.5rem auto 0;
}
#recruit_note ul {
	margin-bottom: 1rem;
	padding-left: 1rem;
	text-indent: -1rem;
	text-align: center;
}
#recruit_note dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 3rem auto;
}
#recruit_note dt {
	width: 15%;
	background: #1591c6;
	border: .25rem solid #fff;
	color: #fff;
	padding: 1rem;
	text-align: center;
}
#recruit_note dd {
	width: 85%;
	background: #f6f6f6;
	border: .25rem solid #fff;
	padding: 1rem;
	text-align: left;
}
#recruit_note dd ul {
	margin-bottom: .25rem;
	text-align: left;
}
#recruit_note dd span {
	display: block;
}
#recruit_note .inner {
	padding-bottom: 3rem;
}
#recruit_form .box_wht {
	max-width: 1000px;
	margin: 1.5rem auto;
	padding: 1rem 2rem;
	border: 1px solid #707070;
}
#recruit_form .box_wht h5 {
	font-size: 1.375rem;
	font-weight: 500;
	text-align: center;
	color: #1591c6;
}
#recruit_form .box_wht ol {
	list-style: decimal;
	padding-left: 1rem;
}
#recruit_form .box_wht ol li {
	margin: 1rem 0;
}
#recruit_form .box_wht ol p {
	margin: 0;
}
#recruit_form label.pp_chk {
	font-size: 1.5rem;
	font-weight: 500;
	margin: 0 auto;
	display: block;
	text-align: center;
	line-height: 1.5;
}
#recruit_form dl {
	width: 100%;
	max-width: 1000px;
	margin: 1.5rem auto;
	display: flex;
	flex-wrap: wrap;
}
#recruit_form dt {
	width: 25%;
	padding: .75rem 0;
}
#recruit_form dt.reqd:before {
	content: "\203B";
	color: #c61591;
}
#recruit_form dd {
	width: 75%;
	padding: .75rem 0;
}
#recruit_form dd p {
	margin: 0;
	font-weight: 500;
}
#recruit_form input[type="checkbox"] {
	border: 1px solid #707070;
	border-radius: 50%;
	vertical-align: -0.25rem;
	-webkit-appearance: none;
	width: 1.25rem;
	height: 1.25rem;
	margin-right: .5rem;
	position: relative;
}
#recruit_form input[type="checkbox"]:checked:after {
	content: "";
	background: #1591c6;
	width: .75rem;
	height: .75rem;
	border-radius: 50%;
	position: absolute;
	left: .2rem;
	top: .2rem;
}
#recruit_form input[type="text"],
#recruit_form input[type="email"],
#recruit_form textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	border: 1px solid #707070;
	height: 3rem;
	padding: .5rem 1rem;
	-webkit-appearance: none;
	width: 100%;
}
#recruit_form input.w_s {
	width: 30%;
	min-width: 12rem;
}
#recruit_form input[type="text"]:focus,
#recruit_form input[type="tel"]:focus,
#recruit_form input[type="email"]:focus,
#recruit_form textarea:focus {
	border: 1px solid #1591c6;
	color: #1591c6;
	outline: 0;
}
#recruit_form textarea {
	height: 18rem;
}
#recruit_form .row .btn_sky {
	flex-basis: 45%;
}
#recruit_form a.btn_sky:after {
	content: "";
}
#recruit_form #err {
	border: 1px solid #f00;
	background: #fcc;
	padding: 1em;
	margin: 0 auto 1em;
	width: 100%;
	max-width: 1000px;
	font-size: 93.75%;
	/*display: none;*/
}
#recruit_form #err .inner {
	background: #fff url(../_img/icon_attention.gif) no-repeat 2rem 1rem;
	width: 100%;
	height: 100%;
	padding: 1em 1em 1em 8em;
	min-height: 3em;
}
#recruit_form #err .inner span {
	display: block;
	color: #f00;
}
#recruit_form .fld {
	background: #fff;
}
#recruit_form .err-fld {
	background: #fcc;
}
/* blog
-------------------------- */
#type03 {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 2.85%;
	position: relative;
	background: #fff;
}
#type03 h2 {
	color: #1591c6;
	text-shadow: none;
}
#type03 h2 span {
	color: #1591c6;
}
#fontresize {
	position: absolute;
	top: 1rem;
	/*right: -1.425%;*/
	right: 2.85%;
	width: 10rem;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#fontresize span {
	display: block;
	width: 100%;
	font-size: 1rem;
}
#fontresize a {
	display: block;
	width: 2.5rem;
	border: 1px solid #1591c6;
	background: #f0f9fd;
	color: #1591c6;
	font-size: 1.25rem;
	font-weight: 500;
	padding: .25rem;
	text-align: center;
	line-height: 2rem;
}
#fontresize a.textresizer-active,
#fontresize a:hover {
	background: #1591c6;
	color: #fff;
}
#blog .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#blog_main {
	width: 70%;
	padding-bottom: 6rem;
}
#blog .list_post {
	width: 100%;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
	border-bottom: 1px solid #ccc;
}
#blog .date {
	font-family: urw-din, sans-serif;
	font-size: 3rem;
	font-weight: 600;
	line-height: 1;
	color: #1591c6;
}
#blog h3 {
	text-align: left;
	font-size: 137.5%;
	margin: 1rem auto 1.5rem;
}
#blog a.btn_more {
	display: block;
	width: 10rem;
	text-align: center;
	background: #1591c6;
	color: #fff;
	letter-spacing: .2rem;
	text-indent: .2em;
	padding: .25rem .5rem;
	margin: 1rem 0 0 auto;
}
#blog a.btn_more:hover {
	filter: brightness(120%);
}
#blog ul.guide_page {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#blog ul.guide_page li {
	font-size: 1.125rem;
	font-weight: 500;
	padding: 1rem .75rem;
}
#blog ul.guide_page li.current {
	color: #1591c6;
}
#blog aside {
	width: 25%;
}
#blog aside div {
	margin-bottom: 6rem;
}
#blog aside h4 {
	font-size: 1.75rem;
	text-align: left;
	color: #1591c6;
	margin-bottom: 1rem;
	border-bottom: 1px solid #ccc;
}
#blog aside li a {
	width: 100%;
	display: block;
	padding: .5rem 0;
	color: #1591c6;
	line-height: 1.75;
}
#blog aside li a span {
	display: block;
	color: #545454;
}
#blog aside li a:hover {
	filter: brightness(120%);
}
#blog select {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	border: 1px solid #707070;
	height: 3rem;
	background: #fff;
	padding: .5rem 1rem;
	margin: .5rem auto;
	-webkit-appearance: none;
	width: 100%;
}
#blog select:focus {
	border: 1px solid #1591c6;
	color: #1591c6;
	outline: 0;
}
#blog article {
	padding-bottom: 3rem;
	border-bottom: 1px solid #ccc;
}
#blog article p {
	margin: 0 auto .5rem;
}
#blog ul.btn_page {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#blog ul.btn_page li {
	font-size: 1.125rem;
	font-weight: 500;
	padding: 1rem .75rem;
}
#blog ul.btn_page li.current {
	color: #1591c6;
}

/* ACRL
-------------------------- */
#acrl00 .strong {
	font-size: 1.375rem;
}
#acrl00 h3.btn_tgl {
	color: #1591c6;
	margin: 0;
	padding: .5rem 3rem;
}
#acrl00 .btn_tgl+.hidden {
	padding: 1.5rem 0;
}
#acrl00 h4 {
	font-size: 1.375rem;
	font-weight: 500;
	text-align: left;
	margin: 2rem auto .25rem;
}
#acrl00 p {
	margin: 0 auto 1rem;
}
#acrl_note .inner {
	padding: 1rem 2.85% 2rem;
}
#acrl_note .row {
	/*justify-content: space-between;*/
	justify-content: center;
}
#acrl_note .row img {
	/*width: 48%; (for 2pcs)*/
	width: 100%;
	/*max-width: 800px;*/
	margin: 0 0 1rem;
}
#acrl_note .attn {
	margin: 3rem auto;
}
#acrl_note .attn li {
	margin: .25rem auto;
	line-height: 1.6;
	display: block;
	padding-left: 2em;
	text-indent: -2em;
	margin: .5rem auto;
}
#acrl_news .box_wht {
	background: none;
	margin: 1.5rem auto;
	padding: 1.5rem 0 4.5rem;
	position: relative;
}
#acrl_news .box_wht h3 {
	margin-bottom: 1.5rem;
}
#acrl_news .btn_tgl {
	position: absolute;
	right: 3rem;
	bottom: 1.5rem;
	max-width: calc(100% - 6rem);
}
#acrl_news .hidden {
	padding: 0;
}
#acrl_news dl {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
#acrl_news dt {
	width: 10%;
	padding: .75rem 0 .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#acrl_news dd {
	width: 90%;
	padding: .75rem 1rem;
	border-bottom: 1px solid #ccc;
}
#acrl01 ul {
	margin: 1rem;
	padding: 0;
}
#acrl01 ul li {
	list-style: disc;
	margin: .5rem auto;
	line-height: 1.75;
}
#acrl02 ol {
	margin: 0;
	padding: 0;
}
#acrl02 ol li {
	list-style: none;
	padding-left: 1.3em;
	text-indent: -1.3em;
}
#acrl02 .acrl_flow {
	width: 100%;
	max-width: 1120px;
	margin: 3rem auto 1rem;
}
#acrl_faq h6.btn_tgl {
	font-size: 1rem;
	color: #1591c6;
	border-bottom: 1px solid #ccc;
	margin: 0;
	padding: 1rem 3.5rem 1rem 1rem;
	line-height: 1.5;
}
#acrl_faq h6.btn_tgl span {
	font-size: .875rem;
	margin: .25rem 0 0;
}
#acrl_faq h6.btn_tgl .btn_plus {
	top: 1rem;
	bottom: auto;
}
#acrl_faq h6.btn_tgl+.hidden {
	padding: 1rem 3rem 1.5rem;
}
#acrl_faq h6.btn_tgl+.hidden p {
	margin: 0 auto .75rem;
}
#acrl_faq h6.btn_tgl.open {
	color: #c61591;
}

/* style
-------------------------- */
.ind_type01 {
	text-indent: -1em;
	padding-left: 1em;
}
.dsp_block {
	display: block;
}
.dsp_none {
	display: none;
}
.f_bold {
	font-weight: 500;
}
.f_pink {
	color: #c61591;
}
.f_sky {
	color: #1591c6;
}
.f_gray {
	color: #707070 !important;
}
.f_black {
	color: #545454 !important;
}
.bg_lightgray {
	background: #f6f6f6;
}
.bg_lightsky {
	background: #eefaff;
}
.t_center {
	text-align: center;
}
.t_left {
	text-align: left;
}
.t_right {
	text-align: right;
}
.w_700 {
	width: 100%;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.w_780 {
	width: 100%;
	max-width: 780px;
	margin-left: auto;
	margin-right: auto;
}
.w_960 {
	width: 100%;
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}
.w_15pct {
	width: 15%;
}
.w_20pct {
	width: 20%;
}
.w_28pct {
	width: 28%;
}
.w_30pct {
	width: 30%;
}
.w_35pct {
	width: 35%;
}
.w_55pct {
	width: 55%;
}
.mgt_1rem {
	margin-top: 1rem !important;
}
.mgt_3rem {
	margin-top: 3rem !important;
}
.mgt_0 {
	margin-top: 0 !important;
}
.mgb_1rem {
	margin-bottom: 1rem !important;
}
.mgb_3rem {
	margin-bottom: 3rem !important;
}
.mgb_0 {
	margin-bottom: 0 !important;
}
.mg_a {
	margin: auto !important;
}

/* 20220526+ modal_IRdocument
------------------------------- */
#doc ul li {
	position: relative;
}
#doc .inner .hidden ul li a.icon_pdf.sgl {
	right: 2rem;
}
#doc .inner .hidden ul li a.icon_mov.sgl {
	right: 5.75rem;
}
/* 202504
------------------------------- */
footer ul.sub_menu a {
	text-align: center;
	line-height: 1.5;
}
h2 span {
	margin-bottom: .75rem;
}
main#compl input[type="date"],
main#compl select {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: inherit;
	border: 1px solid #707070;
	height: 3rem;
	padding: .5rem 1rem;
	-webkit-appearance: none;
	width: auto;
	max-width: 100%;
}
main#compl input[type="button"] {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
	color: #fff;
	background: none;
	letter-spacing: .075em;
	cursor: pointer;
}
main#compl #contact_note.check {
	background: #f6f6f6;
}
main#compl .btn_sky {
	min-width: 315px;
}
main#compl h3 {
	font-size: 1.5rem;
	font-weight: 500;
	margin: 1rem auto;
	display: block;
	text-align: center;
	line-height: 1.5;
}
main#compl h4 {
	font-size: 1.125rem;
	font-weight: 500;
	padding: 1.5rem 0;
}
main#compl p.error_messe {
	margin: .25rem 0;
	color: #f00;
}
main#compl .btn_sky.row {
	margin: 2rem;
}
main#compl .btn_sky.no:after {
	content: "";
	display: none;
}
main#compl table.formTable {
	font-size: 1rem;
	width: 100%;
	max-width: 1000px;
	margin: 1.5rem auto;
}
main#compl table.formTable th,
main#compl table.formTable td {
	padding: .5rem 1rem;
	border: none;
	background: none;
	color: inherit;
}
main#compl table.formTable th {
	width: 30%;
	font-weight: 500;
}