@use "sass:math";
.content {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "M+ 1p", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	font-size: 1.8rem;
	line-height: 1.7;
	max-width: none;
	color: #000;
	padding-bottom: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}
@media screen and (max-width: 1199px) {
	.content {
		padding: 0
	}
}
.page-content {
	width: 100vw;
	margin: 0 calc(50% - 50vw)
}
@media screen and (max-width: 768px) {
	.pc {
		display: none
	}
}
@media screen and (min-width: 769px) {
	.sp {
		display: none
	}
}
.ai-logo {
	padding-left: 30px;
	margin-right: 30px;
	width: auto !important
}
@media screen and (max-width: 1199px) {
	.ai-logo {
		padding-left: 20px;
		margin-right: 10px
	}
}
@media screen and (max-width: 768px) {
	.ai-logo a {
		display: inline-block
	}
}
@media screen and (max-width: 768px) {
	.ai-logo a.pc {
		display: none
	}
}
@media screen and (min-width: 769px) {
	.ai-logo a.sp {
		display: none
	}
}
/* .ai-logo a img {
	width: 144px
}
@media screen and (max-width: 1199px) {
	.ai-logo a img {
		width: 126px
	}
} */
.ai-logo img {
	width: 186px
}
@media screen and (max-width: 1199px) {
	.ai-logo img {
		width: 126px
	}
}
.localnavi-box {
	width: calc(100% - 246px)
}
@media screen and (max-width: 1199px) {
	.localnavi-box {
		float: left;
		width: calc(100% - 156px)
	}
}
.localnavi {
	position: relative;
	z-index: 1
}

.localnavi .local-menu li a {
	padding: 0 15px;
	font-size: 12px
}
@media screen and (max-width: 1420px) {
	.localnavi .local-menu li a {
		font-size: 11px;
		padding: 0 8px
	}

}
@media screen and (max-width: 1220px) {
	.localnavi .local-menu li a {
		font-size: 10px;
		padding: 0 4px
	}
}
@media screen and (max-width: 1000px) {
	.localnavi .local-menu li a {
		padding: 0 3px
	}
}

.localnavi-lineup {
	position: absolute;
	right: 228px;
	/* right: 130px; */
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	height: 32px;
	background-color: #fff;
	width: 155px;
	border-radius: 3px;
	border: 1px solid #e6e6e6
}
@media screen and (max-width: 1199px) {
	.localnavi-lineup {
		width: 140px;
		right: 190px
	}
}
@media screen and (max-width: 1000px) {
	.localnavi-lineup {
		right: 10px;
		height: 35px
	}
}
.localnavi-lineup p {
	font-size: 11px;
	color: #1161a8;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	text-align: center;
	cursor: pointer
}
@media (hover: hover) {
	.localnavi-lineup p {
		transition: opacity 0.2s ease-in-out
	}
	.localnavi-lineup p:hover {
		opacity: 0.7
	}
}
@media screen and (max-width: 1199px) {
	.localnavi-lineup p {
		font-size: 10px
	}
}
.localnavi-lineup p:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 3px 0 3px;
	border-color: #007bff transparent transparent transparent;
	display: block;
	margin-left: 4px
}
.localnavi-lineup.is-open {
	background-color: #1161a8;
	border-bottom-right-radius: 0px;
	border-bottom-left-radius: 0px
}
.localnavi-lineup.is-open p {
	color: #fff
}
.localnavi-lineup.is-open p:after {
	border-color: #fff transparent transparent transparent
}
.localnavi-lineup__list {
	display: none;
	position: absolute;
	top: 32px;
	left: 0;
	width: 100%;
	z-index: 10
}
@media screen and (max-width: 1000px) {
	.localnavi-lineup__list {
		top: 35px;
		border-right: 1px solid #e6e6e6;
		border-left: 1px solid #e6e6e6;
		border-bottom-right-radius: 3px;
		border-bottom-left-radius: 3px
	}
}
.localnavi-lineup__list li {
	width: 100%;
	background-color: #fff
}
.localnavi-lineup__list li a {
	display: flex;
	align-items: center;
	height: 34px;
	border-bottom: 1px solid #e6e6e6;
	text-align: left;
	justify-content: flex-start;
	padding-left: 8px;
	font-family: "Poppins", sans-serif;
	font-weight: 500;
	font-size: 12px
}
@media (hover: hover) {
	.localnavi-lineup__list li a {
		transition: opacity 0.2s ease-in-out
	}
	.localnavi-lineup__list li a:hover {
		opacity: 0.7
	}
}
@media screen and (max-width: 1199px) {
	.localnavi-lineup__list li a {
		padding-left: 3px
	}
}
@media screen and (max-width: 768px) {
	.localnavi-lineup__list li a {
		padding-left: 3px
	}
}
.localnavi-lineup__list li a span {
	color: #1161a8;
	font-weight: bold;
	margin-left: 4px
}
.fixed {
	z-index: 9
}
@media screen and (max-width: 768px) {
	.fixed .localnavi-lineup {
		right: 60px
	}
	.localnavi {
		display: none;
	}
}
.local-sub {
	float: right
}
.local-sub a {
	width: 104px
}
@media screen and (max-width: 1199px) {
	.local-sub a {
		width: 90px;
		font-size: 11px;
		padding: 0 11px
	}
}
.local-menu li .nav--link--lower {
	color: #125fa3;
	position: relative
}
.local-menu li .nav--link--lower:before {
	content: "";
	width: 5px;
	height: 5px;
	display: inline-block;
	border-radius: 4px;
	background-color: #125fa3;
	margin-right: 8px;
	-webkit-transform: translateY(-1px);
	transform: translateY(-1px)
}
.local-menu li .nav--link--lower.border {
	margin-right: 30px
}
@media screen and (max-width: 1420px) {
	.local-menu li .nav--link--lower.border {
		margin-right: 20px
	}
}
@media screen and (max-width: 1000px) {
	.local-menu li .nav--link--lower.border {
		margin-right: 14px
	}
}
.local-menu li .nav--link--lower.border:after {
	content: "";
	height: 36px;
	width: 1px;
	background-color: #d9d9d9;
	display: block;
	position: absolute;
	right: -15px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%)
}
@media screen and (max-width: 1420px) {
	.local-menu li .nav--link--lower.border:after {
		height: 22px;
		right: -10px
	}
}
@media screen and (max-width: 1000px) {
	.local-menu li .nav--link--lower.border:after {
		right: -7px
	}
}
@media screen and (max-width: 1000px) {
	.drawer-hamburger.is-on {
		top: 0
	}
}
@media screen and (max-width: 1000px) {
	.drawer-hamburger.is-scroll {
		top: 40px
	}
}
@media screen and (max-width: 768px) {
	.drawer-hamburger.is-scroll {
		top: 0
	}
}
@media screen and (max-width: 1000px) {
	.drawer-hamburger.is-active {
		z-index: 1000
	}
}
@media screen and (max-width: 768px) {
	.drawer-hamburger.is-active {
		z-index: 9999
	}
}
.drawer--right.drawer-open #js-header {
	top: 0;
	left: 0
}
.sp-local {
	padding-bottom: 15px
}
@media screen and (max-width: 768px) {
	.sp-local ul + ul {
		margin-top: 15px
	}
}
.sp-local .accordion > span {
	padding: 18px 30px;
	background: url(/common/img/ico_plus.png) 95% center/9px auto no-repeat;
	margin-bottom: 1px;
	color: #fff;
	display: block;
	border-bottom: 1px solid #80010b
}
.sp-local .accordion.is-open > span {
	background: url(/common/img/ico_minus.png) 95% center/9px auto no-repeat
}
.sp-local .accordion ul {
	display: none
}
.sp-local .accordion ul li {
	margin-bottom: 1px
}
.sp-local .accordion ul li a {
	background-color: #fff;
	color: #000000;
	font-family: "Poppins", sans-serif;
	font-weight: 500;
	background-image: url(/common/img/arrow_red.png)
}
.sp-local .accordion ul li a span > span {
	color: #1161a8;
	font-weight: bold
}
.mainvis {
	background-image: url("../img/mainvis.jpg");
	background-repeat: no-repeat;
	height: 350px;
	background-size: cover;
	background-position: center
}
@media screen and (max-width: 768px) {
	.mainvis {
		background-image: url("../img/mainvis--sp.jpg");
		background-size: 100%;
		background-position: center bottom
	}
}
@media screen and (max-width: 768px) {
	.mainvis {
		height: 340px
	}
}
.mainvis__inner {
	max-width: 1230px;
	padding: 0 40px;
	margin: 0 auto
}
@media screen and (max-width: 768px) {
	.mainvis__inner {
		height: 340px;
		padding: 20px 15px 25px
	}
}

.mainvis {
	overflow: hidden
}
@media screen and (max-width: 768px) {
	.mainvis {
		height: 200px;
		background-size: 768px 200px
	}
}
.mainvis .mainvis__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	justify-content: center;
	height: 100%;
	position: relative;
	z-index: 0
}
.mainvis .mainvis__icon {
	width: 46.08696%;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	z-index: -10
}
@media screen and (max-width: 768px) {
	.mainvis .mainvis__icon {
		width: 287.5px;
		margin-left: 97px;
		left: 50%;
		right: auto;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%)
	}
}
.mainvis__title {
	font-size: 38px;
	font-weight: bold;
	color: #fff;
}
@media screen and (max-width: 768px) {
	.mainvis__title {
		font-size: 24px;
	}
}

/* コンテンツエリア */
.policy {
	line-height: 1.8;
	text-align: center;
	margin-top: 80px;
	margin-bottom: 140px;
	font-size: 1.7rem;
}

.policy h2 {
	font-weight: bold;
	font-size: 32px;
	font-size: 3.2rem;
	margin-bottom: 30px;
}
.policy h2 + p {
	max-width: 900px;
	margin: 0 auto;
}
.policy .btn-black-s a {
	max-width: 600px;
	margin: 50px auto 80px;
}
.policy > section {
	max-width: 840px;
	margin: 0 auto;
}
.policy h3 {
	font-size: 22px;
	font-size: 2.2rem;
	margin: 50px 0 15px;
}
.policy table {
	width: 100%;
	text-align: left;
	border: 1px solid #fff;
}
.policy table th {
	text-align: center;
	font-weight: bold;
	border: 1px solid #fff;
	background: #e3e3e3;
	padding: 10px 0;
}
.policy table td {
	border: 1px solid #fff;
	background: #fcfcfc;
	padding: 10px 20px;
}
.policy table tr:nth-of-type(odd) td {
	background: #f7f7f7;
}
.policy > section ul {
	margin-top: 10px;
}
.policy > section li {
	text-align: left;
	text-indent: -1em;
	padding-left: 1em;
	font-size: 12px;
	font-size: 1.2rem;
}
.policy > section li a {
	text-decoration: underline;
}
.policy > section li a:hover {
	text-decoration: none;
}
@media screen and (max-width: 768px) {
	.policy {
		margin-top: 40px;
		margin-bottom: 60px;
		padding: 0 10px;
		font-size: 1.4rem;
	}
	.policy h2 {
		font-size: 18px;
		font-size: 1.8rem;
		margin-bottom: 15px;
	}
	.policy h2 + p {
		text-align: left;
	}
	.policy h2 + p br {
		display: none;
	}
	.policy .btn-black-s a {
		margin: 25px auto 40px;
		font-size: 12px;
		font-size: 1.2rem;
	}
	.policy h3 {
		font-size: 14px;
		font-size: 1.4rem;
		margin: 25px 0 5px;
	}
	.policy table th {
		padding: 5px 0;
		width: 50%;
	}
	.policy table td {
		padding: 5px 10px;
		width: 50%;
		vertical-align: middle;
	}
}