@charset "utf-8";
@import url('tag.css');


/* structure
################################################*/
body {
	background: #fff;
}

/* global navi */
#gnav_sp {
	position: absolute;
	right: 0; top: 0;
	width: 98%;
	z-index: 5;
}
	#gnav_sp ul { display: none; width: 100%; overflow: hidden; }
		#gnav_sp ul li { width: 100%; overflow: hidden; }
		#gnav_sp ul li a {
			display: block;
			padding: 13px 10px;
			background: #fff;
			border-bottom: 1px solid #36C;
			color: #3b5997;
			overflow: hidden;
		}
		#gnav_sp ul li span.right { float: right; }

	/*開閉ボタン
	#menu_trigger {
		display: inline-block;
		padding: 8px 10px;
		color: #fff;
		background: #000;
		overflow: hidden;
	}*/

/* main visual area */
div#main {
	display: block;
	position: relative;
	width: 100%;
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-color: #fff;
	background-size: 100% auto;
	overflow: hidden;
}

	/* logo */
	div#main h1 a {
		display: block;
		position: absolute;
		right: 2px; bottom: 24px;
		width: 115px; height: 73px;
		background: url('/visual/img/sp/logo.png') no-repeat 0 0;
		background-size: 100% 100%;
		text-indent: -9999px;
		font-size: 0;
		overflow: hidden;
		z-index: 1;
	}

	/* pre_registration */
	.pre_regist {
		position: relative;
		display: block;
		width: 320px; height: 106px;
		margin-left: -5px;
		background: url('/visual/img/sp/bg_pre2.png') no-repeat 0 0;
		background-size: 100% 100%; 
		overflow: hidden;
	}
		.prem form { padding-bottom: 2px; }
		.prem input[type="text"] {
			display: block;
			width: 97%; height: 19px;
			padding: 3px;
			margin-left: auto; margin-right: auto;
			border: 1px solid #d9850c;
			background: url('/visual/img/sp/bg_input_mail.png') no-repeat top left #fff;
			background-size: 179px 50px;
			box-shadow: 1px 1px 5px #ddd inset;
			font-size: 161.6%;
		}
		.prem input[type="submit"] {
			display: block;
			width: 156px; height: 44px;
			margin-left: auto; margin-right: auto;
			border: none;
			background: url('/visual/img/sp/btn_prem2.png') no-repeat 0 0;
			background-size: 100% 100%;
			text-indent: -9999px;
			vertical-align: top;
			cursor: pointer;
			overflow: hidden;
		}

	/* badge */
	.badge_cs {
		-ms-filter: 'alpha( opacity=60 )';
		filter: alpha( opacity=60 );
		opacity: 0.6;
	}

/* container area */
div#container {
	display: block;
	/*width: 100%;*/
	margin: 0 auto;
	padding: 10px 5px 0 5px;
	background: url('/visual/img/common/bg.gif') repeat-y #fff;
	background-size: 100% 10px;
	overflow: hidden;	
}

/*banner_box*/
.box_banner p { margin-bottom: 10px; text-align: center; }
.box_banner img { width: 280px; height: 80px; }

/* footer area */
div#footer {
	overflow: hidden;
}
	/* ambition */
	div#ambition { text-align: center; color: #663300; background: #fff; }
	
		/*sns*/
		.sns {
		}
			/*iframe#twitter-widget-0 { display: inline-block; width: 80px!important; }*/
			.line_btn img { vertical-align: top; }
	


/* common
################################################*/
.reset_w { width: inherit!important; }
.width_m { width: 100%!important; }
.va_top { vertical-align: top; }
.lheight1 { line-height: 1; }

/*背景色*/
.bg1 { background: #fff; }
.bg2 { background: #000; }

/*文字色*/
.color1 { color: #f00; }

/*汎用ボックス*/
.box {
	display: block;
	position: relative;
	width: 100%;
	margin-left: auto; margin-right: auto;
	overflow: hidden;
}
.box_left {	display: block; float: left; overflow: hidden; }
.box_right { display: block; float: right; overflow: hidden; }
.box_half { display: block; width: 50%; overflow: hidden; }
.box_indent { display: block; padding-left: 10px; padding-right: 10px; overflow: hidden; }
.box_indent2 { display: block; padding-left: 5px; padding-right: 5px; overflow: hidden; }
.box_pd1 { display: block; padding: 5px; overflow: hidden; }
.box_pd2 { display: block; padding: 10px; overflow: hidden; }

/*見出し*/
#main h2, #main h3 {  color: #fff; overflow: hidden; }
/*#container h2, #container h3 {
	height: 20px;
	background: url('/visual/img/sp/bg_ttl.png') no-repeat 0 0;
	background-size: 100% 20px;
	color: #fff;
	overflow: hidden;
}*/
.catch1 { height: 20px; line-height: 20px; color: #fff; overflow: hidden; }

/*枠*/
.bdr1 { border: 1px solid #000; }

/*回り込みレイアウト*/
ul.col_list {
	display: block;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	zoom: 1;
}
	ul.col_list li {
		display: block;
		float: left;
		overflow: hidden;
	}

/*トグルクラス*/
.tg_minus {
	background-image: url(../img/sp/ico_minus.png)!important;
	background-size: 20px 20px;
	background-repeat: no-repeat!important;
	background-position: 99% 50%!important;
}
.tg_plus {
	background-image: url(../img/sp/ico_plus.png);
	background-size: 20px 20px;
	background-repeat: no-repeat;
	background-position: 99% 50%;
}

/* popup */
.popup {
	position: fixed;
	top: 0; left: 0;
	opacity: 0;
	width: 100%; height: 100%;
	background: url(../img/common/bg_al1.png);
	overflow: hidden;
	z-index: 10;
}
.def_popup {
	width: 100%;
	text-align: center;
	overflow: hidden;
}
	.popup_cont {
		width: 80%;
		padding: 20px 5%;
		margin-left: auto; margin-right: auto;
		background: url('/visual/img/common/bg_popup.png') repeat-y 50% 0;
		background-size: 100% 1px;
		text-align: left;
		overflow: hidden;
	}
.btn_close { position: absolute; top: 0; right: 0; }

/*ページトップ*/
.btn_top {
	display: inline-block;
	color: #fff;
	overflow: hidden;
}

/* pager */
.pager a { color: #3b5997; }


/* other
################################################*/
/*news*/
.news {
	display: block;
	width: 308px; height: 93px;
	margin-left: auto; margin-right: auto;
	background: url('/visual/img/sp/bg_news.png') no-repeat 0 0;
	background-size: 100%;
	/*background-color: #ccff33;
	box-shadow: rgba(0, 0, 0, 0.4) 0 0 80px 13px inset;*/
	color: #fff;
	overflow: hidden;
	xoom: 1;
}
	.news .news_inner a { color: #fff; }
	.news ol li {
		height: 1em;
		padding: 1px;
		border-bottom: 1px solid #fff;
		overflow: hidden;
	}
	.news ol li .date { margin-right: 1em; }
	.news ol li .text { white-space: nowrap; overflow: hidden; }

/*pv*/
.pv {
}

/*news_list*/
.news_list {
}
	.news_list a { color: #000; }
	.news_list ol li {
		height: 1em;
		padding: 5px;
		overflow: hidden;
	}
		.news_list ol li .date { margin-right: 1em; }
		.news_list ol li .text { white-space: nowrap; overflow: hidden; }

/*news_detail*/
#news_detail {
}
	#news_detail .news_header { position: relative; padding-left: 20px; }
		#news_detail .news_header .line {
			display: block;
			position: absolute;
			top: 0; left: 0;
			width: 10px; height: 100%;
			border: 0px solid #66ffff;
			border-radius: 12px;
			background: #66ffff;
			overflow: hidden;
		}
		#news_detail .news_header .date {  } 
		#news_detail .news_header .title { font-size: 116%; } 

/*faq*/
.faq { display: block; width: 100%; overflow: hidden; }
	.faq li { margin-bottom: 5px; }
	.faq li .faq_q {
		display: block;
		padding: 5px 8px;
		background-color: #ccc;
		cursor: pointer;
		overflow: hidden;
	}
		.faq_a {
			display: none;
			background: #fff;
			border: 1px solid #000;
			overflow: hidden;
		}

/*inquiry*/
#inquiry table {
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #333;
	border-style: solid solid none solid;
}
	#inquiry table tr td, #inquiry table tr th {
		padding: 10px;
		border: 1px solid #333;
		border-style: none none solid none;
	}
		#inquiry table tr td select, #inquiry table tr td input, #inquiry table tr td textarea {
			width: 98%;
			padding: 3px; 
			border: 1px solid #333;
			font-size: 16px;
		}
#inquiry .btn_submit {
	width: 100px; height: 25px;
	background: url('/visual/img/sp/btn_send2.jpg') no-repeat 50% 0;
	background-size: 100% 100%;
	border: none;
	text-indent: -9999px;
	overflow: hidden;
}

/*sitemap*/
.sitemap dl { margin-bottom: 10px; }
	.sitemap dt {
		padding-left: 20px;
		margin-bottom: 5px;
		background: url(../img/sp/ico_arrow1.png) no-repeat 0 50%;
		background-size: 20px 20px;
	}
		.sitemap dd { padding-left: 40px; }

/*voice*/
.voice {
	background: url('/visual/img/sp/img06.png') repeat-y 50% 0;
	background-size: 100% 10px;
}
	.voice p {
		line-height: 120%;
	}

/*howto*/
.howto {
	padding: 0 6%;
	background: url('/visual/img/sp/img02.png') repeat-y 50% 0;
	background-size: 100% 1px;
}
	.howto div:nth-child(2n+1) {
		position: relative;
		min-height: 133px;
		padding-right: 100px;
	}
		.howto div:nth-child(2n+1) img.ss { position: absolute; top: 0; right: 0; }
	.howto div:nth-child(2n) {
		position: relative;
		min-height: 131px;
		padding-left: 105px;
	}
		.howto div:nth-child(2n) img.ss { position: absolute; top: 0; left: 0; }

/*new type*/
.btn_play {
	position: relative;
	display: inline-block;
	width: 24%;
	padding: 8px 1% 8px 5%;
	margin-right: 1%;
	border-radius: 4px;
	color: #fff;
	text-decoration: none;
}
.btn_play:hover { text-decoration: none; }
.btn_play.btn01 {
	border: 1px solid #2f7b3e;
	box-shadow: 0 0 1px #87bfb1 inset;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#50fec3), color-stop(100%,#08888c)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #50fec3 0%,#08888c 100%); /* Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #50fec3 0%,#08888c 100%); /* W3C */
}
.btn_play.btn02 {
	border: 1px solid #0e7eac;
	box-shadow: 0 0 1px #62a1c5 inset;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#00ddfe), color-stop(100%,#004b9c)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #00ddfe 0%,#004b9c 100%); /* Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #00ddfe 0%,#004b9c 100%); /* W3C */
}
.btn_play.btn03 {
	border: 1px solid #b431b3;
	box-shadow: 0 0 1px #ef8fa2 inset;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ff7c92), color-stop(100%,#c9336e)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #ff7c92 0%,#c9336e 100%); /* Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #ff7c92 0%,#c9336e 100%); /* W3C */
}
	.btn_play::after {
		content: '';
		position: absolute;
		left: 7%; top: 36%;
		width: 12px; height: 12px;
		background: url('/visual/img/sp/ico_play.png') no-repeat 0 0;
		background-size: 100%;
	}

/* caution */
.pre_caution {
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
}

/*ss*/
.viewport {
    width: 320px;
    overflow: hidden;
    margin: 0 auto;
    -webkit-transform: translateZ(0); /* Optional: When heavy at iOS6+ */
}
.flipsnap {
    width: 960px; /* 320px(item width) * 3(item count) */
	-webkit-touch-callout:none;  
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);  
}
.flipsnap:after {
    content: '';
    display: block;
    clear: both;
    height: 0;
}
.item {
    float: left;
    width: 320px;
	padding: 10px 0;
    font-size: 50px;
    text-align: center;
    color: #666;
}
.btn_prev { position: absolute; top: 50px; left: 0; opacity: 0.8; }
.btn_next { position: absolute; top: 50px; right: 0; opacity: 0.8; }

/*banenr_slider*/
.slider_wrapper {
	position: relative;
	width: 310px;
	margin: 0 auto;
	overflow: hidden;
}
.slider {
  position: relative;
  width: 310px;
  height: 92px;
  margin: 0 auto;
  overflow: hidden;
}

.slides {
  height: 100%;
  /* Clear fix */
  overflow: hidden;
  *zoom: 1;
  /**
   * Prevent blinking issue
   * Not tested. Experimental.
   */
  -webkit-backface-visibility: hidden;
  -webkit-transform-style: preserve-3d;
}

.slide {
  height: 100%;
  float: left;
  clear: none;
  text-align: center;
}

.slider-arrow {
  position: absolute;
  display: block;
  margin-bottom: -20px;
  padding: 20px;
}

.slider-arrow--right {
  bottom: 50%;
  right: 0;
}

.slider-arrow--left {
  bottom: 50%;
  left: 0;
}

.slider-nav {
  position: absolute;
  bottom: 0;
}

.slider-nav__item {
  width: 12px;
  height: 12px;
  float: left;
  clear: none;
  display: block;
  margin: 0 5px;
  background: #ccc;
}

.slider-nav__item:hover {
  background: #9FF;
}

.slider-nav__item--current {
  background: #9FF;
}


/*test用*/
#aaa{
	width: 50%; height: 200px;
	background: #fff;
	overflow: hidden;
}
