@charset "utf-8";
/*@charset "UTF-8";     コメント */
/*css初期設定 start*/
html {
	font-size: 62.5%; /*文字標準*/
	font-family: 'Noto Sans JP', sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}
a {
	text-decoration: none; /*リンクデコレーションリセット*/
}
/*大きさの計算*/
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
p {
	font-size: 1.5rem;
	text-align: center;
}
hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
body {
	width: 100%;
	margin: 0 auto;
	line-height: 1.5rem;
	/*文字詰め*/
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	/*スマホ横向き時のフォントサイズリセット*/
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	overflow: visible;
}
.eng {
	font-family: 'Open Sans', sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-variation-settings: 'wdth' 100;
}
/*iOSフォーム要素の初期化*/
input,
button,
textarea,
select {
	-webkit-appearance: none;
	appearance: none;
}
/*画像の調整*/
img {
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
span {
	display: inline-block;
}
@media (max-width: 1023px) {
	.sp {
		display: block !important;
	}
	.pc {
		display: none !important;
	}
}
@media only screen and (min-width: 1024px) {
	.sp {
		display: none !important;
	}
	.pc {
		display: block !important;
	}
}
#copyright {
	font-size: 1.2rem;
}
#main-footer a {
	font-size: 1.2rem;
}
/*css初期設定 end*/
/*main start*/
body {
	background-color: #ffffff;
	color: #1c1c1b;
	line-height: 1.5;
}
body {
	background-color: #fff;
	color: #000;
}

.mainWrap {
	display: block;
	width: 100%;
	margin: 0 auto;
}
.topTxt {
	display: block;
	width: 90%;
	margin: 4% auto;
}
.main_contents h1 {
	font-size: 2rem;
	text-align: center;
	line-height: 1.7;
	padding-bottom: 10%;
}
.main_contents h2 {
	font-size: 1.6rem;
	text-align: center;
	line-height: 1.7;
}

.main_contents h4 {
	font-size: 2.4rem;
	color: #680015;
	text-align: center;
	line-height: 1.7;
	margin-bottom: 30px;
	font-weight: 600;
}
.main_contents h5 {
	font-size: 1.8rem;
	text-align: center;
	line-height: 1.7;
	letter-spacing: 0.2rem;
}
.main_contents p.note {
	font-size: 1.1rem;
	text-align: center;
}
.backBlue {
	background-color: #f9f8ff;
	padding: 10% 5%;
}
.mainWrap h1 {
	padding-bottom: 30px;
}
.backBlue > h5 {
	padding-bottom: 20px;
	font-weight: 600;
}
.periodArea {
	width: 100%;
	margin: 0 auto;
}
.periodArea h3 {
	display: block;
	margin: 0 auto;
	width: 250px;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.7;
	color: #fff;
	background-color: #00002e;
	padding: 8px 0;
	margin-top: 20px;
	margin-bottom: 10px;
}
.pointArea {
	width: 100%;
	display: flex;
	flex-direction: column;
	margin: 5px auto;
}
.point-f {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	/*	justify-content: space-between;*/
	padding: 3% 0;
}
.point-f img {
	width: 40%;
}
.point-f2 {
	width: 55%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.point-f2 p {
	font-size: 1.2rem;
}
p.textBlue {
	color: #680015;
	font-weight: 600;
}
span.textBlue {
	color: #680015;
}
.txtArea {
	width: 90%;
	margin: 18% auto;
}
.txtArea h5 {
	margin: 2% auto;
}
.conditionsArea {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
}
.conditionsArea .point-f {
	width: calc((100% / 2) - (15px * 1 / 2));
	display: flex;
	padding: 5px;
	flex-direction: column;
}
.conditionsArea .point-f img {
	width: 100%;
}
.conditionsArea .note {
	font-size: 1.2rem;
	margin: 15% auto 8%;
	text-align: left;
}

.howto {
	background-color: #f9f8ff;
	width: 100%;
	padding: 10% 5%;
}
.howtoStep {
	width: 100%;
	margin: 5% auto;
}
.howtoStep .textBlue {
	color: #680015;
	font-size: 1.8rem;
}
.howtoStep p {
	text-align: center;
	padding: 1% 0;
}
.howtoStep p a,
.howtoStep p a:hover {
	text-decoration: none;
	color: #680015;
	text-decoration: underline;
}

.note a {
	color: #680015;
}
a.button {
	display: block;
	width: 250px;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.7;
	color: #fff;
	background-color: #00002e;
	margin: 20px auto;
	padding: 8px 0;
}
a.button:hover {
	display: #00002e;
	color: #fff;
	text-decoration: none;
}
.txtArea ul {
	width: 90%;
	margin: 5% auto;
}
.txtArea ul li {
	list-style: disc;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.7;
}
.txtArea ul li a {
	text-decoration: none;
	text-decoration: underline;
	color: #00002e;
}

.blueLine {
	background: linear-gradient(transparent 80%, #680015 80%);
}
@media (min-width: 741px) {
	.main_contents h1 {
		font-size: 2.7rem;
	}
	.main_contents h2 {
		font-size: 2rem;
	}
	.main_contents h3 {
		width: 300px;
		font-size: 2rem;
	}
	.main_contents h4 {
		font-size: 3rem;
	}
	.main_contents h5 {
		font-size: 2rem;
	}
	.main_contents p {
		font-size: 2rem;
	}
	.main_contents p.note {
		font-size: 1.4rem;
		text-align: center;
	}
	.main_contents p.note span {
		text-decoration: underline;
	}
	.pointArea {
		width: 100%;
		flex-direction: row;
		flex-wrap: nowrap;
		margin: 5% auto;
		justify-content: space-between;
	}
	.point-f {
		display: flex;
		width: calc((100% / 3) - (32px * 2 / 3));
		flex-direction: column;
		padding: 0 8px;
		text-align: center;
		align-items: center;
	}
	.point-f2 {
		padding-top: 30px;
	}
	.point-f img {
		width: 100%;
	}
	.point-f2 {
		width: 100%;
	}
	.conditionsArea .point-f {
		width: 24%;
		display: flex;
		padding: 5px;
		flex-direction: column;
	}
	.backBlue p {
		text-align: center;
	}
	.txtArea {
		width: 70%;
		margin: 10% auto;
	}
	.backBlue > p {
		width: 100%;
		margin: 0 auto;
	}
	.txtArea ul li {
		font-size: 2rem;
	}
	a.button {
		width: 300px;
		font-size: 2rem;
	}
}

@media (min-width: 1025px) {
	.main_contents h1 {
		font-size: 5.7rem;
	}
	.main_contents h2 {
		font-size: 4rem;
		padding-top: 0;
	}
	.mainWrap h1 {
		padding-bottom: 88px;
	}
	.main_contents h5 {
		font-size: 3rem;
	}
	.backBlue {
		background-color: #f9f8ff;
		padding: 5% 20%;
	}
	.point-f2 p {
		font-size: 1.6rem;
	}
	.txtArea {
		width: 55%;
		margin: 5% auto;
	}
	.conditionsArea .note {
		font-size: 1.4rem;
	}
	.howto {
		padding: 5%;
	}
	.howtoStep {
		margin: 2% auto;
	}
	.howtoStep p {
		padding: 0;
	}
	.howtoStep .textBlue {
		font-size: 2.8rem;
	}
	.txtArea ul {
		width: 55%;
		margin: 2% auto;
	}
	a.button {
		width: 300px;
		font-size: 2rem;
		margin-top: 5%;
	}
}
