@charset "UTF-8";

/* reset css
---------------------------------------------------------------------------- */

/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:bottom;
    background:transparent;
}

body {
    line-height:1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}

table {
    border-collapse:collapse;
    border-spacing:0;
}

/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
}

/* common class
---------------------------------------------------------------------------- */
*{box-sizing: border-box;}

body {
	background-color: #fff;
	color: #000;
  display: block;
	font-family: 'Noto Sans JP', 'Roboto', sans-serif;
  font-size: 14px;
	font-weight: 400;
	padding: 0;
  width: 100%;
}
.fnt-robo-s{font-family: 'Roboto Slab', serif;}
a{
	color: inherit;
	text-decoration: none;
	transition: opacity .3s;
	transition: .3s ease;
}
a:hover{
	opacity: .7;
}
img{max-width: 100%;}
ul li,ol li{ list-style-type: none;}
@media screen and (min-width:768px) { .pc-none{ display: none!important; } }
@media screen and (max-width:767px) {	.sp-none{ display: none!important; } }

/* login
----------------------------------------------------------------------------
---------------------------------------------------------------------------- */

/* header
------------------------------- */
.login header{
	position: relative;
}
.login header .cont-inner{
	margin: 0 auto;
	max-width: 1220px;
	padding: 0 20px;
	width: 100%;
}
	@media screen and (max-width:1110px) {
		.login header .cont-inner{
			padding: 0 5px;
		}
	}
	@media screen and (max-width:767px) {
		.login header .cont-inner{
			padding: 0;
		}
	}

.login header .header-wrap .nav-wrap{
	background: url("../img/login/bg01.png") center top;
	border-bottom: 1px solid #bcbcbc;
}
	@media screen and (max-width:767px) {
		.login header .header-wrap .nav-wrap{
			background: none;
			border-bottom: none;
		}
	}

	@media screen and (max-width:767px) {
		.login header .header-wrap .nav-wrap .sp-menu-btn{
			align-items: center;
			background: #ff8767 url("../img/login/btn_sp_menu.png") center center /60% auto no-repeat;
			border-radius: 50%;
			display: flex;
			justify-content: center;
			height: 9.33vw;
			right: 5.33vw;
			top: 5.33vw;
			position: absolute;
			width: 9.33vw;
			transition: .3s ease;
			z-index: 10;
		}
		.login header .header-wrap .nav-wrap .sp-menu-btn.open{
			background: #ff8767 url("../img/login/btn_sp_menu_close.png") center center /60% auto no-repeat;
		}
	}



.login header .header-wrap .cont-inner nav{
	align-items: center;
	display: flex;
	height: 50px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login header .header-wrap .cont-inner nav{
			background: url("../img/login/bg01.png") center top /30% auto;
			align-items: center;
			display: none;
			height: auto;
			position: absolute;
			left: 0;
			top:18.33vw;
			width: 100%;
		}
	}

.login header .header-wrap .cont-inner ul{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
	@media screen and (max-width:920px) {
		.login header .header-wrap .cont-inner ul{
			font-size: 12px;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .cont-inner ul{
			display: block;
			padding: 5.33vw;
			width: 100%;
		}
		.login header .header-wrap .cont-inner ul li{
			background: rgba(255,255,255,.5);
			border-bottom: 2px solid #ffd3c7;
			font-size: 3.73vw;
			padding: 3.66vw;
			text-align: center;
		}
	}

.login header .header-wrap .title-wrap{
	background: #fff;
	padding: 20px 0;
}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap{
			padding: 2.66vw 0;
		}
	}

.login header .header-wrap .title-wrap .cont-inner{
	display: flex;
	justify-content: space-between;
}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner{
			align-items: center;
			flex-direction: column;
			justify-content: center;
		}
	}

.login header .header-wrap .title-wrap .cont-inner .sub-lead-box{
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box{
			order: 2;
		}
	}

.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.upper{
	font-size: 13px;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.upper{
			font-size: 1.17vw;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.upper{
			font-size: 2.533vw;
			margin-bottom: 2vw;
		}
	}

.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid{
	font-size:30px;
	font-weight: 700;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid{
			font-size:2.7vw;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid{
			font-size:5.86vw;
			margin-bottom: 2vw;
		}
	}

.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid span{
	color: #ff8767;
	font-size:52px;
	font-weight: 700;
	font-family: 'Roboto Slab', serif;
	padding: 0 10px;
	vertical-align: text-bottom
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid span{
			font-size:4.68vw;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.mid span{
			font-size:9.06vw;
		}
	}

.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.lower{
	font-size: 12px;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .title-wrap .cont-inner .sub-lead-box p.lower{
			font-size: 1.08vw;
		}
	}

.login header .header-wrap .title-wrap .cont-inner h1{
	margin-left: 45px;
	width: 160px;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .title-wrap .cont-inner h1{
			margin-left: 2.05vw;
			width: 14.41vw;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .title-wrap .cont-inner h1{
			order: 1;
			margin-left: 0;
			margin-bottom: 2.66vw;
			width: 25.33vw;
		}
	}

.login header .header-wrap .camp-wrap{
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 440px;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .camp-wrap{
			width: 39.63vw;
		}
	}
	@media screen and (max-width:767px) {
		.login header .header-wrap .camp-wrap{
			display: none;
		}
	}

.login header .header-wrap .camp-wrap p{
	font-size: 13px;
	margin-bottom: 10px;
	text-align: center;
	width: 100%;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .camp-wrap p{
			font-size: 1.17vw;
			margin-bottom: .9vw;
		}
	}

.login header .header-wrap .camp-wrap a{
	align-items: center;
	border-top-left-radius: 10px;
	background-position: left 10px center,right 5px top 5px;
	background-repeat: no-repeat,no-repeat;
	color: #fff;
	display: flex;
	font-weight: 700;
	height: 70px;
	padding-left: 44px;
	text-align: center;
	width: 140px;
}
	@media screen and (max-width:1110px) {
		.login header .header-wrap .camp-wrap a{
			border-top-left-radius: .9vw;
			background-position: left .9vw center,right .45vw top .45vw;
			font-size: 1.26vw;
			height: 6.3vw;
			padding-left: 3.96vw;
			text-align: center;
			width: 12.61vw;
		}
	}

.login header .header-wrap .camp-wrap a:nth-of-type(1){
	background-color: #fbb046;
	background-image: url("../img/login/header_camp_icon01.png") ,url("../img/login/header_camp_icon_cnr.png");
}
.login header .header-wrap .camp-wrap a:nth-of-type(2){
	background-color: #8c97cb;
	background-image: url("../img/login/header_camp_icon02.png") ,url("../img/login/header_camp_icon_cnr.png");
}
.login header .header-wrap .camp-wrap a:nth-of-type(3){
	background-color: #54c2bd;
	background-image: url("../img/login/header_camp_icon03.png") ,url("../img/login/header_camp_icon_cnr.png");
}

/* main
------------------------------- */
.login main{
	background: url("../img/login/bg02.png");
	padding: 60px 0;
}
	@media screen and (max-width:767px) {
		.login main{
			background: url("../img/login/bg02.png");
			padding: 5.33vw 4.66vw;
		}
	}

.login main .login-inner{
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	margin: 0 auto;
	max-width: 740px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login main .login-inner{
			border-radius: 2.66vw;
		}
	}

.login main .login-inner h2{
	background: #5a4421;
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
	color: #fff;
	font-size: 20px;
	height: 60px;
	line-height: 60px;
	text-align: center;
}
	@media screen and (max-width:767px) {
		.login main .login-inner h2{
			border-top-left-radius: 2.66vw;
			border-top-right-radius: 2.66vw;
			font-size: 4.26vw;
			height: 11.46vw;;
			line-height: 11.46vw;;
		}
	}

.login main .login-inner .login-box{
	background: #fffcf5;
	display: flex;
	justify-content: center;
	padding: 35px 0 50px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box{
			display: block;
			padding: 6.66vw 8vw 10.66vw;
		}
	}

.login main .login-inner .login-box .login-form-box,
.login main .login-inner .login-box .login-link-box{
	align-items: center;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 50%;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box,
		.login main .login-inner .login-box .login-link-box{
			justify-content: flex-start;
			width: auto;
		}
	}

.login main .login-inner .login-box .login-form-box{
	border-right: 1px solid #dbb699;
	padding: 0 35px 20px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box{
			border-right: none;
			padding: 0;
		}
	}

.login main .login-inner .login-box .login-form-box form{
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex: 1;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form{
			border-bottom: 1px solid #dbb699;
			align-items: center;
			padding-bottom: 8vw;
		}
	}

.login main .login-inner .login-box .login-form-box form input[type=email],
.login main .login-inner .login-box .login-form-box form input[type=password]{
	background: #fffbc6;
	border: 1px solid #dbb699;
	font-size: 16px;
	padding: 14px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form input[type=email],
		.login main .login-inner .login-box .login-form-box form input[type=password]{
			font-size: 3.46vw;
			padding: 4vw;
			margin-bottom: 4vw;
		}
	}

.login main .login-inner .login-box .login-form-box form button{
	background: rgb(255,143,101); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,143,101,1) 1%, rgba(255,71,126,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,143,101,1) 1%,rgba(255,71,126,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,143,101,1) 1%,rgba(255,71,126,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff8f65', endColorstr='#ff477e',GradientType=0 ); /* IE6-9 */
	border: none;
	border-radius: 22px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	box-shadow: none;
	height: 44px;
	outline: none;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form button{
			border-radius: 5.6vw;
			font-size: 3.73vw;
			margin: 2.13vw 0 6.13vw;
			height: 11.2vw;
		}
	}

.login main .login-inner .login-box .login-form-box form input[type=checkbox]{
	display: none;
}
.login main .login-inner .login-box .login-form-box form label.cstm-box{
	color: #6f4f33;
	font-size: 15px;
	position: relative;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form label.cstm-box{
			font-size: 3.2vw;
		}
	}

.login main .login-inner .login-box .login-form-box form label.cstm-box::before{
	border: 1px solid #dbb699;
	background: #fff;
	display: inline-block;
	content: "";
	height: 20px;
	margin-right: 10px;
	vertical-align: middle;
	width: 20px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form label.cstm-box::before{
			height: 3.73vw;
			margin-right: 1.33vw;
			width: 3.73vw;
		}
	}

.login main .login-inner .login-box .login-form-box form label.cstm-box::after {
	content: "";
	left: 6px; 
	margin-top: 1px; 
	width: 6px;
	height: 12px;
	border-right: 3px solid #0171bd;
	border-bottom: 3px solid #0171bd;
	transform: rotate(45deg);
	position: absolute;
	opacity: 0;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-form-box form label.cstm-box::after {
			left: 1.06vw; 
			width: 1.06vw;
			height: 2.4vw;
		}
	}

.login main .login-inner .login-box .login-form-box form input[type=checkbox]:checked + .cstm-box::after{
	opacity: 1;
}
.login main .login-inner .login-box .login-link-box{
	padding: 0 45px 20px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-link-box{
			padding: 8vw 0 0;
		}
		.login main .login-inner .login-box .login-link-box p{
			margin-bottom: 8vw;
		}
	}

.login main .login-inner .login-box .login-link-box a{
	margin-bottom: 15px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box .login-link-box a{
			margin-bottom: 4vw;
		}
	}

.login main .login-inner .login-box .login-link-box a:last-child{
	margin-bottom: 0;
}
.login main .login-inner .login-box p{
	color: #6f4f33;
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -.03em;
	margin-bottom: 30px;
}
	@media screen and (max-width:767px) {
		.login main .login-inner .login-box p{
			font-size: 3.2vw;
			letter-spacing: 0;
			margin-bottom: 4vw;
		}
	}

.login main .regi-inner{
	margin-top: 60px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner{
			margin-top: 10.66vw;
		}
	}

.login main .regi-inner .title-box{
	border-bottom: 1px solid #dbb699;
	margin-bottom: 25px;
	padding-bottom: 3px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .title-box{
			margin-bottom: 6vw;
			padding-bottom: .8vw;
		}
	}

.login main .regi-inner .title-box .inner{
	align-items: center;
	display: flex;
	border-bottom: 1px solid #dbb699;
	padding-bottom: 13px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .title-box .inner{
			display: block;
			padding-bottom: 2vw;
		}
	}

.login main .regi-inner h3{
	background: url("../img/login/icon01.png") left 15px center /20px auto no-repeat;
	border-left: 1px solid #dbb699;
	color: #59230b;
	font-size: 20px;
	font-weight: 500;
	line-height: 20px;
	padding-left: 50px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner h3{
			background: url("../img/login/icon01.png") left 2.66vw center /4vw auto no-repeat;
			font-size: 4.26vw;
			line-height: 4.26vw;
			margin-bottom: 2vw;
			padding-left: 9.33vw;
		}
	}

.login main .regi-inner p{
	border-left: 1px solid #dbb699;
	color: #59230b;
	font-size: 16px;
	line-height: 20px;
	margin-left: 45px;
	padding-left: 45px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner p{
			font-size: 2.93vw;
			line-height: 4.26vw;
			margin-left: 0;
			padding-left: 3.33vw;
		}
	}

.login main .regi-inner .regi-form-box{
	background: #fffcf5;
	padding: 30px 30px 50px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box{
			padding: 3.33vw;
		}
	}

.login main .regi-inner .regi-form-box p.title{
	background: url("../img/login/bg02.png");
	border: none;
	color: #6f4f33;
	font-size: 16px;
	height: 44px;
	line-height: 44px;
	padding-left: 15px;
	margin-bottom: 30px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box p.title{
			background: url("../img/login/bg02.png") center center /15% auto;
			border: none;
			color: #6f4f33;
			font-size: 3.73vw;
			height: 8.26vw;
			line-height: 8.26vw;
			padding-left: 2.13vw;
			margin-bottom: 2.66vw;
		}
	}

.login main .regi-inner .regi-form-box dl{
	align-items: center;
	border-top: 1px solid #e9dfd4;
	color: #6f4f33;
	display: flex;
	font-size: 13px;
	justify-content: space-between;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl{
			display: block;
			font-size: 3.2vw;
			padding: .66vw 0 6vw;
		}
	}

.login main .regi-inner .regi-form-box dl:nth-last-of-type(1){
	border-bottom: 1px solid #e9dfd4;
}
.login main .regi-inner .regi-form-box dl dt{
	background: url("../img/login/form_head_icon.png") left 10px center / 7px auto no-repeat;
	padding-left: 35px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl dt{
			background: url("../img/login/form_head_icon.png") left center / 1.33vw auto no-repeat;
			padding: 3.33vw 0 3.33vw 4.66vw;
		}
	}

.login main .regi-inner .regi-form-box dl dd{
	align-items: center;
	display: flex;
	padding: 10px 0;
	min-height: 50px;
	width: 387px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl dd{
			padding: 0;
			min-height: 8vw;
			width: 100%;
		}
	}

.login main .regi-inner .regi-form-box dl dd input{
	border: 1px solid #d1c0a5;
	border-radius: 6px;
	padding-left: 10px;
	height: 30px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl dd input{
			border-radius: .53vw;
			padding-left: 2vw;
			height: 8vw;
			width: 100%;
		}
	}

.login main .regi-inner .regi-form-box dl dd input[type=radio]{
	border: 1px solid #d1c0a5;
	border-radius: 50%;
	padding-left: 10px;
	height: 15px;
	width: 15px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl dd input[type=radio]{
			padding-left: 0;
			margin: 0 2.66vw 0 0;
			height: 3.46vw;
			width: 3.46vw;
		}
		.login main .regi-inner .regi-form-box dl dd label{
			font-size: 2.93vw;
		}
	}

.login main .regi-inner .regi-form-box dl dd a{
	background: #ff8767;
	border-radius: 12px;
	color: #fff;
	height: 24px;
	line-height: 24px;
	margin-left: 25px;
	padding: 0 15px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box dl dd a{
			border-radius: 2.8vw;
			height: 5.6vw;
			font-size: 2.93vw;
			line-height: 5.6vw;
			margin-left: 5.33vw;
			padding: 0 5.6vw;
		}
	}

.login main .regi-inner .regi-form-box button{
	background: #6f4f33;
	border: none;
	border-radius: 13px;
	color: #fff;
	display: block;
	font-size: 16px;
	height: 26px;
	margin: 30px auto 0;
	outline: none;
	text-align: center;
	width: 180px;
}
	@media screen and (max-width:767px) {
		.login main .regi-inner .regi-form-box button{
			border-radius: 5.6vw;
			color: #fff;
			font-size: 3.73vw;
			height: 11.2vw;
			margin: 6.66vw auto 8vw;
			width: 77.33vw;
		}
	}

/* footer
---------------------------------------------------------------------------- */
footer .footer-inner{
	margin: 0 auto;
	max-width: 1040px;
	padding: 60px 20px 90px;
	width: 100%;
}
	@media screen and (max-width:920px) {
		footer .footer-inner{
			padding: 60px 5px 90px;
		}
	}
	@media screen and (max-width:767px) {
		footer .footer-inner{
			padding: 10.66vw 0 13.33vw;
		}
	}

footer .footer-inner .upper-wrap{
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 74px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap{
			justify-content: center;
			flex-wrap: wrap;
			margin-bottom: 10.33vw;
		}
	}

footer .footer-inner .upper-wrap figure{
	width: 134px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap figure{
			order: 1;
			margin-left: 13.33vw;
			width: 26.66vw;
		}
	}

footer .footer-inner .upper-wrap ul{
	align-items: center;
	display: flex;
	justify-content: center;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap ul{
			order: 3;
			margin-top: 12vw;
			width: 100%;
		}
	}

footer .footer-inner .upper-wrap ul li a{
	padding: 0 10px;
	margin: 0 8px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap ul li a{
			padding: 0 1.33vw;
			margin: 0 4.33vw;
		}
	}

footer .footer-inner .upper-wrap ul li img{
	height: 20px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap ul li img{
			height: 5.86vw;
		}
	}

footer .footer-inner .upper-wrap .totop-box{
	border-left: 1px solid #a0a0a0;
	padding-left: 22px;
	margin-left: 84px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap .totop-box{
			order: 2;
			padding-left: 4.53vw;
			margin-left: 10.33vw;
		}
	}

footer .footer-inner .upper-wrap .totop-box img{
	width: 22px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .upper-wrap .totop-box img{
			width: 5.06vw;
		}
	}

footer .footer-inner .upper-wrap .totop-box:hover img{
	opacity: .7;
	transition: .3s ease;
	cursor: pointer;
}
footer .footer-inner .lower-wrap{
	display: flex;
	color: #47402c;
	font-size: 16px;
	justify-content: space-between;
	margin-bottom: 150px;
}
	@media screen and (max-width:920px) {
		footer .footer-inner .lower-wrap{
			display: flex;
			color: #47402c;
			font-size: 1.763vw;
			justify-content: space-between;
			margin-bottom: 150px;
		}
	}
	@media screen and (max-width:767px) {
		footer .footer-inner .lower-wrap{
			flex-direction: column-reverse;
			flex-wrap: wrap;
			font-size: 3.2vw;
			justify-content: space-between;
			padding: 0 13.33vw;
			margin-bottom: 20vw;
		}
	}

footer .footer-inner .lower-wrap .adrs-box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
footer .footer-inner .lower-wrap .adrs-box p{
	line-height: 24px;
}
footer .footer-inner .lower-wrap .link-box{
	display: flex;
	justify-content: space-between;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .lower-wrap .link-box{
			flex-wrap: wrap;
			margin-bottom: 12vw;
		}
	}

footer .footer-inner .lower-wrap .link-box p{
	font-family: 'Roboto Slab', serif;
	font-weight: 700;
	line-height: 24px;
	margin-right: 50px;
}
	@media screen and (max-width:920px) {
		footer .footer-inner .lower-wrap .link-box p{
			margin-right: 5.43vw;
		}
	}
	@media screen and (max-width:767px) {
		footer .footer-inner .lower-wrap .link-box p{
			line-height: 1;
			margin-right: 0;
			margin-bottom: 3.33vw;
			width: 100%;
		}
	}

footer .footer-inner .lower-wrap .link-box ul{
	margin-left: 25px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .lower-wrap .link-box ul{
			margin-left: 0;
		}
	}

footer .footer-inner .lower-wrap .link-box ul li{
	display: block;
	height: 24px;
	line-height: 24px;
}
	@media screen and (max-width:767px) {
		footer .footer-inner .lower-wrap .link-box ul li{
			height: 6.66vw;
			line-height: 6.66vw;
		}
	}

footer .footer-inner small{
	display: block;
	font-size: 16px;
	font-family: 'Roboto Slab', serif;
	text-align: center;
}
	@media screen and (max-width:767px) {
		footer .footer-inner small{
			font-size: 3.2vw;
		}
	}

.login footer{
	background: url("../img/login/bg01.png");
}
	@media screen and (max-width:767px) {
		.login footer{
			background: url("../img/login/bg01.png") center top /30% auto;
		}
	}

.designgallery footer{
	background: #f1f1f1;
}
	@media screen and (max-width:767px) {
		.designgallery footer{
			background: url("../img/template/footer_bg_sp.png") center top /200% auto;
		}
	}

/* designgallery
-----------------------------------------------------------------------------
------------------------------------------------------------------------------*/
.designgallery header{
	background: #fff;
	position: relative;
}
.designgallery header .header-wrap .cont-inner{
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	margin: 0 auto;
	padding: 22px 40px 22px 52px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner{
			padding: 3.33vw 5.33vw 3.33vw 3.33vw;
			position: relative;
		}
	}

.designgallery header .header-wrap .cont-inner h1{
	width: 160px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner h1{
			width: 28vw;
		}
	}

.designgallery header .header-wrap .cont-inner .nav-wrap{
	align-items: flex-end;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.designgallery header .header-wrap .cont-inner .nav-wrap nav{
	display: flex;
	justify-content: space-between;
	padding: 15px 0 0;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner .nav-wrap nav{
			background: url("../img/template/footer_bg_sp.png");
			display: none;
			justify-content: space-between;
			position: absolute;
			left: 0;
			top: 16vw;
			padding: 4.26vw;
			width: 100vw;
			z-index: 100;
		}
		.designgallery header .header-wrap .cont-inner .nav-wrap .sp-menu-btn{
			background: url("../img/btn_sp_menu.png") center center / 8vw auto no-repeat;
			display: block;
			margin-top: 2.66vw;
			transition: .3s ease;
			height: 8vw;
			width: 8vw;
		}
		.designgallery header .header-wrap .cont-inner .nav-wrap .sp-menu-btn.open{
			transform: rotate(-90deg);
		}
	}

.designgallery header .header-wrap .cont-inner .nav-wrap nav ul{
	display: flex;
	font-size: 15px;
	justify-content: space-between;
}
.designgallery header .header-wrap .cont-inner .nav-wrap nav ul li{
	margin-right: 40px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner .nav-wrap nav ul li{
			background: #fff;
			border: 1px solid #f0ff00;
			margin-right: 0;
			width: 40vw;
			padding: 1.33vw 0;
			text-align: center;
		}
	}

.designgallery header .header-wrap .cont-inner .nav-wrap nav ul:first-child{
	border: 1px solid #f9f9f9;
	font-family: 'Roboto Slab', serif;
	font-weight: 700;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner .nav-wrap nav ul:first-child{
			border-right: none;
		}
	}

.designgallery header .header-wrap .cont-inner .nav-wrap nav p{
	padding: 0 40px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner .nav-wrap nav p{
			padding: 0;
			margin: 5.66vw 0;
			text-align: center;
		}
	}

.designgallery header .header-wrap .cont-inner .nav-wrap p.dir-title{
	font-family: 'Roboto Slab', serif;
	font-size: 32px;
	font-weight: 700;
	margin-right: 40px;
	margin-bottom: 6px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cont-inner .nav-wrap p.dir-title{
			font-size: 4.8vw;
			margin-right: 0;
			margin-bottom: 2.66vw;
		}
	}

.designgallery header .header-wrap .cate-wrap{
	background: #000;
	color: #fff;
	position: relative;
}
.designgallery header .header-wrap .cate-wrap .cont-inner{
	padding: 0;
	height: 40px;
	line-height: 40px;
}
.designgallery header .header-wrap .cate-wrap .cate-menu-btn{
	background: url("../img/btn_cate_open.png") center left /16px auto no-repeat;
	font-size: 15px;
	font-family: 'Roboto Slab', serif;
	margin: 0 auto;
	padding-left: 22px;
}
.designgallery header .header-wrap .cate-wrap .cate-menu-btn.open{
	background: url("../img/btn_cate_close.png") center left /16px auto no-repeat;
}
.designgallery header .header-wrap .cate-wrap .cate-menu-btn:hover{
	cursor: pointer;
}
.designgallery header .header-wrap .cate-wrap .cont-wrap{
	background: #000;
	display: none;
	position: absolute;
	left: 0;
	top:40px;
	width: 100%;
	z-index: 99;
}
.designgallery header .header-wrap .cate-wrap .cont-wrap .inner{
	display: flex;
	justify-content: space-between;
	max-width: 1020px;
	margin: 0 auto;
	padding: 50px 10px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cate-wrap .cont-wrap .inner{
			flex-wrap: wrap;
			padding: 6.66vw 5.33vw;
		}
	}

.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	font-size: 13px;
	width: 210px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box{
			justify-content: flex-start;
			font-size: 2.933vw;
			width: 30%;
		}
	}

.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dt{
	border-bottom: 1px solid #7a7a7a;
	color: #7a7a7a;
}
.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 15px;
	padding-bottom: 10px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd{
			margin-bottom: 2.66vw;
			padding-bottom: 1.33vw;
		}
	}

.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd a{
	color: #fff;
	font-size: 11px;
	font-weight: 400;
	line-height: 1;
	margin-top: 20px;
	width: 40%;
}
.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd a:nth-child(odd){
	width: 45%;
}
.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd a:nth-child(even){
	width: 55%;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd a:nth-child(odd){
			width: 100%;
		}
		.designgallery header .header-wrap .cate-wrap .cont-wrap .inner .cont-box dl dd a:nth-child(even){
			width: 100%;
		}
	}

.designgallery header .header-wrap .search-wrap{
	background: #f9f9f9;
	border-bottom: 1px solid #cdcdcd;
}
.designgallery header .header-wrap .search-wrap .cont-inner{
	align-items: center;
	display: flex;
	height: 140px;
	justify-content: center;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .search-wrap .cont-inner{
			height: 20.8vw;
		}

	}

.designgallery header .header-wrap .search-wrap .cont-inner .search-box{
	display: inline-block;
	position: relative;
}
.designgallery header .header-wrap .search-wrap .cont-inner input[type=text]{
	border-radius: 24px;
	border: 1px solid #000;
	font-size: 12px;
	height: 48px;
	padding-left: 24px;
	outline: none;
	width: 560px;

}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .search-wrap .cont-inner input[type=text]{
			border-radius: 4.25vw;
			font-size: 2.93vw;
			height: 8.53vw;
			padding-left: 2.66vw;
			width: 74.66vw;
		}
	}

.designgallery header .header-wrap .search-wrap .cont-inner button{
	display: none;
}
.designgallery header .header-wrap .search-wrap .cont-inner label::before{
	background: url("../img/login/btn_search.png") center center /contain no-repeat;
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 12px);
	right: 15px;
	height: 24px;
	width: 24px;
}
	@media screen and (max-width:767px) {
		.designgallery header .header-wrap .search-wrap .cont-inner label::before{
			top: calc(50% - 2.66vw);
			right: 3vw;
			height: 4.2vw;
			width: 4.2vw;
		}
	}

/* aside
------------------------------------------------------------------------------*/
.designgallery aside{
	background: #fff;
	border-right: 1px solid #cdcdcd;
	display: flex;
	justify-content: flex-end;
	position: absolute;
	top: 0;
	left: 0;
	padding: 260px 0 25px;
	width: calc(50% - 580px);
}

.designgallery aside ul li{
	margin-bottom: 40px;
}
.designgallery aside ul li a{
	display: block;
	text-align: center;
	width: 50px;
}
.designgallery aside ul li img{
	height: 22px;
}
.designgallery aside p{
	font-family: 'Roboto Slab', serif;
	font-size: 16px;
	transform: rotate(90deg);
	margin-top: 160px;
	margin-bottom: 30px;
}
.designgallery aside .aside-inner{
	position: relative;
}
.designgallery aside .aside-inner::after{
	content: "●";
	color: #cdcdcd;
	position: absolute;
	bottom: -31px;
	right: -8px;
}

/* top contents
------------------------------------------------------------------------------*/
.designgallery.top .block01{
	margin: 60px auto 90px;
	max-width: 1000px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery.top .block01{
			margin: 6.66vw 0;
			padding: 0 6.66vw;
			max-width: 1000px;
		}
	}

.designgallery.top .block01 .item-wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.designgallery.top .block01 .item-wrap a{
	margin-bottom: 45px;
	width: 300px;
}
	@media screen and (max-width:767px) {
		.designgallery.top .block01 .item-wrap a{
			margin-bottom: 6.66vw;
			width: 40vw;
		}
	}

.designgallery.top .block01 .item-wrap a figure{
	margin-bottom: 15px;
}
	@media screen and (max-width:767px) {
		.designgallery.top .block01 .item-wrap a figure{
			margin-bottom: 2vw;
		}
	}

.designgallery.top .block01 .item-wrap a p{
	font-family: 'Roboto Slab', serif;
	font-size: 12px;
}
	@media screen and (max-width:767px) {
		.designgallery.top .block01 .item-wrap a p{
			font-size: 12px;
		}
	}

.designgallery.top .block01 .pager-wrap{
	display: flex;
	justify-content: center;
}
.designgallery.top .block01 .pager-wrap ul{
	display: flex;
	justify-content: center;
}
.designgallery.top .block01 .pager-wrap ul li{
	margin: 0 5px;
}
.designgallery.top .block01 .pager-wrap ul li a{
	align-items: center;
	background: #f0ff00;
	border-radius: 50%;
	display: flex;
	font-size: 10px;
	justify-content: center;
	height: 26px;
	width: 26px;
}
.designgallery.top .block01 .pager-wrap ul li.current a{
	background: #000;
	color: #fff;
}


/* sub contents
------------------------------------------------------------------------------*/
.designgallery.sub .detail-wrap{
	border: 1px solid #cdcdcd;
	border-radius: 30px;
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 60px auto;
	padding: 60px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap{
			border-radius: 4vw;
			display: block;
			margin: 6.66vw 5.33vw 12vw;
			padding: 5.33vw;
			width: auto;
		}
	}

.designgallery.sub .detail-wrap .img-box{
	width: 450px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .img-box{
			width: auto;
		}
	}

.designgallery.sub .detail-wrap .img-box .next-prev-box{
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .img-box .next-prev-box{
			margin-top: 3.33vw;
		}
	}

.designgallery.sub .detail-wrap .img-box .next-prev-box a{
	align-items: center;
	display: flex;
	justify-content: center;
}
.designgallery.sub .detail-wrap .img-box .next-prev-box a.prev::before,
.designgallery.sub .detail-wrap .img-box .next-prev-box a.next:after{
	align-items: center;
	background: #f0ff00;
	content: "<";
	border-radius: 50%;
	display: flex;
	font-size: 10px;
	justify-content: center;
	margin-right: 15px;
	height: 30px;
	width: 30px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .img-box .next-prev-box a.prev::before,
		.designgallery.sub .detail-wrap .img-box .next-prev-box a.next:after{
			font-size: 3.2vw;
			margin-right: 1.66vw;
			height: 5.6vw;
			width: 5.6vw;
		}
	}

.designgallery.sub .detail-wrap .img-box .next-prev-box a.next:after{
	content: ">";
	margin-right: 0;
	margin-left: 15px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .img-box .next-prev-box a.next:after{
			margin-left: 1.66vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	max-width: 390px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box{
			max-width: none;
			width: auto;
		}
	}

.designgallery.sub .detail-wrap .cntr-box h2{
	font-family: 'Roboto Slab', serif;
	font-size: 28px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box h2{
			font-size: 5.6vw;
			margin-top: 12vw;
			margin-bottom: 4vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box h2 span{
	display: block;
	font-size: 16px;
	margin-bottom: 15px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box h2 span{
			font-size: 2.93vw;
			margin-bottom: 2.66vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .cate-taste-box{
	background: #f0ff00;
	border-radius: 20px;
	padding: 22px 20px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .cate-taste-box{
			border-radius: 2.66vw;
			padding: 4.6vw 4vw;
			margin-bottom: 5.66vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl{
	align-items: center;
	display: flex;
	padding: 12px 0;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl{
			padding: 1.56vw 0;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl dt{
	font-family: 'Roboto Slab', serif;
	font-size: 12px;
	font-weight: 400;
	width: 110px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl dt{
			font-family: 'Roboto Slab', serif;
			font-size: 2.933vw;
			width: 22.933vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl dd{
	font-size: 14px;
	font-weight: 700;
	flex: 1;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .cate-taste-box dl dd{
			font-size: 3.2vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .dl-box h3{
	font-family: 'Roboto Slab', serif;
	font-size: 24px;
	margin-bottom: 15px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .dl-box h3{
			font-size: 4.53vw;
			margin-top: 5.66vw;
			margin-bottom: 2.66vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .dl-box p{
	margin-bottom: 30px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .dl-box p{
			margin-bottom: 6vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .dl-box p a{
	border-bottom: 1px solid #1189e5;
	color: #1189e5;
	padding-bottom: 5px;
}
.designgallery.sub .detail-wrap .cntr-box .dl-box dl{
	align-items: center;
	display: flex;
	margin-top: 15px;
}
.designgallery.sub .detail-wrap .cntr-box .dl-box dt{
	align-items: center;
	display: flex;
	width: 100px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .dl-box dt{
			width: 22.66vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .dl-box dt span{
	font-family: 'Roboto Slab', serif;
	font-size: 24px;
	padding-right: .5em;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .dl-box dt span{
			font-size: 4.53vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .dl-box dd{
	flex: 1;
}
.designgallery.sub .detail-wrap .cntr-box .dl-box dd a{
	background: #f0ff00 url("../img/btn_dl.png") right 25px center / 14px auto no-repeat;
	border-radius: 21px;
	display: block;
	height: 42px;
	flex: 1;
	line-height: 42px;
	text-align: center;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .dl-box dd a{
			background: #f0ff00 url("../img/btn_dl.png") right 2.66vw center / 3.33vw auto no-repeat;
			border-radius: 4vw;
			height: 8vw;
			line-height: 8vw;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .designer-name{
	font-family: 'Roboto Slab', serif;
	font-weight: 700;
	text-align: right;
	padding-bottom: .5em;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .detail-wrap .cntr-box .designer-name{
			padding: 5.66vw 0 .5em;
		}
	}

.designgallery.sub .detail-wrap .cntr-box .designer-name span{
	font-weight: 400;
	margin-right: 15px;
}
.designgallery.sub .block02 h2{
	font-size: 28px;
	text-align: center;
	margin-bottom: 50px;
	width: 100%;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .block02 h2{
			text-align: center;
			margin-bottom: 9.33vw;
		}
	}

.designgallery.sub .block02 .other-item-wrap a{
	margin-bottom: 25px;
}
.designgallery.sub .block02 .other-item-wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 20px;
	max-width: 1040px;
	margin: 0 auto 65px;
	width: 100%;
}
.designgallery.sub .block02 .other-item-wrap figure{
	margin-bottom: 10px;
	width: 180px;
}
	@media screen and (max-width:767px) {
		.designgallery.sub .block02 .other-item-wrap figure{
			margin-bottom: 2.66vw;
			width: 40vw;
		}
	}











