@charset "utf-8";
/* CSS Document */


/* clearfix */

.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}

/* 画像センタリング */

.cr {margin:0 auto;}

/* 点滅 */
.blinking{
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}


/* FireFoxFadeブレ防止 */

img { display:block; box-shadow: #000 0 0 0; }


/* 全体・枠作り */

html,body {
	height:100%;
}

html {
	font-size:62.5%;
}

img { display:block; }

body {
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Verdana, sans-serif;
	text-align:center;
}

#PageWrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	position: relative;
	width:100%;
	min-width:1000px;
	background-color:#fff;
	display:none;
}

.no-js #PageWrapper {display:none;}

/* ----------------------------------　ローディング　---------------------------------- */


#loader-bg {
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #FFF;
  z-index: 15000;
}

#loader {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  text-align: center;
  color: #666666;
  z-index: 2;
}
.no-js #loader {display:none;}

#loader img {
  width:148px;
  margin:0 auto;
}

#loader p {
	font-family: 'Bungee', cursive;
	font-size:2.4rem;
	color:#f9670a;
	text-align:center;
}

/* ----------------------------------　モーダル入口　---------------------------------- */

.modal { position:fixed; display:none; z-index:9999; top:40%; left:50%; width:400px; height:200px; margin:-120px 0 0 -220px; padding:20px; text-align:center; }
.modal_wrap {width:400px;
height:400px;
border-radius:20px;
border:2px solid #f9670a;
background:url(../img/check.jpg) center top no-repeat;
background-size:100%;
position:relative;}
.modal a.box {width:150px;height:80px;display:block; transition:all 0.3s;}
.modal a.box img {width:100%; transition:all 0.3s; opacity:0;}
.modal a:hover.box img {width:100%; transition:all 0.3s; opacity:1;}
.b_left {position:absolute; top:245px; left:34px; background:url(../img/check_enter_01.png) left top no-repeat;background-size:100%;}
.b_right {position:absolute; top:245px; left:216px; background:url(../img/check_leave_01.png) left top no-repeat;background-size:100%;}
.modal a { cursor:pointer; }


/* ----------------------------------　ヘッダー　---------------------------------- */

header {
	width:100%;
	height:60px;
	background-color:#ff004e;
	position:fixed;
	top:0;
	left:0;
	z-index:300;
}

.logo {
	background:url(../img/head_logo.png) left top no-repeat;
	width:148px;
	height:46px;
	position:absolute;
	top:7px;
	left:50%;
	margin-left:-500px;
	text-indent:-9999px;
	overflow:hidden;
}

#Menu {
	width:749px;
	height:60px;
	position:absolute;
	left:50%;
	margin-left:-249px;
	top:0;
}

#Menu ul li {
	float:left;
}

/* ----------------------------------　メインビジュアル　---------------------------------- */

#Mainvisual {
	width:100%;
	min-width:1000px;
	height:600px;
	position:relative;
	margin-top:60px;
	margin-bottom:32px;
}

.mv_left {
	background:url(../img/mv/mv_left.png) left bottom no-repeat;
	width:854px;
	height:600px;
	position:absolute;
	left:0;
	top:0;
	z-index:10;
}

.mv_right {
	background:url(../img/mv/mv_right.png) left top no-repeat;
	width:603px;
	height:600px;
	position:absolute;
	right:0;
	top:0;
	z-index:11;
}

.mv_front {
	background:url(../img/mv/mainvisual_front.png) center top no-repeat;
	width:100%;
	height:600px;
	position:absolute;
	left:0;
	top:0;
	z-index:13;
}

.mv_front a{
	width:100%;
	height:600px;
	display:block;
}

/* ----------------------------------　コンテンツ　---------------------------------- */

#Contents {
	width:100%;
	padding-bottom:120px;
	clear:both;
}

.head_topics {
	width:1000px;
	font-family: 'Bungee', cursive;
	height:36px;
	color:#f9670a;
	border-bottom:1px solid #f9670a;
	position:relative;
	dislay:block;
	margin:0 auto;
	text-align:left;
}

.head_topics p {
	line-height:36px;
	font-size:2.8rem;
}

.head_topics em {
	text-align:right;
	position:absolute;
	right:0;
	top:0;
	line-height:36px;
	font-size:1.3rem;
	font-weight:bold;
}

#Topics {
	width:1000px;
	margin:24px auto 0;
}

#Topics ul li {
	width:300px;
	height:300px;
	float:left;
	border-radius:15px;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	overflow:hidden;
	position:relative;
}

#Topics ul li a img {
	-webkit-transform: scale(1);
    -moz-transform: scale(1);
	transform: scale(1);
	transition:all 0.3s;
}

#Topics ul li a:hover img {
	-webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
	transform: scale(1.1);
}

#Topics ul li a figcaption {
	position:absolute;
	width:300px;
	height:300px;
	background:rgba(255,255,255,0.85);
	top:0;
	left:0;
	z-index:30;
	opacity:0;
	transition:all 0.3s;
}

#Topics ul li a:hover figcaption {
	opacity:1;
}

#Topics ul li a figcaption p {
	width:300px;
	height:300px;
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	color:#57290c;
	font-size:1.4rem;
	line-height:24px;
	text-shadow: 1px 1px 2px #fff,1px -1px 2px #fff,-1px 1px 2px #fff,-1px -1px 2px #fff,1px 1px 1px #fff,1px -1px 1px #fff,-1px 1px 1px #fff,-1px -1px 1px #fff;
}

#Topics ul li a figcaption p span {
	color:#f9670a;
	font-size:1.65rem;
	line-height:48px;
	font-weight:bold;
}

.mr50 {margin-right:50px;}

.colum_wrap {
	width:1000px;
	margin:36px auto 0;
}

.product_list {
	width:240px;
	float:left;
	margin-right:54px;
}

.head_product_list {
	width:240px;
	font-family: 'Bungee', cursive;
	height:36px;
	color:#f9670a;
	border-bottom:1px solid #f9670a;
	position:relative;
	dislay:block;
	margin:0 auto 24px;
	text-align:left;
}

.head_product_list p {
	line-height:36px;
	font-size:2.8rem;
}

.info_list {
	width:704px;
	float:left;
}

.pro_box {
	width:220px;
	height:220px;
	padding:10px;
	background:#FFF;
	border-radius:10px;
	margin-bottom:20px;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	position:relative;
}

.pro_box a figcaption {
	position:absolute;
	width:220px;
	height:220px;
	top:10px;
	left:10px;
	background-color:rgba(255,255,255,0.8);
	transition:all 0.3s;
	opacity:0;
}

.pro_box a:hover figcaption {
	opacity:1;
}

.head_info_list {
	width:704px;
	font-family: 'Bungee', cursive;
	height:36px;
	color:#f9670a;
	border-bottom:1px solid #f9670a;
	position:relative;
	dislay:block;
	margin:0 auto 24px;
	text-align:left;
}

.head_info_list p {
	line-height:36px;
	font-size:2.8rem;
}

.head_info_list em {
	text-align:right;
	position:absolute;
	right:0;
	top:0;
	line-height:36px;
	font-size:1.3rem;
	font-weight:bold;
}

.daybox {
	width:704px;
	height:200px;
	border-radius:10px;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	margin-bottom:36px;
	position:relative;
	background:#FFF;
}

.day_img {
	width:200px;
	height:200px;
	float:left;
	border-radius:10px 0 0 10px;
	overflow:hidden;
}

.day_img a img {
	transition:all 0.3s;
	opacity:1;
}

.day_img a:hover img {
	opacity:0.7;
}

.day_day {
	position:absolute;
	width:160px;
	height:24px;
	right:24px;
	top:-12px;
	line-height:24px;
	overflow:hidden;
	background-color:#f9670a;
	text-align:center;
	font-family: 'Bungee', cursive;
	color:#FFF;
	font-size:1.8rem;
}

.day_txt {
	width:456px;
	height:152px;
	padding:24px;
	float:left;
	text-align:left;
	color:#6a3906;
	line-height:24px;
	font-size:1.35rem;
}

.day_txt p span {
	color:#f9670a;
	display:block;
	width:456px;
	border-bottom:1px solid #f9670a;
	line-height:36px;
	margin-bottom:12px;
	font-weight:bold;
}

.day_txt p span a {
	color:#f9670a;
	text-shadow:1px 1px 2px rgba(255,126,0,0.2);
	text-decoration:none;
	transition:all 0.3s;
}

.day_txt p span a:hover {
	color:#f9670a;
	text-shadow:1px 1px 7px rgba(255,126,0,0.9);
	text-decoration:none;
}

/* ----------------------------------　フッター　---------------------------------- */

footer {
	width:100%;
	min-width:1000px;
	background-color:#ff004e;
	height:60px;
	position: absolute;
	bottom: 0;
	*left:-1px;
}

.foot_wrap {
	width:1000px;
	height:60px;
	position:relative;
	margin:0 auto;
}

.copyright {
	width:400px;
	height:20px;
	position:absolute;
	color:#fff;
	right:212px;
	top:20px;
	line-height:20px;
	font-size:1.4rem;
	text-align:right;
}

.foot_banner {
	width:200px;
	height:40px;
	position:absolute;
	background:#FFFFFF;
	right:0;
	top:10px;
}

/* ----------------------------------　プライバシー　---------------------------------- */

.privacy {
	width:1000px;
	margin:36px auto;
	color:#6a3906;
	font-size:1.35rem;
	text-align:left;
}

.privacy strong {
	font-weight:bold;
}

/* ----------------------------------　プロダクト　---------------------------------- */

.product_box {
	width:944px;
	height:360px;
	border-radius:10px;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	position:relative;
	margin:0 auto 36px;
	background:#FFF;
	padding:20px 28px;
}

.product_img {
	width:253px;
	height:360px;
	float:left;
	margin-right:36px;
}

.product_txt {
	width:655px;
	height:360px;
	float:left;
}
.product_title {
	width:637px;
	height:56px;
	background:#f9670a;
	display:block;
	line-height:56px;
	font-weight:bold;
	color:#FFF;
	font-size:2.5rem;
	text-align:left;
	padding-left:18px;
	position:relative;
	margin-bottom:18px;
	border-radius:0 0 20px 0 ;
}

.product_title a {
	width:637px;
	height:56px;
	color:#FFF;
	display:block;
	text-decoration:none;
}

.product_txt p {
	text-align:left;
	color:#6a3906;
	font-size:1.3rem;
	margin-bottom:12px;
	line-height:24px;
}

p.eng {
	font-family: 'Bungee', cursive;
	text-align:right;
	position:absolute;
	right:18px;
	height:56px;
	line-height:56px;
	color:#FFFFFF;
	top:0;
	font-size:1.6rem;
}

.product_txt p em {
	display:inline-block;
	width:120px;
	height:24px;
	line-height:24px;
	background:#f9670a;
	border-radius:3px;
	text-align:center;
	color:#FFF;
	margin-right:12px;
}

.contact {
	width:800px;
	margin:0 auto;
	color:#6a3906;
	font-size:1.35rem;
	text-align:left;
}

.contact table {
	background:#fff;
}

.contact table tr td {
	padding:25px;
}

.contact_txt {
	padding:25px;
}

.contact_txt strong {
	font-weight:bold;
	font-size:120%;
	border-bottom:3px solid #6a3906;
	margin-bottom:14px;
}

.recruit {
	width:900px;
	margin:36px auto 60px;
	color:#6a3906;
	font-size:1.35rem;
	text-align:left;
}

.recruit p.head {
	background:#f9670a;
	line-height:36px;
	font-size:130%;
	display:inline-block;
	border-radius:18px;
	color:#fff;
	padding:0 24px;
	margin-bottom:24px;
}

.recruit dl {
	width:800px;
	line-height:24px;
	margin:0 auto 16px;
	background:rgba(255,255,255,1.00);
}

.recruit dl a {
	color:rgba(0,179,255,1.00);
	text-decoration:none;
}

.recruit dl a:hover {
	text-decoration:underline;
}

.recruit dl dt {
	float:left;
	width:100px;
	padding:8px 0 8px 24px;
	background:rgba(255,229,212,1.00);

}

.recruit dl dd {
	float:left;
	width:630px;
	padding:8px 0 8px 24px;
}

a.loglink {
	width:240px;
	height:24px;
	border-radius:13px;
	background:#f9670a;
	display:block;
	line-height:24px;
	color:#fff;
	text-decoration:none;
	font-size:1.4rem;
	margin-left:auto;
	transition:all 0.3s;
	border:1px solid #f9670a;
}

a:hover.loglink {
	background:#fff;
	color:#f9670a;
}


/* エイプリルフール2017 */

.april_header {
	width:100%;
	height:41px;
	position:relative;
}

.april_head_left {
	background:url(../april2017/return.png) left top no-repeat;
	width:240px;
	height:41px;
	position:absolute;
	left:0;
	top:0;
}

.april_head_right {
	background:url(../april2017/head_right.png) left top no-repeat;
	width:170px;
	height:41px;
	position:absolute;
	right:0;
	top:0;
}

.april_pink {
	background:#f64b82;
	width:100%;
	position:relative;
	height:54px;
}

.april_pink_left {
	background:url(../april2017/pink_left.png) left top no-repeat;
	width:320px;
	height:54px;
	position:absolute;
	left:0;
	top:0;
}

.april_pink_right {
	background:url(../april2017/pink_right.png) left top no-repeat;
	width:280px;
	height:54px;
	position:absolute;
	right:0;
	top:0;
}

.april_contents {
	width:100%;
	clear:both;
}

.april_right_block {
	background:url(../april2017/right_block.png) left top no-repeat;
	width:270px;
	height:880px;
	float:right;
	position:relative;
}

.april_left_block {
	margin-right:270px;
}

.april_pankuzu {
	background:url(../april2017/pankuzu.png) left top no-repeat;
	width:100%;
	height:41px;
}

.april_title {
	background:url(../april2017/title.png) left top no-repeat;
	width:100%;
	height:94px;
	margin-bottom:32px;
}

.april_image_box {
	width:100%;
	height:380px;
}

.april_image_block01 {
	background:url(../april2017/image01.jpg) center top no-repeat;
	background-size:contain;
	width:33%;
	height:380px;
	float:left;
}

.april_image_block02 {
	background:url(../april2017/image02.jpg) center top no-repeat;
	background-size:contain;
	width:33%;
	height:380px;
	float:left;
}

.april_image_block03 {
	background:url(../april2017/image03.jpg) center top no-repeat;
	background-size:contain;
	width:33%;
	height:380px;
	float:left;
	position:relative;
}

.april_thum_line {
	background:url(../april2017/thum_line.png) left top repeat-x;
}

.april_thum {
	background:url(../april2017/thum.png) center top no-repeat;
	width:1000px;
	height:120px;
	margin:0 auto;
}

.april_main {
	background:url(../april2017/april_main.jpg) left top no-repeat;
	width:1000px;
	height:1720px;
	position:relative;
	margin:0 auto;

}

.monster {
	background:url(../april2017/monster.gif) left top no-repeat;
	width:308px;
	height:168px;
	position:absolute;
	right:0;
	top:30px;
}

.character {
	background:url(../april2017/character.gif) left top no-repeat;
	width:464px;
	height:144px;
	position:absolute;
	left:140px;
	top:960px;
}

.footer2 {
	width:100%;
	min-width:1000px;
	background-color:#ff004e;
	height:60px;
}

.link1 {
	display:block;
	width:120px;
	height:41px;
	position:absolute;
	left:0;
	top:0;
	text-indent:-9999px;
	overflow:hidden;
}

.link2 {
	display:block;
	width:120px;
	height:41px;
	position:absolute;
	left:120px;
	top:0;
	text-indent:-9999px;
	overflow:hidden;
}

.link3 {
	display:block;
	width:80px;
	height:80px;
	position:absolute;
	left:95px;
	top:285px;
	text-indent:-9999px;
	overflow:hidden;
}

.link4 {
	display:block;
	width:80px;
	height:80px;
	position:absolute;
	left:95px;
	top:535px;
	text-indent:-9999px;
	overflow:hidden;
}

.link5 {
	display:block;
	width:250px;
	height:50px;
	position:absolute;
	left:10px;
	top:660px;
	text-indent:-9999px;
	overflow:hidden;
}

.link6 {
	display:block;
	width:250px;
	height:20px;
	position:absolute;
	left:10px;
	top:824px;
	text-indent:-9999px;
	overflow:hidden;
}

.link7 {
	display:block;
	width:450px;
	height:210px;
	position:absolute;
	left:50%;
	margin-left:-225px;
	top:50px;
	text-indent:-9999px;
	overflow:hidden;
}
