@charset "utf-8";

/* ================================================
 base
--------------------------------------------------- */
.sp-only {
	display: block;
}
h2{
	padding-bottom: 4vw;
	font-size: 6.4vw; line-height: 1.75;
}
.container{
	width: 92%;
	margin: 0 auto;
}
.container .box{
	width: 100%;
	float: none;
}
.unit{
	opacity: 0;
	transform: translateY(20px);
	-webkit-transition: 0.8s;
	transition: 0.8s;
}
.unit.view{
	opacity: 1;
	transform: translateY(0);
}

/*=================================================
 layout
--------------------------------------------------- */
#wrap {
	min-width: 0;
	background-image: url("../image/bg_sp.jpg");
}
header{
	width: 100%; height: auto;
	position: relative; left: auto; top: auto;
	background-color: #FFF;
}
header h1{
	width: 60px; height: 60px;
	margin: 0 auto;
	position: relative; left: auto; top: auto;
	background-color: rgba(255,255,255,1.00);
}

#main{
	width: 100%; height: 66.67vw; /*height: calc(100vh - 60px);;*/
	position: relative;
}
#main .mv-wrap{
	width: 100%; height: 100%;
	position: relative; left: auto; top: auto;
	transform: translateX(0);
}
#main .mv-block{
	width: 100%; height: 100%;
}
#main .mv-wrap .item{
	width: 100%; height: 66.67vw;
	background-size: auto 100%;
}

#main .catch{
	background-image: url("../image/main_sp_text.png");
	background-size: auto 100%;
}

#concept{
	width: 92%;
	margin: 0 auto; padding: 4.8vw 0;
}
#concept .txt{
	font-size: 4.8vw; line-height: 1.75; text-align: left;
}
#concept .pic{
	padding-top: 0;
	width: 100%; height: 30vw;
	background-size: 150% auto;
}

#topics{
	padding: 8vw 0 4vw 0;
}
#topics .container.twitter{
	margin-bottom: 20vw;
	position: relative;
}
#topics .container .head{
	padding-bottom: 10px;
	border-bottom: #e2e8ec 1px solid;
}
#topics .container .head p{
	font-size: 5.2vw; line-height: 1.6;
	text-indent: 2.2em;
}
#topics .container .foot{
	bottom: -4vw;
}


#company{
	padding: 8vw 0 4vw 0;
}
#company .container .photo{
	width: 100%;
	float: none;
	margin-top: 12vw;
}
#company .container .photo p{
	width: 76vw;
	margin: 0 auto;
	margin-bottom: 4.8vw;
}
#company h3{
	padding: 8vw 0 1.2vw 0;
	font-size: 4.8vw; text-align: center;
}
#company table{
    width: 100%;
    border-collapse: collapse;
}
#company th{
	width: 20vw;
	padding: 2vw 1.2vw 1.6vw 1.2vw;
	font-size: 3.6vw;
}
#company td{
	padding: 2vw 1.2vw 1.6vw 1.2vw;
	font-size: 3.6vw;
}
#company tr:nth-child(1) th{
	border-top: #999 1px solid;
}
#company tr:nth-child(1) td{
	border-top: #cecece 1px solid;
}

#contact{
	margin-bottom: 30vw;
	padding: 4vw 0;
}
#contact a{
	width: 76vw; height: auto;
	margin: 0 0 4vw 0;
	background-position: 1vw center;
	font-size: 5vw;
}
#contact a::after{
	display: none;
}
#contact a span{
	padding: 4px 2vw 0 8vw;
	padding-top: 2px;
	color: #000;
}

/* ================================================
 fotter
--------------------------------------------------- */
footer div{
	width: 16vw;
	margin: 0 auto;
}
footer p{
	padding: 2.4vw 0 1.6vw 0;
	font-size: 1.6vw;
}

/* ================================================
 menu
--------------------------------------------------- */
#trigger-wrap{
	width: 36px; height: 30px;
	position: fixed; right: 12px; top: 15px; z-index: 30000;
	cursor: pointer;
}
#trigger,
#trigger span {
	display: inline-block;
	box-sizing: border-box;
	-webkit-transition: 0.5s;
	transition: all 0.5s;
}
#trigger {
	width: 36px; height: 30px;
	position: relative;
}
#trigger span {
	width: 100%; height: 4px;
	position: absolute; left: 0;
	background-color: #939393;
	border-radius: 4px;
}
#trigger:hover span {
	background-color: #939393;
}
#trigger span:nth-of-type(1) {
	top: 0;
}
#trigger span:nth-of-type(2) {
	top: 13px;
}
#trigger span:nth-of-type(3) {
	bottom: 0;
}
.menu-open #trigger{
	-webkit-transform: rotate(360deg);
	transform: rotate(360deg);
}
.menu-open #trigger span:nth-of-type(1) {
	-webkit-transform: translateY(13px) rotate(-45deg);
	transform: translateY(13px) rotate(-45deg);
}
.menu-open #trigger span:nth-of-type(2) {
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}
.menu-open #trigger span:nth-of-type(3) {
	opacity: 0;
}

#menu-wrap{
	height: 100%;
	position: fixed; right: 0; top: 0; z-index: 20000;
}
#menu{
	width: 0; height: 100%;
	overflow: hidden;
	background-color: rgba(255,255,255,0.90);
	-webkit-transition: 0.5s;
	transition: all 0.5s;
}
.menu-open #menu{
	width: 320px;
}
#menu ul{
	width: 300px; height: 100%;
	padding: 100px 0 0 20px;
}
#menu li{
	list-style: none;
	padding-bottom: 20px;
}

/* ================================================
 .modal
--------------------------------------------------- */
.modal-content{
	padding: 5vw;
}
.modal-content h3{
	font-size: 4.8vw;
}

/*=================================================
 #page
--------------------------------------------------- */
#page h2{
	
}
#page section{
	padding: 8vw 0 4vw 0;
	text-align: left;
	font-size: 3.2vw;
}
#page section input,
#page section textarea{
	padding: 0.25em;
}
#page section .thanks h3{
	font-size: 4vw;
}

/*=================================================
 #contact-form
--------------------------------------------------- */
#contact-form{
	font-size: 3.2vw;
}
#contact-form input,
#contact-form textarea{
	padding: 0.25em;
}
#page .tel_box{
	width: auto; height: auto;
  margin-bottom: 0;
}
#page .tel_box img{
	width: 100%;
	display: block;
}
#page .tel_box a{
	width: auto; height: auto;
  background: none;
}
#page .email_box{
	width: auto; height: auto;
	background: none;
}
#page .email_box img{
	width: 100%;
	display: block;
}

/*
 sale
--------------------------------------------------- */
#sale h2{
	padding-bottom: 0;
}
#sale h3{
    padding-bottom: 1em;
    font-size: 4.8vw; letter-spacing: 0;
}
#sale h4{
    padding: 4px 0.5em 3px 0.5em; margin: 20px 0 20px 0;
    font-size: 4vw;
}

.sale-item{
	padding-bottom: 20px;
	display:  table;
}
.sale-item h5{
	font-size: 4vw;
}
.sale-item .price{
	font-size: 3.6vw;
}
.sale-item .price span{
	font-size: 2.4vw;
}
.sale-item .cnt select{
	width: 4em;
	text-align: center;
}
.sale-item .detail{
	font-size: 3.2vw;
}
.sale-notes h5{
	font-size: 3.6vw;
}
.sale-notes p{
	font-size: 3.2vw;
}
.sale-notes li{
	font-size: 3.2vw;
}
.sale-conf{
	
	margin-bottom: 3.2vw;
	text-align: center;
}
.sale-conf .sale-conf-box{
	display: block;
	padding: 2.4vw 8vw;
	border-radius: 5px;
}
.sale-conf .sale-conf-box span{
	margin-top: 0.25em;
	display: block;
	text-indent: -0.5em; line-height: 1.5;
}
