html {
	font-size: 62.5%; /* sets the base font to 10px for easier math */
	-webkit-font-smoothing: antialiased;
}

body {
	position: relative;
	background-color: #FCFCFC;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.05em;
	font-size: 14px;
	color: #1E2626;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
@media (min-width: 769px) {
	body {
		font-size: 16px;
	}
}
@media (max-width: 350px) {
	body {
		font-size: 12px;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* -------------------------------------
common
----------------------------------------*/
a {
	color: inherit;
}

.cf:after {
	content: "";
	clear: both;
	display: block;
}

.ib {
	display: inline-block;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

strong {
	font-weight: 600;
}

.mode_pc,
.mode_pc_ib {
	display: none;
}

.mode_sp {
	display: block;
}

.mode_sp_ib {
	display: inline-block;
}

.tel a, .mail a {
	pointer-events: auto;
	cursor: pointer;
}

.t-center,
.imageWrap {
	text-align: center;
}

iframe {
	max-width: 100%;
}

.bgImage {
	width: 100%;
	max-width: auto;
	max-width: inherit;
}

.mover {
	transition: opacity 0.2s ease-out;
	backface-visibility: hidden;
	zoom: 1;
}
.mover:hover {
	opacity: 0.8;
}

.inner,
.inner02,
.spInner {
	padding: 0 4.8%;
}
.inner .inner02,
.inner02 .inner02,
.spInner .inner02 {
	padding: 0;
}
.inner .inner02-space,
.inner02 .inner02-space,
.spInner .inner02-space {
	padding: 0 4.8%;
}

.contentWrap p, li, dt, dd, .textBase {
	line-height: 1.6;
	letter-spacing: 0.05em;
}
.contentWrap p + .textBase, li + .textBase, dt + .textBase, dd + .textBase, .textBase + .textBase {
	padding-top: 1em;
}
.contentWrap p.t-center, li.t-center, dt.t-center, dd.t-center, .textBase.t-center {
	text-align: center;
}

.linkText {
	color: #1E2626;
	text-decoration: underline;
}

.listBase li {
	padding-left: 1em;
	text-indent: -1em;
}
.listBase li + li {
	padding-top: 20px;
}
.listBase li a {
	color: #1E2626;
	text-decoration: underline;
}

.anchor {
	margin-top: -80px;
	padding-top: 80px;
}

.mt_space {
	margin-top: 15px;
}

@media (min-width: 768px) {
	.tel a, .mail a {
		pointer-events: none;
	}
	.inner {
		width: 96%;
		max-width: 1240px;
		margin: auto;
		padding: 0;
	}
	.inner02 {
		width: 96%;
		max-width: 1028px;
		margin: auto;
		padding: 0;
	}
	.spInner {
		padding: auto;
	}
	.anchor {
		margin-top: -120px;
		padding-top: 120px;
	}
	.roundImage {
		border-radius: 10px;
	}
	.mt_space {
		margin-top: 30px;
	}
}
@media (min-width: 1000px) {
	.mode_pc {
		display: block;
	}
	.mode_pc_ib {
		display: inline-block;
	}
	.mode_sp,
	.mode_sp_ib {
		display: none;
	}
	.contentWrap .textBase {
		line-height: 1.8;
	}
	.linkText {
		font-size: 14px;
	}
	.t-right-pc {
		text-align: right;
	}
	.listBase li + li {
		padding-top: 25px;
	}
}
@media (min-width: 1400px) {
	.inner,
	.inner02 {
		padding: 0;
	}
	.inner .inner02-space,
	.inner02 .inner02-space {
		padding: 0;
	}
}
/*
header
---------------------------*/
header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	background-color: rgba(0, 175, 221, 0.9);
	color: #fff;
	padding: 0 8px;
	z-index: 20;
	transition: 0.5s ease;
	/*
	#contentNav
	---------------------------*/
}
header:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-image: radial-gradient(#fff 5%, transparent 31%), radial-gradient(#fff 5%, transparent 31%);
	background-size: 2px 2px;
	background-position: 0 0, 2px 2px;
	opacity: 0.5;
	z-index: 2;
}
header #headerInner {
	position: relative;
	text-align: left;
	padding: 20px 0;
	z-index: 3;
}
header .siteNameBox .logo a {
	font-size: 16px;
	font-weight: 600;
}
@media (max-width: 350px) {
	header .siteNameBox .logo a {
		font-size: 14px;
	}
}
header.open {
	height: 100%;
}
header #contentNav {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	display: none;
	background-color: rgba(0, 175, 221, 0.95);
	height: 100%;
}
header #contentNav .navInner {
	text-align: left;
	padding: 40px 4.8% 20px;
}
header #contentNav .navInner a {
	display: block;
	font-size: 15px;
	color: #fff;
	padding: 20px 0;
}
header #contentNav .navInner p {
	position: relative;
	padding-left: 10px;
	border-bottom: 1px solid #F1F5FD;
}
header #contentNav .snsLink {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
}
header #contentNav .snsLink p + p {
	margin-left: 10px;
}
@media (min-width: 1100px) {
	header {
		padding: 0 20px;
	}
	header #headerInner {
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 20px 0;
	}
	header.is-fixed {
		position: fixed;
		background-color: rgba(0, 175, 221, 0.8);
	}
	header.is-fixed #contentNav {
		top: 0;
	}
	header .siteNameBox {
		min-width: 400px;
	}
	header .siteNameBox .logo a {
		font-size: 20px;
	}
	header.open {
		height: auto;
	}
	header #contentNav {
		display: flex !important;
		flex-wrap: wrap;
		justify-content: flex-end;
		position: relative;
		left: auto;
		height: auto;
		background-color: transparent;
	}
	.is-fixed header #contentNav {
		padding: 25px 0;
	}
	header #contentNav .navInner {
		order: 2;
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: flex-end;
		padding: 15px 0 0;
	}
	header #contentNav .navInner a {
		position: relative;
		padding: 0;
	}
	header #contentNav .navInner a:after {
		content: "";
		display: block;
		position: absolute;
		height: 1px;
		background: #fff;
		left: 0;
		right: 0;
		margin: auto;
		bottom: -6px;
		transition: all 0.3s ease;
		-webkit-transition: all 0.3s ease;
		width: 0;
	}
	header #contentNav .navInner a:hover:after {
		width: 100%;
	}
	header #contentNav .navInner .current a:after {
		width: 100%;
	}
	header #contentNav .navInner p {
		padding: 0;
		border: none;
	}
	header #contentNav .navInner p:before {
		content: none;
	}
	header #contentNav .navInner p + p {
		padding-left: 25px;
	}
	header #contentNav .snsLink {
		margin: 0 20px 0 0;
	}
	header #contentNav .snsLink p + p {
		margin-left: 15px;
	}
	header #contentNav .navBtnWrap {
		display: flex;
		align-items: center;
		order: 1;
	}
}
@media (min-width: 1400px) {
	header #contentNav .navInner p + p {
		padding-left: 40px;
	}
}

#menu_btn {
	display: flex;
	align-items: center;
	position: fixed;
	top: 7px;
	right: 0;
	margin: auto;
	cursor: pointer;
	text-align: center;
	padding: 12px 8px 12px 15px;
	cursor: pointer;
	background-color: #00AFDD;
	border-top-left-radius: 50px;
	border-bottom-left-radius: 50px;
}
#menu_btn p {
	font-family: "Reddit Sans", sans-serif;
	font-size: 12px;
	font-weight: 500;
	color: #fff;
	padding-left: 7px;
}
#menu_btn div {
	position: relative;
	width: 24px;
	height: 16px;
}
#menu_btn span {
	position: absolute;
	right: 0;
	width: 25px;
	height: 1px;
	background-color: #fff;
	transition: all 0.4s;
	margin: auto;
}
#menu_btn span:nth-of-type(1) {
	top: 0;
}
.open #menu_btn span:nth-of-type(1) {
	-webkit-transform: translateY(7px) rotate(-45deg);
	transform: translateY(7px) rotate(-45deg);
}
#menu_btn span:nth-of-type(2) {
	top: 0;
	bottom: 0;
}
.open #menu_btn span:nth-of-type(2) {
	opacity: 0;
}
#menu_btn span:nth-of-type(3) {
	top: auto;
	bottom: 0;
	width: 18px;
}
.open #menu_btn span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
	width: 25px;
}
@media (min-width: 1000px) {
	#menu_btn {
		padding: 15px 8px;
	}
}
@media (min-width: 1100px) {
	#menu_btn {
		display: none;
	}
}

.navBtnWrap {
	text-align: center;
	padding-top: 20px;
}
.navBtnWrap .btn {
	background-color: #00AFDD;
	border: 1px solid #fff;
	border-radius: 50px;
	display: inline-block;
	padding: 20px 20px;
	min-width: 260px;
	transition: all 0.3s ease-out;
}
.navBtnWrap .btn .pdfLink {
	text-decoration: none;
}
.navBtnWrap .btn .pdfLink:before {
	transition: all 0.3s ease-out;
}
.navBtnWrap .btn:hover {
	background-color: #fff;
	color: #00AFDD;
}
.navBtnWrap .btn:hover .pdfLink:before {
	background-image: url(../img/common/pdf-icon-blue.svg);
}
@media (min-width: 1000px) {
	.navBtnWrap {
		text-align: right;
		padding-top: 0;
	}
	.navBtnWrap .btn {
		min-width: inherit;
		padding: 15px 25px;
	}
}

/*
#contct
---------------------------*/
#contact {
	background-color: #F1F5FD;
	background-image: url(../img/common/bg-logo.svg);
	background-position: right 20px center;
	background-repeat: no-repeat;
	background-size: 50% auto;
	padding: 50px 0;
}
#contact dt {
	font-weight: 600;
	font-size: 18px;
	padding-bottom: 0.5em;
}
#contact dt > * {
	font-weight: 600;
}
@media (min-width: 769px) {
	#contact {
		background-position: right 50px center;
		background-size: auto;
		background-size: 20% auto;
		padding: 80px 0;
	}
	#contact dt {
		font-size: 28px;
	}
}

/*
footer
---------------------------*/
footer {
	position: relative;
	text-align: center;
	background-color: #00AFDD;
	color: #fff;
	padding: 30px 4.8% 55px;
}
footer:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-image: radial-gradient(#fff 5%, transparent 31%), radial-gradient(#fff 5%, transparent 31%);
	background-size: 2px 2px;
	background-position: 0 0, 2px 2px;
	opacity: 0.5;
	z-index: 2;
}
footer .inner {
	position: relative;
	z-index: 3;
}
footer .siteNameBox .logo {
	position: relative;
	margin-bottom: 20px;
}
footer .siteNameBox a {
	font-weight: 600;
	font-size: 18px;
}
footer .copy {
	font-family: "Reddit Sans", sans-serif;
	font-weight: 400;
	line-height: 1.4;
	font-size: 12px;
	padding: 20px 0 10px;
}
footer .siteMap {
	padding: 10px 0;
}
footer .siteMap p {
	display: inline-block;
}
footer .siteMap a {
	font-size: 12px;
	display: block;
	padding: 10px 0;
}
footer .snsLink {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 0;
}
footer .snsLink p {
	display: inline-block;
	vertical-align: middle;
}
footer .snsLink p a {
	padding: 10px;
}
@media (min-width: 1000px) {
	footer {
		padding: 80px 30px 20px;
	}
	footer .inner {
		display: flex;
		justify-content: space-between;
		justify-content: space-between;
	}
	footer .siteNameBox .logo {
		margin-bottom: 30px;
	}
	footer .siteNameBox a {
		font-size: 24px;
	}
	footer .copy {
		padding-top: 10px;
	}
	footer .siteMap {
		width: 400px;
		flex-wrap: wrap;
		display: flex;
		padding: 0 0 20px;
	}
	footer .siteMap p {
		text-align: left;
		display: block;
		width: calc((100% - 10px) / 2);
		margin-bottom: 10px;
	}
	footer .siteMap p:nth-of-type(even) {
		margin-left: 10px;
	}
	footer .siteMap .ib {
		display: inline-block;
	}
	footer .siteMap a {
		font-size: 14px;
	}
	footer .snsLink {
		justify-content: flex-start;
		padding: 0;
	}
	footer .snsLink p a {
		padding: 5px;
	}
}

.pagetop {
	display: none;
	position: fixed;
	z-index: 11;
	bottom: 0;
	right: 0;
	background-color: #00AFDD;
	opacity: 0.9;
	z-index: 10;
}
.pagetop a {
	display: block;
	width: 40px;
	height: 40px;
}
.pagetop:before {
	content: "";
	width: 15px;
	height: 15px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transform: rotate(-45deg);
	position: absolute;
	bottom: 8px;
	right: 12px;
}
@media (max-width: 768px) {
	.pagetop {
		display: none !important;
	}
}

.bgBox {
	background-color: #F1F5FD;
}

.btnWrap {
	text-align: center;
}
.btnWrap .btn {
	width: 80%;
	line-height: 1;
	margin: auto;
}
.btnWrap .btn a, .btnWrap .btn input {
	display: block;
	width: 100%;
	font-weight: 600;
	letter-spacing: 0.05em;
	color: #fff;
	background-color: #1E2626;
	padding: 20px 0;
	transition: 0.4s ease;
}
.btnWrap .btn:hover a, .btnWrap .btn:hover input {
	background-color: #00AFDD;
}
.btnWrap .btn.type02 {
	background-color: #fff;
}
.btnWrap .contentInnerTitle02 {
	display: block;
	text-align: left;
}
@media (min-width: 1000px) {
	.btnWrap .btn {
		width: 70%;
	}
}

#mainVisualLow {
	position: relative;
	text-align: center;
	padding: 80px 0;
	margin-bottom: 40px;
}
#mainVisualLow h1 {
	font-size: 18px;
	font-weight: 600;
}
@media (min-width: 1000px) {
	#mainVisualLow {
		padding: 140px 0;
		margin-bottom: 60px;
	}
	#mainVisualLow h1 {
		font-size: 30px;
	}
}

/*
topic
---------------------------*/
#topic {
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	z-index: 1;
	margin-top: 10px;
}
#topic p + p {
	position: relative;
	padding-left: 15px;
	margin-left: 15px;
}
#topic p + p:before {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	content: "";
	display: block;
	width: 1px;
	height: 15px;
	background-color: #000;
	margin: auto;
	transform: rotate(25deg);
}
.content {
	padding: 50px 0;
}
.content .em {
	font-size: 16px;
	line-height: 1.4;
}
.content .em > * {
	font-weight: 500;
}
@media (min-width: 1000px) {
	.content {
		padding: 100px 0;
	}
	.content .em {
		font-size: 18px;
	}
}

.bgContent {
	background-color: #F1F5FD;
}

.contentTitle {
	font-family: "Reddit Sans", sans-serif;
	font-weight: 700;
	font-size: 30px;
	color: #1E2626;
	margin-bottom: 20px;
}
.contentTitle span {
	display: block;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0;
	padding-top: 0.5em;
}
@media (min-width: 1000px) {
	.contentTitle {
		font-size: 60px;
		margin-bottom: 50px;
	}
	.contentTitle span {
		font-size: 18px;
	}
}

/*
contentInnerTitle
---------------------------*/
.contentInnerTitle {
	position: relative;
	font-size: 18px;
	line-height: 1.4;
	font-weight: 700;
	padding-left: 14px;
	padding-bottom: 8px;
	margin-bottom: 10px;
	border-bottom: 1px solid #00AFDD;
}
.contentInnerTitle:before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background-color: #00AFDD;
	position: absolute;
	top: 10px;
	left: 0;
	border-radius: 50px;
}
@media (min-width: 1000px) {
	.contentInnerTitle {
		font-size: 28px;
		padding-left: 18px;
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
	.contentInnerTitle:before {
		width: 10px;
		height: 10px;
		top: 16px;
	}
}

.contentInnerTitle02 {
	position: relative;
	display: inline-block;
	font-size: 16px;
	line-height: 1.4;
	font-weight: 700;
	padding-left: 16px;
}
.contentInnerTitle02 > * {
	font-weight: 700;
}
.contentInnerTitle02.wh {
	color: #fff;
}
.contentInnerTitle02.wh:before {
	background-color: #fff;
}
.contentInnerTitle02.mb0 {
	margin-bottom: 0;
}
.contentInnerTitle02:before {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 50px;
	background-color: #00AFDD;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
@media (min-width: 1000px) {
	.contentInnerTitle02 {
		font-size: 20px;
		margin-bottom: 20px;
	}
}

.btnBase {
	position: relative;
	display: inline-block;
	text-align: center;
	min-width: 80%;
	border: 1px solid #00AFDD;
	background-color: #00AFDD;
	color: #fff;
	border-radius: 50px;
	transition: all 0.3s ease-out;
	filter: drop-shadow(0px 0px 3px rgba(0, 0, 0, 0.2));
}
.btnBase span {
	font-weight: 600;
}
.btnBase.entryBtn {
	background-color: #fff;
	border-radius: 0;
}
.btnBase.entryBtn img {
	max-width: 80%;
	height: 36px;
}
.btnBase.entryBtn:after {
	transition: all 0.3s ease-out;
	border-top: solid 1px #00AFDD;
	border-right: solid 1px #00AFDD;
}
.btnBase.entryBtn:hover:after {
	right: 10px;
}
.btnBase:hover {
	background-color: #fff;
	color: #00AFDD;
}
.btnBase:hover:after {
	border-top: solid 1px #00AFDD;
	border-right: solid 1px #00AFDD;
	right: 10px;
}
.btnBase a, .btnBase input {
	display: block;
	font-size: 16px;
	font-weight: 600;
	padding: 10px;
	cursor: pointer;
	width: 100%;
}
@media (max-width: 350px) {
	.btnBase a, .btnBase input {
		font-size: 15px;
	}
}
.btnBase:after {
	width: 8px;
	height: 8px;
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	right: 15px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transition: all 0.3s ease-out;
}
.btnBase.type02 {
	background-color: #999;
	color: #fff;
}
.btnBase.type02:after {
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	width: 8px;
	height: 8px;
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%) rotate(225deg);
	right: auto;
	left: 15px;
}
.btnBase.type02:hover {
	background-color: #fff;
	color: #1E2626;
}
.btnBase.type02:hover:after {
	border-top: solid 1px #1E2626;
	border-right: solid 1px #1E2626;
	border-right: solid 1px #1E2626;
}
.btnBase.icon .xlsLink {
	text-decoration: none;
}
.btnBase.icon:hover .xlsLink:before {
	background-image: url(../img/common/icon-xls-bk.svg);
}
@media (min-width: 1000px) {
	.btnBase {
		min-width: 450px;
	}
	.btnBase.entryBtn:hover:after {
		right: 15px;
	}
	.btnBase.entryBtn img {
		max-width: inherit;
		height: 40px;
	}
	.btnBase a, .btnBase input {
		font-size: 18px;
		padding: 20px;
	}
	.btnBase:hover:after {
		right: 15px;
	}
	.btnBase:after {
		width: 10px;
		height: 10px;
		right: 20px;
	}
}

.boxBtn {
	border-radius: 0;
	text-align: left;
	min-width: 100%;
}
.boxBtn a {
	font-size: 18px;
	min-height: 80px;
	display: flex;
	align-items: center;
}
.boxBtn a span {
	font-weight: 600;
}
.boxBtn + .boxBtn {
	margin-top: 10px;
}
@media (min-width: 1000px) {
	.boxBtn a {
		font-size: 22px;
		min-height: 140px;
	}
	.boxBtn + .boxBtn {
		margin-top: 30px;
	}
}

/*
flowBtn
---------------------------*/
#flowBtn {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	text-align: center;
	font-size: 16px;
	background-color: rgba(0, 175, 221, 0.9);
	z-index: 15;
}
#flowBtn a {
	position: relative;
	display: block;
	padding: 16px 0;
}
#flowBtn a:after {
	width: 8px;
	height: 8px;
	position: absolute;
	content: "";
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	right: 15px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transition: all 0.3s ease-out;
}
#flowBtn.is-absolute {
	position: absolute;
	top: 0;
	bottom: auto;
}
@media (min-width: 1000px) {
	#flowBtn {
		display: none !important;
	}
}

/*
flowNav
---------------------------*/
#flowNav {
	position: fixed;
	top: 65px;
	right: 2vw;
	z-index: 10;
	transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.4s ease, top 0.6s cubic-bezier(0.25, 1, 0.5, 1);
	transform-origin: top right;
}
#flowNav a {
	display: inline-block;
}
#flowNav img {
	display: block;
	width: 70px;
}
#flowNav img + img {
	padding-top: 10px;
}
#flowNav.is_scroll {
	transform: scale(0.85);
	opacity: 0.9;
}
#flowNav.is_scroll:hover {
	transform: scale(0.95);
}
#flowNav:hover {
	transform: scale(1.1);
}
@media (min-width: 1000px) {
	#flowNav {
		top: 150px;
		right: 20px;
	}
	#flowNav img {
		width: 120px;
	}
	#flowNav.is_scroll {
		top: 50px;
	}
	.is-top #flowNav {
		top: 150px;
	}
}

.telLink,
.faxLink,
.webLink {
	position: relative;
	display: inline-block;
	padding-left: 12px;
	margin: 20px 0 0;
}
.telLink:before,
.faxLink:before,
.webLink:before {
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	position: absolute;
	content: "";
	background-color: #00AFDD;
	width: 4px;
	height: 4px;
}
@media (min-width: 1000px) {
	.telLink,
	.faxLink,
	.webLink {
		margin: 40px 0 0;
	}
}

.blankLink {
	position: relative;
	display: inline-block;
	text-decoration: underline;
	padding-right: 25px;
}
.blankLink:before {
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	position: absolute;
	content: "";
	background-image: url(../img/common/icon-blank.svg);
	background-position: center center;
	background-repeat: no-repeat;
	width: 16px;
	height: 15px;
	display: block;
}

.pdfLink {
	position: relative;
	display: inline-block;
	text-decoration: underline;
	padding-right: 25px;
}
.pdfLink:before {
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	position: absolute;
	content: "";
	background-image: url(../img/common/icon-pdf.svg);
	background-position: center center;
	background-repeat: no-repeat;
	width: 19px;
	height: 20px;
	display: block;
}

.xlsLink {
	position: relative;
	display: inline-block;
	text-decoration: underline;
	padding-right: 25px;
}
.xlsLink:before {
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	position: absolute;
	content: "";
	background-image: url(../img/common/icon-xls.svg);
	background-position: center center;
	background-repeat: no-repeat;
	width: 19px;
	height: 20px;
	display: block;
}

.arrowLink {
	position: relative;
	padding-right: 20px;
}
.arrowLink:after {
	border-top: solid 1px #00AFDD;
	border-right: solid 1px #00AFDD;
	width: 8px;
	height: 8px;
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	transform: rotate(45deg);
	right: 0;
	margin: auto;
	transition: all 0.3s ease-out;
}
.arrowLink:hover:after {
	right: -5px;
}
.arrowLink.wh:after {
	border-color: #fff;
}
.arrowLink.left {
	padding-right: 0;
	padding-left: 20px;
}
.arrowLink.left:after {
	right: auto;
	left: 0;
}
.arrowLink.left:hover:after {
	left: 5px;
}

.flexColumn4 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.flexColumn4 > div {
	width: 80%;
}
.flexColumn4 > div + div {
	margin-top: 40px;
}
@media (min-width: 768px) {
	.flexColumn4 {
		justify-content: space-between;
	}
	.flexColumn4 > div {
		width: 22.5%;
	}
	.flexColumn4 > div + div {
		margin-top: 0;
	}
}

.flexColumn3 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.flexColumn3 > div {
	width: 80%;
}
.flexColumn3 > div + div {
	margin-top: 40px;
}
@media (min-width: 768px) {
	.flexColumn3 {
		justify-content: space-between;
	}
	.flexColumn3 > div {
		width: 32%;
	}
	.flexColumn3 > div + div {
		margin-top: 0;
	}
}

.flexColumn2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.flexColumn2 > div {
	width: 80%;
}
.flexColumn2 > div + div {
	margin-top: 20px;
}
@media (min-width: 768px) {
	.flexColumn2 {
		justify-content: flex-start;
	}
	.flexColumn2.centerType {
		align-items: center;
	}
	.flexColumn2 > div {
		width: calc((100% - 32px) / 2);
	}
	.flexColumn2 > div + div {
		margin-top: 0;
	}
	.flexColumn2 > div:nth-child(odd) {
		margin-right: 32px;
	}
}

#mainVisualLower {
	background-color: #f1f5fd;
	background-image: url(../img/common/lower-mv-bg.svg);
	background-position: right center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 58px;
}
#mainVisualLower .contentTitle {
	margin-bottom: 0;
}
#mainVisualLower .mainVisualInner {
	height: 150px;
	display: flex;
	align-items: center;
}
#mainVisualLower.imageType {
	position: relative;
	background-image: url(../img/common/lower-mv-bg.jpg);
	background-position: center;
	background-size: cover;
}
#mainVisualLower.imageType .contentTitle {
	position: relative;
	color: #fff;
	z-index: 2;
}
#mainVisualLower.imageType:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-color: rgba(0, 0, 0, 0.2);
	z-index: 1;
}
@media (min-width: 1000px) {
	#mainVisualLower {
		padding-top: 116px;
		background-size: contain;
	}
	#mainVisualLower .mainVisualInner {
		height: 300px;
	}
}

.lowerContentWrap {
	padding: 30px 0 60px;
}
.lowerContentWrap .contentBlock {
	padding: 30px 0;
}
.lowerContentWrap .contentBlock:last-of-type {
	padding-bottom: 0;
}
.lowerContentWrap .contentBlock:first-of-type {
	padding-top: 0;
}
.lowerContentWrap .em {
	font-weight: 600;
	font-size: 17px;
	line-height: 1.4;
}
.lowerContentWrap .em > * {
	font-weight: 600;
}
.lowerContentWrap .em02 {
	font-weight: 600;
	font-size: 20px;
	line-height: 1.4;
}
.lowerContentWrap .em02 > * {
	font-weight: 600;
}
@media (max-width: 350px) {
	.lowerContentWrap .em {
		font-size: 16px;
	}
	.lowerContentWrap .em02 {
		font-size: 18px;
	}
}
.lowerContentWrap .innerBox + .innerBox {
	padding-top: 30px;
}
.lowerContentWrap .contentBox + .contentBox {
	padding-top: 50px;
}
@media (min-width: 1000px) {
	.lowerContentWrap {
		padding: 60px 0 120px;
	}
	.lowerContentWrap .contentBlock {
		padding: 60px 0;
	}
	.lowerContentWrap .em {
		font-size: 22px;
	}
	.lowerContentWrap .em02 {
		font-size: 28px;
	}
	.lowerContentWrap .innerBox + .innerBox {
		padding-top: 60px;
	}
	.lowerContentWrap .contentBox + .contentBox {
		padding-top: 100px;
	}
}

.detailBox .detailTitle {
	background-color: #00AFDD;
	padding: 10px;
}
.detailBox .detailTitle .contentInnerTitle02 {
	margin-bottom: 0;
}
.detailBox .detailBoxContent {
	background-color: #fff;
	padding: 15px 4.8% 20px;
	border: 1px solid #DCDCDC;
}
@media (min-width: 1000px) {
	.detailBox .detailTitle {
		padding: 15px;
	}
	.detailBox .detailBoxContent {
		padding: 20px 30px 30px;
	}
}

/*
detailTable
---------------------------*/
.detailTable dl {
	display: flex;
}
.detailTable dl:last-of-type dt {
	border-bottom: 1px solid #00AFDD;
}
.detailTable dl:last-of-type dd {
	border-bottom: 1px solid #DCDCDC;
}
.detailTable dl dt, .detailTable dl dd {
	width: 50%;
	padding: 6px 10px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.detailTable dl dt span, .detailTable dl dd span {
	line-height: 1.6;
}
.detailTable dl dt {
	width: 40%;
	font-weight: 600;
	border-top: 1px solid #00AFDD;
}
.detailTable dl dt span {
	font-weight: 600;
}
.detailTable dl dd {
	width: 60%;
	border-top: 1px solid #DCDCDC;
}
@media (min-width: 1000px) {
	.detailTable dl dt, .detailTable dl dd {
		padding: 20px 10px;
	}
	.detailTable dl dt {
		width: 20%;
	}
	.detailTable dl dd {
		width: 80%;
	}
}

/*
contentList
---------------------------*/
.contentList {
	padding-top: 5px;
}
.contentList.pt {
	padding-top: 20px;
}
.contentList.pb {
	padding-bottom: 20px;
}
.contentList li {
	position: relative;
	padding-left: 14px;
}
.contentList li:before {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	background-color: #00AFDD;
	border-radius: 50px;
	position: absolute;
	top: 9px;
	left: 0;
	margin: auto;
}
.contentList li + li {
	margin-top: 5px;
}
@media (min-width: 1000px) {
	.contentList {
		padding-top: 10px;
	}
	.contentList.pt {
		padding-top: 30px;
	}
	.contentList.pb {
		padding-bottom: 30px;
	}
	.contentList li {
		padding-left: 15px;
	}
	.contentList li:before {
		top: 8px;
		width: 10px;
		height: 10px;
	}
}

.noList li {
	text-indent: -1.25em;
	padding-left: 1.25em;
}
.noList li + li {
	margin-top: 10px;
}

.tel-icon {
	position: relative;
	padding-left: 20px;
}
.tel-icon:after {
	content: "";
	display: block;
	width: 15px;
	height: 20px;
	background-image: url(../img/common/icon-tel.svg);
	background-size: cover;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
@media (min-width: 1000px) {
	.tel-icon {
		padding-left: 30px;
	}
	.tel-icon:after {
		width: 20px;
		height: 25px;
	}
}

/*# sourceMappingURL=common.css.map */