@charset "utf-8";
.network_hdr_nav {
		list-style: none;
		display: flex;
		justify-content: space-between;
		max-width: 1000px;
		margin: 0 auto 65px;
}
.network_hdr_nav li {
		width: 50%;
		list-style: none;
		text-align: center;
		font-size: 30px;
		font-weight: 500;
}
.network_hdr_nav li a {
		color: #dadce0;
		text-decoration: none;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 75px;
		position: relative;
		border-bottom: 1px solid #dadce0;
		transition: color 0.3s;
}
.network_hdr_nav li a.current {
		border-bottom: 1px solid #004ea2;
}
.network_hdr_nav li a::after {
		content: '';
		display: block;
		position: absolute;
		bottom: -1px;
		left: 0;
		width: 100%;
		height: 1px;
		transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
		transform-origin: left center;
		background: #004ea2;
		transform: scaleX(0);
}
.network_hdr_nav li a.current {
		color: #004ea2;
}
@media (hover: hover) {
		.network_hdr_nav li a:hover {
				color: #004ea2;
		}
		.network_hdr_nav li a:hover::after {
				transform: scaleX(1)
		}
}
@media(max-width: 767px) {
		.network_hdr_nav {
				margin-bottom: 25px;
		}
		.network_hdr_nav li {
				font-size: 18px;
				line-height: 1.6;
		}
		.network_hdr_nav li a {
				height: 70px
		}
}
/* =============== */
.japan_bg {
		background: #f6f6f7;
		color: #4c5768;
}
.japan_bg a {
		color: #4c5768;
		text-decoration: none;
}
@media (hover: hover) {
		.japan_bg a:hover {
				color: #004ea2;
				text-decoration: underline;
		}
}
.japan_map {
		max-width: 1440px;
		height: 835px;
		margin: 0 auto 75px;
		background: url("https://www.kai-group.com/contents_file/global/n_images/about/japan_map_pc.png") no-repeat center top;
		background-size: 1440px;
}
.japan_map:lang(en) {
		background: url("https://www.kai-group.com/contents_file/global/n_images/about/en_japan_map_pc.png") no-repeat center top;
		background-size: 1440px;
}
.japan_map img {
		width: 100%;
		height: auto;
}
@media(min-width: 1141px) {
		.japan_map img {
				opacity: 0;
		}
}
@media(max-width: 1140px) {
		.japan_map {
				max-width: 1440px;
				height: auto;
				margin: 0 auto 75px;
				background: none;
		}
}
@media(max-width: 1140px) {
		.japan_map {
				margin-bottom: 40px;
		}
}
/* =============== */
.overseas_bg {
		background: #004ea2;
		color: #fff;
}
.overseas_bg a {
		color: #fff;
		text-decoration: none;
}
@media (hover: hover) {
		.overseas_bg th a:hover, .overseas_bg td a:hover {
				text-decoration: underline;
		}
}
td .blank_link::before {
		top: calc(50% - 5px);
}
td .blank_link::after {
		top: calc(50% - 2px);
		right: 0px;
		border-right: 1px solid #a5aab3;
		border-bottom: 1px solid #a5aab3;
}
.overseas_bg .blank_link::before {
		border: 1px solid #fff;
}
.overseas_bg .blank_link::after {
		border-right: 1px solid #fff;
		border-bottom: 1px solid #fff;
}
.icon_blank {
		width: 10px;
		height: 7px;
		display: inline-block;
		position: relative;
		margin-left: 5px;
		top: -1px;
}
.icon_blank::after {
		content: '';
		display: block;
		position: absolute;
		width: 10px;
		height: 7px;
		right: -3px;
		bottom: -3px;
}
.overseas_bg .icon_blank {
		border: 1px solid #fff;
}
.overseas_bg .icon_blank::after {
		border-right: 1px solid #fff;
		border-bottom: 1px solid #fff;
}
.overseas_bg .link_btn_back .link_btn::after {
		border-color: transparent #fff transparent transparent;
}
.overseas_map {
		max-width: 1325px;
		margin: 0 auto;
		padding-top: 80px;
}
.overseas_map:lang(en) {
		padding-bottom: 30px;
}
@media(max-width: 767px) {
		.overseas_map {
				padding-bottom: 40px;
		}
}
.overseas_map img {
		width: 100%;
		height: auto;
}
.network_sb {
		font-size: 24px;
		font-weight: 500;
		margin: 0 0 20px;
		color: #004ea2;
}
.overseas_bg .network_sb {
		color: #fff;
}
.network_sb.second {
		margin-top: 80px;
}
/* =========== */
.network_tbl {
		width: 100%;
		border-collapse: collapse;
}
.network_tbl th, .network_tbl td {
		text-align: left;
		font-weight: 500;
		vertical-align: top;
		padding: 30px 0;
		line-height: 1.8;
		font-family: "Inter", YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		font-size: 15px;
}
.japan_bg .network_tbl {
		border-top: 1px solid #dadce0;
}
.overseas_bg .network_tbl {
		border-top: 1px solid #3371b3;
}
.overseas_bg .network_tbl {
		border-top: 1px solid #3371b3;
}
.network_tbl th, .network_tbl td {
		text-align: left;
		font-weight: 500;
		vertical-align: top;
}
.japan_bg .network_tbl th, .japan_bg .network_tbl td {
		border-bottom: 1px solid #dadce0;
}
.overseas_bg .network_tbl th, .overseas_bg .network_tbl td {
		border-bottom: 1px solid #3371b3;
}
.network_tbl td p:nth-child(2) {
		margin-top: 20px;
		/* font-weight: 400; */
}
.network_tbl th {
		width: 32%;
}
.rate40 {
		width: 40%;
}
@media(max-width: 960px) {
		.japan_bg .network_tbl th, .japan_bg .network_tbl td, .overseas_bg .network_tbl th, .overseas_bg .network_tbl td, .network_tbl th, .network_tbl td {
				display: block;
				width: auto !important;
				border: none;
				padding: 0;
				padding-left: 20px;
				padding-right: 20px;
		}
		.japan_bg .network_tbl th, .overseas_bg .network_tbl th {
				padding-top: 25px;
				padding-bottom: 25px;
		}
		.japan_bg .network_tbl th br, .overseas_bg .network_tbl th br {
				display: none;
		}
		.japan_bg .network_tbl td.rate40, .overseas_bg .network_tbl td.rate40 {
				padding-bottom: 10px;
		}
		.network_tbl td p:nth-child(2) {
				margin-top: 10px;
		}
		.japan_bg .network_tbl {
				border-top: 1px solid #a5aab3;
		}
		.japan_bg .network_tbl td.last, .network_tbl td.last {
				padding-bottom: 25px;
				border-bottom: 1px solid #a5aab3;
		}
		.overseas_bg .network_tbl td.last {
				padding-bottom: 25px;
				border-bottom: 1px solid #3371b3;
		}
}
@media(min-width: 768px) and (max-width: 960px) {
		.extraBr {
				display: none;
		}
}
@media(max-width: 767px) {
		.network_sb {
				font-size: 18px;
		}
		.network_tbl th, .network_tbl td {
				padding-left: 15px;
				padding-right: 15px;
		}
		.network_tbl th br.extraBr {
				display: block !important;
		}
}
.enUpper {
		text-transform: uppercase;
}