@charset 'utf-8';
@import url('https://fonts.googleapis.com/css?family=Montserrat:600i');
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 100;
	src: url('./font/NotoSansCJKjp-Thin.eot'); /* IE9 Compat Modes */
	src: url('./font/NotoSansCJKjp-Thin.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
	url('./font/NotoSansCJKjp-Thin.woff') format('woff'), /* Modern Browsers */
	url('./font/NotoSansCJKjp-Thin.ttf')  format('truetype'); /* Safari, Android, iOS */
}

@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 200;
	src: url('./font/NotoSansCJKjp-Light.eot');
	src: url('./font/NotoSansCJKjp-Light.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-Light.woff') format('woff'),
	url('./font/NotoSansCJKjp-Light.ttf')  format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 300;
	src: url('./font/NotoSansCJKjp-DemiLight.eot');
	src: url('./font/NotoSansCJKjp-DemiLight.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-DemiLight.woff') format('woff'),
	url('./font/NotoSansCJKjp-DemiLight.ttf')  format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 400;
	src: url('./font/NotoSansCJKjp-Regular.eot');
	src: url('./font/NotoSansCJKjp-Regular.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-Regular.woff') format('woff'),
	url('./font/NotoSansCJKjp-Regular.ttf')  format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 500;
	src: url('./font/NotoSansCJKjp-Medium.eot');
	src: url('./font/NotoSansCJKjp-Medium.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-Medium.woff') format('woff'),
	url('./font/NotoSansCJKjp-Medium.ttf')  format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 700;
	src: url('./font/NotoSansCJKjp-Bold.eot');
	src: url('./font/NotoSansCJKjp-Bold.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-Bold.woff') format('woff'),
	url('./font/NotoSansCJKjp-Bold.ttf')  format('truetype');
}
@font-face {
	font-family: 'Noto Sans Japanese';
	font-style: normal;
	font-weight: 900;
	src: url('./font/NotoSansCJKjp-Black.eot');
	src: url('./font/NotoSansCJKjp-Black.eot?#iefix') format('embedded-opentype'),
	url('./font/NotoSansCJKjp-Black.woff') format('woff'),
	url('./font/NotoSansCJKjp-Black.ttf')  format('truetype');
}

/*
====================================================================
Reset
====================================================================
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
body {
	line-height:1;
	-webkit-text-size-adjust: 100%;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {	 display:block;}
nav ul {	list-style:none;}
blockquote, q {	quotes:none;}
blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}
a {
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}
mark {
	background-color:#ff9;
	color:#000; 
	font-style:italic;
	font-weight:bold;
}
del {	text-decoration: line-through;}
abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}
table {
	border-collapse:collapse;
	border-spacing:0;
}
hr {
	display:block;
	height:1px;
	border:0;   
	border-top:1px solid #cccccc;
	margin:1em 0;
	padding:0;
}
input, select {	vertical-align:middle;}
main {display: block;}

/*
====================================================================
Set Default Style
====================================================================
*/
h1,h2,h3,h4,h5,h6,strong {font-weight:normal;}
em{font-style: oblique;}
img {vertical-align:top;width:100%;height:auto;}
a img {border:none;}
ul li {list-style:none;}
/*
--------------------------------------------------------------------
Font Setting
--------------------------------------------------------------------
*/
body {
	color: #000000;
	font-family: "Noto Sans Japanese","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Osaka,"MS Pゴシック","MS PGothic",sans-serif;
	font-size:87.5%;
	line-height: 1.4;
	font-weight: 400;
}
table {
	font-size:inherit;
	font:100%;
}
pre,code,kbd,samp,tt {
	font-family:monospace;
	*font-size:108%;
	line-height:1;
}
a {
	color: #333333;
	text-decoration: none;
}
a:hover {
	color: #333333;
	text-decoration: underline;
	opacity:0.7;
}
a img{border:none;}
a.current{
	color:#5a5a5a;
	text-decoration:none;
}
button,area,input,a:active,a:focus{ outline:none; }
/*
--------------------------------------------------------------------
Structure
--------------------------------------------------------------------
*/
html {
	background-color:#ffffff;
	height:100%;
	overflow-y:scroll;
}
body {height:100%;}
img {width:100%;}

.page_width {
	width:1240px;
	margin:0 auto;
}

@media screen and (max-width: 1240px) {
	.page_width {
		width:auto;
		margin:0 1.61%;
	}
}
@media screen and (max-width: 1023px) {
	.page_width {
		width:auto;
		margin:0 3.13%;
	}
}
@media screen and (max-width: 767px) {
	.page_width {
		margin:0 4%;
	}
}
/*
header
--------------------------------------------------------------------
*/
header {
	background: #ffffff;
}
header .page_width {
	padding:14px 0;
}
header .logo {
	width:168px;
	margin:0 auto;
}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	header .page_width {
		padding:2.53% 0;
	}
	header .logo {
		width:120px;
	}
}
/*
main
--------------------------------------------------------------------
*/

/*----- .kv -----*/
main .kv {
	height:685px;
	position:relative;
	overflow: hidden;
}
main .kv .bg_slider .slides li img {
	-moz-transition: -moz-transform 9s linear;
	-webkit-transition: -webkit-transform 9s linear;
	-o-transition: -o-transform 9s linear;
	-ms-transition: -ms-transform 9s linear;
	transition: transform 9s linear;
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	-o-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
}
main .kv .bg_slider .slides li.flex-active-slide img {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}
main .kv .page_width {
	position:absolute;
	top:0;
	left:50%;
	margin-left:-640px;
	z-index:3;
	height:685px;
}
main .kv .page_width h1 {
	position:absolute;
	top:62px;
	left:327px;
	width:537px;
}
main .kv .bottom {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:16px;
	background:url(../img/kv_bottom.png) repeat-x center top;
	z-index:3;
}

.social-icons {
	position: absolute;
	right: 120px;
	top: 10px;
	z-index: 9999;
}
.social-icons > .line,
.social-icons > .facebook,
.social-icons > .twitter,
.social-icons > .hatena,
.social-icons > .google-plus,
.social-icons > .pinterest {
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 0;
	float: left;
	height: 37px;
	margin-right: 10px;
	width: 37px;
	cursor: pointer;
}
.social-icons > .line {
	background-image: url(../img/icon_line.png);
}
.social-icons > .facebook {
	background-image: url(../img/icon_facebook.png);
}
.social-icons > .twitter {
	background-image: url(../img/icon_twitter.png);
}
.social-icons > .google-plus {
	background-image: url(../img/icon_google.png);
}
.social-icons > .hatena {
	background-image: url(../img/icon_hatena.png);
}
.social-icons > .pinterest {
	background-image: url(../img/icon_pinterest.png);
}
.social-icons > .line {
	display: none;
}

@media screen and (max-width: 1240px) {
	main .kv {
		height:auto;
	}
}
@media screen and (max-width: 1023px) {
	main .kv .page_width {
		position:absolute;
		top:0;
		left:0;
		margin:0 3.13%;
		width:93.74%;
		height:100%;
	}
	main .kv .bg_slider {
		width:auto;
		height:auto;
	}
	main .kv .page_width h1 {
		position:absolute;
		top:9.05%;
		left:25.55%;
		width:41.95%;
	}
}
@media screen and (max-width: 767px) {
	main .kv .bg_slider {
		width:100%;
	}
	main .kv .page_width h1 {
		position:absolute;
		top:10.59%;
		left:0.40%;
		width:74.8%;
	}
	main .kv .bottom {
		position:absolute;
		bottom:0;
		left:0;
		right:0;
		height:0;
		padding-top:1.88%;
		background:url(../img/kv_bottom.png) repeat-x center top;
		background-size:auto 100%;
	}
	.social-icons {
		position: absolute;
		right: 0;
		left:0;
		top: 10px;
		z-index: 9999;
		text-align: center;
	}
	.social-icons > .line,
	.social-icons > .facebook,
	.social-icons > .twitter,
	.social-icons > .hatena,
	.social-icons > .google-plus,
	.social-icons > .pinterest {
		float: none;
		display: inline-block;
	}
	.social-icons > .line {
		display: none;
	}
}

/*----- .about -----*/
main .about {
	background: #64d9da;
	position: relative;
	padding-bottom:23.44%;
	z-index:4;
}
main .about .page_width {
	position: relative;
	padding:76px 0 70px 0;
}
main .about h2 {
	width:398px;
	margin:0 0 20px 207px;
}
main .about .info01 {
	width:480px;
	margin:0 0 33px 171px;
	position: relative;
	padding-top:3.13%;
}
main .about .info01 h3 {
	position:absolute;
	left:100px;
	top:0;
	width:424px;
}
main .about .info01 .box {
	border:3px solid #b2eced;
	border-radius: 10px;
	padding:36px;
	font-weight: bold;
	font-size: 16px;
}
main .about .info02 {
	width:480px;
	margin:0 0 52px 171px;
	position: relative;
	padding-top:3.13%;
}
main .about .info02 h3 {
	position:absolute;
	left:-114px;
	top:0;
	width:472px;
}
main .about .info02 .box {
	border:3px solid #b2eced;
	border-radius: 10px;
	padding:50px 36px 36px;
	font-weight: bold;
	font-size: 16px;
}
main .about .img {
	position: absolute;
	top:-145px;
	width:550px;
	left:686px;
}
main .about .btn a {
	display: block;
	width:381px;
	margin:0 auto;
}
main .about .btn a:hover {
	opacity: 0.7;
}
main .about .bottom {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:0;
	padding-top:23.44%;
	background:url(../img/about_bottom_pc.jpg) no-repeat center top;
	background-size:100% auto;
}
@media screen and (max-width: 1240px) {
	main .about .img {
		position: absolute;
		top:-5%;
		width:40%;
		left:60%;
	}
}

@media screen and (max-width: 1023px) {
	main .posts h2 {
		position:relative;
		width:100%;
		margin:0 auto 10px;
	}
	main .about .img {
		position: absolute;
		top:-5%;
		width:42.97%;
		left:53.59%;
	}
	main .about h2 {
		width:398px;
		margin:0 0 20px 80px;
	}
	main .about .info01 {
		width:480px;
		margin:0 0 33px 80px;
		position: relative;
		padding-top:3.13%;
	}
	main .about .info01 h3 {
		position:absolute;
		left:100px;
		top:0;
		width:424px;
	}
	main .about .info02 {
		width:480px;
		margin:0 0 52px 80px;
		position: relative;
		padding-top:3.13%;
	}
}
@media screen and (max-width: 767px) {
	main .about {
		padding-bottom:93.6%;
	}
	main .about .page_width {
		position: relative;
		padding:40px 0 30px 0;
	}
	main .about h2 {
		width:76.38%;
		margin:0 auto 10px;
	}
	main .about .info01 {
		width:100%;
		margin:0 0 25px;
		position: relative;
		padding-top:6.13%;
	}
	main .about .info01 h3 {
		position:absolute;
		left:18.84%;
		top:0;
		width:85.51%;
	}
	main .about .info01 .box {
		border:3px solid #b2eced;
		border-radius: 10px;
		padding:7.35%;
		font-weight: bold;
		font-size: 14px;
	}
	main .about .info02 {
		width:100%;
		margin:0 0 25px;
		position: relative;
		padding-top:6.13%;
	}
	main .about .info02 h3 {
		position:absolute;
		left:-4%;
		top:0;
		width:108%;
	}
	main .about .info02 .box {
		border:3px solid #b2eced;
		border-radius: 10px;
		padding:14% 7.35% 7.35%;
		font-weight: bold;
		font-size: 14px;
	}
	main .about .img {
		position: relative;
		top:0;
		width:108%;
		left:-4%;
		margin-bottom:16px;
	}
	main .about .btn a {
		display: block;
		width:100%;
		margin:0 auto;
	}
	main .about .btn a:hover {
		opacity: 1;
	}
	main .about .bottom {
		position:absolute;
		bottom:0;
		left:0;
		right:0;
		height:0;
		padding-top:93.6%;
		background:url(../img/about_bottom_sp.jpg) no-repeat center top;
		background-size:100% auto;
	}
}

/*----- .plan -----*/
main .plan {
	background:#ffffff;
	position: relative;
	padding-bottom:80px;
	z-index:5;
}
main .plan h2 {
	background:url(../img/bg_plan_h2_pc.gif) no-repeat center top;
	background-size:100% auto;
	width:100%;
	height:230px;
	position: relative;
}
main .plan h2 img {
	width: 967px;
	position: absolute;
	left:50%;
	top:-31px;
	margin-left:-483px;
}
main .plan .tabs {
	width:100%;
	overflow: hidden;
}
main .plan .tabs.ac1 {
	border-bottom:10px solid #ff8859;
}
main .plan .tabs.ac2 {
	border-bottom:10px solid #628eff;
}
main .plan .tabs .tab1 {
	width:50%;
	float:left;
	cursor: pointer;
}
main .plan .tabs .tab1 span {
	border-top:10px solid #ffffff;
	border-bottom:3px solid #ffffff;
	background:#ff8859;
	display: block;
	overflow: hidden;
	margin-right:2px;
}
main .plan .tabs.ac1 .tab1 span {
	border-top:10px solid #ff8859;
	border-bottom:3px solid #ff8859;
}
main .plan .tabs .tab1 span img {
	width:261px;
	float:right;
	margin:27px 116px 22px 0;
}
main .plan .tabs .tab2 {
	width:50%;
	float:right;
	cursor: pointer;
}
main .plan .tabs .tab2 span {
	border-top:10px solid #ffffff;
	border-bottom:3px solid #ffffff;
	background:#628eff;
	margin-left:2px;
	display: block;
	overflow: hidden;
}
main .plan .tabs.ac2 .tab2 span {
	border-top:10px solid #628eff;
	border-bottom:3px solid #628eff;
}
main .plan .tabs .tab2 span img {
	width:285px;
	float:left;
	margin:24px 0 22px 98px;
}
main .plan .pages {
	clear:both;
}
main .plan .pages .page1 {
	background:url(../img/bg_page1_pc.gif) repeat center top;
	display: none;
	position: relative;
	padding-bottom:100px;
}
main .plan .pages .page1.active {
	display: block;
}
main .plan .pages .page1 .catch {
	background:url(../img/bg_page1_catch_pc.jpg) no-repeat center bottom 215px;
	background-size:100% auto;
	padding-top:45px;
	margin-bottom:60px;
	position: relative;
}
main .plan .pages .page1 .catch::before {
	content:"";
	background:url(../img/bg_page1_catch_pc2.png) no-repeat center top;
	position:absolute;
	bottom:100px;
	left:50%;
	margin-left:-605px;
	width:194px;
	height:187px;
	z-index:2;
	z-index:2;
}
main .plan .pages .page1 .catch::after {
	content:"";
	background:url(../img/bg_page1_catch_pc3.png) no-repeat center top;
	position:absolute;
	bottom:100px;
	left:50%;
	margin-left:415px;
	width:258px;
	height:141px;
	z-index:2;
}
main .plan .pages .page1 .catch .box {
	width:700px; 
	border:5px solid #f38155;
	border-radius: 10px;
	margin:0 auto;
	padding:70px 75px 30px;
	background:#fff5f1;
	position: relative;
	z-index: 3;
}
main .plan .pages .page1 .catch .box .foreword {
	overflow: hidden;
	margin-bottom:40px;
}
main .plan .pages .page1 .catch .box .foreword .icon {
	margin-left:33px;
	float:left;
}
main .plan .pages .page1 .catch .box .foreword .text {
	float:right;
	width:450px;
}
main .plan .pages .page1 .catch .box .foreword .text h3 {
	width:312px;
	margin-bottom:20px;
}
main .plan .pages .page1 .catch .box .foreword .text p {
	font-size:16px;
}
main .plan .pages .page1 .catch .box .img {
	overflow: hidden;
}
main .plan .pages .page1 .catch .box .img figure {
	width:340px;
	float:left;
	margin-bottom:26px;
}
main .plan .pages .page1 .catch .box .img figure:nth-of-type(2n) {
	margin-left:20px;
}
main .plan .pages .page1 .catch .box .img figure:nth-of-type(2n+1) {
	clear:both;
}
main .plan .pages .page1 .catch .box .img figure figcaption {
	font-size:15px;
	padding-top:12px;
}
main .plan .pages .plans > div {
	position:relative;
	width:960px;
	margin:0 auto 50px;
}
main .plan .pages .plans > div .bg {
	opacity:1;
	position:absolute;
	top:90px;
	width:0;
	height:452px;
}
main .plan .pages .plans > div .icon {
	opacity:0;
	position:relative;
	width:130px;
	margin-bottom:30px;
	top:20px;
}
main .plan .pages .plans > div .icon span {
	font-family: 'Montserrat', sans-serif;
	font-size:49px;
	position: absolute;
	bottom:3px;
	color:#ffffff;
	left:0;
	width:130px;
	text-align: center;
}
main .plan .pages .plans > div .img {
	opacity:1;
	position: absolute;
	top:40px;
	width:0;
	overflow: hidden;
}
main .plan .pages .plans > div .img img {
	width:600px;
	height:400px;
	position: relative;
	left:-50px;
}
main .plan .pages .plans > div .text {
	opacity:0;
	width:340px;
	background:#ffffff;
	border-radius: 6px;
	position:relative;
	padding:40px;
	overflow: hidden;
	top:40px;
}
main .plan .pages .plans > div .text .place {
	position: absolute;
	top:0;
	right:0;
	padding:9px 0;
	text-align: center;
	width:76px;
	font-size:13px;
}
main .plan .pages .plans > div .text .place.niimi {
	background:#e1ae7d;
	color:#a85c24;
}
main .plan .pages .plans > div .text .place.takahashi {
	background:#93a6c0;
	color:#3b6195;
}
main .plan .pages .plans > div .text .place.ibara {
	background:#8dad5b;
	color:#446216;
}
main .plan .pages .plans > div .text .place.yakage {
	background:#83a7a4;
	color:#2f6560;
}
main .plan .pages .plans > div .text .place.soja {
	background:#eaddb3;
	color:#a28537;
}
main .plan .pages .plans > div .text .place.sasaoka {
	background:#d8a091;
	color:#a85c24;
}
main .plan .pages .plans > div .text .place.satosho {
	background:#8cc1d1;
	color:#297288;
}
main .plan .pages .plans > div .text .place.asakuchi {
	background:#dbd292;
	color:#9b903f;
}
main .plan .pages .plans > div .text .place.kurashiki {
	background:#efb2cc;
	color:#dc4791;
}
main .plan .pages .plans > div .text .place.hayashima {
	background:#bad573;
	color:#788b1d;
}
main .plan .pages .plans > div .text p.title {
	font-size:23px;
	line-height:1.48;
	font-weight:bold;
	margin-bottom:18px;
}
main .plan .pages .plans > div .text .time {
	padding-left:84px;
	margin-bottom:12px;
	font-size:16px;
	position: relative;
}
main .plan .pages .plans > div .text .time span.title {
	color:#a2a2a2;
	position:absolute;
	top:0;
	left:0;
}
main .plan .pages .plans > div .text .age {
	padding-left:84px;
	margin-bottom:12px;
	font-size:16px;
	position: relative;
}
main .plan .pages .plans > div .text .age span.title {
	color:#a2a2a2;
	position:absolute;
	top:0;
	left:0;
}
main .plan .pages .plans > div .text .age span.note {
	font-size:13px;
	display: block;
}
main .plan .pages .plans > div .text .season {
	padding-left:84px;
	margin-bottom:12px;
	font-size:16px;
	position: relative;
}
main .plan .pages .plans > div .text .season span.title {
	color:#a2a2a2;
	position:absolute;
	top:0;
	left:0;
}
main .plan .pages .plans > div .text .price {
	padding:2px 0;
	border-top:2px solid #e6e6e6;
	border-bottom:2px solid #e6e6e6;
	padding-left:84px;
	margin-bottom:12px;
	font-size:16px;
	position: relative;
}
main .plan .pages .plans > div .text .price span.title {
	color:#a2a2a2;
	position:absolute;
	top:12px;
	left:0;
}
main .plan .pages .page1 .plans > div .text .price strong {
	font-size:30px;
	color:#ff7b48;
	font-weight: bold;
}
main .plan .pages .page2 .plans > div .text .price strong {
	font-size:30px;
	color:#5a83eb;
	font-weight: bold;
}
main .plan .pages .plans > div .text .price span.title span {
	font-size:12px;
}
main .plan .pages .plans > div .text .btn {
	width:250px;
	margin:0 auto;
}
main .plan .pages .plans .note {
	text-align: center;
	font-size:12px;
}
main .plan .pages .page1 .plans .plan01 .bg {
	right:-53px;
	background: url(../img/bg_page1_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page1 .plans .plan01 .icon {
	margin-left:710px;
}
main .plan .pages .page1 .plans .plan01 .img {
	left:0;
}
main .plan .pages .page1 .plans .plan01 .text {
	margin-left:540px;
}
main .plan .pages .page1 .plans .plan02 .bg {
	left:-50px;
	background: url(../img/bg_page1_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page1 .plans .plan02 .icon {
	margin-left:120px;
}
main .plan .pages .page1 .plans .plan02 .img {
	left:360px;
}
main .plan .pages .page1 .plans .plan02 .text {
	margin-left:0;
}
main .plan .pages .page1 .plans .plan03 .bg {
	right:-53px;
	background: url(../img/bg_page1_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page1 .plans .plan03 .icon {
	margin-left:710px;
}
main .plan .pages .page1 .plans .plan03 .img {
	left:0;
}
main .plan .pages .page1 .plans .plan03 .text {
	margin-left:540px;
}
main .plan .pages .page1 .plans .plan04 .bg {
	left:-50px;
	background: url(../img/bg_page1_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page1 .plans .plan04 .icon {
	margin-left:120px;
}
main .plan .pages .page1 .plans .plan04 .img {
	left:360px;
}
main .plan .pages .page1 .plans .plan04 .text {
	margin-left:0;
}
main .plan .pages .page1 .plans .plan05 .bg {
	right:-53px;
	background: url(../img/bg_page1_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page1 .plans .plan05 .icon {
	margin-left:710px;
}
main .plan .pages .page1 .plans .plan05 .img {
	left:0;
}
main .plan .pages .page1 .plans .plan05 .text {
	margin-left:540px;
}
main .plan .pages .page1 .plans .plan06 .bg {
	left:-50px;
	background: url(../img/bg_page1_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page1 .plans .plan06 .icon {
	margin-left:120px;
}
main .plan .pages .page1 .plans .plan06 .img {
	left:360px;
}
main .plan .pages .page1 .plans .plan06 .text {
	margin-left:0;
}
main .plan .pages .page1 .plans .plan07 .bg {
	right:-53px;
	background: url(../img/bg_page1_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page1 .plans .plan07 .icon {
	margin-left:710px;
}
main .plan .pages .page1 .plans .plan07 .img {
	left:0;
}
main .plan .pages .page1 .plans .plan07 .text {
	margin-left:540px;
}
main .plan .pages .page1 .plans .plan08 .bg {
	left:-50px;
	background: url(../img/bg_page1_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page1 .plans .plan08 .icon {
	margin-left:120px;
}
main .plan .pages .page1 .plans .plan08 .img {
	left:360px;
}
main .plan .pages .page1 .plans .plan08 .text {
	margin-left:0;
}
main .plan .pages .page1 .plans .more a {
	width:370px;
	margin:0 auto 8px;
	display: block;
}
main .plan .pages .page1 .bottom {
	position: absolute;
	bottom:0;
	left:0;
	right:0;
	height:16px;
	background: url(../img/plan_page1_bottom.png) repeat-x center bottom;
}
main .plan .pages .page2 {
	background:url(../img/bg_page2_pc.gif) repeat center top;
	display: none;
	position: relative;
	padding-bottom:100px;
}
main .plan .pages .page2.active {
	display: block;
}
main .plan .pages .page2 .catch {
	background:url(../img/bg_page2_catch_pc.jpg) no-repeat center bottom 215px;
	background-size:100% auto;
	padding-top:45px;
	margin-bottom:60px;
	position: relative;
}
main .plan .pages .page2 .catch::before {
	content:"";
	background:url(../img/bg_page2_catch_pc2.png) no-repeat center top;
	position:absolute;
	bottom:100px;
	left:50%;
	margin-left:-605px;
	width:161px;
	height:250px;
	z-index:2;
	z-index:2;
}
main .plan .pages .page2 .catch::after {
	content:"";
	background:url(../img/bg_page2_catch_pc3.png) no-repeat center top;
	position:absolute;
	bottom:100px;
	left:50%;
	margin-left:415px;
	width:207px;
	height:189px;
	z-index:2;
}
main .plan .pages .page2 .catch .box {
	width:700px; 
	border:5px solid #628eff;
	border-radius: 10px;
	margin:0 auto;
	padding:70px 75px 30px;
	background:#e7f5ff;
}
main .plan .pages .page2 .catch .box .foreword {
	overflow: hidden;
	margin-bottom:40px;
}
main .plan .pages .page2 .catch .box .foreword .icon {
	margin-left:33px;
	float:left;
}
main .plan .pages .page2 .catch .box .foreword .text {
	float:right;
	width:450px;
}
main .plan .pages .page2 .catch .box .foreword .text h3 {
	width:312px;
	margin-bottom:20px;
}
main .plan .pages .page2 .catch .box .foreword .text p {
	font-size:16px;
}
main .plan .pages .page2 .catch .box .img {
	overflow: hidden;
}
main .plan .pages .page2 .catch .box .img figure {
	width:340px;
	float:left;
	margin-bottom:26px;
}
main .plan .pages .page2 .catch .box .img figure:nth-of-type(2n) {
	margin-left:20px;
}
main .plan .pages .page2 .catch .box .img figure:nth-of-type(2n+1) {
	clear:both;
}
main .plan .pages .page2 .catch .box .img figure figcaption {
	font-size:15px;
	padding-top:12px;
}
main .plan .pages .page2 .plans .plan01 .bg {
	right:-53px;
	background: url(../img/bg_page2_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page2 .plans .plan01 .icon {
	margin-left:710px;
}
main .plan .pages .page2 .plans .plan01 .img {
	left:0;
}
main .plan .pages .page2 .plans .plan01 .text {
	margin-left:540px;
}
main .plan .pages .page2 .plans .plan02 .bg {
	left:-50px;
	background: url(../img/bg_page2_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page2 .plans .plan02 .icon {
	margin-left:120px;
}
main .plan .pages .page2 .plans .plan02 .img {
	left:360px;
}
main .plan .pages .page2 .plans .plan02 .text {
	margin-left:0;
}
main .plan .pages .page2 .plans .plan03 .bg {
	right:-53px;
	background: url(../img/bg_page2_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page2 .plans .plan03 .icon {
	margin-left:710px;
}
main .plan .pages .page2 .plans .plan03 .img {
	left:0;
}
main .plan .pages .page2 .plans .plan03 .text {
	margin-left:540px;
}
main .plan .pages .page2 .plans .plan04 .bg {
	left:-50px;
	background: url(../img/bg_page2_plans_even_pc.png) no-repeat left top;
}
main .plan .pages .page2 .plans .plan04 .icon {
	margin-left:120px;
}
main .plan .pages .page2 .plans .plan04 .img {
	left:360px;
}
main .plan .pages .page2 .plans .plan04 .text {
	margin-left:0;
}
main .plan .pages .page2 .plans .plan05 .bg {
	right:-53px;
	background: url(../img/bg_page2_plans_odd_pc.png) no-repeat right top;
}
main .plan .pages .page2 .plans .plan05 .icon {
	margin-left:710px;
}
main .plan .pages .page2 .plans .plan05 .img {
	left:0;
}
main .plan .pages .page2 .plans .plan05 .text {
	margin-left:540px;
}
main .plan .pages .page2 .plans .more a {
	width:370px;
	margin:0 auto 8px;
	display: block;
}
main .plan .pages .page2 .bottom {
	position: absolute;
	bottom:0;
	left:0;
	right:0;
	height:16px;
	background: url(../img/plan_page2_bottom.png) repeat-x center bottom;
}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	main .plan {
		background:#ffffff;
		position: relative;
		padding-bottom:0;
	}
	main .plan h2 {
		background:url(../img/bg_plan_h2_sp.gif) no-repeat center top;
		background-size:100% auto;
		width:100%;
		height:0;
		padding-top:32.93%;
		position: relative;
	}
	main .plan h2 img {
		width: 100%;
		position: absolute;
		left:0;
		top:-19px;
		margin-left:0;
	}
	main .plan .tabs {
		width:100%;
		overflow: hidden;
	}
	main .plan .tabs.ac1 {
		border-bottom:5px solid #ff8859;
	}
	main .plan .tabs.ac2 {
		border-bottom:5px solid #628eff;
	}
	main .plan .tabs .tab1 {
		width:50%;
		float:left;
		cursor: pointer;
	}
	main .plan .tabs .tab1 span {
		border-top:5px solid #ffffff;
		border-bottom:2px solid #ffffff;
		background:#ff8859;
		display: block;
		overflow: hidden;
		margin-right:2px;
		text-align: center;
	}
	main .plan .tabs.ac1 .tab1 span {
		border-top:5px solid #ff8859;
		border-bottom:2px solid #ff8859;
	}
	main .plan .tabs .tab1 span img {
		width:51.47%;
		float:none;
		margin:13px auto 11px;
	}
	main .plan .tabs .tab2 {
		width:50%;
		float:right;
		cursor: pointer;
	}
	main .plan .tabs .tab2 span {
		border-top:5px solid #ffffff;
		border-bottom:2px solid #ffffff;
		background:#628eff;
		margin-left:2px;
		display: block;
		overflow: hidden;
		text-align: center;
	}
	main .plan .tabs.ac2 .tab2 span {
		border-top:5px solid #628eff;
		border-bottom:2px solid #628eff;
	}
	main .plan .tabs .tab2 span img {
		width:51.47%;
		float:none;
		margin:13px auto 11px;
	}
	main .plan .pages {
		clear:both;
	}
	main .plan .pages .page1 {
		background:url(../img/bg_page1_pc.gif) repeat center top;
		display: none;
		position: relative;
		padding-bottom:100px;
		padding:0;
	}
	main .plan .pages .page1.active {
		display: block;
	}
	main .plan .pages .page1 .catch {
		background:url(../img/bg_page1_catch_sp.png) no-repeat center top;
		background-size:100% auto;
		padding:4% 4% 0;
		margin-bottom:20px;
	}
	main .plan .pages .page1 .catch::before {
		content:none;
	}
	main .plan .pages .page1 .catch::after {
		content:none;
	}
	main .plan .pages .page1 .catch .box {
		width:82%; 
		border:5px solid #f38155;
		border-radius: 10px;
		margin:0 auto;
		padding:4% 6% 2%;
		background:#fff5f1;
	}
	main .plan .pages .page1 .catch .box .foreword {
		overflow: hidden;
		margin-bottom:40px;
	}
	main .plan .pages .page1 .catch .box .foreword .icon {
		margin:0 auto 14px;
		float:none;
		width:28.7%;
	}
	main .plan .pages .page1 .catch .box .foreword .text {
		float:none;
		width:100%;
	}
	main .plan .pages .page1 .catch .box .foreword .text h3 {
		width:44.06%;
		margin:0 auto 15px;
	}
	main .plan .pages .page1 .catch .box .foreword .text p {
		font-size:14px;
	}
	main .plan .pages .page1 .catch .box .img {
		overflow: hidden;
	}
	main .plan .pages .page1 .catch .box .img figure {
		width:100%;
		float:none;
		margin-bottom:20px;
	}
	main .plan .pages .page1 .catch .box .img figure:nth-of-type(2n) {
		margin-left:0;
	}
	main .plan .pages .page1 .catch .box .img figure:nth-of-type(2n+1) {
		clear:both;
	}
	main .plan .pages .page1 .catch .box .img figure figcaption {
		font-size:14px;
		padding-top:6px;
	}
	main .plan .pages .plans > div {
		position:relative;
		width:100%;
		margin:0 auto 25px;
	}
	main .plan .pages .plans > div .bg {
		opacity:1;
		position:absolute;
		top:0;
		width:100%;
		height:0;
		padding-top:72.8%;
	}
	main .plan .pages .plans > div .icon {
		opacity:1;
		top:0;
		position:relative;
		width:80px;
		margin-bottom:0;
		padding-bottom:52.67%;
		z-index:1;
	}
	main .plan .pages .plans > div .icon span {
		font-family: 'Montserrat', sans-serif;
		font-size:30px;
		position: absolute;
		bottom:auto;
		top:34px;
		color:#ffffff;
		left:0;
		width:80px;
		text-align: center;
	}
	main .plan .pages .plans > div .img {
		opacity:1;
		top:0;
		position: absolute;
		padding-top:9.6%;
		width:92%;
		overflow: hidden;
	}
	main .plan .pages .plans > div .img img {
		width:100%;
		height:auto;
		position:static;
	}
	main .plan .pages .plans > div .text {
		opacity:1;
		top:0;
		width:84%;
		background:#ffffff;
		border-radius: 4px;
		position:relative;
		padding:45px 4% 20px;
		overflow: hidden;
	}
	main .plan .pages .plans > div .text .place {
		position: absolute;
		top:0;
		right:0;
		padding:5px 0;
		text-align: center;
		width:64px;
		font-size:11px;
	}
	main .plan .pages .plans > div .text .place.kurashiki {
		background:#efb2cc;
		color:#dc4791;
	}
	main .plan .pages .plans > div .text .place.niimi {
		background:#e1ae7d;
		color:#a85c24;
	}
	main .plan .pages .plans > div .text p.title {
		font-size:20px;
		line-height:1.48;
		font-weight:bold;
		margin-bottom:9px;
	}
	main .plan .pages .plans > div .text .time {
		padding-left:72px;
		margin-bottom:12px;
		font-size:14px;
		position: relative;
	}
	main .plan .pages .plans > div .text .time span.title {
		color:#a2a2a2;
		position:absolute;
		top:0;
		left:0;
	}
	main .plan .pages .plans > div .text .age {
		padding-left:72px;
		margin-bottom:12px;
		font-size:14px;
		position: relative;
	}
	main .plan .pages .plans > div .text .age span.title {
		color:#a2a2a2;
		position:absolute;
		top:0;
		left:0;
	}
	main .plan .pages .plans > div .text .age span.note {
		font-size:13px;
		display: block;
	}
	main .plan .pages .plans > div .text .season {
		padding-left:72px;
		margin-bottom:12px;
		font-size:14px;
		position: relative;
	}
	main .plan .pages .plans > div .text .season span.title {
		color:#a2a2a2;
		position:absolute;
		top:0;
		left:0;
	}
	main .plan .pages .plans > div .text .price {
		padding:2px 0;
		border-top:2px solid #e6e6e6;
		border-bottom:2px solid #e6e6e6;
		padding-left:72px;
		margin-bottom:12px;
		font-size:14px;
		position: relative;
	}
	main .plan .pages .plans > div .text .price span.title {
		color:#a2a2a2;
		position:absolute;
		top:12px;
		left:0;
	}
	main .plan .pages .page1 .plans > div .text .price strong {
		font-size:25px;
		color:#ff7b48;
		font-weight: bold;
	}
	main .plan .pages .page2 .plans > div .text .price strong {
		font-size:30px;
		color:#5a83eb;
		font-weight: bold;
	}
	main .plan .pages .plans > div .text .price span.title span {
		font-size:12px;
	}
	main .plan .pages .plans > div .text .btn {
		width:80%;
		margin:0 auto;
	}
	main .plan .pages .plans .note {
		padding-bottom:10%;
		font-size:11px;
	}
	main .plan .pages .page1 .plans .plan01 .bg {
		left:0;
		background: url(../img/bg_page1_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page1 .plans .plan01 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page1 .plans .plan01 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan01 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan02 .bg {
		left:0;
		background: url(../img/bg_page1_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page1 .plans .plan02 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page1 .plans .plan02 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan02 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan03 .bg {
		left:0;
		background: url(../img/bg_page1_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page1 .plans .plan03 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page1 .plans .plan03 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan03 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan04 .bg {
		left:0;
		background: url(../img/bg_page1_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page1 .plans .plan04 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page1 .plans .plan04 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan04 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan05 .bg {
		left:0;
		background: url(../img/bg_page1_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page1 .plans .plan05 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page1 .plans .plan05 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan05 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan06 .bg {
		left:0;
		background: url(../img/bg_page1_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page1 .plans .plan06 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page1 .plans .plan06 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan06 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan07 .bg {
		left:0;
		background: url(../img/bg_page1_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page1 .plans .plan07 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page1 .plans .plan07 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan07 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .plan08 .bg {
		left:0;
		background: url(../img/bg_page1_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page1 .plans .plan08 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page1 .plans .plan08 .img {
		left:4%;
	}
	main .plan .pages .page1 .plans .plan08 .text {
		margin:0 4%;
	}
	main .plan .pages .page1 .plans .more a {
		width:90%;
		margin:0 auto;
		display: block;
		padding-bottom:2%;
	}
	main .plan .pages .page1 .bottom {
		position: absolute;
		bottom:0;
		left:0;
		right:0;
		height:16px;
		background: url(../img/plan_page1_bottom.png) repeat-x center bottom;
	}
	main .plan .pages .page2 {
		background:url(../img/bg_page2_pc.gif) repeat center top;
		display: none;
		position: relative;
		padding-bottom:100px;
		padding:0;
	}
	main .plan .pages .page2.active {
		display: block;
	}
	main .plan .pages .page2 .catch {
		background:url(../img/bg_page2_catch_sp.png) no-repeat center top;
		background-size:100% auto;
		padding:4% 4% 0;
		margin-bottom:20px;
	}
	main .plan .pages .page2 .catch::before {
		content:none;
	}
	main .plan .pages .page2 .catch::after {
		content:none;
	}
	main .plan .pages .page2 .catch .box {
		width:82%; 
		border:5px solid #628eff;
		border-radius: 10px;
		margin:0 auto;
		padding:4% 6% 2%;
	}
	main .plan .pages .page2 .catch .box .foreword {
		overflow: hidden;
		margin-bottom:40px;
	}
	main .plan .pages .page2 .catch .box .foreword .icon {
		margin:0 auto 14px;
		float:none;
		width:28.7%;
	}
	main .plan .pages .page2 .catch .box .foreword .text {
		float:none;
		width:100%;
	}
	main .plan .pages .page2 .catch .box .foreword .text h3 {
		width:44.06%;
		margin:0 auto 15px;
	}
	main .plan .pages .page2 .catch .box .foreword .text p {
		font-size:14px;
	}
	main .plan .pages .page2 .catch .box .img {
		overflow: hidden;
	}
	main .plan .pages .page2 .catch .box .img figure {
		width:100%;
		float:none;
		margin-bottom:20px;
	}
	main .plan .pages .page2 .catch .box .img figure:nth-of-type(2n) {
		margin-left:0;
	}
	main .plan .pages .page2 .catch .box .img figure:nth-of-type(2n+1) {
		clear:both;
	}
	main .plan .pages .page2 .catch .box .img figure figcaption {
		font-size:14px;
		padding-top:6px;
	}
	main .plan .pages .page2 .plans .plan01 .bg {
		left:0;
		background: url(../img/bg_page2_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page2 .plans .plan01 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page2 .plans .plan01 .img {
		left:4%;
	}
	main .plan .pages .page2 .plans .plan01 .text {
		margin:0 4%;
	}
	main .plan .pages .page2 .plans .plan02 .bg {
		left:0;
		background: url(../img/bg_page2_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page2 .plans .plan02 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page2 .plans .plan02 .img {
		left:4%;
	}
	main .plan .pages .page2 .plans .plan02 .text {
		margin:0 4%;
	}
	main .plan .pages .page2 .plans .plan03 .bg {
		left:0;
		background: url(../img/bg_page2_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page2 .plans .plan03 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page2 .plans .plan03 .img {
		left:4%;
	}
	main .plan .pages .page2 .plans .plan03 .text {
		margin:0 4%;
	}
	main .plan .pages .page2 .plans .plan04 .bg {
		left:0;
		background: url(../img/bg_page2_plans_even_sp.png) no-repeat right top;
	}
	main .plan .pages .page2 .plans .plan04 .icon {
		margin-left:0;
		float:left;
	}
	main .plan .pages .page2 .plans .plan04 .img {
		left:4%;
	}
	main .plan .pages .page2 .plans .plan04 .text {
		margin:0 4%;
	}
	main .plan .pages .page2 .plans .plan05 .bg {
		left:0;
		background: url(../img/bg_page2_plans_odd_sp.png) no-repeat left top;
	}
	main .plan .pages .page2 .plans .plan05 .icon {
		margin-left:0;
		float:right;
	}
	main .plan .pages .page2 .plans .plan05 .img {
		left:4%;
	}
	main .plan .pages .page2 .plans .plan05 .text {
		margin:0 4%;
	}
	main .plan .pages .page2 .plans .more a {
		width:90%;
		margin:0 auto;
		display: block;
		padding-bottom:2%;
	}
	main .plan .pages .page2 .bottom {
		position: absolute;
		bottom:0;
		left:0;
		right:0;
		height:16px;
		background: url(../img/plan_page2_bottom.png) repeat-x center bottom;
	}
}


/*----- .access -----*/
main .access {
	background:url(../img/bg_access_pc.jpg) no-repeat center bottom #ffffff;
	background-size: 100% auto;
	padding:50px 0 225px;
}
main .access h2 {
	width:237px;
	margin:0 auto 30px;
}
main .access .maps {
	width:860px;
	margin:0 auto;
	overflow: hidden;
}
main .access .maps .train {
	float:left;
	width:420px;
	position:relative;
}
main .access .maps .train .btn {
	position: absolute;
	top:585px;
	left:348px;
	width:33px;
	cursor: pointer;
}
main .access .maps .car {
	float:right;
	width:420px;
	position:relative;
}
main .access .maps .car .btn {
	position: absolute;
	top:585px;
	left:348px;
	width:33px;
	cursor: pointer;
}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	main .access {
		background:url(../img/bg_access_pc.jpg) no-repeat center bottom #ffffff;
		background-size: 100% auto;
		padding:40px 0 100px;
	}
	main .access h2 {
		width:44.53%;
		margin:0 auto 20px;
	}
	main .access .maps {
		width:92%;
		margin:0 auto;
		overflow: hidden;
	}
	main .access .maps .train {
		float:none;
		width:100%;
		position:relative;
		margin-bottom:20px;
	}
	main .access .maps .train .btn {
		display:none;
	}
	main .access .maps .car {
		float:none;
		width:100%;
		position:relative;
	}
	main .access .maps .car .btn {
		display:none;
	}
}

/*----- .lb -----*/
body > .bg {
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	background-color: rgba(0,0,0,0.8);
	z-index:10;
	cursor: pointer;
	display:none;
}
body > .lb {
	position: absolute;
	width:720px;
	left:50%;
	margin-left:-360px;
	padding-top:50px;
	z-index:11;
	top:-1500px;
	display:none;
}
body > .lb .close {
	float:right;
	width:41px;
	margin-bottom:20px;
	cursor: pointer;
}
body > .lb .img {
	clear:both;
}
body > .lb .img .map1 {
	display:none;
}
body > .lb .img .map2 {
	display:none;
}
main .campaign h2 {
	width:299px;
	margin:0 0 35px;
}
main .campaign .step {
	margin-bottom:55px;
}
main .campaign .step li {
	width:23.44%;
	margin-left:2.08%;
	float:left;
}
main .campaign .step li:first-child {
	margin-left:0;
}
main .campaign .step li .img {
	margin-bottom:20px;
}
main .campaign .step li .title {
	font-size:24px;
	font-weight:400;
	text-align: center;
	margin-bottom:12px;
}
main .campaign .step li .title span {
	font-size:16px;
	display: block;
}
main .campaign .step li .text {
	color:#6e6e6e;
	font-size:12px;
}
main .campaign .step li .text span {
	color:#e70044;
	background: linear-gradient(transparent 60%, #f8fd00 60%);
}
main .campaign .step li .btn1 {
	margin:0 10px 10px;
}
main .campaign .step li .btn2 {
	margin:0 10px 10px;
}
main .campaign h3 {
	width:913px;
	margin:0 auto 30px;
}
main .campaign .box {
	border:2px solid #ecf0d1;
	background:#ffffff;
	border-radius: 8px;
	padding:36px 36px 20px;
}
main .campaign .box ul {
}
main .campaign .box ul li {
	overflow: hidden;
	margin-bottom:16px;
}
main .campaign .box ul li .title {
	float:left;
	width:140px;
	font-size::16px;
}
main .campaign .box ul li .text {
	float:right;
	width:730px;
	font-size::14px;
}
main .campaign .bottom {
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	height:30px;
	background:url(../img/campaign_bottom_pc.png) repeat-x center top;
}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	main .campaign {
		background:#fbfded;
		padding:0 0 60px;
		position:relative;
	}
	main .campaign h2 {
		width:84.35%;
		margin:0 0 30px;
	}
	main .campaign .step {
		margin-bottom:26px;
	}
	main .campaign .step li {
		width:46.52%;
		margin-left:0;
		margin-bottom:24px;
		float:left;
	}
	main .campaign .step li:first-child {
		margin-left:0;
	}
	main .campaign .step li:nth-of-type(2n) {
		float:right;
	}
	main .campaign .step li:nth-of-type(2n+1) {
		margin-left:0;
		clear:both;
	}
	main .campaign .step li .img {
		margin-bottom:16px;
	}
	main .campaign .step li .title {
		font-size:19px;
		font-weight:400;
		text-align: center;
		margin-bottom:12px;
	}
	main .campaign .step li .title span {
		font-size:12px;
		display: block;
	}
	main .campaign .step li .text {
		color:#6e6e6e;
		font-size:10px;
	}
	main .campaign .step li .text span {
		color:#e70044;
		background: linear-gradient(transparent 60%, #f8fd00 60%);
	}
	main .campaign .step li .btn1 {
		margin:0 5px 5px;
	}
	main .campaign .step li .btn2 {
		margin:0 5px 0;
	}
	main .campaign h3 {
		width:85.94%;
		margin:0 0 30px;
	}
	main .campaign .box {
		border:2px solid #ecf0d1;
		background:#ffffff;
		border-radius: 8px;
		padding:16px 18px 10px;
	}
	main .campaign .box ul {
	}
	main .campaign .box ul li {
		overflow: hidden;
		margin-bottom:16px;
	}
	main .campaign .box ul li .title {
		float:none;
		width:auto;
		font-size::14px;
		margin-bottom:4px;
	}
	main .campaign .box ul li .text {
		float:none;
		width:auto;
		font-size::11px;
		margin-bottom:8px;
	}
	main .campaign .bottom {
		position:absolute;
		bottom:0;
		left:0;
		right:0;
		height:0;
		padding-top:4%;
		background:url(../img/campaign_bottom_sp.png) repeat-x center top;
		background-size: 100% auto;
	}
}

/*----- .agreement -----*/
main .agreement {
	background:#ffffff;
	padding:77px 0 57px;
	position:relative;
}
main .agreement h2 {
	font-size:20px;
	margin:0 0 32px;
}
main .agreement h3 {
	font-size:16px;
	margin:0 0 10px;
}
main .agreement .text {
	margin-bottom:30px;
	font-size:12px;
	line-height:2.17;
}
main .agreement .text ul li {
	margin-left:1em;
	list-style: disc;
}
main .agreement .text ol li {
	margin-left:1em;
}
main .agreement .note {
	text-align: right;
	font-size:12px;
}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	main .agreement {
		background:#ffffff;
		padding:40px 0 48px;
		position:relative;
	}
	main .agreement h2 {
		font-size:18px;
		margin:0 0 24px;
	}
	main .agreement h3 {
		font-size:14px;
		margin:0;
		border-top: 1px solid #f0f0f0;
		padding:13px 0;
		cursor: pointer;
	}
	main .agreement h3.close {
			background: url(../img/agreement_arrow_cl_sp.png) no-repeat right center;
			background-size: 11px 6px;
	}
	main .agreement h3.open {
			background: url(../img/agreement_arrow_op_sp.png) no-repeat right center;
			background-size: 11px 6px;
	}
	main .agreement h3:nth-of-type(1) {
		border-top:none;
	}
	main .agreement .text {
		margin-bottom:30px;
		font-size:12px;
		line-height:2.17;
		display:none;
	}
	main .agreement .text ul li {
		margin-left:1em;
		list-style: disc;
	}
	main .agreement .text ol li {
		margin-left:1em;
	}
	main .agreement .note {
		text-align: right;
		font-size:12px;
	}
}
/*
footer
--------------------------------------------------------------------
*/
footer {
	padding:0;
	font-size:12px;
	height: 30px;
	text-align: center;
	background-color: #f44336;
	line-height:30px;
	color:#ffffff;
}

@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	footer {
		font-size:11x;
	}
}
/*
attachment
--------------------------------------------------------------------
*/
.bb{border-bottom:1px solid #aaa;}
.fwbold{font-weight:bold !important;}
.textRed{color:#f00 !important;}
.imgBox{border:1px solid #9a9a9a;}
.right{float:right !important;}
.left{float:left !important;}
.center{margin:0 auto !important;}
.align_right{text-align:right !important;}
.align_left{text-align:left !important;}
.align_center{text-align:center !important;}
.clear{clear:both;}
.txind{
	margin-left:1em !important;
	text-indent:-1em !important;
}
.pt1m{padding-top:1em !important;}
.pt05{padding-top:5px !important;}
.pt10{padding-top:10px !important;}
.pt15{padding-top:15px !important;}
.pt20{padding-top:20px !important;}
.pt25{padding-top:25px !important;}
.pt30{padding-top:30px !important;}
.pt35{padding-top:35px !important;}
.pt40{padding-top:40px !important;}
.pt45{padding-top:45px !important;}
.pt50{padding-top:50px !important;}
.pr05{padding-right:5px !important;}
.pr10{padding-right:10px !important;}
.pr15{padding-right:15px !important;}
.pr20{padding-right:20px !important;}
.pr25{padding-right:25px !important;}
.pr30{padding-right:30px !important;}
.pr35{padding-right:35px !important;}
.pr40{padding-right:40px !important;}
.pr45{padding-right:45px !important;}
.pr50{padding-right:50px !important;}
.pl05{padding-left:5px !important;}
.pl10{padding-left:10px !important;}
.pl15{padding-left:15px !important;}
.pl20{padding-left:20px !important;}
.pl25{padding-left:25px !important;}
.pl30{padding-left:30px !important;}
.pl35{padding-left:35px !important;}
.pl40{padding-left:40px !important;}
.pl45{padding-left:45px !important;}
.pl50{padding-left:50px !important;}
.pb0{padding-bottom:0px !important;}
.pb05{padding-bottom:5px !important;}
.pb10{padding-bottom:10px !important;}
.pb15{padding-bottom:15px !important;}
.pb20{padding-bottom:20px !important;}
.pb25{padding-bottom:25px !important;}
.pb30{padding-bottom:30px !important;}
.pb35{padding-bottom:35px !important;}
.pb40{padding-bottom:40px !important;}
.pb45{padding-bottom:45px !important;}
.pb50{padding-bottom:50px !important;}
.pb1m{padding-bottom:1em !important;}
.pb2m{padding-bottom:2em !important;}
.pd10{padding:10px !important;}
.mt05{margin-top:5px !important;}
.mt10{margin-top:10px !important;}
.mt15{margin-top:15px !important;}
.mt20{margin-top:20px !important;}
.mt25{margin-top:25px !important;}
.mt30{margin-top:30px !important;}
.mt35{margin-top:35px !important;}
.mt40{margin-top:40px !important;}
.mt45{margin-top:45px !important;}
.mt50{margin-top:50px !important;}
.mr05{margin-right:5px !important;}
.mr10{margin-right:10px !important;}
.mr15{margin-right:15px !important;}
.mr20{margin-right:20px !important;}
.mr25{margin-right:25px !important;}
.mr30{margin-right:30px !important;}
.mr35{margin-right:35px !important;}
.mr40{margin-right:40px !important;}
.mr45{margin-right:45px !important;}
.mr50{margin-right:50px !important;}
.ml05{margin-left:05px !important;}
.ml10{margin-left:10px !important;}
.ml15{margin-left:15px !important;}
.ml20{margin-left:20px !important;}
.ml25{margin-left:25px !important;}
.ml30{margin-left:30px !important;}
.ml35{margin-left:35px !important;}
.ml40{margin-left:40px !important;}
.ml45{margin-left:45px !important;}
.ml50{margin-left:50px !important;}
.mb0{margin-bottom:0px !important;}
.mb05{margin-bottom:5px !important;}
.mb10{margin-bottom:10px !important;}
.mb15{margin-bottom:15px !important;}
.mb20{margin-bottom:20px !important;}
.mb25{margin-bottom:25px !important;}
.mb30{margin-bottom:30px !important;}
.mb35{margin-bottom:35px !important;}
.mb40{margin-bottom:40px !important;}
.mb45{margin-bottom:45px !important;}
.mb50{margin-bottom:50px !important;}
.mb1m{margin-bottom:1em !important;}
.w50{width:50px !important;}
.w100{width:100px !important;}
.w150{width:150px !important;}
.w200{width:200px !important;}
.w220{width:220px !important;}
.w250{width:250px !important;}
.w300{width:300px !important;}
.w350{width:350px !important;}
.w400{width:400px !important;}
.w450{width:450px !important;}
.w500{width:500px !important;}
.w550{width:550px !important;}
.w05p{width:5% !important;}
.w10p{width:10% !important;}
.w15p{width:15% !important;}
.w20p{width:20% !important;}
.w25p{width:25% !important;}
.w30p{width:30% !important;}
.w35p{width:35% !important;}
.w40p{width:40% !important;}
.w45p{width:45% !important;}
.w50p{width:50% !important;}
.w55p{width:55% !important;}
.w60p{width:60% !important;}
.w65p{width:65% !important;}
.w70p{width:70% !important;}
.w75p{width:75% !important;}
.w80p{width:80% !important;}
.w85p{width:85% !important;}
.w90p{width:90% !important;}
.w95p{width:95% !important;}
.w100p{width:100% !important;}
.pc {display: block;}
.sp {display: none;}
@media screen and (max-width: 1023px) {
}
@media screen and (max-width: 767px) {
	.pc {display: none;}
	.sp {display: block;}
}
/*
Clearfix
--------------------------------------------------------------------
*/
.clearfix:after {
	content: "";
	clear: both;
	display: block;
}