@charset "utf-8";
/* CSS Document */


/**************** body ****************/
body{
	display:none; /*load_fadein/JQuery用*/
	list-style: none;
	font-family:"Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
	font-size: 18px;
	font-weight: 200;
	line-height: 1.6em;
	background: #F4F4F4;
}

a{
	cursor: pointer;
}

h1,h2,h3,h4{
	font-weight: 500;
}


/**************** jQuery ****************/


/* -----スクロールでフェードイン----- */
/* 画面外にいる状態*/
.fadein {
    opacity : 0;
    transform : translate(0, 45px);
    transition : all 1000ms;
}
 /*画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}




/**************** header ****************/
header {
	background-image:url("../img/header_img.jpg");
	background-size: cover;
	color:#1A1918;
	margin: 0 auto;
}

#header_right{
	max-width: 1200px;
	display: flex;
	justify-content :flex-end;
	margin: 0 auto;
}

#header_right_contents{
	width:80%;
	padding:10% 5% 10% 20%;
}

h1{
	font-size: 45px;
	line-height: 1.4em;
	padding:70px 0 40px 0;
	text-shadow:0 0 15px #FFF;
	font-weight: 400;
}

#header_logo img{
	width:100%;
	padding: 0 0 50px 0;
}

header p{
	font-size: 22px;
	line-height: 1.5em;
	text-shadow:0 0 12px #000;
}

#header_bg{
	width:2000px;
	background-size: cover;
	margin: 0 auto;
}

nav{
	width: 100%;
	padding:15px 0;
	position:fixed;
	background-color:rgba(26,25,24,0.85);/*#1A1918*/
	z-index: 3;
}

#header_nav div{
	display: flex;
	justify-content: space-between;
}

#header_nav img{
	width:400px;
	padding: 0 0 0 20px;
}

#header_nav ul{
	display: flex;
	justify-content:flex-end;
}

#header_nav li{
	padding:0 20px 0 0;
}

#header_nav p{
	font-size: 13px;
	color:#F4F4F4;
	text-shadow:none;
	line-height: 3em;
}

#header_nav a,
#header_nav a:active,
#header_nav a:visited{
	color:#F4F4F4;
}

#header_nav br{
	display: none;
}

.arrow-bottom {
	display: block;
	float: right;
	margin: 13px 8px;
	width: 8px;
	height: 8px;
	border: 0px;
	border-top: solid 0.5px #F4F4F4;
	border-right: solid 0.5px #F4F4F4;
	transform: rotate(135deg);
}


@media screen and (max-width:960px) { /*タブレットのcssを記述*/
header {
	background-image:url("../img/header_img_sp.jpg");
}
	
#header_right{
	width: 80%;
	display: flex;
	flex-flow: column nowrap;
	margin: 0 auto;
}

#header_right_contents{
	width:90%;
	padding:120px 10px 80px 10px;
	margin: 0 auto;
}

h1{
	font-size: 30px;
	line-height: 1.4em;
	padding:0 0 20px 0;
}

h1 br{
	display: none;	
	}	
	
#header_logo img{
	width:100%;
	padding:0 0 20px 0;
}

header p{
	font-size: 18px;
	line-height: 1.5em;
}

#header_bg{
	width:1200px;
	background-size: cover;
	margin: 0 auto;
}
	
#header_nav br{
	display: none;
}
}


@media screen and (max-width:780px) { /*タブレット～スマホのcssを記述*/
#header_nav img{
	width:300px;
}
}


@media screen and (max-width:520px) { /*スマホのcssを記述*/
#header_nav img{
	display: none;	
	padding: 0 0 0 0;
}
	
#header_nav ul{
	margin: 0 auto;
}

#header_nav li{
	padding:0 30px 0 0;
}
	
#header_nav p{
	padding:2px 0 5px 0;
	line-height: 1.5em;
}	
	

#header_nav br{
	display: inline;
}

.arrow-bottom {
	float:none;
	margin: 3px auto 0 auto;
}
}




/**************** #intro ****************/
#intro{
	text-align: center;
	padding: 100px 0 150px 0;
}

h2{
	font-size: 30px;
	line-height: 1.4em;
	padding: 40px 0;
}

#intro p{
	padding: 15px 0;
	font-size: 20px;
	line-height: 1.6em;
}

#intro span{
	border-bottom:solid 2px #FFC947; 
}

@media screen and (max-width:520px) { /*スマホのcssを記述*/
#intro{
	width:90%;
	margin: 0 auto;
	padding: 50px 0;
}

h2{
	font-size: 20px;
	line-height: 1.4em;
	padding: 0 0 20px 0;
}
	
#intro p{
	font-size: 15px;
}
}





/**************** #whats_kinomap ****************/
#whats_kinomap{
	margin: 0 auto;
	padding: 80px 0 100px 0;
	background: #1A1918;
	color: #F4F4F4;
}

#whats_kinomap div{
	max-width: 1200px;
	margin: 0 auto;
}


/*******h3見出し共通********/
h3{
	font-size: 40px;
	color:  #FFC947;
	display: flex;
	align-items: center;
	padding: 80px 0 80px 0;
}

h3:before, h3:after {
	border-top: 1px solid;
	content: "";
	flex-grow: 1;
}

h3:before {
	margin-right: 2rem; /* 文字の右隣 */
}

h3:after {
	margin-left: 2rem; /* 文字の左隣 */
}
/********************/


#whats_kinomap ul{
	display: flex;
	flex-flow: row nowrap;
	font-weight: 100;
}

#img_phone{
	width: 100%;
}

#kinomap_logo{
	width: 80%;
	margin: 30px 0;
}

#whats_kinomap_contents{
	max-width: 1200px;
	margin: 0 auto;
	padding: 80px 0;
}

#whats_kinomap_contents span{
	font-size: 30px;
	color:#FFC947;
	line-height: 1.5;
}

#whats_kinomap_contents p{
	text-align: center;
	padding: 10px 0;
	font-weight: 100;
} 

#whats_kinomap_contents img{
	margin: 0 auto;
	width:100%;
	padding:40px 0 0 0;
}

.sp_img{
	display: none;
}


@media screen and (max-width:960px) { /*タブレット～スマホのcssを記述*/
#whats_kinomap{
	padding: 50px 0;
}
	
#whats_kinomap div{
	width:90%;
	margin: 0 auto;
}

#whats_kinomap ul{
	display: flex;
	flex-flow: column nowrap;
	margin: 0 auto;
	text-align: left;
}

#whats_kinomap p{
	font-size: 15px;
	padding: 20px 0;
}	

#whats_kinomap p br{
	display: none;
	}	
	
#img_phone{
	width: 100%;
}

#kinomap_logo{
	display: block;
	width: 80%;
	margin: 0 auto;
}

#whats_kinomap_contents{
	padding:10px 0;		
}
	
#whats_kinomap_contents p{
	font-size: 15px;
	padding: 20px 0 5px 0;
	text-align: left;
} 

#whats_kinomap_contents span{
	font-size: 20px;
	color:#FFC947;
}

#whats_kinomap_contents p br{
	display: none;		
}
	
#whats_kinomap_contents img{
	margin: 0 auto;
	width:100%;
	padding:20px 0 0 0;
}

.sp_img{
	display: block;
}
	
.pc_img{
	display: none;
}
}


@media screen and (max-width:520px) { /*スマホのcssを記述*/
h3{
	font-size: 25px;
	padding: 20px 0 50px 0;
}
	
h3:before {
  margin-right: 1rem; /* 文字の右隣 */
}

h3:after {
  margin-left: 1rem; /* 文字の左隣 */
}
}





/**************** #feature ****************/
#feature{
	max-width: 1200px;
	margin: 0 auto;
	padding: 100px 0;
}

#feature h3{
	color:  #1A1918;
}


#feature ul{
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

#feature li{
	width:48%;
}

#feature li img{
	margin: 0 auto;
	width:100%;
	border: solid 0.5px #1A1918;
}

#feature li p{
	text-align: center;
	padding: 10px 0 30px 0;
}


@media screen and (max-width:960px) { /*スマホ~タブレット用のcssを記述*/
#feature{
	width:90%;
	margin: 0 auto;
	padding: 50px 0;
}
	
#feature ul{
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
	font-size:15px;
}
	
#feature li{
		width: 100%;
}
	
#feature li p{
	padding: 5px 0 30px 0;
}
}




/**************** #how_to_use ****************/
#how_to_use{
	margin: 0 auto;
	padding: 50px 0 100px 0;
	background: #1A1918;
}

#how_to_use h3{
	padding: 100px 0 0 0;
}

#how_to_use div{
	max-width: 1200px;
	margin: 0 auto;
}

#flow_area{
	background: #1A1918;
	padding: 0 0 100px 0;
}

.flow_step{
	width:100%;
	margin: 0 0 40px auto;
	background: #1A1918;
}

h5{
	text-align: center;
	padding:60px 0 40px 0;
}

h5 br{
	display: none;
}

#download{
	max-width: 1200px;
	background: #FFF;
	margin: 0 auto;
	border-radius: 8px;
}

#download ul{
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-around;
	padding: 0 60px 60px 60px;
}

#download li{
	width:45%;
	color:#FFC947;
}

#download li:first-child{
	margin: auto 0; 
}


#download img{
	display: block;
	width:100%;
}

#download img:hover{
	opacity:.4;
	transition: .4s;
}

.slider{
	max-width:1200px;
	margin: 0 auto;
	padding: 0 0 10px 0;
	border-radius: 7px;
	background: #FFFFFF;
}

.slider_list{
	padding:0 250px;
}

.slider img{
	width:100%;
}

.slider p{
	display:inline-block;
	padding:20px 0 10px 0;
	font-size: 14px;
}


/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 40%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: 5%;
	z-index: 2;
}

.slick-next {/*次へ矢印の位置と形状*/
    right: 5%;
	z-index: 2;
}

.slick-prev:before,
.slick-next:before {/*次へ矢印の位置と形状*/
	font-size: 35px;
	color:#2A2A2A;
}

/*ドットナビゲーションの設定*/
.slick-dots{
    position: initial!important;
	bottom: 50px!important;/*ドットの縦位置*/
}

.slick-dots li{
	display:inline-block;
	padding: 1px;
    width:30px;
    height:30px;
}

.slick-dots li button{
    font-size:initial;
    color:initial;
    background:initial;
}
.slick-dots li button:before{
    content:none;
}

.slick-dots li button{
    width:100%;
    height:100%;
    background:gray;
    border-radius:50%;
    color:#fff;
}

.slick-dots li.slick-active button{
    background:#FFC947;
	color: #1A1918;
}


@media screen and (max-width:960px) { /*タブレットのcssを記述*/
#download {
	width:90%;
}	
	
	
#how_to_use{
	padding:50px 0;
}
	
#how_to_use h3{
	padding: 20px 0 0 0;
}

	
#how_to_use div{
	width: 90%;
}
			
.slider{
	width:90%;	
}
	
.slider_list{
	padding:0 20px;
}
}

@media screen and (max-width:520px) { /*スマホのcssを記述*/
#how_to_use{
	padding:50px 0;
}
	
#how_to_use div{
	width: 90%;
}
	
h5{
	padding:40px 20px 20px 20px;
	font-size: 16px;
}
	
h5 br{
	display: inline;
}	


#download{
	width: 90%;
	padding:20px;
}	
	
#download ul{
	padding: 20px 20px 30px 20px;
}

.slick-dots li{
	padding: 0px;
    width:25px;
    height:25px;
}

.slick-dots li button{
    width:100%;
    height:100%;
    background:gray;
    border-radius:50%;
    color:#fff;
}
}





/**************** #lineup ****************/
#lineup{
	max-width: 1200px;
	margin: 0 auto;
	padding: 100px 0 100px 0;
}

#lineup h4{
	text-align: center;
	font-size: 25px;
	padding: 0 0 40px 0;
}

#lineup div{
	display: flex;
	flex-flow: row wrap;
}

#lineup ul{
	width:25%;
	margin: 0 auto;
	padding: 2%;
	text-align: center;
	font-size: 15px;
}

#lineup img{
	width:100%;
}

.item_name{
	padding: 5px 0 2px 0;
}

.iten_no{
	padding: 0 0 5px 0;
}

.item_cart{
	margin :5px 0;
}

.item_cart a{
	display: block;
	padding: 5px;
	background: #1A1918;
	border:0.5px solid #1A1918;
	border-radius: 7px;
	color: #F4F4F4;
}

.item_cart a:hover{
	display: block;
	padding: 5px;
	background: #F4F4F4;
	border:0.5px solid #1A1918;
	color: #1A1918;
	border-radius: 7px;
	transition: .4s;
}

@media screen and (max-width:960px) { /*タブレット用のcssを記述*/
#lineup ul{
	width:50%;
}
	
#lineup img{
	padding: 20px 0 0 0;
}
}

@media screen and (max-width:520px) { /*スマホ用のcssを記述*/
#lineup ul{
	width:90%;
}
	
#lineup img{
	padding: 20px 0 0 0;
}
}




/**************** #contact ****************/
#contact{
	margin: 0 auto;
	padding: 80px 0 100px 0;
	background: #FFDE79;
	color: #1A1918;
}

#contact h4{
	text-align: center;
	font-size: 25px;
	padding:30px 0;
}

#contact p{
	padding: 20px 0;
}

#contact a{
	display: block;
	padding: 10px 0;
	background: #1A1918;
	border:0.5px solid #1A1918;
	border-radius: 8px;
	color: #F4F4F4;
}

#contact a:hover{
	display: block;
	padding: 10px 0;
	background: #FFDE79;
	border:0.5px solid #1A1918;
	border-radius: 8px;
	color: #1A1918;
	transition: .4s;
}

#service{
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	padding: 50px 0 0 0;
}

#service p:first-child{
	font-size:20px;
	font-weight: 500;	
	line-height: 2em;
}

#service ul{
	width:90%;
	margin: 0 auto;
	display: flex;
	flex-flow: row nowrap;
	padding: 20px 0;
}

#service li{
	margin: 0 auto;
	width: 48%;
}

#caution{
	max-width: 1200px;
	margin: 0 auto;
	border: solid 0.5px #BD0003;
	border-radius: 7px;
	background: #F4F4F4;
	color:#BD0003;
	padding: 10px 30px 0 30px;
}

#caution p{
	text-align: left;
}

#caution a{
	display: block;
	text-align: center;
	background:#1A1918;
	border:0.5px solid #1A1918;
	border-radius: 8px;
	color: #F4F4F4;
	margin: 20px 0 10px 0;
}

#caution a:hover{
	display: block;
	padding: 10px 0;
	background: #F4F4F4;
	border:0.5px solid #1A1918;
	border-radius: 8px;
	color: #1A1918;
}


@media screen and (max-width:960px) { /*タブレット用のcssを記述*/
#service,#caution{
	width:90%;
}
}

@media screen and (max-width:520px) { /*スマホ用のcssを記述*/
#contact{
	padding: 40px 0 80px 0;
}
	
#service,#caution{
	width:90%;
}
	
#service ul{
	display: flex;
	flex-flow: column nowrap;
	padding: 0 0 20px 0;
	margin: 0 auto;
}

#service li{
	margin: 0 auto;
	padding:0 0 10px 0;
	width: 100%;
}

#contact p{
	font-size: 14px;
	text-align: left;
}
	
#contact a{
	display: block;
	padding: 10px 0;
	background: #1A1918;
	border:0.5px solid #1A1918;
	border-radius: 8px;
	color: #F4F4F4;
}
	
#caution{
	border: solid 0.5px #BD0003;
	border-radius: 7px;
	color:#BD0003;
	padding: 10px 20px;
}
}






/**************** #caution_text ****************/
#caution_text{
	padding: 80px 0;
	margin: 0 auto;
	width: 100%;
	background: #F4F4F4;
	line-height: 2em;
}

#caution_text h4{
	text-align: center;
	font-size: 25px;
	padding: 0 0 40px 0;
}

#caution_text{
	max-width: 1200px;
}

#caution_text div > p{
	text-align:left;
	padding: 0 0 10px 0;
}


.caution_link{
	display: inline-block;
	background: linear-gradient(transparent 70%, #FFDE79 70%);
	line-height: 1.2em;
	color: #1A1918;
}

.caution_link:hover{
	color: #1A1918;
	opacity: .5;
}

#caution_box{
	border: solid 0.5px #EDEDED;
	border-radius: 7px;
	background:#EDEDED;
	padding: 30px 50px;
	margin: 20px 0;
}

#caution_box li{
	line-height: 1.5em;
	padding:0 0 10px 0;
}


.red{
	color:#BD0003;
}


@media screen and (max-width:960px) { /*タブレット～スマホ用のcssを記述*/
#caution_text{
	width: 90%;
	line-height: 1.3em;
}
	
	
#caution_text p,
#caution_box li{
	font-size: 14px;
}
	
#caution_box{
	padding: 30px 30px;

}
}

/**************** #faq ****************/

#faq{
	margin: 0 auto;
	padding: 80px 0;
	color: #1A1918;
	background: #FFDE79;
}

#faq div{
	max-width: 1200px;
	margin: 0 auto;
}

#faq h4{
	text-align: center;
	font-size: 25px;
	padding:0 0 30px 0;
}


dl{
	margin: 20px 0;
}

.nav-open{
	position: relative;  
	height: 70px;
	background-color: #F4F4F4;
	color: #1A1918;
	padding: 18px 20px 18px 20px;
	border-radius: 7px;
}

.nav-open:after {/* 閉じている時/擬似要素で下三角形を作成 */
	content: "";
	display: inline-block;
	position: absolute;
	top: 45%;
	right: 30px;
	width: 10px;
	height: 10px;
	border-right: 3px solid #1A1918;
	border-bottom: 3px solid #1A1918;
	transform: translateY(-50%) rotate(45deg);
	transition: .3s;
}

.nav-open.open:after {/* 開く時にopenクラスを付与 */
	transform: rotate(225deg);
}

dd{
	display:none;
	padding:20px;
}

.q_text{
	padding:20px 20px 10px 20px;	
}

.faq_q{
	display: inline-block;
	background:#FFDE79;
	border-radius: 3px;
	width: 35px;
	height: 35px;
	color: #1A1918;
	font-size:17px;
	text-align: center;
	line-height: 34px;
	margin: 0 10px 0 0;
}

.faq_a{
	display: inline-block;
	background: #1A1918;
	border-radius: 3px;
	width: 35px;
	height: 35px;
	color: #F4F4F4;
	font-size:17px;
	text-align: center;
	line-height: 34px;
	margin: 0 10px 0 0;
}

.q_text a{
	display: inline-block;
	background: #1A1918;
	border: solid 0.5px #1A1918;
	border-radius: 3px;
	margin: 2px;
	padding:0.5px 5px;
	color:#F4F4F4;
}

.q_text a:hover{
	border: solid 0.5px #1A1918;
	background: #FFDE79;
	color: #1A1918;
	border-radius: 3px;
	transition: .5s;
}

#faq_more{
	text-align:center; 
	padding:30px 0 0 0;
}

#faq_more a{
	display: block;
	width:30%;
	margin: 0 auto;
	padding: 5px;
	background: #1A1918;
	border:0.5px solid #1A1918;
	border-radius: 7px;
	color: #F4F4F4;
}

#faq_more a:hover{
	display: block;
	padding: 5px;
	background: #F4F4F4;
	border:0.5px solid #1A1918;
	color: #1A1918;
	border-radius: 7px;
	transition: .4s;
}





@media screen and (max-width:960px) { /*タブレット～スマホ用のcssを記述*/
#faq div{
	width:90%;
}

.nav-open{
	height: 30%;
	padding: 18px 55px 18px 20px;
	border-radius: 7px;
	font-size:14px;
}
	
dd{
	padding:20px 0;
}
	
.q_text{
	font-size:14px;
	padding:20px 0 10px 0;	
}
	
#faq_more{
	text-align:center; 
	padding:30px 0 0 0;
}

#faq_more a{
	display: block;
	width:50%;
	margin: 0 auto;
	padding: 5px;
	background: #1A1918;
	border:0.5px solid #1A1918;
	border-radius: 7px;
	color: #F4F4F4;
}

#faq_more a:hover{
	display: block;
	padding: 5px;
	background: #F4F4F4;
	border:0.5px solid #1A1918;
	color: #1A1918;
	border-radius: 7px;
	transition: .4s;
	opacity: 1;
}
}





/**************** #footer ****************/
footer{
	margin: 0 auto;
	text-align: center;
	background: #1A1918;
	color :#F4F4F4;
	font-size: 14px;
	padding: 20px 0;
}

#pageTop {
      position: fixed;
      bottom: 20px;
      right: 20px;
}

#pageTop i {
      padding-top: 12px
}
     
#pageTop a {
      display: block;
      z-index: 999;
      padding: 3px 0 0 1px;
      border-radius: 30px;
      width: 45px;
      height: 45px;
      background-color: #FFC947;
      color: #1A1918;
      font-weight: bold;
      text-decoration: none;
      text-align: center;
}

#pageTop a:hover {
      text-decoration: none;
      opacity: 0.7;
}


/**************** END ****************/