@charset "UTF-8";


/*初期化
-----------------------------------------------------------------------------------*/
html, body, div, span,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, legend, input, textarea,
p, blockquote, table, th, td, address{
	margin: 0;
	padding: 0;
	box-sizing:border-box;
}

html {
	scroll-behavior: smooth;
}

ul { list-style:none; }

table{
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
}

img{
	border:none;
	background:transparent;
	width: auto;
	height: auto;
	vertical-align: middle;
}
.text span{
	vertical-align:top;
    padding:0;
    margin:0;
	}

q:before,q:after{content:'';}
abbr,acronym {
	border:0;
	font-variant:normal;
	}
sup {vertical-align:text-top;}
sub {vertical-align:text-bottom;}

/*input,textarea,select{
	font-family:inherit;
	font-size:inherit;
	font-weight:inherit;
	}*/

input,textarea,select{font-size:100%;}

img {
	max-width: 100%;
}

video {
	width: 100%;
}

/*use Fx: Dotted line erase when click Link or Block element*/
*{outline: none;}


/* 共通スタイル */
a { text-decoration:none; }

/* 文字サイズ */
/* -------------------------------------------------------- */
.fs_def { font-size: inherit; }
.fs60p { font-size:60%; }
.fs70p { font-size:70%; }
.fs80p { font-size:80%; }
.fs90p { font-size:90%; }
.fs100p { font-size:100%; }
.fs120p { font-size:120%; }
.fs140p { font-size:140%; }
.fs160p { font-size:160%; }
.fs180p { font-size:180%; }
.fs200p { font-size:200%; }
.fs300p { font-size:300%; }
.fs400p { font-size:400%; }

.shadow {
	text-shadow: 3px 3px 1px #333;
	color:#FFF;
}


/* インデント */
/* -------------------------------------------------------- */
.ind1 { text-indent:-1em;padding-left:1em; }
.ind2 { text-indent:-2em;padding-left:2em; }
.ind3 { text-indent:-3em;padding-left:3em; }


/* 余白 */
/* -------------------------------------------------------- */
.m_auto {
	margin-left:auto;
	margin-right:auto;
}

/* 幅指定 */
/* -------------------------------------------------------- */
.w10p {
	width:10%;
}
.w20p {
	width:20%;
}
.w25p {
	width:25%;
}
.w33p {
	width:33%;
}
.w50p {
	width:50%;
}
.w65p {
	width:65%;
}
.w75p {
	width:75%;
}
.w80p {
	width:80%;
}
.w90p {
	width:90%;
}
.w100p {
	width:100%;
}

.lh12 {
	line-height:1.2;
}
.lh15 {
	line-height:1.5;
}
.lh20 {
	line-height:2;
}



/* 配置 */
/* -------------------------------------------------------- */
.alignce { text-align:center; }
.alignle { text-align:left; }
.alignri { text-align:right; }


/* ロールオーバー */
/* -------------------------------------------------------- */
a:hover img {
	opacity:0.9;
	filter:alpha(opacity=90);
	-ms-filter: "alpha( opacity=90 )";
}


/* 回り込み */
/* -------------------------------------------------------- */
.flt_L { float:left; }
.flt_R { float:right; }


/* 回り込み解除 */
/* -------------------------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
	display: inline-table;
	min-height:1%;  /* for IE 7*/
}

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */


*,
*::before,
*::after {
  box-sizing: border-box;
	padding: 0;
	margin: 0;
	outline: none;
}


/*フォーム*/
select {
	border:1px solid #B4B4B4;
	padding:10px;
	max-width:100%;
/*	border-radius:6px;*/
	line-height:1;
}
input[type=text],
input[type=email],
input[type=number],
input[type=tel],
input[type=password]
{
	border:1px solid #B4B4B4;
	padding:10px;
	max-width:100%;
/*	border-radius:6px;*/
	line-height:1;
}

textarea
{
	border:1px solid #B4B4B4;
	padding:10px;
	max-width:100%;
	line-height:1.5;
}


button {
	padding:10px;
	line-height:1;
	font-size: 120%;
	vertical-align: middle;
}
button img {
	vertical-align:middle;
}


body {
	color:#5B5B5B;
	line-height: 1;
	font-family: 'Noto Sans',"游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}

main {
	display:block;
}

.f_Kosugi_Maru {
	font-family: 'Kosugi Maru', sans-serif;
}

.f_M_PLUS {
	font-family: 'M PLUS Rounded 1c', sans-serif;
}

.f_note {
	font-family: 'Noto Serif JP', sans-serif;
}

.f_oswald {
	font-family: 'Oswald', sans-serif;
}

.alert {
	color: red;
	display: none;
	font-size: 100%;
}

a {
	color: inherit;
	cursor: pointer;
}
a:hover, a:hover img, button:hover, .hov1:hover {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

/* エフェクト：下から */
.effect-fade {
	opacity : 0;
	transform : translate(0, 80px);
	transition : all 600ms;
}
.effect-fade.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
/* エフェクト：上から */
.effect-fade_T {
	opacity : 0;
	transform : translate(0, -80px);
	transition : all 600ms;
}
.effect-fade_T.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
/* エフェクト：左から */
.effect-fade_L {
	opacity : 0;
	transform : translateX(-80px);
	transition : all 600ms;
}
.effect-fade_L.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}
/* エフェクト：右から */
.effect-fade_R {
	opacity : 0;
	transform : translateX(45px);
	transition : all 500ms;
}
.effect-fade_R.effect-scroll {
	opacity : 1;
	transform : translate(0, 0);
}


/* ローディング表示 */
#is-loading {
 display: block;
 position: fixed;
 width: 100%;
 height: 100%;
 top: 0px;
 left: 0px;
 background: #FFF;
 z-index: 8;
}
#loading {
 display: none;
 position: fixed;
 top: 50%;
 left: 50%;
 width: 400px;
 height: auto;
 margin-top: -100px;
 margin-left: -200px;
 text-align: center;
 color: #fff;
 z-index: 9;
}

#loading__wrapper {
	/* display: none; */
}


/* 文字色 */
.fc_red {
	color: #FF3030;
}


/* スクロールされると表示 */
.show_delay {
	display: none;
}


/* マーカー */
/*マーカーアニメーション*/

.marker.active{
    background-position: -100% .8em;
}

.marker {
    background-repeat: repeat-x;
    background-size: 200% 1em;
    background-position: 0 0.5em;
    transition: all 2s ease;
    font-weight: bold;
}
.mk_orange {
	background-image: -webkit-linear-gradient(left, transparent 10%, rgb(255, 168, 78) 80%);
	background-image: -moz-linear-gradient(left, transparent 10%, rgb(255, 168, 78) 80%);
	background-image: -ms-linear-gradient(left, transparent 10%, rgb(255, 168, 78) 80%);
	background-image: -o-linear-gradient(left, transparent 10%, rgb(255, 168, 78) 80%);
	background-image: linear-gradient(left, transparent 10%, rgb(255, 168, 78) 80%);
}
.mk_red {
	background-image: -webkit-linear-gradient(left, transparent 10%, rgb(255, 78, 78) 80%);
	background-image: -moz-linear-gradient(left, transparent 10%, rgb(255, 78, 78) 80%);
	background-image: -ms-linear-gradient(left, transparent 10%, rgb(255, 78, 78) 80%);
	background-image: -o-linear-gradient(left, transparent 10%, rgb(255, 78, 78) 80%);
	background-image: linear-gradient(left, transparent 10%, rgb(255, 78, 78) 80%);
}
