@charset "utf-8";
/* 
 style info : 基本共通スタイル

2019/02/26


 */
 
/*----------------------------------------------------
	base	
----------------------------------------------------*/
* {
}
html{
	font-size: 62.5%;　/* 16px x 0.625 = 10px(=1rem) */ 
}
html,
body {
 overflow-x: hidden;
 
}

body{  
font-size:16px; 
font-size: 1.6rem;/* 16px */ 
font-family: Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; 
line-height:1.6; 
	letter-spacing: 0.05em;
-webkit-text-size-adjust: 100%;/*iphone 調整用*/ 
-webkit-font-smoothing: antialiased;/*ちらつき防止用*/ 
	color:#000;
	text-align:center;
	padding-top:50px;
	background:#fff;
} 

/*IE11用ハック*/
_:lang(x)::-ms-backdrop, body{
	font-family: Meiryo, Verdana, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif; 
} 


@media screen and (max-width: 768px) {
body{
	/*font-size:14px;
	font-size: 1.4rem;*/ 
	padding-top:0;
}
}
select,input,button,textarea,button{
	font:99% arial,helvetica,clean,sans-serif;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

/* link*/
a {
	color:#0071bc;
	text-decoration: none;
}

a:link {
}

a:visited {
}

a:hover{
}


a img:hover,.mover:hover{
	-webkit-transition: 0.6s ;
	transition: 0.6s ;
	opacity:0.5;
	filter: alpha(opacity=50);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=50)";  /* ie 8 */
	-moz-opacity:0.5;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.5;              /* Safari 1.x */
}

@media screen and (max-width: 768px) {
img{
	max-width:100%;
	height:auto;
}
}

/*----------------------------------------------------
	layout
----------------------------------------------------*/

#contents{
}
.inner,footer{
	width:980px;
	margin:auto;
}


@media screen and (max-width: 768px) {

#contents,footer,.inner{
	width:100%;
}
.inner{
	padding:0 10px;
	box-sizing: border-box;
}
}



/*----------------------------------------------------
	wrap
----------------------------------------------------*/
#wrap{
}


/*----------------------------------------------------
	header
----------------------------------------------------*/
header{
	height:50px;	
}
#top-head {
    position: fixed;
    width: 100%;
	top:0;
	left:0;
	z-index:10;
	}
@media screen and (min-width: 769px) {
#h-nav .sub-wrap{
	display:block!important;
}
}
.sub-menu{
	position:absolute;
	right:0;
	top:12px;
}

.sub-menu li {
	display:inline-block;
}

.sub-menu li a{
	padding:0 15px 0 0;
	color: #333;
	font-size: 1.4rem;
}


@media screen and (min-width: 769px) {
/*スクロールしたらfixedクラス追加*/
#top-head.fixed {
	background: rgba(254,254,254,0.75);

}
 
}


@media screen and (max-width: 768px) {
	header{
	height:auto;	
}
	
	/*	#h-nav　ハンバーガーメニュー*/
#h-nav{
	position:fixed;
	top:10px;
	right:5px;
	z-index:2;
}
#h-nav .sub-wrap{
	display:none;
	position:fixed;
	top:0;
	right:0;
	background-color: rgba(0,0,0,0.7);
	width:100%;
	height:100%;
}

#h-nav ul.sub-menu{
	position:fixed;
	top:50px;
	left:0;
	width:100%;
}

#h-nav ul.sub-menu li{
	display:block;
}
#h-nav ul.sub-menu li a{
	display:block;
	width:100%;
	height:50px;
	line-height:50px;
	color:#fff;
	text-decoration:none;
	text-align:left;
	padding:0 10px;
	box-sizing:border-box;
}
#h-nav ul.sub-menu li:hover{
	background-color: rgba(255,255,255,0.3);
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
	z-index:3;
}
.menu-trigger {
	position: relative;
	width: 40px;
	height:24px;
	cursor:pointer;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #333;
	border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0;
}
.menu-trigger span:nth-of-type(2) {
	top: 10px;
}
.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(11px) rotate(-45deg);
	transform: translateY(11px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-11px) rotate(45deg);
	transform: translateY(-11px) rotate(45deg);
}


/*スクロールしたらfixedクラス追加*/
#top-head.fixed {
  

}
 #top-head.fixed .js-image-switch{
	 display:block;
 }
  #top-head.fixed h1 a{
	 background:none;
	 width:300px;
	 height:auto;
	 display:initial;
	 margin-top:0;
 }

#top-head.fixed ul li a {
	font-size:1.6rem;
}

 
}


/*----------------------------------------------------
	footer
----------------------------------------------------*/
footer{
	width: 100%;
	padding:20px 10px;
	box-sizing: border-box;
}

p.copyright{
	font-size:1.4rem;
}
/*TOPへ戻るボタン*/
.totop{
	position:fixed;
	right:30px;
	bottom:50px;
}
.totop a{
	display:block;
	background:rgba(200,200,200,0.7);
	width:70px;
	height:70px;
	line-height:70px;
	border-radius:35px;
	text-align:center;
	color:#333;
}

.totop i{
	font-size:3.0rem;
}
@media screen and (max-width: 768px) {

p.copyright{
	font-size:1.2rem;
}

.totop{
	right:20px;
	bottom:55px;
}
.totop a{
	width:50px;
	height:50px;
	line-height:50px;
	border-radius:25px
}
.totop i{
	font-size:2.0rem;
}

}



/*----------------------------------------------------
	パーツ
----------------------------------------------------*/



/*ボタン
-----------------------------------------*/	
.btn{
	margin: 40px 0;
}
.btn.btn-regist{
	margin: 40px 0 0;
}
.btn a{
	box-sizing:border-box;
	position:relative;
	display:block;
	background:#333;
	color:#fff;
	width: 600px;
	margin:auto;
	padding:20px 0;
	text-align:center;
	font-size:1.8rem;
}
.btn a:after{
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: -12px;
    content: "\f105";
	color:#fff;
    font-family: FontAwesome;
	}
	
.btn.btn-back a{
	background:#D7CFCC;
	color: #000;
}

.btn.btn-regist a{
	background:#DF4043;
	color: #fff;
}
.attentionbtn a{
	box-sizing:border-box;
	position:relative;
	display:block;
	background:#333;
	color:#fff;
	width:450px;
	padding:8px 0;
	margin:20px 0 10px;
	text-align:center;
}
.attentionbtn  a:after{
	position: absolute;
	top: 50%;
	right: 30px;
	margin-top: -12px;
    content: "\f105";
	color:#fff;
    font-family: FontAwesome;
}
@media screen and (min-width: 768px) {
	.btn a br,.attentionbtn a br{
		display: none;
	}
}
input.btn,input.btn-back{
	cursor:pointer;
}

/*inputボタン装飾*/
input.btn{
	font-family: FontAwesome;
	background:#D27800;
	color: #fff;
	border:0;
	width:600px;
	/*height:50px;*/
	margin:auto;
	padding:20px 0;
	text-align:center;
	font-size:1.8rem;
}
input.btn.btn-back{
	background:#D7CFCC;
	color: #000;
}
input.btn.btn-regist{
	background:#DF4043;
	color: #fff;
}

.btnwrap{
	text-align:center;
}
@media screen and (max-width: 768px) {
	.btn.btn-regist{
	margin: 30px 0 0;
}
	.btn a,input.btn{
		width:90%;
	}
	.attentionbtn a{
		width:100%;
	}
    .btn a:after,.attentionbtn a:after{
	right: 20px;
	}

}
@media screen and (max-width: 320px) {
	.btn a,input.btn{
        font-size: 1.4rem;
	}

}
/*注釈リスト(２行目以降インデント有り
-----------------------------------------*/	
.notice{
	margin-left:1em;
}
.notice li{
	text-indent: -1em;
}
.notice li:before {
  content: "■";
}

.notice2{
	margin-left:1em;
}
.notice2 li{
	text-indent: -1em;
/*	font-size:85.7%  ;*/
}
.notice2 li:before {
  content: "※";
}


/*----------------------------------------------------
	汎用
----------------------------------------------------*/


/* clerfix */

.clear {
  clear: both;
}
.cf:after{
	content: "";
	display: block;
	clear: both;
}
.cf:before {
  display: inline-table;
}
.cf {
	zoom:1;
}

/* float */

.floatL {
	float: left;
}
.floatR {
	float: right;
}

/*位置*/
.imgC {
	margin:0 auto 20px;
}

.alL{
	text-align: left;
}

.alC{
	text-align: center;
}
.alR{
	text-align: right;
}
/*fontsize*/

.s-font{
	font-size:1.4rem ;
}
.l-font{
	font-size:1.8rem;
}
/*fontcolor*/

.redtxt{
	color:#E51A21;
}
.greentxt{
	color:#25aa33;
}


/*左右パディングbox*/

.box{
	padding-left:20px;
	padding-right:20px;
	box-sizing:border-box;
}
.box_s{
	padding-left:40px;
	padding-right:40px;
	box-sizing:border-box;
}
.box_ss{
	padding-left:60px;
	padding-right:60px;
	box-sizing:border-box;
}
/*PC、SP表示非表示*/
@media screen and (min-width: 768px) {
	.sp{
		display: none;
	}
}
@media screen and (max-width: 768px) {
	.pc{
		display: none;
	}
}