@charset "UTF-8";



/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
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}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
nav ul{list-style:none}
blockquote,q{quotes:none}
blockquote:before,blockquote:after,q:before,q:after{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 #ccc;margin:1em 0;padding:0}
input,select{vertical-align:middle}

html{
	font-size: 62.5%;
}
body{
	font-family: 'メイリオ','Meiryo','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','Osaka','ＭＳ Ｐゴシック',Arial,sans-serif;
	-webkit-text-size-adjust: 100%;
}
ul li{	list-style: none;	}
img{	width: 100%;	}

/* --------------------------------------------------------------------------------------------- module */
.clearfix:after{
	content:".";
	display:block;
	height:0px;
	clear:both;
	visibility:hidden;
	font-size: 0.1em;
}
.clearfix{
	display:block;
}
.aover{	transition: all 0.3s;	}
.aover:hover{	opacity: 0.6;	}
.sp{	display: none;	}
@media screen and (max-width:768px){
	.pc{	display: none;	}
	.sp{	display: block;	}
}
.overlay{
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	background-color: rgba(51,51,51,0.7);
	width: 100%;
	height: 100%;
}

.btn01{
	background-color: #DB0F80;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #CD0072), color-stop(0.00, #E61A8C));
	background: -moz-linear-gradient(#E61A8C, #CD0072);
	background: linear-gradient(#E61A8C, #CD0072);
	-webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	-moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	border-radius: 5px;
	margin: 0 auto;
	width: 500px;
	font-size: 2.8rem;
}
.btn01 a{
	background: url(/common/img/icon_expand-red.png) no-repeat 95% center;
	background-size: 22px 22px;
	display: block;
	padding: 25px 0;
	color: #ffffff;
	text-decoration: none;
	text-align: center;
}
@media screen and (max-width:768px){
	.btn01{
		-webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		-moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		border-radius: 5px;
		margin: 0 10px;
		width: auto;
		font-size: 1.4rem;
	}
	.btn01 a{
		background-size: 16px 16px;
		padding: 13px 0;
	}
}

.btn_comingsoon {
	pointer-events: none;
	background: #BBBBBB;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #a8a8a8), color-stop(0.00, #c2c2c2));
	background: -moz-linear-gradient(#c2c2c2, #a8a8a8);
	background: linear-gradient(#c2c2c2, #a8a8a8);
	-webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	-moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	border-radius: 5px;
	margin: 0 auto;
	width: 500px;
	font-size: 2.8rem;
}
@media screen and (max-width:768px){
	.btn_comingsoon{
		-webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		-moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
		border-radius: 5px;
		margin: 0 10px;
		width: auto;
		font-size: 1.4rem;
	}
}

/* --------------------------------------------------------------------------------------------- header */
#header{
	background-color: #ffffff;
	position: absolute;
	left: 0;
	top: 0;
	border-top: 4px solid #E4007F;
	width: 100%;
	min-width: 1200px;
	-webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	-moz-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.65);
	z-index: 50;
}
@media screen and (max-width:768px){
	#header{
		border-top: 2px solid #E4007F;
		min-width: 100%;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}
}

#header .top{
	height: 85px;
}
#header .top .logo{
	float: left;
	padding: 9px 0 0 40px;
	width: 184px;
}
#header .top .copy{
	float: left;
	padding: 33px 0 0 35px;
	color: #E4007F;
	font-size: 1.5rem;
	font-weight: bold;
}
#header .top .menu_open{
	display: none;
}
#header .top ul.sns{
	float: right;
	padding: 20px 40px 0 0;
	overflow: hidden;
}
#header .top ul.sns li{
	float: left;
	margin: 0 0 0 10px;
	width: 40px;
}
@media screen and (max-width:768px){
	#header .top{
		height: 43px;
	}
	#header .top .logo{
		padding: 5px 0 0 10px;
		width: 92px;
	}
	#header .top .copy{
		display: none;
	}
	#header .top .menu_open{
		display: block;
	}
	#header .top .menu_open a{
		background: url(/common/img/icon_menu-hamburger.png) no-repeat center 9px #E4007F;
		background-size: 15px 12px;
		float: right;
		box-sizing: border-box;
		display: block;
		padding: 25px 0 0;
		width: 45px;
		height: 43px;
		color: #ffffff;
		text-align: center;
		text-decoration: none;
	}
	#header .top .menu_open a.close{
		background: url(/common/img/icon_remove.png) no-repeat center center #A20059;
		background-size: 14px 14px;
		text-indent: -9999px;
	}
	#header .top ul.sns{
		padding: 5px 12px 0 0;
	}
	#header .top ul.sns li{
		width: 30px;
	}
}

#header .menu{
	background-color: #E4007F;
	height: 60px;
	font-size: 1.5rem;
	font-weight: bold;
	color: #ffffff;
}
#header .menu a{
	color: #ffffff;
	text-decoration: none;
}
#header .menu a.active{
	color: #FFFF00;
}
#header .menu ul{
	float: left;
	padding: 22px 0 0;
	overflow: hidden;
}
#header .menu ul li{
	float: left;
}
#header .menu ul li + li{
	border-left: 1px solid #EC86BF;
}
#header .menu ul li a{
	padding: 0 18px;
}
#header .menu .contact{
	float: right;
	padding: 11px 18px;
}
#header .menu .contact a{
	background: url(/common/img/icon_expand-red.png) no-repeat 150px center;
	background-size: 15px 15px;
	display: block;
	border: 1px solid #EC86BF;
	padding: 10px 60px;
	border-radius: 3px;
}
@media screen and (max-width:768px){
	#header .menu{
		display: none;
		height: auto;
		font-size: 1.4rem;
	}
	#header .menu ul{
		float: none;
		padding: 0;
	}
	#header .menu ul li{
		float: none;
		border-bottom: 1px solid #A20059;
	}
	#header .menu ul li + li{
		border-left: none;
	}
	#header .menu ul li a{
		background: url(/common/img/icon_chevron-left.png) no-repeat 94% center;
		background-size: 9px 14px;
		display: block;
		padding: 11px 30px 11px 15px;
	}
	#header .menu .contact{
		float: none;
		padding: 15px;
	}
	#header .menu .contact a{
		background-position: 95% center;
		display: block;
		border: 1px solid #ffffff;
		padding: 10px 60px;
		text-align: center;
	}
}


/* --------------------------------------------------------------------------------------------- contents */
#contents{
	background-color: #F2F2F2;
	min-width: 1200px;
	padding: 145px 0 0;
}
#contents .page-header{
	background-position: right center;
	background-repeat: no-repeat;
	background-size: auto 100%;
	height: 100px;
}
#contents .page-header h1,
#contents .page-header p{
	padding: 25px 40px 0;
	font-size: 3.8rem;
	font-weight: normal;
}
#contents .page-header h1 small,
#contents .page-header p small{
	display: block;
	margin: 7px 0 0;
	font-size: 1.4rem;
}
#contents .alert{
	margin: 70px auto 0;
	padding: 0 0 0 1.5em;
	text-indent: -1.5em;
	line-height: 1.6;
	font-size: 1.3rem;
}
@media screen and (max-width:768px){
	#contents{
		min-width: 100%;
		padding: 45px 0 0;
	}
	#contents .page-header{
		height: 50px;
	}
	#contents .page-header h1,
	#contents .page-header p{
		padding: 10px 20px 0;
		font-size: 1.8rem;
	}
	#contents .page-header h1 small,
	#contents .page-header p small{
		margin: 3px 0 0;
		font-size: 0.9rem;
	}
	#contents .alert{
		margin: 0 10px;
		padding: 25px 0 10px 1.5em;
		font-size: 1.0rem;
	}
}

/* ----------------------------------------------------------------------------------- mainmenu */
#contents .mainmenu{
	margin: 20px auto 0;
	padding: 0 0 30px;
	width: 1200px;
}
#contents .mainmenu section{
	padding: 20px 0;
	overflow: hidden;
}
#contents .mainmenu section + section{
	background: url(/common/img/line01.png) repeat-x 0 0;
}
#contents .mainmenu section > a,
#contents .mainmenu section > p{
	float: left;
	width: 600px;
}
#contents .mainmenu section > div{
	float: right;
	padding: 35px 0 0;
	width: 560px;
	line-height: 1.6;
	font-size: 1.4rem;
}
#contents .mainmenu section h2{
	font-size: 2.8rem;
	font-weight: normal;
	line-height: 1.3;
}
#contents .mainmenu section table{
	margin: 15px 0 0;
}
#contents .mainmenu section table th,
#contents .mainmenu section table td{
	font-weight: normal;
	text-align: left;
}
#contents .mainmenu section table th{
	width: 70px;
}
#contents .mainmenu section table td{
	padding: 0 0 0 1em;
	text-indent: -1em;
}
#contents .mainmenu section table td:before{
	content: '：';
}
#contents .mainmenu section .more{
	margin: 35px 0 0;
	width: 160px;
}
#contents .mainmenu section .more a{
	background: url(/common/img/icon_expand.png) no-repeat 93% center;
	background-size: 15px 15px;
	display: block;
	border: 1px solid #333333;
	padding: 7px;
	color: #333333;
	text-decoration: none;
	text-align: center;
}
#contents .mainmenu section .more a.alink {
	padding: 7px 7px 7px 10px;
	text-align: left;
}
#contents .mainmenu section .banner{
	margin: 20px 0 0;
	width: 240px;
}
#contents .mainmenu .btn01{
	margin: 75px auto 0;
}

#contents .mainmenu section .more2{
	margin: 35px 0 0;
	width: 160px;
}

@media screen and (max-width:768px){
	#contents .mainmenu{
		margin: 0;
		padding: 0 0 10px;
		width: auto;
	}
	#contents .mainmenu section{
		padding: 10px;
	}
	#contents .mainmenu section > a,
	#contents .mainmenu section > p{
		float: none;
		width: auto;
	}
	#contents .mainmenu section > div{
		float: none;
		padding: 10px 0 0;
		width: auto;
		font-size: 1.2rem;
	}
	#contents .mainmenu section h2{
		font-size: 1.6rem;
		font-weight: bold;
	}
	#contents .mainmenu section table{
		margin: 10px 0 0;
	}
	#contents .mainmenu section table th{
		width: 50px;
	}
	#contents .mainmenu section .more{
		margin: 10px 0 0;
		width: auto;
	}
	#contents .mainmenu section .more2{
		margin: 15px auto 0;
		width: 300px;
	}
	#contents .mainmenu section .more a{
		background-position: 97% center;
		padding: 5px;
	}
	#contents .mainmenu section .more a.alink {
		padding: 5px;
		text-align: center;
	}
	#contents .mainmenu section .banner{
		margin: 10px 0 0;
	}
	#contents .mainmenu .btn01{
		margin: 20px 10px 0;
	}
}

/* --------------------------------------------------------------------------------------------- footer */
#footer{
	background-color: #ffffff;
	min-width: 1200px;
	text-align: center;
	color: #E3007E;
}
#footer a{
	color: #E3007E;
	text-decoration: none;
}
#footer .twitter{
	background: url(/common/img/footer_twitter_bg.png) repeat 0 0;
	padding: 30px 0;
}
#footer .twitter .head{
	font-size: 2.6rem;
	font-weight: bold;
}
#footer .twitter .body{
	margin: 25px auto 0;
	border-top: 4px solid #E4007F;
	width: 500px;
}
#footer .sns{
	padding: 15px;
}
#footer .sns ul li{
	display: inline-block;
	margin: 0 5px;
	vertical-align: top;
}
#footer .banner{
	background-color: #E4007F;
	padding: 50px;
}
#footer .banner h3{
	background: url(/common/img/footer_banner_bg.png) no-repeat center center;
	margin: 0 0 20px;
	color: #FFFF00;
	font-size: 2.0rem;
}
#footer .banner ul li{
	background-color: #ffffff;
	display: inline-block;
	margin: 0 3px;
	width: 300px;
	line-height: 0;
}
#footer .bottom{
	padding: 20px 40px;
	font-size: 1.3rem;
}
#footer .bottom ul.menu{
	float: left;
	overflow: hidden;
}
#footer .bottom ul.menu li{
	float: left;
	margin: 0 40px 0 0;
}
#footer .bottom .copyright{
	float: right;
}
@media screen and (max-width:768px){
	#footer{
		min-width: 100%;
	}
	#footer .twitter{
		padding: 15px 10px 10px;
	}
	#footer .twitter .head{
		font-size: 1.4rem;
	}
	#footer .twitter .body{
		margin: 15px auto 0;
		border-top: 2px solid #E4007F;
		width: auto;
	}
	#footer .banner{
		padding: 25px 0;
	}
	#footer .banner h3{
		background-image: url(/common/img/footer_banner_bg_sp.png);
		background-size: 305px 1px;
		margin: 0 0 10px;
		font-size: 1.0rem;
	}
	#footer .banner ul li{
		margin: 0;
		width: 47%;
	}
	#footer .bottom{
		padding: 15px 10px;
		font-size: 1.0rem;
	}
	#footer .bottom ul.menu{
		display: none;
	}
	#footer .bottom .copyright{
		float: none;
	}
}

/* --------------------------------------------------------------------------------------------- pagetop */
#pagetop{
	display: none;
	position: fixed;
	right: 40px;
	bottom: 100px;
	width: 40px;
	z-index: 100;
}
@media screen and (max-width:768px){
	#pagetop{
		right: 10px;
		bottom: 20px;
		width: 30px;
	}
}
