@charset "UTF-8";

/* =Reset
-------------------------------------------------------------- */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img{border:0;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
img {vertical-align:top;}
input[type="radio"], input[type="checkbox"] {vertical-align: -2px;}
label {cursor: pointer;}

html>/**/body {
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic", "Osaka",sans-serif;
}
* + html body {
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic", "Osaka",sans-serif;
}

/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;}
.cf:after {clear:both;}
/* For IE 6/7 (trigger hasLayout) */
.cf {zoom:1;}
.clr {
	clear: both;
}


/* =all
-------------------------------------------------------------- */
body {
	color: #000;
	background: #fff;
	font-size: 17px;
	line-height: 1.5;
	text-align: left;
}
a:hover img,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
}
a ,a img, input[type="submit"], input[type="reset"] {
	-webkit-transition: opacity .3s, background-color .3s;
	transition: opacity .3s, background-color .3s;
	opacity: 1;
	text-decoration:none;
}
img {
	max-width: 100%;
}

/* css */
.fl {float: left;}
.fr {float: right;}
.ta_l {text-align: left;}
.ta_c {text-align: center;}
.ta_r {text-align: right;}
.va_t {vertical-align: top;}
.va_b {vertical-align: bottom;}
.va_m {vertical-align: middle;}
.lh17 {line-height: 1.7;}
.lh20 {line-height: 2;}
.f10 {font-size: 10px;}
.f11 {font-size: 11px;}
.f12 {font-size: 12px;}
.f13 {font-size: 13px;}
.f14 {font-size: 14px;}
.f15 {font-size: 15px;}
.f16 {font-size: 16px;}
.f17 {font-size: 17px;}
.f18 {font-size: 18px;}
.f19 {font-size: 19px;}
.f20 {font-size: 20px;}
.f21 {font-size: 21px;}
.f22 {font-size: 22px;}
.f23 {font-size: 23px;}
.f24 {font-size: 24px;}
.f25 {font-size: 25px;}
.f26 {font-size: 26px;}
.f27 {font-size: 27px;}
.f28 {font-size: 28px;}
.f29 {font-size: 29px;}
.f30 {font-size: 30px;}
.f31 {font-size: 31px;}
.f32 {font-size: 32px;}
.f33 {font-size: 33px;}
.f34 {font-size: 34px;}
.f35 {font-size: 35px;}
.bold {font-weight: bold;}

/* width */
.w50 {width:50px;}
.w60 {width:60px;}
.w70 {width:70px;}
.w80 {width:80px;}
.w90 {width:90px;}
.w100 {width:100px;}
.w110 {width:110px;}
.w120 {width:120px;}
.w130 {width:130px;}
.w140 {width:140px;}
.w150 {width:150px;}
.w160 {width:160px;}
.w170 {width:170px;}
.w180 {width:180px;}
.w190 {width:190px;}
.w200 {width:200px;}
.w230 {width:230px;}
.w250 {width:250px;}
.w280 {width:280px;}
.w290 {width:290px;}
.w300 {width:300px;}
.w330 {width:330px;}
.w350 {width:350px;}
.w380 {width:380px;}
.w400 {width:400px;}
.w430 {width:430px;}
.w450 {width:450px;}
.w500 {width:500px;}
.w10p {width:10%;}
.w15p {width:15%;}
.w20p {width:20%;}
.w25p {width:25%;}
.w30p {width:30%;}
.w33p {width:33%;}
.w40p {width:40%;}
.w45p {width:45%;}
.w50p {width:50%;}
.w55p {width:55%;}
.w60p {width:60%;}
.w65p {width:65%;}
.w70p {width:70%;}
.w75p {width:75%;}
.w80p {width:80%;}
.w85p {width:85%;}
.w90p {width:90%;}
.w95p {width:95%;}
.w100p {width:100%;}

/* mgn */
.mgn05 {margin-bottom: 5px;}
.mgn08 {margin-bottom: 8px;}
.mgn10 {margin-bottom: 10px;}
.mgn13 {margin-bottom: 13px;}
.mgn15 {margin-bottom: 15px;}
.mgn20 {margin-bottom: 20px;}
.mgn25 {margin-bottom: 25px;}
.mgn30 {margin-bottom: 30px;}
.mgn35 {margin-bottom: 35px;}
.mgn40 {margin-bottom: 40px;}
.mgn45 {margin-bottom: 45px;}
.mgn50 {margin-bottom: 50px;}
.mgn55 {margin-bottom: 55px;}
.mgn60 {margin-bottom: 60px;}
.mgn65 {margin-bottom: 65px;}
.mgn70 {margin-bottom: 70px;}
.mgn75 {margin-bottom: 75px;}
.mgn80 {margin-bottom: 80px;}



/* =all
-------------------------------------------------------------- */
body {
	color: #4a4a4a;
	background: #fff;
	font-size: 17px;
	line-height: 1.5;
	text-align: left;
}
a:hover img,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
}
a ,a img, input[type="submit"], input[type="reset"] {
	-webkit-transition: opacity .3s, background-color .3s;
	transition: opacity .3s, background-color .3s;
	opacity: 1;
	text-decoration:none;
}
img {
	max-width: 100%;
}

.spbox{
	display: none;
}

/* = 共通
-------------------------------------------------------------- */
#wrap{
	padding: 0 0 5% 0;
}
.inner{
	padding: 0 5%;
}
.footer{
	text-align: center;
	background: #c7946c;
	padding: 1% 0;
}
.footer a{
	color: #fff;
}
.footer a:hover{
	color: #fff;
	border-bottom: 1px solid #fff;
}
.footer span{
	font-size: 11px;
	color: #fff;
}
#menu-cb{
  display: none;
}
#menu-icon{
  display: none;
}
#menu-background{
  display: none;
}
.mainbox{
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
	padding: 0 0 6% 0;
}
/* = header
-------------------------------------------------------------- */
.header{
	padding: 1% 0;
	background: #fb7065;
	box-shadow: 1px 1px 3px #4c4c4c;
	z-index: 99;
}
.header .inner{
	display: table;
}
.header .logo{
	display: table-cell;
	vertical-align: middle;
	width: 5%;
}
.header .app{
	display: table-cell;
	vertical-align: middle;
	font-size: 2vw;
	color: #fff;
	padding: 0 0 0 3%;
	text-shadow: 3px 3px 5px #4c4c4c;
}
.header .app a{
	color: #fff;
}
.header .app a:hover{
	color: #fff;
}
.header .menu{
	display: table-cell;
	vertical-align: middle;
}

.header .menu ul{
	margin: 0 0 0 1%;
}
.header .menu li{
	float: left;
	margin:0 5% 0 0; 
	font-size: 1.1vw;
}
.header .menu li.last{
	margin: 0 0 0 0;
}
.header .menu li a{
	color: #fff;
}
.header .menu li a:hover{
	color: #fff;
	text-shadow: 3px 3px 5px #4c4c4c;
}
.header .dl{
	display: table-cell;
	vertical-align: middle;
	width: 13%;
}
.header .dl img{
	box-shadow: 0px 0px 23px #4c4c4c;
    border-radius: 8px;
}
/* = mv
-------------------------------------------------------------- */
.mv{
	padding: 0 0 10% 0;
}

/* = cnt
-------------------------------------------------------------- */
.cnt{
	padding: 0 0 7% 0;
}
.cnttit{
 padding: 0 0 5% 0;
 text-align: center;
 font-size: 46px;
 color: #455e63;
}
.cnttit h2{
	border-bottom: 2px #c59c4c solid;
	display: inline-block;
}
.cnttxtinner{
	width: 90%;
	margin: 0 auto;
}
}
.cnttxt{
	width: 96%;
	margin: 0 auto;
}
/* = rulr
-------------------------------------------------------------- */
.rulr{
	text-align: left;
}
.ruleinner{
	width: 90%;
	margin: 0 auto;
}
.rulesec{
	margin: 0 0 4% 0;
}
.ruletit{
	font-size: 30px;
	border-bottom: 2px #c59c4c solid;
	display: inline-block;
	margin: 0 0 2% 0;
}
.ruletxt p{
	margin: 0 0 1% 0;
}
.ruletxt p.lastbox{
	margin: 0 0 0 0;
}

/* = レスポンシブ
-------------------------------------------------------------- */
@media ( max-width: 1020px){
	.cnttit{
		font-size: 26px;
}
	.spbox{
	display: block;
}
.pcbox{
	display: none;
}
#wrap{
	padding: 0 0 0 0;
}
body{
	font-size: 12px;
}
.main.pgbox{
	padding: 3% 0 6% 0;
	text-align: left;
}
		#menu {
    background-color: #f5f5f5; /*メニュー背景色*/
    box-sizing: border-box;
    height: 100%;
    padding: 40px 16px; /*メニュー内左右上下余白*/
    position: fixed;
    right: -300px; /*メニュー横幅 width と合わせる*/
    top: 0;
    transition: transform 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 300px; /*メニュー横幅*/
    z-index: 1000;
    border-bottom: none;
    display: inline-block;
}
#menu-background {
    background-color: #333; /*黒背景*/
    display: block;
    height: 100%;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 100%;
    z-index: -1;
}
#menu-icon {
    background-color: #f5f5f5; /*アイコン部分背景色*/
    border-radius: 0 0 0 10px; /*左下角丸*/
    color: #333; /*アイコン（フォント）色*/
    cursor: pointer;
    display: block;
    font-size: 40px; /*アイコン（フォント）サイズ*/
    height: 40px; /*アイコン縦高さ*/
    line-height: 34px; /*縦位置中央化*/
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: 40px; /*アイコン横幅*/
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    z-index: 1000;
}
#menu-cb {
    display: none; /*チェックボックス本体は消しておく*/
}
#menu-cb:checked ~ #menu,
#menu-cb:checked ~ #menu-icon {
    transform: translate(-300px); /*メニュー本体横幅 width と合わせる*/
}
#menu-cb:checked ~ #menu-background {
    opacity: 0.5;
    z-index: 999;
}
.header{
	padding: 0 0;
	background: #f5f5f5;
	box-shadow: none;
	position: absolute;
	z-index: 99;
	text-align: center;
}
.header .logo{
	display: block;
	vertical-align: none;
	width: 45%;
	margin: 0 auto;
}
.header .app{
	display: block;
	vertical-align: none;
	font-size: 20px;
	color: #000;
	padding: 0 0 9% 0;
	text-shadow: none;
}
.header .app a{
	color: #000;
}
.header .app a:hover{
	color: #000;
}
.header .menu{
	display: block;
	vertical-align: none;
}
.header .menu li{
	float: none;
	margin:0 0 8% 0; 
	font-size: 15px;
}
.header .menu li a{
	color: #000;
}
.header .menu li a:hover{
	color: #000;
	text-shadow: none;
}
.header .dl{
	display: block;
	vertical-align: none;
	width: 80%;
	margin: 0 auto;
}
}
