@charset "UTF-8";
/* CSS Document */

/* ************************************************ 
 *  all
 * ************************************************ */

* {
    margin: 0;
    padding: 0;
}
p, li, ul {
	padding: 0;
	margin: 0;
	list-style-type: none;
}
html {
	height: 100%;
	overflow-x: hidden;
	scroll-behavior: smooth;
}
body {
	margin: 0;
	padding: 0;
	position: relative;
	background-color: #fff;
}
p{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: normal;
	font-size: 10pt;
	line-height: 15pt;
	color: #333;
}
br.clear {
	clear: both;
	font: 0pt/0pt sans-serif;
}
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix{
	display: inline-block;
}
.clear {
	clear: both;
	float: none;
	margin: 0;
	padding: 0;
}

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

hr {
	margin: 10px 0;
	border: 0;
	clear: left;
}
img {
	border: none;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
/*	width: inherit\9 !important;
    max-width: 100%;
    height: auto\9 !important;*/
}
.non img {
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	touch-callout:none;
	user-select:none;
}
a img:hover {
	text-decoration: none;
	cursor: pointer;
	cursor: hand;
	transition: all 0.5s ease 0s;
	filter:alpha(opacity=7);
	-moz-opacity: 0.7;
	opacity: 0.7;
}
a:link,
a:visited {
	color: #333;
	text-decoration: none;
}
a:hover{
	color: #3278C7;
	text-decoration: none;
	cursor: pointer;
	cursor: hand;
	transition: all 0.5s ease 0s;
}
a:active{
	color: #999;
	text-decoration: none;
}
.hidden_tl {
	overflow-y: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
}
.hidden_tx {
	overflow-y: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

/* -------------------------------------
*     ポジション調整
* ------------------------------------- */

.grid_r {display: grid; justify-content: right;}
.grid_l {display: grid; justify-content: left;}
.float_r {float: right;}
.float_l {float: left;}

/* -------------------------------------
*     テキスト調整
* ------------------------------------- */

.tx_l {text-align: left;}
.tx_r {text-align: right;}
.tx_ct {text-align: center;}
.tx_wh {color: #fff;}
.tx_bk {color: #333;}

/* -------------------------------------
*     マージン調整
* ------------------------------------- */

.mr_t10 {margin: 10px 0 0 0;}
.mr_t20 {margin: 20px 0 0 0;}
.mr_t30 {margin: 30px 0 0 0;}
.mr_t40 {margin: 40px 0 0 0;}
.mr_t50 {margin: 50px 0 0 0;}
.mr_t60 {margin: 60px 0 0 0;}
.mr_t70 {margin: 70px 0 0 0;}
.mr_t80 {margin: 80px 0 0 0;}
.mr_t90 {margin: 90px 0 0 0;}
.mr_t100 {margin: 100px 0 0 0;}

.mr_b10 {margin: 0 0 10px 0;}
.mr_b20 {margin: 0 0 20px 0;}
.mr_b30 {margin: 0 0 30px 0;}
.mr_b40 {margin: 0 0 40px 0;}
.mr_b50 {margin: 0 0 50px 0;}
.mr_b60 {margin: 0 0 60px 0;}
.mr_b70 {margin: 0 0 70px 0;}
.mr_b80 {margin: 0 0 80px 0;}
.mr_b90 {margin: 0 0 90px 0;}
.mr_b100 {margin: 0 0 100px 0;}
.mr_ct {
	margin: 0 auto;
}

@media screen and (min-width: 1001px) {
.mr_left10 {margin: 0 0 0 10px;}
.mr_left20 {margin: 0 0 0 20px;}
.mr_left30 {margin: 0 0 0 30px;}
.mr_left40 {margin: 0 0 0 40px;}
.mr_left50 {margin: 0 0 0 50px;}

.mr_right10 {margin: 0 10px 0 0;}
.mr_right20 {margin: 0 20px 0 0;}
.mr_right30 {margin: 0 30px 0 0;}
.mr_right40 {margin: 0 40px 0 0;}
.mr_right50 {margin: 0 50px 0 0;}
}

@media screen and (max-width: 1000px) {
.sp-mr_left10 {margin: 0 0 0 10px;}
.sp-mr_left20 {margin: 0 0 0 20px;}
.sp-mr_left30 {margin: 0 0 0 30px;}
.sp-mr_left40 {margin: 0 0 0 40px;}
.sp-mr_left50 {margin: 0 0 0 50px;}

.sp-mr_right10 {margin: 0 10px 0 0;}
.sp-mr_right20 {margin: 0 20px 0 0;}
.sp-mr_right30 {margin: 0 30px 0 0;}
.sp-mr_right40 {margin: 0 40px 0 0;}
.sp-mr_right50 {margin: 0 50px 0 0;}
}

/* -------------------------------------
*     パディング調整
* ------------------------------------- */

.pd_t10 {padding: 10px 0 0 0;}
.pd_t20 {padding: 20px 0 0 0;}
.pd_t30 {padding: 30px 0 0 0;}
.pd_t40 {padding: 40px 0 0 0;}
.pd_t50 {padding: 50px 0 0 0;}
.pd_t60 {padding: 60px 0 0 0;}
.pd_t70 {padding: 70px 0 0 0;}
.pd_t80 {padding: 80px 0 0 0;}
.pd_t90 {padding: 90px 0 0 0;}
.pd_t100 {padding: 100px 0 0 0;}

.pd_b10 {padding: 0 0 10px 0;}
.pd_b20 {padding: 0 0 20px 0;}
.pd_b30 {padding: 0 0 30px 0;}
.pd_b40 {padding: 0 0 40px 0;}
.pd_b50 {padding: 0 0 50px 0;}
.pd_b60 {padding: 0 0 60px 0;}
.pd_b70 {padding: 0 0 70px 0;}
.pd_b80 {padding: 0 0 80px 0;}
.pd_b90 {padding: 0 0 90px 0;}
.pd_b100 {padding: 0 0 100px 0;}
.pd_ct {
	padding: 0 auto;
}

@media screen and (min-width: 1001px) {
.pd_left10 {padding: 0 0 0 10px;}
.pd_left20 {padding: 0 0 0 20px;}
.pd_left30 {padding: 0 0 0 30px;}
.pd_left40 {padding: 0 0 0 40px;}
.pd_left50 {padding: 0 0 0 50px;}

.pd_right10 {padding: 0 10px 0 0;}
.pd_right20 {padding: 0 20px 0 0;}
.pd_right30 {padding: 0 30px 0 0;}
.pd_right40 {padding: 0 40px 0 0;}
.pd_right50 {padding: 0 50px 0 0;}
}

@media screen and (max-width: 1000px) {
.sp-pd_left10 {padding: 0 0 0 10px;}
.sp-pd_left20 {padding: 0 0 0 20px;}
.sp-pd_left30 {padding: 0 0 0 30px;}
.sp-pd_left40 {padding: 0 0 0 40px;}
.sp-pd_left50 {padding: 0 0 0 50px;}

.sp-pd_right10 {padding: 0 10px 0 0;}
.sp-pd_right20 {padding: 0 20px 0 0;}
.sp-pd_right30 {padding: 0 30px 0 0;}
.sp-pd_right40 {padding: 0 40px 0 0;}
.sp-pd_right50 {padding: 0 50px 0 0;}
}

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

.foo.delighter {
  transition: all .6s ease-out;
  transform: translateX(-10%);
  opacity: 0;
}
.foo.delighter.started {
  transform: none;
  opacity: 1;
}
.foo.delighter.started.ended {
  border: none;
}

.delighter.top { transform:translateY(-50%); opacity:0; transition: all .90s ease-out; }
.delighter.top.started { transform:none; opacity:1; }

.delighter.bottom1 {
	transform:translateY(50%);
	opacity:0;
	transition: all .50s ease-out;
}
.delighter.bottom1.started { transform:none; opacity:1; }

.delighter.bottom2 {
	transform:translateY(50%);
	opacity:0;
	transition: all .70s ease-out;
}
.delighter.bottom2.started { transform:none; opacity:1; }

.delighter.bottom3 {
	transform:translateY(50%);
	opacity:0;
	transition: all .90s ease-out;
}
.delighter.bottom3.started { transform:none; opacity:1; }

.delighter.right { transform:translateX(-50%); opacity:0; transition: all .90s ease-out; }
.delighter.right.started { transform:none; opacity:1; }

.delighter.left { transform:translateX(50%); opacity:0; transition: all .90s ease-out; }
.delighter.left.started { transform:none; opacity:1; }

/**************************************
font
***************************************/

h1,h2,h3,h4,h5,h6 {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

@media screen and (min-width: 1001px) {
h2 {
	font-size: 12pt;
	line-height: 18pt;
	font-weight: bold;
}
h3 {
	font-size: 10pt;
	line-height: 15pt;
}
h4 {
	font-size: 9pt;
	line-height: 12pt;
}
h5 {
	font-size: 9pt;
	line-height: 18pt;
}
h6 {
	text-align: center;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 8pt;
	line-height: 12pt;
	letter-spacing: 0.5pt;
}
}

@media screen and (max-width: 1000px) {
h2 {
	font-size: 12pt;
	line-height: 18pt;
	font-weight: bold;
}
h3 {
	font-size: 12pt;
	line-height: 22pt;
}
h4 {
	font-size: 11pt;
	line-height: 22pt;
}
h5 {
	font-size: 10pt;
	line-height: 20pt;
}
h6 {
	text-align: center;
	font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
	font-size: 9pt;
	line-height: 12pt;
	letter-spacing: 0.5pt;
}
}

/* -------------------------------------
*     Responsive
* ------------------------------------- */

@media screen and (max-width: 1000px) {
	.pc_mode {
    display: none; } 
}
@media screen and (min-width: 1001px) {
	.sp_mode {
    display: none !important; }
}
.pc_mode, .sp_mode {
	width: 100%;
	height: auto;
	margin: 0 auto;
}