@charset "UTF-8";
/* Scss Document */
.clearfix:after { content: ""; display: block; clear: both; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.disable { -webkit-animation: none; animation: none; cursor: default; opacity: 0.5; }
.disable img:hover { opacity: 1; }

a img:hover { opacity: 0.8; }

.pc {
	display: inline;
}

.sp { display: none; }

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1;
	font-feature-settings: "palt" 1;
	text-align: justify;
}

html {
	font-size: 13px;
	color: #000000;
}

ul { list-style: none; padding: 0; margin:0; -webkit-margin-before: 0; -webkit-margin-after: 0; -webkit-margin-start: 0; -webkit-margin-end: 0; -webkit-padding-start: 0; }

dd { -webkit-margin-start: 0; }

img { max-width: 100%; }

a {
	display: inline-block;
	color: #6966fe;
}

h1, h2, h3, h4, h5 {
	margin-top: 10px;
	margin-bottom: 10px;
	text-align: center;
	margin-left: 0px;
}

p.lead {
	line-height: 1.3;
	margin-bottom: 2em;
	font-size: medium;
}

.half li { float: left; width: 50%; margin:30px 0;

}
.half li:nth-child(odd) { padding-right: 0px; }
.half li:nth-child(even) { padding: 0px 0 0 0px; }

.half li .story { padding:80px 0 0 0;}

.frame1 { -moz-border-image: url("../img/com_wind.png") 60 fill; -webkit-border-image: url("../img/com_wind.png") 60 fill; -o-border-image: url("../img/com_wind.png") 60 fill; -ms-border-image: url("../img/com_wind.png") 60 fill; border-style: solid; border-width: 60px; }

.frame2 { -moz-border-image: url("../img/spec_bg.jpg") 80 fill; -webkit-border-image: url("../img/spec_bg.jpg") 80 fill; -o-border-image: url("../img/spec_bg.jpg") 80 fill; -ms-border-image: url("../images/frame2.png") 80 fill; border-style: solid; border-width: 40px; position: relative; }


@media all and (-ms-high-contrast: none) { .frame1 { background: rgba(255, 255, 255, 0.6) url(../images/frame_back.png) right 30px bottom 30px/223px no-repeat; border: none; border-radius: 20px; padding: 60px; }
  .frame2 { background: #9d853a url(../images/frame_back.png) right 30px bottom 30px/223px no-repeat; border: none; border-radius: 20px; padding: 40px; }
  .frame2:after { content: none; } }
.tbl_red { background: url(../images/com_tbl_bg_red.png); border: 3px solid #9d853a; }

.tbl_green { background: url(../images/com_tbl_bg_green.png); border: 3px solid #9d853a; }

.tbl_purple { background: url(../images/com_tbl_bg_purple.png); border: 3px solid #9d853a; }

#system {
	padding-top: 0px;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 50px;
}
#system h2 {
	margin: 50px 0 30px 0;
}
	
.detail { margin: 50px 0 30px 0; }
.detail li { float: left; width: 50%; margin-bottom: 40px; }
.detail li:nth-child(odd) { clear: both; }
.detail li:nth-child(even) { text-align: right; }
.detail li:last-child, .detail li :nth-last-child(2) { margin-bottom: 0; }
.detail li h3 { width: 100%; max-width: 446px; min-height: 113px; background: url(../img/com_subttl_bg.png) no-repeat; font-size: 24px; padding: 30px 0 0 40px; margin-left: -44px; line-height:1.4; }
.detail li p { line-height: 1.625; }
.detail li img { box-shadow: 2px 3px 2px 2px rgba(0, 0, 0, 0.4); }




header, main, section, article, footer { width: 100%; display: block; overflow: hidden; }

.inner {
	width: 1080px;
	max-width: 100%;
	padding-top: 0;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 30px;
	margin: 0 auto;
	position: relative;
	text-align: center;
}

#gnavi{
	position: absolute;
	top: 37px;
	right: 30px;
	height: 39px;
}
#gnavi li {
	float:left;
}

header {
	background: url(../img/head_bg.jpg) right top no-repeat;
	width: 100%;
	max-width: 100%;
	height: 80px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color:#FFF;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
}

.logo { float:left;  }

main {
	margin-top: 80px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 30px;
	background: url(../img/main_img.jpg) center top/1920px no-repeat;
}



	
#sec_01 #prologue {
	height: 613px;
}
#sec_01 h1, #sec_04 h1 {
	text-align:center;
	margin: 80px 0 30px 0;
}
#sec_02 h1 {
	text-align:center;
	margin: 60px 0 30px 0;
}
#sec_03 h1 {
	text-align: center;
	margin-top: 40px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 20px;
}

#about{ text-align:center;
background: url(../img/head_bg.jpg) left -700px no-repeat;
}
.item{
	margin-top: 0px;
	margin-right: 3%;
	margin-left: 5%;
	margin-bottom: 50px;
	font-size: 12px;
	font-weight: bold;
}
.item figcaption{
	text-align: left;
	float: none;
	line-height: 1.5;
	
	}

.item a{
	text-align: right;
	float: right;
}
p.box {
	margin:20px 0;
   border-bottom: 1px solid #d6d6d6;
}

#pattern{ margin: 35px auto;

}

#pattern li{
	display: inline;
	margin: 0 4%;
	
}
#pattern li img {
  vertical-align: middle;
}




#sec_02 {
	background: url(../img/detail_bg.jpg) center top/1920px no-repeat;
	margin-top: 20px;
}
#detail { padding-top:30px; height:521px;
}

#detail .left{
	margin-top:70px;
	margin-left:-10%;
}

#desing {
	position: relative;
}

.de_img {
	position: absolute;
z-index: 1;
top: 2925px;
left:  20%;
}
.box2 {
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	border-bottom: 1px solid #d6d6d6;
	width: 380px;
	height: 100%;
	font-size: 12px;
	line-height: 2;
	border-top: 1px solid #d6d6d6;
	padding-top: 30px;
	padding-right: 40px;
	padding-left: 40px;
	padding-bottom: 30px;
	vertical-align : middle;
	text-align: left;
	padding-left: 40px;
	}
#cloth, #sewing {
	overflow:visible;
}
.di_paginator {
	width: 38px;
	height: 32px;
	margin-left: 48.5%;
	margin-top:-22px;
	margin-bottom:30px;
	background: transparent url('../img/paginator.png') 0 0 no-repeat;

}
#shop .btn_white {
	width: 174px;
	height: 36px;
	padding: 12px;
	background: url('../img/shop_btn.png') no-repeat;
	color: #000;
	font-size: 14px;
}
#shop {
	text-align: center;
	color: #fff;
	background: url(../img/shop_bg.jpg) center top/1883px no-repeat;
	background-size: cover;
	padding-bottom: 30px;
}
#shop a { text-decoration:none;
}
#shop .box{ 
	width: 380px; 
	margin: 20px auto;
}
#shop h4 {
	font-size:14px;
	font-weight:normal;
	}
li.shopinfo{
	font-size: 12px;
	margin: 10px 0;
	line-height: 1.5;
}

#sec_03 { background-color: #000000;}


.fb-container {
	width: 500px;
	margin-top: 10px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
	
	}
	
#page_top{
	width: 50px;
	height: 50px;
	position: fixed;
	right: 0;
	bottom: -51px;
	opacity: 1;
	z-index: 1;
}
#page_top a{
  width: 50px;
  height: 50px;
  text-decoration: none;
}


footer { color: #222; background: url(../img/foot_bg.jpg) center top/1883px no-repeat;}
footer .banner { -moz-background-clip: padding; -webkit-background-clip: padding; background-clip: padding-box; background-color: rgba(255, 255, 255, 0.6); border: 10px solid rgba(255, 255, 255, 0.3); border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px; padding: 10px; }
footer .banner li { display: table-cell; padding-right: 8px; }
footer .banner li:last-child { padding-right: 0; }
footer .banner:hover { opacity: 0.8; }
footer .banner:hover img:hover { opacity: 1; }
footer .note {
	margin-top: 5px;
	text-align: right;
}
footer .copyright {
	float: right;
	display: block;
	font-size: 11px;
	color: #fff;
	line-height: 1.8;
	padding: 25px 0;
	text-align: right;
	font-style: italic;
}
footer .copyright span{
	font-size: 14px;
	margin-bottom: 5px;
}
footer .note .inner .logo,
footer .note .inner .logo2
 { float: right; display: block; margin: 20px auto; }
footer .note .inner .logo img,
footer .note .inner .logo img2
 { margin: 0; }


/* CONTACT */

.formArea{
	padding-top:30px;
	border:solid 1px #b3b3b3;
}

.page_mailform {
	margin-top: 80px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0px;
	background: url(../img/head_bg.jpg) center 80px no-repeat;
	background-size: cover;
}
#contact h1 {
	margin-top:30px;
}


.text_rap{	
	line-height: 24px;
	font-size:12px;
}
.thanks {
	height: 600px;
}

.red { color:#dd1313;
}

#contact_main .formArea ul li p {
	display: inline-block;
	vertical-align: middle;
	text-indent: 0;
	width: 16em;
	line-height: 14px;
	text-align: left;
	font-size: 12px;
}
.text_01,
select, textarea { /* 1 */
  overflow: visible;
  padding: 8px 5px;
    background: #d4d9e3;
	font-size: 1rem; 
    border: none;
	width:250px;
	vertical-align: middle;
}
.text_02 { /* 2 */
  overflow: visible;
  padding: 8px 5px;

	font-size: 1rem; 
    border: none;
	width:250px;
	vertical-align: middle;
}

.radio_01 {
	width: 250px;
	display: inline-block;
}
	

#contact_main .btn_check {
    background: url(../img/btn_check.png) no-repeat;
	background-size: contain;
    width: 174px;
    height: 38px;
    border: none;
    border-radius: none;
    cursor: pointer;
}
#contact_main .btn_area {

	text-align: center;
	margin-top: 40px;
}
.btn_back, .btn_send{
	background: url(../img/btn_bg.png) no-repeat;
	width: 174px;
    height: 38px;
	border: none;
	border-radius: none;
    cursor: pointer;
	font-family: Georgia;
	color: #ffffff;
	font-size: 20px;
	font-weight: 400;
	line-height: 14px;
	text-shadow: 0px 2px 4.75px rgba(0, 0, 0, 0.22);
	transform: scale(0.844,0.844);
}


.parallax-window {
     min-height: 300px;
     background: transparent;
}

.parallax-slider {
     top: 0;
     left: 0;
}
.btn_lang{
	background: url(../img/btn_lang.png) no-repeat;
	background-size: contain;
	height: 20px;
	color: #FFF;
	width: 125px;
	font-size: 10px;
	padding: 5px;
	margin-top: 10px;
	margin-right: 3px;
	margin-left: 0px;
	margin-bottom: 0;
	float: right;
}
.btn_lang a{
	color: #FFF;
	text-decoration:none;
}
.btn_lang a:hover{ opacity: 0.8; }

@media screen and (max-width: 1080px) { html { font-size: 12px; }

header {
	background: url(../img/head_bg.jpg) right top no-repeat;
	width: 100%;
	max-width: 100%;
	height: 100px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;
	background-color:#FFF;
	box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
}

#gnavi{
	position: absolute;
	top: 65px;
	right: 0px;
	height: 39px;
	
}
#gnavi img{

}
#gnavi li{
	display:inline-block;
	float:none;
}
#gnavi li:last-child {float:right; margin-right:30px;}



#pattern li{
	display: inline;
	margin: 0 3%;
	
}

#pattern li img {
  vertical-align: middle;	
  width:25%;
}

  p.lead { font-size: 16px; line-height: 1.625; }
  .detail { padding: 0px; margin:0px;}
  .detail li { float: left; width: 50%; margin-bottom: 0px; }
  .detail li:nth-child(even) { padding-left: 5%; }
  .detail li h3 { zoom: 0.8; background: url(../img/com_subttl_bg.png) right center/cover no-repeat; font-size: 24px; padding: 13px 30px; margin-left: 0; }
  
  main { 
  margin-top: 0px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 30px;
	background: none;

	 }
  #sec_01 #prologue { margin-bottom: 0px; height: 430px;
  background: url(../img/main_img.jpg) center top no-repeat;
  background-size: cover;}

  
.spec .product li:nth-child(odd) dl dt,
 .spec .product li:nth-child(odd) dl dd { 
 display: block; 
 float: left;
  }

.item{
	display: inline-block;
	margin-top: 0px;
	margin-right: 3%;
	margin-left: 5%;
	margin-bottom: 30px;
	width:40%;
}
  
  footer { color: #222; }
  footer .banner { -moz-background-clip: padding; -webkit-background-clip: padding; background-clip: padding-box; background-color: rgba(255, 255, 255, 0.6); border: 10px solid rgba(255, 255, 255, 0.3); border-radius: 20px; -webkit-border-radius: 20px; -moz-border-radius: 20px; padding: 10px; }
  footer .banner li { display: table-cell; padding-right: 8px; }
  footer .banner li:last-child { padding-right: 0; }
  footer .note { margin-top: 40px; } }

@media screen and (max-width:1040px) {  
  .de_img {
	display:none;
}
}

@media screen and (max-width: 768px) {  
  .de_img {
	  display: block;
	position: absolute;
	z-index: 1;
    top: 2705px;
    left: 60px;
}
}


@media screen and (max-width: 640px) {
	
	.fb-container {
		width: 100%;
		max-width: 500px;
	}

	header {
	width: 100%;
	max-width: 100%;
	height: 30px;
	position: relative;
	top: 55px;
	left: 0;
	z-index: 9999;
	background-color: transparent;
}
h1 img { width:200px; }
h2 img { height:28px; }

#prologue{
	
	}
	
#about{ text-align:center;
background: url(../img/head_bg.jpg) left 0px no-repeat;
background-size:150% auto;
}
	
#sec_01 h1, #sec_02 h1, #sec_03 h1 {
	text-align:center;
	margin: 30px 0 10px 0;
}
#sec_02 article { margin: 0px 0px 40px 0px; }

.di_paginator {
	width: 38px;
	height: 32px;
	margin-left: 46%;
	margin-top:-22px;
	margin-bottom:30px;
	background: transparent url('../img/paginator.png') 0 0 no-repeat;

}

.box2 {
	margin-top: 10px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 10px;
	border-bottom: 1px solid #d6d6d6;
	width: 100%;
	height: 100%;
	font-size: 13px;
	line-height: 2;
	border-top: 1px solid #d6d6d6;
	padding: 20px 5px;
	vertical-align : middle;
	text-align: left;
	padding-left: 0px;
	}
	

#detail .left{
	margin-top:40px;
	margin-left:0;
}

#detail { padding-top:30px; height:380px; background: url(../img/detail_bg.jpg) center top/180% no-repeat; background-size:cover;
}
#sec_02 {
	background: none;
	margin-top: 20px;
}

.item{
	display: inline-block;
	margin-top: 0px;
	margin-right: 3%;
	margin-left: 5%;
	margin-bottom: 30px;
	width:auto;
}


  html { font-size: 12px; }
  p.lead { font-size: 12px; line-height: 1.5; text-align: left; }
  p.lead br { display: none; }
  .half li { float: none; width: 90%; margin: 0 auto; }
  .half li:nth-child(odd) { padding-right: 0; }
  .half li:nth-child(even) { padding-left: 0; }
  .half li:not(:last-child) { margin-bottom: 20px; }
  
#products .half li { float: left; width: 50%; margin: 0 auto; }
  
  /* .frame1 { -moz-border-image: url("../images/frame1.png") 40; -webkit-border-image: url("../images/frame1.png") 40; -o-border-image: url("../images/frame1.png") 40; -ms-border-image: url("../images/frame1.png") 40; border-width: 40px; background: url(../images/frame_back.png) right bottom / 111.5px no-repeat; } .frame2 { &:after { content: ""; display: block; width: 111.5px; height: 160.5px; background: url(../images/frame_back.png) center center / contain no-repeat; position: absolute; right: -10px; bottom: -10px; } } */
  .frame1 { -moz-border-image: none; -webkit-border-image: none; -o-border-image: none; -ms-border-image: none; border-width: 0; background: rgba(0, 0, 0, 0.6); border-radius: 10px; padding: 10px; }
  .frame2 { -moz-border-image: none; -webkit-border-image: none; -o-border-image: none; -ms-border-image: none; border-style: none; border-width: none; background: rgba(255, 255, 255, 0.6); border-radius: 0px; padding: 10px; }
  .frame2:after { content: none; }
  .detail { padding: 30px 20px; }
  .detail li { float: none; width: 100%; margin-bottom: 30px; }
  .detail li:nth-child(odd) { margin-bottom: 0; }
  .detail li:nth-child(even) { padding-left: 0; }
  .detail li p { line-height: 1.5; }
  .inner { padding: 0 3%; }
  #prologue .switch img { width: 64px; height:64px;}
  #prologue .logo { width: 350px; margin: 0 auto; }
  
  header .icon li { width: 32px; margin: 0px 0 0 5px; }
  main { margin:0; }
  #sec_01 #prologue { margin-bottom: 0px; height:230px; background: url(../img/main_img_sp.jpg) center top/180% no-repeat; background-size:cover; }
  #sec_01 h1 {  }
 

  #sec_02 #gamemode { margin-bottom: 40px; }
  #sec_02 #visual { margin-bottom: 20px; }
  #sec_02 #visual figure { width: 106%; margin-left: -3%; }
  #sec_02 #visual .desc { border-radius: 15px; padding: 20px 15px; }
  #sec_02 #visual .desc h3 { font-size: 18px; }
  #sec_02 #visual .desc p { line-height: 1.5; }
  #sec_03 { background: url(../img/gallery_bg.jpg) center top/180% no-repeat; }
  #sec_03 #variation { margin-bottom: 40px; }
  #sec_03 #network { margin-bottom: 20px; }
  #sec_03 #network h2:after { width: 672px; height: 179px; top: -32px; margin-left: -336px; }
  
  footer .banner { background-color: rgba(255, 255, 255, 0.3); border: 0; border-radius: 10px; -webkit-border-radius: 10px; -moz-border-radius: 10px; padding: 10px; }
  footer .banner li { float: left; display: block; width: 23.5%; padding: 0; margin-bottom: 5px; }
  footer .banner li:first-child { width: 49%; margin-right: 2%; }
  footer .banner li:nth-child(2) { margin-right: 2%; }
  footer .banner li:nth-child(3) { margin-right: 0; }
  footer .banner li:nth-child(4) { clear: both; margin-right: 2%; }
  footer .banner li:nth-child(5) { margin-right: 2%; }
  footer .banner li:last-child { margin-right: 0; }
  footer .note { margin-top: 20px; padding-bottom: 10px; }
  footer .note .inner { text-align: center; }
  footer .note .inner .copyright { float: none; font-size: 10px; line-height: 1.5; padding: 20px 0; }
  footer .note .inner .logo { float: right; width: 60px; margin: 0 auto; }
  footer .note .inner .logo2 { float: right; width: 60px; margin: 5px auto; }
   }

.slicknav_menu {
 display:none;/*PC時は非表示*/
}
@media screen and (max-width: 750px) {
header {
 display:none;/*モバイル時は非表示*/
}
 .slicknav_menu {
 display:block;/*モバイル時は表示*/}
 
 .de_img {
	 display:none;
}
main { margin-bottom: 30px; }

.pc { display: none !important; }
.sp {
	display: inline !important;
}

.page_mailform {
	margin-top: 0px;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0px;
	background: url(../img/head_bg.jpg) center 0px no-repeat;
	background-size: cover;
}
#contact_main .formArea ul li p {
	display: inline-block;
	vertical-align: middle;
	text-indent: 0;
	width: 250px;
	line-height: 14px;
	text-align: left;
	font-size: 12px;
	margin-top: 20px;
}

.thanks {
	height: 300px;
}

}
