@charset "utf-8";

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;
	vertical-align: baseline;
	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:2em;
	color: #000;
	text-align:left;
	font-weight:400;
	background-color:#fff;
}
main{
	display:block;
}
svg {
	vertical-align:bottom;
}
a,a:link {
	color: #000;
	text-decoration:none;
}
a:visited {
	color: #000;
}
a:hover {
	color: #000;
}
a:active {
	color: #000;
}


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

.mt00{ margin-top:0px !important;}
.mt05{ margin-top:5px !important;}
.mt1{ margin-top:10px !important;}
.mt2{ margin-top:20px !important;}
.mt3{ margin-top:30px !important;}
.mt4{ margin-top:40px !important;}
.mt5{ margin-top:50px !important;}
.mt6{ margin-top:60px !important;}
.mt7{ margin-top:70px !important;}
.mt8{ margin-top:80px !important;}
.mt9{ margin-top:90px !important;}
.mt10{ margin-top:100px !important;}

.mb05{ margin-bottom:5px !important;}
.mb1{ margin-bottom:10px !important;}
.mb2{ margin-bottom:20px !important;}
.mb3{ margin-bottom:30px !important;}
.mb4{ margin-bottom:40px !important;}
.mb5{ margin-bottom:50px !important;}
.mb6{ margin-bottom:60px !important;}
.mb7{ margin-bottom:70px !important;}
.mb8{ margin-bottom:80px !important;}
.mb9{ margin-bottom:90px !important;}
.mb10{ margin-bottom:100px !important;}
.mb15{ margin-bottom:150px !important;}
.mb20{ margin-bottom:200px !important;}
.mb25{ margin-bottom:250px !important;}

.mr05{ margin-right:5px !important;}
.mr1{ margin-right:10px !important;}
.mr2{ margin-right:20px !important;}
.mr3{ margin-right:30px !important;}
.mr4{ margin-right:40px !important;}
.mr5{ margin-right:50px !important;}
.mr6{ margin-right:60px !important;}
.mr7{ margin-right:70px !important;}
.mr8{ margin-right:80px !important;}
.mr9{ margin-right:90px !important;}
.mr10{ margin-right:100px !important;}

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

.pt05{ padding-top:5px !important;}
.pt1{ padding-top:10px !important;}
.pt2{ padding-top:20px !important;}
.pt3{ padding-top:30px !important;}
.pt4{ padding-top:40px !important;}
.pt5{ padding-top:50px !important;}
.pt6{ padding-top:60px !important;}
.pt7{ padding-top:70px !important;}
.pt8{ padding-top:80px !important;}
.pt9{ padding-top:90px !important;}
.pt10{ padding-top:100px !important;}

.pb05{ padding-bottom:5px !important;}
.pb1{ padding-bottom:10px !important;}
.pb2{ padding-bottom:20px !important;}
.pb3{ padding-bottom:30px !important;}
.pb4{ padding-bottom:40px !important;}
.pb5{ padding-bottom:50px !important;}
.pb6{ padding-bottom:60px !important;}
.pb7{ padding-bottom:70px !important;}
.pb8{ padding-bottom:80px !important;}
.pb9{ padding-bottom:90px !important;}
.pb10{ padding-bottom:100px !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%;
}

/* +++++++++++++++++++++++++　clearfix */

.clearfix:after{content:".";display:block;height:0px;clear:both;visibility:hidden; overflow:hidden;}


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

.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;
}

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

.base-list-no2{
	counter-reset: listno2;
	padding-left:25px;
}
.base-list-no2 > li{
	text-indent:-1.5em;
	padding-left:1.5em;
}
.base-list-no2 > li:before {
  counter-increment: listno2;
  content: "(" counter(listno2) ") ";
}

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

.base-list-no3{
	counter-reset: listno3;
}
.base-list-no3 > li{
	position:relative;
	padding-left:30px;
	margin-bottom:15px;
}
.base-list-no3 > li:last-child{
	margin-bottom:0;
}
.base-list-no3 > li:before {
	display:block;
	position:absolute;
	left:0;
	top:3px;
	counter-increment: listno3;
	content: counter(listno3);
	background-color:#1F1F1F;
	color:#11CE87;
	font-size:18px;
	letter-spacing:0.1em;
	text-indent: 0.1em;
	border-radius:1000%;
	text-align:center;
	width:24px;
	height:24px;
	line-height:24px;
}



/* ++++++　一文字インデント */

.indent-txt{
	display:block;
	text-indent:-1em;
	padding-left:1em;
}
.indent-txt1_5{
	display:block;
	text-indent:-1.5em;
	padding-left:1.5em;
}
.indent-txt2{
	display:block;
	text-indent:-2em;
	padding-left:2em;
}


/* +++++++++++++++++++++++++　文字調整関連 */


.bold-txt{
	font-weight:700;
}
.small-txt{
	font-size:80%;
	line-height:1.5;
}
.micro-txt{
	font-size:12px !important;
	line-height:1.5;
}
.txt-color01{
	color:#ff0000;
}
.font-size01{
}
.font-lineheight01{
}
@media (max-width: 768px) {
	.tel-link{
		text-decoration:underline;
	}
}



@media (min-width: 768px){
	.pc-font-size12{ font-size:12px; line-height:2;}
	.pc-font-size14{ font-size:14px; line-height:2;}
	.pc-font-size16{ font-size:16px;}
	.pc-font-size18{ font-size:18px;}
	.pc-font-size20{ font-size:20px;}
	.pc-font-size22{ font-size:22px;}
	.pc-font-size24{ font-size:24px;}
	.pc-font-size26{ font-size:26px;}
	.pc-font-size28{ font-size:28px;}
	.pc-font-size30{ font-size:30px;}
	.pc-font-size32{ font-size:32px;}
	.pc-font-size34{ font-size:34px;}
	.pc-font-size36{ font-size:36px;}
	.pc-font-size38{ font-size:38px;}
	.pc-font-size40{ font-size:40px;}
}   
@media (max-width: 768px) {
	.sp-font-size12{ font-size:12px; line-height:1.5;}
	.sp-font-size14{ font-size:14px; line-height:1.5;}
	.sp-font-size16{ font-size:16px; line-height:1.5;}
	.sp-font-size18{ font-size:18px; line-height:1.5;}
	.sp-font-size20{ font-size:20px; line-height:1.5;}
	.sp-font-size22{ font-size:22px; line-height:1.5;}
	.sp-font-size24{ font-size:24px; line-height:1.5;}
	.sp-font-size26{ font-size:26px; line-height:1.5;}
	.sp-font-size28{ font-size:28px; line-height:1.5;}
	.sp-font-size30{ font-size:30px; line-height:1.5;}
	.sp-font-size32{ font-size:32px; line-height:1.5;}
	.sp-font-size34{ font-size:34px; line-height:1.5;}
	.sp-font-size36{ font-size:36px; line-height:1.5;}
	.sp-font-size38{ font-size:38px; line-height:1.5;}
	.sp-font-size40{ font-size:40px; line-height:1.5;}
}
@media (min-width: 768px){
	.display-sp{ display:none !important;}
	.display-pc{ display:block !important;}
}
@media (max-width: 768px) {
	.display-sp{ display:block !important;}
	.display-pc{ display:none !important;}
}



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

@media (max-width: 768px) {
	
	/* +++++++++++++++++++++++++　common */

	body {
		font-size:12px;
		line-height:1.8;
		-webkit-text-size-adjust: 100%;
		min-width:inherit;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:500;
	}
	body,
	html{
		overflow:visible;
	}
	
	img,svg {
		width:100%;
	}
	
	.tel-link a{
		text-decoration:none;
	}
	
	.sp-tal{ text-align:left !important;}
	.sp-tac{ text-align:center !important;}
	.sp-tar{ text-align:right !important;}
	
	
	.mt05{ margin-top:0.5vw !important;}
	.mt1{ margin-top:1vw !important;}
	.mt2{ margin-top:2vw !important;}
	.mt3{ margin-top:3vw !important;}
	.mt4{ margin-top:4vw !important;}
	.mt5{ margin-top:5vw !important;}
	.mt6{ margin-top:6vw !important;}
	.mt7{ margin-top:7vw !important;}
	.mt8{ margin-top:8vw !important;}
	.mt9{ margin-top:9vw !important;}
	.mt10{ margin-top:10vw !important;}
	
	.mb05{ margin-bottom:0.5vw !important;}
	.mb1{ margin-bottom:1vw !important;}
	.mb2{ margin-bottom:2vw !important;}
	.mb3{ margin-bottom:3vw !important;}
	.mb4{ margin-bottom:4vw !important;}
	.mb5{ margin-bottom: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;}
	.mb25{ margin-bottom:25vw !important;}
	
	
	a,
	input,
	button {
		-webkit-touch-callout:none;
		-webkit-tap-highlight-color:(0,0,0,0);
		cursor: pointer;
	}
	
	.small-txt{
		font-size:12px;
		line-height:1.5;
	}
	.micro-txt{
		font-size:12px;
		line-height:1.5;
	}
	
	
	
	
}




/* +++++++++++++++++++++++++　アニメーション */

.effect-b{
	position:relative;
	transform: translateY(7%);
	opacity:0;
	-webkit-transition: all .9s; transition: all .9s;
}
.effect-b.active{
	position:relative;
	transform: translateY(0);
	opacity:1;
}


