@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:500&display=swap&subset=japanese');

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

/* body */
body {
	-webkit-text-size-adjust: 100%;
	overflow-wrap: break-word;
	line-height: 2;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 15px;
}

/* hr */
hr {
	border: 0;
	border-top: 1px #e5e5e5 solid;
}

/* hX */
h1, h2, h3, h4, h5, h6 { font-weight: inherit;}

/* p */
p:empty { min-height: 1.6em;}

/* list */
ul {
	margin-left: 0;
	padding-left: 1.5em;
}
ol {
	margin-left: 0;
	padding-left: 2em;
}

/* a */
a {
	text-decoration: none;
	color: #3574db;
	overflow-wrap: anywhere;
}
a:link {}
a:visited {}
a:hover { opacity: 0.5;}
a:active {}
a:focus {}

/* link icon */
a[target="_blank"]:not(.icon-none):not(:has(img)):not([class*="button"])::after {
	content: url("../files/ico_blank_navy_01.svg");
	display: inline-block;
	margin-left: 5px;
	width: 13px;
	height: 13px;
	line-height: 1;
	vertical-align: middle;
}
a[href$=".pdf"]:not(.icon-none):not(:has(img)):not([class*="button"])::after {
	content: url("../files/ico_pdf_red_01.svg");
	display: inline-block;
	margin-left: 5px;
	width: 13px;
	height: 13px;
	line-height: 1;
	vertical-align: middle;
}
a[href$=".zip"]:not(.icon-none):not(:has(img)):not([class*="button"])::after {
	content: url("../files/ico_zip_01.svg");
	display: inline-block;
	margin-left: 5px;
	width: 13px;
	height: 13px;
	line-height: 1;
	vertical-align: middle;
}

/* img */
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

/* table */
th, td {
	font-weight: inherit;
	text-align: inherit;
	text-justify: inherit;
}

/* form */
button,
input,
select,
textarea {
	line-height: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}
@media screen and (max-width:768px) {
input[type="text"],
textarea { font-size: 16px;}
}

button { cursor: pointer;}
button:hover { opacity: 0.5;}

::-webkit-input-placeholder { color: #c1c1c1;}
:-ms-input-placeholder { color: #c1c1c1;}
::placeholder { color: #c1c1c1;}


/* TinyMCE
---------------------------------------- */
.mce-content-body p,.mce-content-body div,.mce-content-body h1,.mce-content-body h2,.mce-content-body h3,.mce-content-body h4,.mce-content-body h5,.mce-content-body h6 {
	line-height: inherit;
}


/* row
---------------------------------------- */
@media (min-width: 769px) {
	.row {
		display: grid;
		gap: 30px;
		margin: 1em 0;
	}
	.row--spacer { margin-top: 60px;}
	.row--1-1 { grid-template-columns: 1fr 1fr;}
	.row--1-2 { grid-template-columns: 1fr 2fr;}
	.row--2-1 { grid-template-columns: 2fr 1fr;}
	.row--1-1-1 { grid-template-columns: 1fr 1fr 1fr;}
	.row__col > :first-child { margin-top: 0;}
	.row__col > :last-child { margin-bottom: 0;}
}


/* box
---------------------------------------- */
/* box */
.box {
	margin: 1em 0;
	padding: 15px;
	background: #f7f7f7;
}
.box--caution { background-color: #fef2f1;}
.box > :first-child { margin-top: 0;}
.box > :last-child { margin-bottom: 0;}

/* box-stroke */
.box-stroke {
	margin: 1em 0;
	padding: 14px;
	border: solid 1px #e5e5e5;
}
.box-stroke--caution { border-color: #ea4335;}
.box-stroke > :first-child { margin-top: 0;}
.box-stroke > :last-child { margin-bottom: 0;}


/* table
---------------------------------------- */
/* table-scroll */
@media screen and (max-width:768px) {
.table-scroll {
	overflow-x: auto;
	margin: 1em 0;
}
.table-scroll::before {
	content: "→スクロール";
	font-size: 13px;
	color: #c1c1c1;
}
.table-scroll > table {
	width: 810px;
	margin: 0;
}
}

/* cell */
.cell-cmn-01 {
	color: #ffffff !important;
	background: #28864b !important;
}
.cell-cmn-02 {
	color: #ffffff !important;
	background: #68affd !important;
}
.cell-cmn-03 {
	color: #ffffff !important;
	background: #9dcbfe !important;
}

.cell-triangle-01 {
	height: calc(4em + 21px);
	background: url("../files/ico_cell_triangle_01.svg") no-repeat center center;
}
.cell-circle-01 {
	height: calc(4em + 21px);
	background: url("../files/ico_cell_circle_01.svg") no-repeat center center;
}
.cell-doublecircle-01 {
	height: calc(4em + 21px);
	background: url("../files/ico_cell_doublecircle_01.svg") no-repeat center center;
}

/* table */
.table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: solid 1px #e5e5e5;
	margin: 1em 0;
}
	.table > * {}
		.table > * > tr {}
		.table > * > tr:nth-child(even) { background:#f7f7f7;}
			.table > * >  tr > th {
				border: solid 1px #e5e5e5;
				padding: 10px;
				color: #ffffff;
				background: #34a853;
			}
			.table > * > tr:nth-child(even) > th { background:#28864b;}
			.table > * > tr > td {
				border: solid 1px #e5e5e5;
				padding: 10px;
			}
				.table > * > tr > td > *:first-child { margin-top: 0;}
				.table > * > tr > td > *:last-child { margin-bottom: 0;}
@media (max-width: 768px) {
	.table--responsive,
	.table--responsive > :where(thead, tbody, tfoot),
	.table--responsive > :where(thead, tbody, tfoot) > tr,
	.table--responsive > :where(thead, tbody, tfoot) > tr > :where(td, th) {
		display: block;
		width: 100%;
	}
	.table--responsive {
		border: none;
	}
	.table--responsive > :where(thead, tbody, tfoot) > tr > :where(td, th):not(tr:first-child > :first-child) {
		border-top: none;
	}
}

/* list
---------------------------------------- */
/* list-arrow */
.list-arrow {
	list-style: none;
	padding-left: 0;
}
	.list-arrow > li {
		padding-left: 1.5em;
		background: url("../files/ico_arrow_aqua_right_01.svg") no-repeat left calc(1em - 6.5px);
	}

/* list-asterisk */
.list-asterisk {
	list-style: none;
	padding-left: 1em;
}
	.list-asterisk > li::before {
		display: inline-block;
		margin-left: -1em;
		width: 1em;
	}
	.list-asterisk > li::before { content: "※";}

/* list-link-01 */
.list-link-01 {
	display: flex;
	justify-content: center;
	list-style: none;
	margin: 90px 0;
	padding: 0;
}
	.list-link-01 > li { margin: 0 15px;}
@media screen and (max-width:768px) {
	.list-link-01 > li { max-width: 100%;}
}

/* list-about */
.list-about {
	display: flex;
	flex-wrap: wrap;
}
	.list-about > dt {
		width: 100px;
		color: #3574db;
	}
	.list-about > dd {
		margin-left: 0;
		width: calc(100% - 100px);
	}

/* list-features */
.list-features {
	display: flex;
	flex-wrap: wrap;
}
	.list-features > dt {
		position: relative;
		margin: 25px 0;
		padding: 20px;
		width: 200px;
		text-align: center;
		color: #ffffff;
		background: #68affd;
	}
	.list-features > dt:first-of-type { margin-top: 0;}
	.list-features > dt::before {
		content: "";
		display: block;
		position: absolute;
		top: 6px;
		left: 6px;
		border: solid 2px #ffffff;
		width: calc(100% - 12px);
		height: calc(100% - 12px);
	}
	.list-features > dd {
		position: relative;
		margin: 25px 0 25px 25px;
		width: calc(100% - 225px);
	}
	.list-features > dd:first-of-type { margin-top: 0;}
	.list-features > dd::before {
		content: "";
		display: block;
		position: absolute;
		bottom: -26px;
		left: -225px;
		width: calc(100% + 225px);
		border-bottom: solid 1px #e5e5e5;
	}
@media screen and (max-width:768px) {
	.list-features > dt { width: 100%;}
	.list-features > dd {
		margin-top: 0;
		margin-left: 0;
		width: 100%;
	}
		.list-features > dt > br { display: none;}
}

/* list-recommended */
.list-recommended {
	border: solid 3px #3574db;
	padding: 20px;
}
.ttl-case + .list-recommended { margin-top: -3px !important;}
.list-recommended.copy {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-top: 0;
	padding-bottom: 0;
}
	.list-recommended > dt {
		font-size: 17px;
		color: #3574db;
	}
	.list-recommended > dd { margin-left: 0;}
@media screen and (max-width:768px) {
.list-recommended.copy {
	flex-direction: column;
	align-items: stretch;
}
	.txt-copy {
		order: 1;
		margin-bottom: 20px;
	}
}

/* list-point */
.list-point {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 30px 0;
}
	.list-point > dt {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		margin: 5px 0;
		width: 60px;
		height: 60px;
		line-height: 1;
		color: #ffffff;
		background: #3574db;
	}
	.list-point > dt:first-of-type { margin-top: 0;}
		.txt-point {}
		.num-point { font-size: 22px;}
	.list-point > dd {
		margin: 5px 0 5px 20px;
		width: calc(100% - 80px);
	}
	.list-features > dd:first-of-type { margin-top: 0;}


/* heading
---------------------------------------- */
/* heading-2 */
.heading-2 {
	margin: 90px 0 30px 0;
	padding: 17.5px;
	font-size: 25px;
	font-weight: inherit;
	text-align: center;
	color: #ffffff;
	background: #3574db;
}
.heading-2.ttl-case {
	margin: 90px 0 0 0;
	padding: 20px 35px;
	font-size: 22px;
	font-weight: inherit;
	text-align: left;
}
.heading-2 + * { margin-top: 0 !important;}
@media screen and (max-width:768px) {
.heading-2 {
	display: flex;
	justify-content: center;
	padding: 10px;
	font-size: 22px;
	text-align: left;
}
.heading-2.ttl-case {
	justify-content: flex-start;
	padding: 10px 23px;
}
}

/* heading-3 */
.heading-3 {
	display: inline-block;
	margin: 30px auto 10px 0;
	border-bottom: solid 2px #3574db;
	font-size: 20px;
	font-weight: inherit;
	color: #3574db;
}

/* heading-4 */
.heading-4 {
	margin: 20px 0 10px 0;
	font-size: 18px;
}


/* button
---------------------------------------- */
/* button */
.button {
	display: inline-block;
	border: none;
	border-radius: 5px;
	padding: 17.5px;
	width: 360px;
	max-width: 100%;
	text-align: center;
	color: #ffffff;
	background: #34a853;
}
.button::before {
	content: url("../files/ico_arrow_white_right_01.svg");
	display: inline-block;
	margin-right: 9px;
	width: 13px;
	height: 13px;
	line-height: 1;
	vertical-align: middle;
}


/* image
---------------------------------------- */
.mt-image-left,
.image-left {
	float: left;
	max-width: calc(50% - 10px);
	margin: 0 20px 20px 0;
}
.mt-image-center,
.image-center {
	display: block;
	margin: 0 auto 20px;
	text-align: center;
}
.mt-image-right,
.image-right {
	float: right;
	max-width: calc(50% - 10px);
	margin: 0 0 20px 20px;
}


/* utility
---------------------------------------- */
/* color */
.color-caution { color: #ea4335;}
.color-notice { color: #34a853;}

/* mark */
.mark-caution {
	padding: 0 5px;
	background-color: #fddd7c;
}

/* s-fs */
.font-x-large { font-size: 20px;}
.font-large { font-size: 17px;}
.font-medium { font-size: 15px;}
.font-small { font-size: 13px;}

/* margin */
.margin-top-none { margin-top: 0;}

.margin-bottom-large { margin-bottom: max(2em, 30px);}
.margin-bottom-medium { margin-bottom: max(1em, 15px);}
.margin-bottom-none { margin-bottom: 0;}
:where(.margin-bottom-large, .margin-bottom-medium, .margin-bottom-none) + * { margin-top: 0 !important;}

/* clear */
.clear { clear: both;}

/* clearfix */
.clearfix::after {
	display: block;
	clear: both;
	content: "";
}

/* visually-hidden */
.visually-hidden {
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	white-space: nowrap !important;
	border: 0 !important;
}
