@charset "utf-8";
html {
	visibility: hidden;
	-webkit-text-size-adjust: 100%; 
}
html.wf-active {
	visibility: visible;
	font-feature-settings: "palt";
}
html, body, div, span, applet, object,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, font, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td, figure,nav,header {
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	outline: 0;
	box-sizing: border-box;
}

article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary {
	display: block;
	box-sizing: border-box;
}
input, select, textarea {
	box-sizing: border-box;
}

h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight: normal;
}
ol, ul, li {
	list-style: none;
}
th {
	font-weight: normal;
}
html {
	height:100%;
	font-size:62.5%;
}
body{
	width:100%;
	/*height:100%;*/
	font-family:'Noto Sans JP', sans-serif;
	font-size-adjust: none;
	font-size:16px;
	line-height:1.8em;
	color: #333;
	text-align:left;
	overflow-x: hidden;
	font-weight:400;
	background-color:#fefefe;
}
main{
	display:block;
}
svg {
	vertical-align:bottom;
}
a,a:link {
	color: #333;
	text-decoration:none;
}
a:visited {
	color: #333;
}
a:hover {
	color: #333;
}
a:active {
	color: #333;
}


/* +++++++++++++++++++++++++　空き設定(margin) */

.mb0_5{ margin-bottom:0.5vw !important;}
.mb1{ margin-bottom:1vw !important;}
.mb1_5{ margin-bottom:1.5vw !important;}
.mb2{ margin-bottom:2.5vw !important;}
.mb2_5{ margin-bottom:2vw !important;}
.mb3{ margin-bottom:3vw !important;}
.mb3_5{ margin-bottom:3.5vw !important;}
.mb4{ margin-bottom:4vw !important;}
.mb4_5{ margin-bottom:4.5vw !important;}
.mb5{ margin-bottom:5vw !important;}
.mb5_5{ margin-bottom:5.5vw !important;}
.mb6{ margin-bottom:6vw !important;}
.mb7{ margin-bottom:7vw !important;}
.mb8{ margin-bottom:8vw !important;}
.mb9{ margin-bottom:9vw !important;}
.mb10{ margin-bottom:10vw !important;}
.mb15{ margin-bottom:15vw !important;}
.mb20{ margin-bottom:20vw !important;}

/* +++++++++++++++++++++++++　flexbox */

/*
.flex 通常のflex
.flex-ce 中央揃え
.flex-cc　縦横中央揃え
*/

.flex{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ce{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-cc{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ace{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; 
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-ac{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-c{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: center; -ms-flex-pack: center; -webkit-justify-content: center; justify-content: center; -webkit-justify-content: center; justify-content: center;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
.flex-order{
	-webkit-box-ordinal-group: -1; -moz-box-ordinal-group: -1; -webkit-flex-order: -1; -moz-flex-order: -1; -webkit-order: -1; -moz-order: -1; order: -1;
}

/* +++++++++++++++++++++++++　テキスト揃え */

.tal{ text-align:left !important;}
.tac{ text-align:center !important;}
.tar{ text-align:right !important;}


/* +++++++++++++++++++++++++　ロールオーバー */


a{	-webkit-transition: all .4s; transition: all .4s;}
a:hover{ opacity:0.50; }


/* +++++++++++++++++++++++++　画像 */

img {
	width:100%;
	height:auto;
	border: none;
	vertical-align:bottom;
}
img.img-auto-width {
	width:auto;
	max-width:100%;
}

/* ++++++　・付き通常リスト */

.base-list{
	padding-left:25px;
}
.base-list > li{
	list-style-type: disc;
	margin-bottom:10px;
}

/* ++++++　数字付き通常リスト */

.base-list-no{
	padding-left:25px;
}
.base-list-no > li{
	list-style-type: decimal;
}

@media (min-width: 480px){
	.display-sp{ display:none !important;}
	.display-pc{ display:block !important;}
}
@media (max-width: 480px) {
	.display-sp{ display:block !important;}
	.display-pc{ display:none !important;}
}



/* +++++++++++++++++++++++++ */
/*
/* -SP-
/*
/* +++++++++++++++++++++++++ */

@media (max-width: 480px) {

	/* +++++++++++++++++++++++++　common */

	body {
		font-size:14px;
		line-height:1.6;
		-webkit-text-size-adjust: 100%;
		min-width:inherit;
		font-family:'Noto Sans JP', sans-serif;
		color: #333;
	}
	body,
	html{
		overflow:visible;
	}

	img,svg {
		width:100%;
	}

	.sp-tal{ text-align:left !important;}
	.sp-tac{ text-align:center !important;}
	.sp-tar{ text-align:right !important;}


	a,
	input,
	button {
		-webkit-touch-callout:none;
		cursor: pointer;
	}


}




