@charset "UTF-8";
*{
	box-sizing:border-box;
	font-size:16px;
	word-break:break-all;
}
*:focus{
	outline:none;
}
@media screen and (min-width:640px) {
*{font-size:18px;}
}
@media screen and (max-width:375px) {
*{font-size:14px;}
}


/*PC・SP表示非表示*/
.pc{display:none;}
@media screen and (min-width:640px){
.pc{display:inline-block;}
.sp{display:none;}
}


html, body, div, span, object, iframe,
h1, h2, h2, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video{
	background:transparent;
	border:0;
	font-size:100%;
	font-style:normal;
	font-weight:500;
	line-height:100%;
	list-style:none;
	margin:0;
	padding:0;
	outline:0;
	text-align:left;
	vertical-align:baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{
	display:block;
}


/*全体*/
html{
	font-size:62.5%;
}
body{
	background:#f5f5eb;
	color:#111;
	font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",YuGothic,"ヒラギノ角ゴ ProN W3",Hiragino Kaku Gothic ProN,Arial, "メイリオ",Meiryo,sans-serif;
	/*font-size:1.6rem;*/
	font-weight:500;
	margin:0;
	padding:0;
	-webkit-text-size-adjust:100%;
}


/*共通*/
img{
	width:100%;
	height:auto;
}
.center{
	text-align:center;
}
.red{
	color:#f53719;
	font-weight:bold;
}
.green{
	color:#19a57d;
	font-weight:bold;
}
.yellow{
	color:#ffff00;
	font-weight:bold;
}
.marker{
	background:linear-gradient(transparent 50%, #ffff00 50% 97%, transparent 97%);
	font-weight:bold;
	padding:0 5px 3px;
}
.bold{
	font-weight:bold;
}
.center{text-align:center;}
.mt0{margin-top:0px;}
.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt15{margin-top:15px;}
.mt30{margin-top:30px;}


/*figure.figure*/
.figure{
	margin:15px 15px 0;
}
.figure.mt0{
	margin-top:0;
}
.figure.mt10{
	margin-top:10px;
}
@media screen and (min-width:640px) {
.figure{
	margin:25px 15px 0;
}
}


/*p.tx 基本*/
p.tx{
	font-size:16px;
	line-height:2;
	margin:25px 15px 0;
	padding:0;
}
p.tx span{
	font-size:16px;
}
p.tx.mt0{
	margin:0 15px;
}
p.tx.mt5{
	margin:5px 15px 0;
}
p.tx.mt15{
	margin:15px 15px 0;
}
@media screen and (min-width:640px) {
p.tx,
p.tx span{
font-size:18px;
}
p.tx{
margin:35px 15px 0;
}
}
@media screen and (max-width:375px) {
p.tx,
p.tx span{
font-size:14px;
}
}

/*p.tx 大きめ*/
p.tx.big,
p.tx span.big{
	font-size:20px;
}
@media screen and (min-width:640px) {
p.tx.big,
p.tx span.big{
font-size:28px;
}
}
@media screen and (max-width:375px) {
p.tx.big,
p.tx span.big{
font-size:17px;
}
}

/*p.tx すごく大きめ*/
p.tx.sbig,
p.tx span.sbig{
	font-size:25px;
}
@media screen and (min-width:640px) {
p.tx.sbig,
p.tx span.sbig{
font-size:36px;
}
}
@media screen and (max-width:375px) {
p.tx.sbig,
p.tx span.sbig{
font-size:22px;
}
}


/*a 基本*/
a{
	border-bottom:1px solid #0064f5;
	color:#0064f5;
	font-size:16px;
	padding-bottom:1px;
	text-decoration:none;
}
@media screen and (min-width:640px) {
a{
font-size:18px;
}
}
@media screen and (max-width:375px) {
a{
font-size:14px;
}
}


/*header.header*/
.header{
	background:#fff;
	margin:0 auto;
	padding:0;
	width:100%;
	max-width:640px;
}
p.logo{
	margin:0;
	padding:15px 0 12px 15px;
}
p.logo img{
	width:40%;
}
@media screen and (min-width: 640px) {
p.logo img{
width:25%;
}	
}

p.pr{
	color:#aaa;
	font-size:12px;
	line-height:1;
	margin:10px 12px 0;
	padding:0;
    text-align:right;
}
@media screen and (min-width:640px) {
p.pr{
font-size:14px;
}
}
@media screen and (max-width:375px) {
p.pr{
font-size:11px;
}
}


/*article.article*/
.article{
	background:#fff;
	margin:0 auto;
	padding:15px 0 50px;
	width:100%;
	max-width:640px;
}
@media screen and (min-width:640px) {
.article{
padding:20px 0 75px;
}
}


/*h2.h2*/
.h2{
	background:#ffffd2;
	border-top:5px solid #32af8c;
	border-bottom:5px solid #32af8c;/*198278*/
	border-left:5px solid #ffebb9;/*ffb964 ffdcb9*/
	border-right:5px solid #ffebb9;
	color:#006978;
	font-size:22px;
	font-weight:bold;
	line-height:1.4;
	margin:40px 15px 0;
	padding:13px 7px 10px;
	text-align:center;
}
.h2 span{
	color:#f53719;
	font-size:22px;
	font-weight:bold;
}
@media screen and (min-width: 640px) {
.h2{
font-size:32px;
margin:70px 15px 0;
padding:15px 7px 13px;
}
.h2 span{
font-size:34px;
}
}
@media screen and (max-width: 375px) {
.h2,
.h2 span{
font-size:20px;
}
}


/*figure.arrow*/
figure.arrow{
	margin-top:10px;
	text-align:center;
}
figure.arrow img{
	width:10%;
	height:auto;
}
@media screen and (min-width: 640px) {
figure.arrow{
margin-top:20px;
}
}


/*div.button*/
div.button{
	margin:20px 15px 0;
}
div.button a{
	border-bottom:none;
	padding-bottom:0;
}
div.button figure{
	width:100%;
	height:auto;
}
div.button figure img{
	cursor:pointer;
	width:100%;
	height:auto;
}
@media screen and (min-width: 640px) {
div.button{
margin:30px 15px 0;
}
div.button figure{
margin:0 auto;
width:90%;
height:auto;
}
}


/*footer.footer*/
.footer{
	background:#006978;
	display:flex;
    justify-content:center;
	margin:0 auto;
	padding:20px 10px 25px;
	width:100%;
	max-width:640px;
}
.footer p{
    display:inline-block;
    margin:0;
	padding:0 10px;
}
.footer a{
	border-bottom:1px solid #fff;
	color:#fff;
	font-size:13px;
    font-weight:normal;
	line-height:1;
	text-decoration:none;
}
@media screen and (min-width:640px) {
.footer a{
font-size:14px;
}
}
@media screen and (max-width:375px) {
.footer a{
font-size:11px;
}
}







