


@media screen and (max-width: 845px) {
	
*{
	margin: 0;
	padding: 0;}
	
img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	-webkit-backface-visibility: hidden;
}
 
/* ここから通常のCSS */

#warraper{
	margin: 0;
	padding: 0;
}	


.fixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
	
/**********Base**********/

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td{
	margin : 0;
	padding : 0;
}	
	

.sp {
	display: block !important;
}
	.pcc {
	display: none !important;
}
.pc {
	display: none !important;
}
	
/* for modern brouser */
.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	overflow: hidden;/* 隙間対応 */
	font-size: 0.1em;/* 隙間対応 */
	line-height: 0;/* 隙間対応 */
}
/* IE7,MacIE5 */
.clearfix {
	display: inline-block;
}
/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/**/

body {
	margin: 0px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 1em;
	line-height:1.5em;
	letter-spacing: 0.8pt;
	color: #333333;
	background-color:#ffffff;
	-webkit-text-size-adjust: 100%;
}


A{text-decoration:none;
	color: #a50b5b;}
/*A:visited {color:#a50b5b;}*/
A:hover {text-decoration:underline; color:#a50b5b;}

.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}

.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15{margin-bottom: 15px;}
.mb20{margin-bottom: 20px;}
.mb30{margin-bottom: 30px;}
.mb40{margin-bottom: 40px;}
.pl50 {padding: 10px 15px;}
.size16{
	font-size: 1em;}
		
.size15{
	font-size: 0.94em;}

/*========= ローディング画面のためのCSS ===============*/
#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 9999;
	text-align:center;
	color:#fff;
}

#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
 /* Loading アイコンの大きさ設定　*/
  #splash_logo img {
    width: 250px; }

/* fadeUpをするアイコンの動き */

.fadeIn{
animation-name: fadeInAnime;
animation-duration:2.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
/*=============
slider
=============*/
.slide_box {
	position:relative;
}
.top_logo{
	z-index:10;
	position:absolute;
	left:2%;
	top:3%;
}
.image-vw {
	width : 35vw ; 
}
.full_c  {
	z-index:11;
	position:absolute;
	height: auto;
	width:100%;
	left: 0;
	top:72%;
}
.image_c{width :93vw;}

.full div {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	height: 100vh;
	margin: 0;
}
.full div.img01 {
	background-image: url("../image/slide04mm.jpg");
	background-size: cover;
}
.full div.img02 {
	background-image: url("../image/slide05mm.jpg");
	background-size: cover;
}
.full div.img03 {
	background-image: url("../image/slide08_mm.jpg");
	background-size: cover;
}

/************header***************/

.site-header{
    background: #fff;
    display: flex;
    padding: 10px 10px 5px;
	background: rgba(255,255,255,0);
    position: fixed;
    justify-content: space-between;
    width: 100%;
	height: 50px;
	z-index: 9999;
}
.site-logo {
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.gnav_menu{
    display: none;
}
.gnav_menu_item{
    margin-left: 20px;
	list-style: none;
}
.gnav_menu_item a{
    color: #333;
    text-decoration: none;
}
.gnav_menu_item a:hover {
    color: #333;
    text-decoration: underline;
}	
	
.site-header.transform{
    background-color: #000000;
    padding: 10px 10px;
	 position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
}
	
.site-header.transform .gnav_menu_item a{
    color: #fff;
    text-decoration: none;
}
.site-header.transform .site-logo {
	background-image: url("../image/top_logo_w.png") ;
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}	
.site-header.transform .gnav_menu_item a:hover {
    color: #fff;
    text-decoration: underline;
}

#menu{
	display: flex;
	}
/* ハンバーガーメニュー */
#ham-menu {
	position: fixed;
	right: -250px; /*メニュー横幅 width と合わせる*/
	top: 0;
	width: 250px; /*メニュー横幅*/
	height: 100%;
	/*padding: 10px 20px; /*メニュー内左右上下余白*/
	box-sizing: border-box;
	/*background-color: #fff; /*メニュー背景色*/
	transition: transform 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
	z-index: 1000;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

#menu-background {
	display: block;
	right: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #fff; /*白背景*/
	opacity: 0;
	transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
	z-index: -1;
}


#menu-icon {
	padding-top: 8px;
	padding-left: 6px;
	padding-right: 0;
	border-radius: 0.1em; /*角丸*/
	color: #000; /*アイコン（フォント）色*/
	cursor: pointer;
	display: block;
	font-size: 40px; /*アイコン（フォント）サイズ*/
	height: 40px; /*アイコン縦高さ*/
	line-height: 40px; /*縦位置中央化*/
	position: fixed;
	right: 8px;
	text-align: center;
	top: 0;
	width: 36px; /*アイコン横幅*/
	transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
	z-index: 1000;
}

#menu-icon::before {
	-webkit-box-shadow: #000 0 9px 0;
	box-shadow: #000 0 10px 0;
}

#menu-icon::after {
	bottom: 0;
}

#menu-icon::before,
#menu-icon::after {
	width: 30px;
	height: 4px;
	margin-bottom: 8px;
	background: #000;
	display: block;
	content: '';
	position: absolute;
	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}

.site-header.transform #menu-icon {
	padding-top: 8px;
	padding-left: 6px;
	padding-right: 0;
	border-radius: 0.1em; /*角丸*/
	color: #fff; /*アイコン（フォント）色*/
	cursor: pointer;
	display: block;
	font-size: 40px; /*アイコン（フォント）サイズ*/
	height: 40px; /*アイコン縦高さ*/
	line-height: 40px; /*縦位置中央化*/
	position: fixed;
	right: 8px;
	text-align: center;
	top: 0;
	width: 36px; /*アイコン横幅*/
	transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
	z-index: 1000;
}	
	
.site-header.transform #menu-icon::before {
	-webkit-box-shadow: #fff 0 9px 0;
	box-shadow: #fff 0 10px 0;
}

.site-header.transform #menu-icon::after {
	bottom: 0;
}

.site-header.transform #menu-icon::before,
.site-header.transform #menu-icon::after {
	width: 30px;
	height: 4px;
	margin-bottom: 8px;
	background: #fff;
	display: block;
	content: '';
	position: absolute;
	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;
}	
	
	
#menu-cb {
	display: none; /*チェックボックス本体は消しておく*/
}

#menu-cb:checked ~ #ham-menu,
#menu-cb:checked ~ #menu-icon {
	transform: translate(-250px); /*メニュー本体横幅 width と合わせる*/
}

#menu-cb:checked ~ #menu-background {
	opacity: 0.5;
	position: fixed;
	z-index: 999;
}
	
.site-header.transform #menu-cb:checked ~#menu-icon::before,	
	.site-header.transform #menu-cb:checked ~#menu-icon::after {
	width: 30px;
	height: 4px;
	margin-bottom: 8px;
	background: #000;
	display: block;
	content: '';
	position: absolute;
	-webkit-transition: -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
	transition: box-shadow 0.2s linear, transform 0.2s 0.2s;	
	}

/*
#menu-cb:checked ~ .hm_title {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}
*/

#menu-cb:checked ~ #menu-icon::before {
	-webkit-box-shadow: transparent 0 0 0;
	box-shadow: transparent 0 0 0;
	-webkit-transform: rotate(45deg) translate3d(7px, 7px, 0);
	transform: rotate(45deg) translate3d(7px, 7px, 0);
}

#menu-cb:checked ~ #menu-icon::after {
	-webkit-transform: rotate(-45deg) translate3d(7px, -7px, 0);
	transform: rotate(-45deg) translate3d(7px, -7px, 0);
}

/* MENU文字追加 */
.nav-btn_label {
	position: absolute;
	left: 58%;
	transform: translate(-50%, 0);
	top: 24px;
	bottom: 0;
	font-size: 0.88rem;
	transition: all 500ms ease-in-out;
}

/* MENU文字非表示 */
#menu-cb:checked ~ label .nav-btn_label {
	opacity: 0;
}
	
/* リスト */
#ham-menu ul{
	}
#ham-menu ul.menu_logo {
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: #141414;
	text-align: center;
	border-bottom: 1px dashed #333333;
}

#ham-menu ul.menuttl {
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: #141414;
	color: #fff;
}

#ham-menu ul.menuttl li {
	padding: 10px 20px;
	border-bottom: 1px dashed #333333;
}

#ham-menu ul.mainmenu {
	list-style: none;
	margin: 0;
	padding: 0;
	background-color: #141414;
	color: #fff;
	font-size: 0.94em;
}

#ham-menu ul.mainmenu li {
	padding: 10px 20px;
	border-bottom: 1px dashed #333333;
}

#ham-menu ul.tel {
	list-style: none;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	background-color: #141414;
}
#ham-menu ul.tel img {
	vertical-align: bottom;
}	
	
#ham-menu li a {
	display: block;
	color: #fff;
	text-decoration: none;
}
#ham-menu ul.tel li{
	margin: 0;
	padding: 0 0 15px;
	}


/*********concept***********/
.concept{
	margin: 100px auto 180px;
	padding: 0 ;
	width: 100%;
	height: 630px;
	}
ul.conce_text{
	padding: 0 ;
	width:100%;
	margin: 0 auto;
}
.conce_text li{
	margin: 30px auto 50px;
	transition: .8s;
	list-style-type: none;
}
.conce_bg{
	background-image: url("../image/top_img.jpg");
	background-size: cover;
	height:100vw;
	padding-bottom: 20px;
	background-repeat  : no-repeat;

	}
.conce_com{
	margin: 0 auto 50px ;
	padding-top: 250px;
	max-width: 90%;
	}
.conce_comm{
	margin: 0 10px;
	padding: 30px 10px ;
	background-color: #fff;
	max-width: 610px;
	max-height: 550px;
	box-shadow:0 0 5px #999;
	font-size:16px;
	line-height:1.8em;
	}
.conce_comm img{
	max-width: 258px;
	height: 50px;
	}
.topcom-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv01{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);

}
/***************information***************/	
.information {
	margin: 10px 0 0;
	padding: 0;
	width: 100%;
	height: auto;
	background-color: #ffffff;
	}
	
.instagallery{
position: relative;
display: inline-block;
margin:10px;

}
	
.instagallery img{
	border-radius: 5px;
	margin: 0 auto;
	width: 180px;
	height: 180px;
	}
.info{
	margin: 0 auto 15px;
	padding: 0 0 50px;
	height: auto;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	}
.info li{
	margin: 5px auto;
	transition: .8s;
	list-style-type: none;
	width: 100%;
}	
h2.info_t{
	margin:80px 0 0 0;
    padding: 0;
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 16.66%;
	background-image: url(../image/information_m.png);
	background-size: cover;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	}	
.info-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv02{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}
ul.inst_k{
	margin: 25px auto 0;
	padding: 0;
	max-width: 100%;
	height: auto;
	list-style: none;

	}
ul.inst_k li{
	margin: 0;
	padding: 20px 10px;
	max-wdth:180px;
	}
ul.inst_k li{width: 100%;}
/*********what***************/
.what{
	margin: 180px auto 200px ;
	padding: 0 ;
	width: 100%;
	height: auto;
	clear: both;
}
ul.what_text{
	padding: 0 10px;
	width:100%;
	margin: 0 auto;
}
	
.what_text li{
	margin: 30px auto 50px;
	transition: .8s;
	list-style-type: none;
	width: 100%;
}

.w_top_photo{
  position:relative;
  width:100%;
  height:600px;
}

.what.w_top_photo img{
  position:absolute;
  top:50px;
  left:45px;
   width:100%;
	object-fit: cover;
}

.what .w_top_photo p{
	position:absolute;
	display: block;
	top:32%;
	left:5%;
	width:90%;
	height:auto;
	background:#fff;
	padding: 50px 20px 20px 20px;
	box-shadow:0 0 5px #999;
	line-height:1.8em;
	z-index:1;
}
.what.wh_ttl{
	text-align: center;
	display: block;
	margin:10px auto 60px;
	text-align: center;
}
.what .wh_ttl img{
	margin: 0 auto;
	padding: 0 0 60px;
	left: 5%;
	top:5%;
	width:100%;
	max-width: 310px;
	height:auto;
	vertical-align: bottom;
}	
ul.what_text a{
	margin-top: 40px;
	display: block;
	font-weight: bold;
	text-decoration:none;
	color: #333333;
	text-align: right;
}
ul .what_list{
	margin: 0 0 50px;
	width: 100%;
	list-style: none;
	}
ul .what_list li{
	margin: 40px auto;
	max-width: 320px;
	max-height: 65px;
	flex: 100%;

	}	
ul .what_list li img{
	margin: 0;
	padding: 0;
	max-width: 100%;
	max-height: 65px;
	height: auto;
	}
ul.what_list a{
	margin: 0;
	padding: 0;
}
h2.what_t{
	margin: 200px auto 30px;
	background-image: url("../image/point_t.png");
	background-repeat: no-repeat;
	background-size: contain;
	max-width: 448px;
	height: 35px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.what-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv03{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);

}

/***************lineup***************/		

.lineup{
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	background-color: #f6f6f6;
	}
	
.lineup_g{
	margin: 0 auto 150px;
	padding: 0 10px 150px;
	height: auto;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	width: 100%;
	}	
.lineup_g li{
	margin: 0 auto;
	transition: .8s;
	list-style-type: none;
	width: 98%;
}
h2.lineup_t{
	margin: 60px auto 30px;
	background-image: url(../image/lineup_t.png);
	background-repeat: no-repeat;
	width: 145px;
	height: 50px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}	
ul.lineup_list{
	margin: 50px auto;
	width: 100%;
	list-style: none;
	}

ul.lineup_list li.img_wrap{
    width: 100%;
    height: auto;
    margin: 0 auto 80px;
	padding: 0;
	transition-duration: 0.5s;
}
.img_wrap img{
	width: 100%;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
    cursor: pointer;
}
.img_wrap:hover{
    box-shadow: 10px 10px 10px rgba(0,0,0,0.2);
    transform: translateY(-10px);
    transition-duration: 0.5s;
}
.lineup-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv04{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}


/***************list***************/	

#list{
	margin: 180px auto 200px ;
	padding: 0 ;
	width: 100%;
	height: auto;
	clear: both;
}
ul.list_text{
	padding: 0 10px;
	width:100%;
	margin: 0 auto;
}
	
.list_text li{
	margin: 0 auto 50px;
	transition: .8s;
	list-style-type: none;
	width: 100%;
}

.top_photo_l{
	position:relative;
	width:100%;
	height:420px;
}

#list.top_photo_l img{
	position:absolute;
	top:50px;
	left:45px;
	width:100%;
	object-fit: cover;
}

#list .top_photo_l p{
	position:absolute;
	display: block;
	top:25%;
	left:5%;
	width:90%;
	height:auto;
	background:#fff;
	padding: 20px;
	box-shadow:0 0 5px #999;
	line-height:1.8em;
	z-index:1;
}
#list.list_ttl{
	text-align: center;
	display: block;
	margin: 30px auto 60px;
}
#list .list_ttl img{
	margin: 0;
	padding: 0 0 20px;
	width:100%;
	max-width: 231px;
	height:auto;
	vertical-align: bottom;
}	
ul.list_text a{
	margin-top: 40px;
	display: block;
	font-weight: bold;
	text-decoration:none;
	color: #333333;
	text-align: right;
}
ul .frlist_list{
	margin: 0 auto ;
	width: 100%;
	list-style: none;
	text-align: center;
	}
ul .frlist_list li{
	margin: 0 auto;
	width: 180px;
	flex: 100%;
	display: flex; /*flexboxの指定*/
	justify-content: center;  /*中央寄せ*/


	}	
ul .frlist_list li img{
	margin: 0;
	padding: 0;
	width: 180px;
	height: auto;
	}
.frlist-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv06{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);}

/***************case***************/
.caset{
	margin: 180px auto 200px ;
	padding: 0 ;
	width: 100%;
	height: auto;
	clear: both;
}
ul.case_text{
	padding: 0 10px;
	width:100%;
	margin: 0 auto;
}
	
.case_text li{
	margin: 0 auto 30px;
	transition: .8s;
	list-style-type: none;
	width: 100%;
}

.top_photo{
	position:relative;
	width:100%;
	height:680px;
}

.top_photo img{
   position:absolute;
   top:50px;
   left:0;
   width:100%;
   object-fit: cover;
}

.top_photo p{
	position:absolute;
	display: block;
	top:35%;
	left:5%;
	width:90%;
	height:auto;
	background:#fff;
	padding: 20px;
	box-shadow:0 0 5px #999;
	line-height:1.8em;
	z-index:1;
}
.ca_ttl{
	text-align: center;
	display: block;
	margin: 30px 0 65px;
}
.ca_ttl img{
	margin: 0;
	padding: 0 ;
	width:100%;
	left: 5%;
	max-width: 169px;
	height:auto;
	vertical-align: bottom;
}	
ul.case_text a{
	margin-top: 40px;
	display: block;
	font-weight: bold;
	text-decoration:none;
	color: #333333;
	text-align: right;
}
ul .case_list{
	margin: 0 auto ;
	padding: 0;
	width: 100%;
	list-style: none;
	text-align: center;
	}
ul .case_list li{
	margin: 0 auto;
	width: 320px;
	display: flex; /*flexboxの指定*/
	justify-content: center;  /*中央寄せ*/


	}	
ul .case_list li img{
	margin: 0;
	padding: 0;
	max-width: 320px;
	height: 150px;
	}
h2.case_t{
	margin: 0 auto;
	background-image: url("../image/category_t.png");
	background-repeat: no-repeat;
	width: 123px;
	height: 35px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.case-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv05{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}
/*********office************/
.office{
	margin: 80px auto 100px ;
	padding: 0 ;
	width: 100%;
	min-height: 500px;
	height: auto;
	clear: both;
}
ul.office_text{
	padding: 0 10px;
	width:100%;
	margin: 0 auto;
}
	
.office_text li{
	margin: 30px auto 50px;
	transition: .8s;
	list-style-type: none;
	width: 100%;
}

.office.top_photo{
	position:relative;
	width:100%;
	height:850px;
}

.office.top_photo_b img{
	position:absolute;
	top:0px;
	left:0;
	width:100%;
	object-fit: cover;
}

.top_photo_b p{
	position:absolute;
	display: block;
	top:40%;
	left:5%;
	width:90%;
	height:auto;
	background:#fff;
	padding: 0px 20px 20px;
	box-shadow:0 0 5px #999;
	line-height:1.8em;
	z-index:1;
}
.o_ttl{
	text-align: center;
	display: block;
	margin: 25px auto 0px;
}
.o_ttl img{
	margin: 0;
	padding: 0 ;
	width:100%;
	max-width: 478px;
	height:auto;
	vertical-align: bottom;
}	
ul.office_text a{
	margin-top: 40px;
	display: block;
	font-weight: bold;
	text-decoration:none;
	color: #333333;
	text-align: right;
}
.office-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv08{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);

}
/***topcontact***/
.btn,
a.btn,
button.btn {
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	letter-spacing: 0.1em;
	color: #212529;
	border-radius: 0.5rem;
	width:320px;
}
.contact{
	margin: 100px auto 0 ;
	padding: 0 ;
	width: 100%;
	height: auto;
	background-color: #f6f6f6;
}
.cont_text{
	text-align: center;
	padding: 130px 0;
}
	
.cont_text li{
	margin: 0 auto 50px;
	transition: .8s;
	list-style-type: none;
	max-width: 1020px;
}
.cont_text li img{
	margin: 50px auto;
	max-width: 850px;
	width: 100%;
}	
 a.cont-btn {
	 overflow: hidden;
	 padding: 20px 30px ;
	 color: #fff;
	 border-radius: 0;
	 background: #000;
}

a.cont-btn span {
	position: relative;
}

a.cont-btn:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	-webkit-transition: all .5s ease-in-out;
	transition: all .5s ease-in-out;
	-webkit-transform: translateX(-96%);
	transform: translateX(-96%);
	background: #b20e5b;
}

a.cont-btn:hover:before {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
}
.cont-mv{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv07{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);

}	
	
/***************foooter***************/

#foot{
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	background-color: #000000;
}
.foot{
	margin: 0 auto;
	padding: 0;
	width: 98%;
	height: auto;
}

.ft_menu {
	display: none;
}
.ft_menu2 {
	display: none;
}

.foot .logo {
	margin: 0 auto;
	padding: 25px 10px 40px;
	text-align: center;
}
.foot .logo img{
	width: 100%;
}	
.foot .logo a {
    padding: 0;
}
.copy {
    text-align: center;
    padding: 10px;
	color: #ffffff;
	font-size: 0.66em;
}
.foot .logo .add{
	margin: 0 auto 15px;
	padding: 0;
	font-size: 0.76em;
	line-height: 1.2em;
	color: #ffffff;
}	
.foot .logo .logottl{
	margin: 0;
	height: 0;
	 /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	padding-top: 17.5%;
	background-image: url(../image/footer_logo_m.png);
	background-repeat: no-repeat;
	background-position: center;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.foot .logo .office_ttl{
	margin: 15px 0 10px;
	color: #ffffff;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-size: 0.88em;
	vertical-align: middle;
	text-align: center;
}	
.foot .logo .office_ttl img{
	margin: 0;
	padding: 0;
	vertical-align: text-bottom;
	width: 72px;
	height: 30px;
}		
.ft_text {
	display: inline-block;
	padding: 5px 10px;
	font-size: 0.56em;
	color: #ffffff;
	text-align: center;
	line-height: 1.2em;
} 

.ft_text a {
	color: #ffffff;
	text-decoration: underline;
	display: inline;
} 	
.ft_text a:hover {
	color: #a50b5b;
	text-decoration: underline;
} 
.foot .logo .ban{
	margin: 25px auto 0;
	color: #ffffff;
	vertical-align: middle;
	text-align: center;
	width: 171px;
}	
.foot .logo .ban img{
	margin: 0;
	padding: 0;
	vertical-align: text-bottom;
	width: 171px;
	height: 75px;
}
.footerlogo{
	display: none;
}
/*ページトップへ*/
.pagetop { 
	display: none;
	position: fixed;
	bottom: 2%;
	right: 2%;
}
.pagetop a {
	display: block;
	width: 60px;
	height: 60px;
}	
/*what*/
.what_img{
	margin: 0 0 60px;
	padding: 0;
	background-image: url("../image/what_bg01_m.png");
	background-size: 100% 100%;
	min-height: 730px;
	background-repeat: no-repeat;
}
.what_n {
	margin: 0 auto 60px;
	padding: 60px 1%;
	width: 100%;
	}
.what_waku{
	display: block;
	margin: 0 auto;
	padding: 0;
    width:90%;
	text-align: center;
}
.n_ttl_01{
	margin: 0 auto 0;
	max-width: 533px;
	height: 74px;
	background-image: url("../image/what_ttl_01.png");
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.what_com{
	margin: 0 auto;
	padding: 20px;
	height: auto;
	background-color: #fff;
	opacity: 0.8;
	text-align: left;
	color: #000;
}	
.what_ttl01{
	margin: 40px auto;
	padding: 0;
	max-width: 565px;
}
.what_ttl02{
	margin: 60px auto 20px;
	padding: 0;
	max-width: 680px;
}
.what_ttl03{
	margin: 60px auto 20px;
	padding: 0;
	max-width: 225px;
}
.what_ttl04{
	margin: 60px auto 20px;
	padding: 0;
	max-width: 488px;
}
.what_ttl05{
	margin: 60px auto 30px;
	padding: 0;
	max-width: 231px;
}
ul.what_b {
	margin: 0 auto;
	padding:0 15px 15px;
	list-style: none;
	width: 100%;
}
ul.what_b li.w_text{
	margin: 0 auto 25px;
	padding: 0;
	width: 98%;
}
ul.what_b li img{
	width: 100%;
	max-width:510px;
}
ul.what_comm {
	margin: 0 auto;
	list-style: none;
	width: 100%;
	text-align: center;
	display: flex;
	-webkit-flex-wrap:wrap;
　　-ms-flex-wrap:wrap;
　　flex-wrap:wrap;
}
ul.what_comm li img{
	width: 100%;
	max-width:510px;
}
li.img_w{order:2;}
.what_brnding{
	margin: 30px auto;
	padding:0;
	width: 100%;
	max-width: 776px;
}
.un_com_w {
	margin: 10px auto 30px;
	padding: 0 5px 0 ;
	display: block;
	max-width: 776px;
}
.what_effect {
	margin: 0 auto 60px;
	padding: 0;
	max-width: 1020px;
	vertical-align: bottom;
}	
.eff_img{
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 1020px;
}
.eff_img img{
	margin: 0;
	padding: 0;
	vertical-align: bottom;
	width: 100%;
}
.eff_waku{
	margin: 0;
	padding:30px 15px;
	max-width: 1020px;
	border-bottom: 1px solid #000;
	border-left: 1px solid #000;
	border-right: 1px solid #000;
}
.what_e{
	margin: 30px auto;
	padding: 0;
	width: 100%;
}	
.what_e dl{
	margin: 80px 0;
}
.what_e dt{
	text-align: center;
}	
.what_e dd{
	margin: 0 auto ;
	padding: 0;
	width: 95%;
	text-align: center;
}
.what_e dd p {
	text-align: left;
}	
.what_frame{
	font-size: 0.94em;
}
/* signature flow */
.signature_flow_step1 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg02_m.png");
	background-size: 100% 100%;
	margin: 0 auto;
	padding: 100px 5px 100px 40%;
}

.signature_flow_step2 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg03_m.png");
	background-size: 100% 100%;
	margin: 0 auto;
	padding: 100px 5px 100px 40%;
}

.signature_flow_step3 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg04_m.png");
	background-size: 100% 100%;
	margin: 0 auto;
	padding: 100px 5px 100px 40%;
}

.signature_flow_step4 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg05_m.png");
	background-size: 100% 100%;
	margin: 0 auto;
	padding: 100px 5px 100px 40%;
}

.signature_flow_step5 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg06_m.png");
	background-size: 100% 100%;
	margin: 0 auto;
	padding: 100px 5px 100px  40%;
}

.signature_flow_step6 {
	max-width: 760px;
	max-height: 314px;
	background-image: url("../image/what_bg07_m.png");
	background-size: 100% 100%;
	margin: 0 auto 15px auto;
	padding: 100px 5px 100px  40%;

}	

.what_f_ttl {
	margin: 30px auto;
	padding: 0;
	background-image: url('../image/w_b_ttl.png');
	background-repeat: no-repeat;
	background-size: contain;
	width: 480px;
	height: 60px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.un_com_ww{
    margin: 0 auto 20px;
    background: #ffffff;
	width:98%;
	text-align: left;
	order: 1;
}
.un_com_ww p {
	margin:  0;
	padding: 0;
	display: block;
	line-height: 1.8em;
}
.un_com_ww .bold{
	color: #a50b5b;
	font-weight: bold;
}			
/*lineup*/
.lineup_n { 
	margin: 0 auto 30px;
	padding: 0 auto;
	width: 98%;
}	
.n_ttl_02{
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_02.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.lineup_n .un_com{
	margin: 0 auto 20px;
	padding: 0;
	width: 95%;
	display: block;
}	
.bg_g {
	margin: 0;
	padding: 20px 0;
	background-color:#eff0f1;
	width: 100%;
}
.lineup_gg{
	margin: 0 auto;
	padding: 0 ;
	height: auto;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	width: 100%;
}	
.lineup_gg li{
	list-style-type: none;
	margin-bottom: 30px;
}
.lineup_gg .lineup_list{
	margin: 20px 10px 10px;
	padding: 0;
}	
.lineup_gg .lineup_list li {
	margin-bottom: 20px;
}	
.l_tti_01{
	margin: 0 auto;
	width: 100%;
	height: 60px;
	background-image: url(../image/banner_lineup_bk.png);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}
.lineup_ttl{
	margin: 30px auto 20px;
	padding: 5px 0 0;
	background-image: url('../image/ttl_bg_bk_m.png');
	background-size: 100% 45px;
	width: 100%;
	height: 45px;	
}	
.goods_a{
	margin: 10px auto 40px;
	padding: 15px 0 25px;
	width: 100%;
	height: auto;
	border-bottom: dashed 1px #cccccc;
}
.last{
	border-bottom: none;
	margin-bottom: 0;
}

.goods_a .goods_ap {
	margin: 0 auto;
	padding: 0;
	width: 98%;
	text-align: center;
}	
.goods_a .goods_ap img{
	vertical-align: bottom;
	text-align: center;
	width: 290px;
}	
.goods_a .goodsttl{
	margin: 0 auto 15px;
	border-bottom: 1px solid #cccccc;
	width: 98%;
	display: block;
	text-align: center;
}	
.goods_a .goods_txt{
	display: block;
	width: 100%;
	margin: 10px 0;
}	
.goods_txt dl{
	display: block;
	width: 100%;
	}
.goods_txt dt{
	margin-bottom: 20px;
}
.goods_txt dd {
	line-height: 1.6em;
	padding: 0 10px;
}
.goods_txt dd.indent {
	font-size: 0.94em;
	margin-bottom: 10px;
}	
.goods_com{
	margin: 0 auto 10px;
	padding: 5px;
	width: 100%;
}	
.goods_com ul{
	margin: 0 auto;
	padding: 20px;
	width: 100%;
	border: 1px solid #cccccc;
	list-style: none;
}	
.goods_com a {
	text-decoration:none;
	color: #a50b5b;
}
.goods_com a:hover {
	text-decoration:underline;
	color: #a50b5b;
}		
.font_m{
	font-size: 0.76em
}
.lineup_frame {
	width: 98%;
	height: auto;
	margin: 10px auto;
	padding: 0 10px 20px;
	background: #fffff;
	overflow: hidden;
}	
.peculiarity_list_l {
	margin-bottom: 0;
	overflow: hidden;
}
.peculiarity_list_l dt {
	margin-left: 10px;
	margin-bottom: 15px;
}
.peculiarity_list_l dt p{
	margin: 20px 0;
	font-size: 1em;
}	
.peculiarity_list_l dd.cent {
	list-style: none;
	margin: 0 auto ;
	margin-bottom: 15px;
	text-align: center;
}

.peculiarity_list_l dd {
	display: list-item;
	list-style: square outside;
	margin-left: 40px;
	margin-bottom: 15px;
	font-size: 0.88em;
	line-height: 22px;
	letter-spacing: 1px;
}
.peculiarity_list_l strong{
	color: #a50b5b;
}
.peculiarity_list_r {
	text-align: center;
}	
.peculiarity_list_s {
	overflow: hidden;
}
.li_none {
	list-style: none;
}	
.peculiarity_list_s dt {
	display: list-item;
	list-style: none;
	margin-bottom: 2px;
	padding: 0;
	letter-spacing: 0.2em;
	font-weight: bold;
}
.peculiarity_list_s dd {
	display: list-item;
	list-style: square outside;
	margin:0 0 5px 25px;
	font-size: 0.94em;
	line-height: 22px;
	letter-spacing: 1px;
}		
.fonts {
	font-size: 0.82em;
	line-height: 1em;
}		
.feature dl {
	margin:0 auto;
	padding-top: 15px;
	max-width: 90%;
	height: auto;
}
.feature dt {
	margin:0 auto 30px;
	text-align: center;
	font-size: 1em;
	font-weight: bold;
}
.feature dd {
	margin-top: 15px;
	font-size: 0.88em;
}	
.feature .strong{
	font-weight: bold;
}	
.feature .mini{
	font-size: 0.64em;
}
.lineup_nn{
	margin: 60px 0 100px ;
}
.lineup_nn .subInner {
    display:none;
	margin: 0;
    padding:10px;
    background:#ffffff;
	height: auto;
}
.lineup_nn .subContent{
	height: auto;
	clear: both;
}	
.lineup_nn .subContent h4 {
    margin: 0 auto 30px;
    padding:0;
	width: 100%;
}
.lineup_nn .subContent h4 img{
	width: 100%;
	height: 100%;
	vertical-align: middle;
}	

.lineup_nn .subContent h4 span {
    display: block;

}

.lineup_nn .close {
	width: 100%;
	height: 16px;
	margin: 0;
	padding:0;
	text-align: right;
}
.lineup_nn .close img{
	width: 65px;
	height: 16px;
}	
	
/* genie */

/* genie */
.genie_list{
	margin:10px 0 15px;
	padding: 0;
	width: 100%;
	height:auto;
	background-image:url('../image/genie_bg_m.png');
	background-repeat: repeat-x;
	}
.genie{
	margin: 0 auto;
	padding:10px 0;
	width: 98%;
	}
.center{
	text-align: center;
	}	
.g_left{
	margin: 0 ;
	padding: 0;
	width: 100%;
	}
.g_right {
	text-align: center;
	}
.g_left img {
	width: 40%;
	}
.g_right img{
	width: 35%;
	}
	
.genie_ttl{
	margin: 20px auto 20px;
	text-align: center;
	font-weight: bold;
	font-size: 1.12em;
	}	
.un_com_m{
	margin: 0 auto 15px;
	padding:0;
	width: 95%;
	display: block;
	font-size: 0.82em;
	color: #a50b5b;
	}	
.genie_point{
	margin: 30px auto;
	padding: 0 3%;
	width:100%;

	}
.genie_point p{
	margin: 20px 0;
	font-size:1.16em;
	}	
.genie_c{
	margin:0 auto 15px;
	padding: 10px;
	width: 100%;
	height:auto;

	}
.genie_list_l2{
	max-width: 350px;
	height: auto;
	margin: 0 auto ;
	text-align: center;
	}
	
.genie_c  .font_m{
	margin: 0;
	font-size: 0.76em;
	text-align: center;
	font-weight: bold;
	}	
.genie_comm_rent{
	margin:30px 0 0;
	padding: 0;
	vertical-align: middle;
	}
.genie_comm_rent p {vertical-align: middle;}	
.genie_comm_ll{
	margin: 20px 0;
	padding: 10px;
	background-color: #000;
	color: #fff;
	font-size: 1em;
	font-weight:500;
	vertical-align: middle;
	width: 100%;
	text-align: center;
	}	
.g_point dd h5{
	font-weight: bold;
}
.g_mm{
	margin: 5px 0 30px 50px;
	padding: 0;
	font-size: 0.82em;
}	

.geniefle_list {
	width: 100%;
	margin: 0 auto 100px;
	padding: 10px;
	overflow: hidden;
}
.g_list01, .g_list02, .g_list03{
	max-width: 295px;
	margin: 0 auto 40px;
	} 
.g_list01 img{
	width: 100%;
	}
.g_list02 img{
	width: 100%;
	}
.g_list03 img{
	width: 100%;
	}

.geniefle_list dd {
	padding: 0;
	font-size: 1em;
}

.geniefle_list dt img {
	margin-bottom : 5px;
	display : block;
	width:100%;
}
.sf {
	padding: 0;
	background-image:url(../image/genie_fr1.png);
	background-size: 100% 30px;
	max-width:323px;
	height:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin-bottom: 15px;
}
.tw {
	padding: 0;
	background-image:url(../image/genie_fr2.png);
	background-size: 100% 30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	max-width:323px;
	height:30px;
	margin-bottom: 15px;
}
.cc {
	padding: 0;
	background-image:url(../image/genie_fr3.png);
	background-size: 100% 30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	max-width:323px;
	height:30px;
	margin-bottom: 15px;
}
.sf, .tw, .cc img{
	width: 100%;
	}
.genie_nttl {
	margin: 100px auto 80px;
	width: 96%;
	text-align: center;
	font-size: 1.24em;
	font-weight: bold;
	background: linear-gradient(transparent 70%, #c7fc8e 20%);
	}	
.genie_nttl .green{
	margin-left: 15px;
	font-family: "メイリオ";
	font-size: 0.9em;
	color: green;
	}	
	
/*list*/
.list_n{
	margin: 0 auto 30px;
	padding: 0;
	width: 98%;
	}	
.n_ttl_03{
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_03.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}	
.list_n .un_com{
	margin: 0 auto 20px;
	padding:0;
	width: 95%;
	display: block;
	}	
.subInner {
    display:none;
	margin: 0 0 10px;
    padding:5px;
}
	
.subContent h4 {
    margin:10px 0 30px;
    padding:0;

}

.subContent h4 span {
    display: block;

}

.close {
	width: 100%;
	height: 16px;
	margin: 0;
	padding:0;
	text-align: right;
}
.close img{
	width: 65px;
	height: 16px;
}
.list{
	margin: 15px 0;
	padding: 10px 5px;
	width: 100%;
	height: auto;
	display: flex;
	display: -webkit-box; 
	display: -webkit-flex;
	display: -ms-flexbox;
	border: 1px solid #cccccc;
	
	}
.list .list_p {
	margin: 0 10px 0 0;
	padding: 0;
	}	
.list .list_p img{
	width: 120px;
	border-radius: 5px;
	vertical-align: bottom;
	}	
.list .listttl{
	font-weight: bold;
	margin-bottom: 10px;
	border-bottom: 1px solid #cccccc;
	font-size: 0.8em;
	}
.list .list_com{
	font-size: 0.82em;
	line-height: 1.4em;
	margin: 10px 0;
	}	
.list .list_txt{
	display: inline-block;
	width: 100%;
	}
.red{
	color: #a50b5b;
	margin-right: 10px;
	font-size: 1.4em;
	}
.list .r_text{
	margin-top: 15px;
	text-align: right;
	font-size: 0.76em;
	font-weight: bold;
	}	
.list .r_green{
		vertical-align:top;
		padding: 1px 5px 0;
		font-size: 0.72em;
		background-color: #aacf52;
		float: right;
		color: #ffffff;
		font-weight: normal;
		height: 22px;
	}
	
	
	
/*case*/
.case_n { 
	margin: 0 auto 30px;
	padding: 0 ;
	width: 98%;
	}	
.n_ttl_04{
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_04.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.case_n .un_com{
	margin: 0 auto 20px;
	padding:0;
	width: 95%;
	display: block;
	}
.case_logo {
	display: block;
	width: 100%;
	margin: 10px 0 30px;
}
.case_title {
	margin: 40px 0 20px;
	padding:1.2% 0 0 9%;
	height: 30px;
	border-bottom: 1px solid #000000;
	font-size: 0.92em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: bold;	
	text-align: center;
}

p.case_comm{
	margin:5px 0px 25px 0;
	padding:0 10px 0 20px;
	}
	
	
.case_c{
	margin: 0;
	padding:0;
	max-width:100%;
	height:auto;
}

.case_c .case_c1 {
	margin:10px 0;
	padding:0;
	width:100%;
	height:auto;
	line-height:1.5em;
}
.case_c .case_c1 p{
	margin: 0 0 15px;
}

.case_c .case_c2{
	margin:10px 0 ;
	padding: 0;
	width: 100%;

}
.case_c .case_c2 img{
	width: 100%;
}

.case_photo{
	margin: 10px 0;
	width: 100%;
	display: flex;
	}
	
.case_photo1{
 max-width: 205px;
margin-right: 5px;
	flex: 1;
}	
.case_photo2{
	max-width: 205px;
	flex: 1;
}
	
.case_c:after{
	content:"";
	clear:both;
	display:block;	
	}
	

p.url{
	margin-left:10px;
	
	}
.case_comment {
	width: 98%;
	height: auto;
	margin: 0 auto;
	padding: 0 0 35px ;
	text-align: center;
	
}
.case_comment a:visited{
	color: #a50b5b;
	}
/*trade*/
.trade_n { 
	margin: 0 auto;
	padding: 60px 0 10px;
	max-width: 1020px;
	}	
.n_ttl_05 {
	margin: 0 auto 30px;
	max-width: 330px;
	height: 55px;
	background-image: url(../image/n_title_10.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.trade01{
	text-align: center;
	margin: 20px auto;
	width: 100%;
	}
.trade01 img{
	margin: 0;
	padding: 0;
	width: 100%;
	max-width: 766px;
	}	
	
.t_trial{
	margin: 40px 0;
	width: 100%;
	background-image: url("../image/trade_bg_m.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	min-height: 650px;
	}	
.traial_text{
	margin:30px 20px;
	padding: 10px;
	float: right;
	background-color: #fff;
	opacity: 0.8;
	color: #000;
	}
.traial_text h4{
	color: #990066;
	font-size:1.10em;
	margin: 0 0 10px;
	}
.traial_text p{
	margin: 0 0 10px;
	padding: 5px 0;
	}
.traial_text ul{
	margin: 0 0 15px;
	padding-left: 20px;
	}
.traial_text ul li {
	list-style-type: none;
}

.traial_text ul li:before {
	content: '';
	width: 3px;
	height: 3px;
	display: inline-block;
	border-radius: 100%;
	background: #333333;
	position: relative;
	left: -15px;
	top: -3px;
}
.trade_ttl{
	margin: 65px auto 45px;
	padding: 0;
	max-width: 645px;
	}	

	
.flow{
	margin: 50px auto;
	padding: 0;
	width: 100%;
	text-align: center;
	vertical-align: bottom;
	}	
.flow img {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	}	
.flow_comm {
	margin: 60px auto 40px;
	padding: 15px;
	width: 96%;
	border:3px solid #000;
	}
.flow_comm p {
	margin: 15px 0;
	}
.flow_comm strong{
	color: #a50b5b;
	font-weight: bold;
	}
ul.flow_n{
	margin: 50px auto;
	list-style: none;
	text-align: center;
	width: 100%;
	}	
li .frow_t img{
	width: 100%;
	max-width: 475px;
	}
li .frow_i img{
	width: 100%;
	max-width: 400px;
	}
/*contact*/
.contact_n { 
	margin: 60px 0 30px;
	padding:0 1%;
	width: 100%;
	}	
.contact_nn { 
	margin: 0 auto;
	padding: 30px 0;
	width: 100%;
	}	
.n_ttl_06 {
	margin: 0 auto 30px;
	max-width: 450px;
	height: 65px;
	background-image: url("../image/contact_ttl.png");
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.contact_n .un_com{
	margin: 0 auto;
	padding:0;
	max-width: 768px;
	display: block;
	text-align: center;
	}
.bg_gr{
	margin: 0;
	padding: 30px 0 0;
	width: 100%;
	height: auto;
	background-color: #eff0f1;
	}	
ul.con_tel{
	margin: 30px auto 0 ;
	padding: 30px 0 ;
	list-style: none;
	max-width: 860px;
	border: 3px solid #000;
	background-color: #ffffff;
	}	
.con_tel img{
	width: 100%;
	height: auto;
	max-width:830px;
	}	
.con_ttl{
	margin: 100px auto 50px;
	padding:0;
	width:375px;

	}
.ttl {
	display: block;
	padding: 13px 0 5px 35px;
	color: #ffffff;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-weight: bold;
	}	

.ttl_m {
	display: block;
	padding: 13px 0 5px 35px;
	color: #ffffff;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-weight: bold;
	}		
.un_com_con{
	margin: 30px auto 0;
	padding:0;
	max-width: 768px;
	display: block;
	text-align: center;
	}
/*company*/
.company { 
	margin: 0 auto 30px;
	padding:0;
	width: 100%;
	}	
.n_ttl_07 {
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_07.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.table_company {
	width: 98%;
	margin: 0 auto;
	border-collapse: separate;
	border-spacing: 0px;
	border-top: 1px solid #dcd7d1;
	border-left: 1px solid #dcd7d1;
}
.table_company th{
	width: 100%;
	padding: 10px;
	text-align: left;
	vertical-align: top;
	color: #333333;
	background-color: #eff0f1;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	border-right: 1px solid #dddddd;
	display: block;
}
.table_company td{
	width: 100%;
	padding: 10px;
	color: #333333;
	background-color: #fff;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	display: block;
}

ul.disc { margin-left: 1.2em; }
ul.disc li { list-style-type: disc; line-height: 22px; }	
	
	
/*privacy*/
.privacy { 
	margin: 0 auto 30px;
	padding: 0;
	width: 96%;
	}	
.n_ttl_08 {
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_08.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.un_com{
	margin: 0 auto 30px;
	padding:0;
	width: 100%;
	display: block;
	}		
/* decimal */
ul.decimal { margin-left: 1.7em; }
ul.decimal li { list-style-type: decimal; line-height: 24px; }
ol.decimal { margin-left: 1.7em; }
ol.decimal li { list-style-type: decimal; }		

/*sitemap*/	
.sitemap { 
	margin: 0 auto 30px;
	padding: 0;
	width: 98%;
	}	
.n_ttl_09 {
	margin: 20px auto;
	max-width: 480px;
	height: 60px;
	background-image: url(../image/n_title_09.png);
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.sitemap_g {
	margin: 0 auto;
	padding: 0 10px;
	width: 90%;
	}	
.sitemap ul{
	list-style: none;
	}	
.sitemap li {
	padding: 10px 10px;
	border-bottom: 1px dotted #cccccc;
}
.sitemap li a {
	text-decoration: none;
	color: #000000;
	}
.sitemap li a:hover{
	text-decoration: underline;
	color: #a50b5b;
	}		
/*documents*/
.n_ttl_10{
	margin:0 auto 30px;
	width: 250px;
	height: 50px;
	background-image: url(../image/n_title_12.png);
	background-repeat: no-repeat;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}	
.doc_ttl {
	margin: 80px 0 60px;
	height: 50px;
	line-height: 50px;
	padding: 7px 5px 0;
	border-bottom:3px double #000;
	color: #000;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-weight: bold;
	text-align: center;
	font-size:1.48em;
}	
.doc {
	margin: 0 auto;
	padding: 0;
	max-width: 1000px;
	}	
.doc dl {
	margin: 40px 0;
	padding-left:  30px;
	}	
.doc dt {
	margin: 0;
	font-weight: bold;
	}	
.doc dd {
	margin: 0;
	padding-left: 8px;
	font-size: 0.82em;
	}		
/*lineup*/
.lineup_n { 
	margin: 0 auto;
	padding: 100px 10px 40px;
	max-width: 1020px;
	}	
.lineup_nn{
	margin: 0 auto 100px;
	padding: 30px 0;
	width: 100%;
	}	
.n_ttl_02{
	margin: 0 auto 30px;
	max-width: 250px;
	height: 55px;
	background-image: url("../image/lineup_ttl01.png");
	background-repeat: no-repeat;
	background-size: contain;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.un_com{
	margin: 0 auto;
	padding:0;
	width: 99%;
	display: block;
	text-align: left;
	}	
.bg_g {
	margin: 0;
	padding: 20px 0 60px;
	background-color:#f6f6f6;
	width: 100%;
	}
.lineup_gg{
	margin: 0 auto;
	padding: 0 ;
	height: auto;
	text-align: center;
	list-style-type: none;
	overflow: hidden;
	width: 100%;
	}	
.lineup_gg li{
		list-style-type: none;
	}
.lineup_gg .lineup_list_n{
	margin: 30px auto;
	padding: 0;
	}	
ul.lineup_list_n{
	list-style: none;
	padding:0 ;
	margin: 0 auto;
	width: 98%;
	height: auto;
	}
ul.lineup_list_n li.img_wrap{
    margin: 20px auto 50px;
	padding: 0;
	width:98%;
	display: block;
}
.img_wrap_n img{
   width: 100%;
	margin: 0;
	padding: 0;
	vertical-align: bottom;
    cursor: pointer;
}


.l_tti_01{
	margin: 0 auto;
	width: 145px;
	height: 50px;
	background-image: url("../image/lineup_t.png");
	background-repeat: no-repeat;
	background-size: 145px 50px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	}
.lineup_ttl{
	margin: 150px auto 60px;
	padding: 5px 0 0;
	width: 210px;
	text-align: center;
	height: 45px;
}
.goods_a{
	margin: 60px 0;
	padding: 15px 2px;
	width: 100%;
	height: auto;
	display: flex;
	display: -webkit-box; 
	display: -webkit-flex;
	display: -ms-flexbox;
	flex-direction:column;
	}
.goods_a .goods_ap {
	margin: 0 auto ;
	padding: 0;
	order: 2;
	}	
.goods_a .goods_ap img{
	max-width: 443px;
	vertical-align: bottom;
	width:100%;
	}	
.goods_a .goodsttl{
	border-bottom: 1px solid #cccccc;
	max-width: 560px;
	display: block;
	margin-top: 100px;
	}	
.goods_a .goods_txt{
	display: block;
	width: 98%;
	margin: 0 auto;
	order: 1;
	}	
.goods_b{
	margin: 60px 0;
	padding: 15px 2px;
	width: 100%;
	height: auto;
    display: flex;
	display: -webkit-box; 
	display: -webkit-flex;
	display: -ms-flexbox;
	flex-direction:column;
	}
.goods_b .goods_ap {
	margin: 0 auto ;
	padding: 0;
	order: 2;
	}	
.goods_a .goods_ap img{
	max-width: 443px;
	vertical-align: bottom;
	width:100%;
	}	
.goods_b.goodsttl{
	border-bottom: 1px solid #cccccc;
	max-width: 560px;
	display: block;
	margin-top: 100px;
	}	
.goods_b .goods_txt{
	display: block;
	width: 98%;
	margin: 0 auto;
	order: 1;
	}
.goods_txt dl{
	display: block;
	width: 100%;

	}
.goods_txt dt{
	margin-bottom: 20px;
	}
.goods_txt dd {
	line-height: 1.6em;
	}
.goods_txt dd.indent {
	margin-bottom: 10px;
}

.goods_com{
		margin: 20px auto 60px ;
		padding: 0;
		width: 98%;
	}	
.goods_com ul{
	margin: 0;
	padding: 20px 2px;
	width: 100%;
	border: 1px solid #cccccc;
	list-style: none;
	}	
.goods_com a {
	text-decoration:none;
	color: #a50b5b;}
.goods_com a:hover {
	text-decoration:underline;
	color: #a50b5b;}	

.font_m{
	font-size: 0.76em
	}	
.lineup_frame {
	width: 100%;
	height: auto;
	margin: 15px auto;
	padding: 5px 2px 30px;
	background: #fffff;
	overflow: hidden;
}
ul.feature_btn{
	display: block;
	margin: 50px auto 100px;
	width:100%;
	padding: 30px 0;
	list-style: none;
	text-align: center;
	}
ul.feature_btn li{
	width: 100%;

	}
.btnn,
a.btnn,
button.btnn {
  font-size: 1em;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 5px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0;
	width:80%;
	height: 40px;
	margin: 10px 0;
}
a.btn-lineup {
  overflow: hidden;
  padding: 10px 10px;
vertical-align: middle;
  color: #fff;
  border-radius: 0;
  background: #000;
}

a.btn-lineup span {
  position: relative;
}

a.btn-lineup:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  background: #990066;
}

a.btn-lineup:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
a.btn-lineup2 {
  overflow: hidden;
  padding: 10px 10px;
vertical-align: middle;
  color: #fff;
  border-radius: 0;
  background: #000;
}

a.btn-lineup2 span {
  position: relative;
}

a.btn-lineup2:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  background: #990066;
}

a.btn-lineup2:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
a.btn-lineup3 {
  overflow: hidden;
  padding: 10px 10px;
vertical-align: middle;
  color: #fff;
  border-radius: 0;
  background: #000;
}

a.btn-lineup3 span {
  position: relative;
}

a.btn-lineup3:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  background: #990066;
}

a.btn-lineup3:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}

.fonts {
	font-size: 0.82em;
	line-height: 0.88em;
}	
.feature{
	margin: 50px auto 100px;
	padding:20px 0;
	width: 100%;
	min-height: 600px;
	background-image: url('../image/lineup_bg.jpg');
	background-size: 100% auto;
	background-repeat: repeat-y;
	}	
.feature dl {
	margin:10px auto;
	padding: 30px 10px;
	width: 100%;
	height: auto;
	background-color: rgba(255,255,255,0.8);


	}
.feature dt {
	margin:0 auto 30px;
	text-align: center;
	font-size: 1.5em;
	font-weight: bold;
	}
.feature dd {
	margin-top: 15px;
	font-size: 0.94em;
	}	
.feature .strong{
	font-weight: bold;
	}	
.feature .mini{
	font-size: 0.64em;
	}	
.feature_text{
	margin: 150px auto;
	padding: 0 8px;
	width: 100%;
	}
h4 .fea_ttl{
	text-align: left;
	margin: 0;
	padding: 0;
	width: 100%;
	}
ul.fea_box{

	width: 100%px;
	padding: 30px 0 0;
	list-style: none;
	}
ul.fea_box li.peculiarity_list_l{
	width:100%;
	height: auto;
	}
ul.fea_box li.cent{
	max-width:420px;
	height: auto;
	}

.peculiarity_list_s dt {
	display: list-item;
	list-style: none;
	margin-bottom: 2px;
	padding: 0;
	letter-spacing: 0.2em;
	font-weight: bold;
}
.peculiarity_list_s dd {
	display: list-item;
	list-style: square outside;
	margin:0 0 5px 40px;
	font-size: 0.94em;
	line-height: 22px;
	letter-spacing: 1px;
	}		
}