@charset "UTF-8";

/*======*/
body,
html {
	margin: 0px;
	padding: 0px;
	cursor: default;
	font-size: 12px;
	line-height: 19px;
	text-align: center;
	color: #ffffff;
}

body {
	font-family: "メイリオ", ＭＳ Ｐゴシック, Osaka;
	margin: 0px;
	padding: 0px;
	zoom: 1.0;
	-moz-transform: scale(1.0);
}

@media all and (max-width: 1024px) {
	body {
		font-family: Verdana, sans-serif;
		-webkit-text-size-adjust: none;
		overflow-x: hidden;
		min-width: 100%;
	}
}

a {
	cursor: pointer;
	outline: none;
	text-decoration: none;
}

input,
textarea,
option,
select {
	font-size: 12px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border: none;
	border: 1px solid #e0e0e0;
}

h1,
h2,
h3,
h4,
h5,
p,
ul,
li {
	font-size: 12px;
	color: #381b1b;
	line-height: 19px;
	font-weight: normal;
}

img,
div,
ul,
li {
	vertical-align: top;
	border: 0px;
}

ul,
li {
	list-style-type: none;
	text-align: center;
	margin: 0px;
	padding: 0px;
	vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
p,
div,
ul,
li,
dl,
dt,
dd,
article {
	margin: 0px auto;
	padding: 0px;
}

a:hover img {
	opacity: 0.9;
	filter: alpha(opacity=95);
}

@media all and (min-width: 1025px) {
	#container {
		width: 100%;
		overflow-x: hidden;
	}

	#contents {
		width: 100%;
		padding: 0px 0px 0px 0px;
	}

	.etc #contents {
		width: 100%;
		padding: 50px 0px;
	}

	.top_contents {
		width: 100%;
		padding: 0px 0px 0px 0px;
	}

	.pc_none {
		display: none;
	}

	.main_contents_box {
		max-width: 1200px;
	}
}

@media all and (max-width: 1024px) {
	#container {
		overflow-x: hidden;
	}

	#contents {
		width: 100%;
		padding: 0px 0px 0px 0px;
	}

	.etc #contents {
		width: 100%;
		padding: 50px 0px;
	}

	.smart_none {
		display: none;
	}
}

/*======*/


.logospace {
	width: 100%;
	height: auto;
	position: relative;
}

@media all and (min-width: 1025px) {
	.logospace {
		height: 70px;
		position: fixed;
		top: 0px;
		left: 0px;
		background: rgb(255 198 202);
		z-index: 10;
	}

	.logospace_in {
		height: 70px;
		width: 1200px;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		align-items: center;
	}

	.logospace h1 {
		width: 221px;
	}

	.etc header {
		width: 100%;
		height: 330px;
	}

	.header p.logo {
		width: 530px;
		padding-top: 270px;
	}
}

@media all and (max-width: 1024px) {
	
	.logospace {
		background: rgba(241, 192, 190, 0.2);
		z-index: 10;
	}

	.logospace h1 {
		width: 50%;
		padding: 30px 0px;
	}

	.etc header {
		width: 100%;
		height: auto;
	}

	.header p.logo {
		width: 75%;
		height: auto;
		padding: 30px 0px 100px 0px;
	}
}

@media all and (max-width: 776px) {}

@media all and (max-width: 667px) {}

@media all and (max-width: 480px) {}

/*======*/
.tel {
	width: 100%;
	height: auto;
	background: rgb(255 198 202);
	padding: 20px 0px;
	position: absolute;
	bottom: 0px;
	left: 0px;
}

.tel ul {
	width: 1200px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	align-items: center;
}

.tel li:nth-of-type(1) {
	width: 574px;
	margin: 0px;
}

@media all and (max-width: 1024px) {
	.tel {
		padding: 15px 0px;
	}

	.tel ul {
		width: 100%;
	}

	.tel li:nth-of-type(1) {
		width: 100%;
		margin: 0px auto;
	}

	.tel li:nth-of-type(1) img {
		width: 85%;
	}
}

/*======*/
header nav {
	width: 100%;
	height: auto;
	padding: 0px;
	margin: 0px auto;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
}

header nav .menu {
	width: 100%;
	height: auto;
	position: relative;
}

header nav ul.menu {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

header nav ul.menu li {
	padding: 0px;
}

header nav ul.menu li a {
	display: block;
}

@media all and (min-width: 1025px) {
	header nav {
		width: 1110px;
		text-align: left;
	}

	header nav .menu {
		width: 90%;
		height: auto;
	}

	header nav ul.menu {
		width: 100%;
		height: auto;
	}

	header nav ul.menu li {
		width: 10%;
		height: auto;
		transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
	}

	header nav ul.menu li:hover {
		-webkit-transform: translate(0px, -9px);
		-ms-transform: translate(0px, -9px);
	}

	header nav ul.menu a span.hover {
		display: block;
		width: 100%;
		padding: 0px 0px 6px 0px;
		color: #ffffff;
		font-size: 12px;
		line-height: 100%;
		position: relative;
	}

	header nav ul.menu a span.hover:after {
		content: '';
		position: absolute;
		bottom: 0px;
		left: 2%;
		width: 96%;
		height: 1px;
	}

	header nav ul.menu a span.en {
		width: 100%;
		padding-top: 2px;
		display: block;
		color: #381b27;
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 100%;
	}

	header nav ul.menu a span.ja {
		width: 100%;
		padding-top: 2px;
		display: block;
		color: #ff4857;
		font-size: 17px;
		letter-spacing: 1px;
		line-height: 100%;
	}

	header nav ul.menu a {
		display: block;
		padding: 0px;
	}

	header nav ul.icon {
		width: 90px;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	header nav ul.icon li {
		width: 30px;
		margin-right: 10px;
	}
}

@media all and (max-width: 1024px) {
	header nav {
		display: none;
	}
}


/*======*/

footer p.logo {
	width: 221px;
	height: auto;
	padding: 30px 0px;
}

footer p.copy {
	width: 100%;
	height: auto;
	line-height: 34px;
	color: #1b1d38;
	padding-top: 10px;
}

@media all and (min-width: 1025px) {
	footer p.copy a:link {
		color: #1b1d38;
		text-decoration: none;
	}

	footer p.copy a:visited {
		color: #1b1d38;
		text-decoration: none;
	}

	footer p.copy a:hover {
		color: #1b1d38;
		text-decoration: underline;
	}

	footer p.copy a:active {
		color: #1b1d38;
		text-decoration: none;
	}
}

@media all and (max-width: 1024px) {
	footer p.logo {
		width: 150px;
		height: auto;
		padding: 30px 0px;
	}

	footer p.copy {
		padding-bottom: 42px;
		font-size: 11px;
	}

	footer p.copy a {
		color: #1b1d38;
	}

	footer div.copy .copy span {
		display: none;
	}
}

/*======*/
footer nav {
	max-width: 1200px;
	width: 100%;
	height: auto;
	padding: 0px;
	margin: 0px auto;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

footer nav .menu {
	width: 100%;
	height: auto;
	position: relative;
}

footer nav ul.menu {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

footer nav ul.menu li {
	padding: 0px;
}

footer nav ul.menu li a {
	display: block;
}

@media all and (min-width: 1025px) {
	footer nav {
		width: 100%;
		text-align: left;
	}

	footer nav .menu {
		width: 90%;
		height: auto;
	}

	footer nav ul.menu {
		width: 1110px;
		height: auto;
	}

	footer nav ul.menu li {
		width: 10%;
		height: auto;
		transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
	}

	footer nav ul.menu li:hover {
		-webkit-transform: translate(0px, -9px);
		-ms-transform: translate(0px, -9px);
	}

	header nav ul.menu a span.hover {
		display: block;
		width: 100%;
		padding: 0px 0px 6px 0px;
		color: #ffffff;
		font-size: 12px;
		line-height: 100%;
		position: relative;
	}

	footer nav ul.menu a span.hover:after {
		content: '';
		position: absolute;
		bottom: 0px;
		left: 2%;
		width: 96%;
		height: 1px;
	}

	footer nav ul.menu a span.en {
		width: 100%;
		padding: 0px;
		display: block;
		color: #381b1b;
		font-size: 16px;
		letter-spacing: 1px;
		line-height: 100%;
	}

	footer nav ul.menu a {
		display: block;
		padding: 0px;
	}

	footer nav ul.icon {
		width: 90px;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	footer nav ul.icon li {
		width: 30px;
		margin-right: 10px;
	}
}

@media all and (max-width: 1024px) {
	footer nav {
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	footer nav ul.menu li {
		width: 48%;
		height: auto;
		margin: 0px 1%;
	}

	footer nav ul.menu a {
		display: block;
		padding: 5px 0px;
	}

	footer nav ul.menu a span.en {
		color: #381b1b;
		font-size: 16px;
	}

	footer nav ul.menu a span.ja {
		width: 100%;
		padding-top: 2px;
		display: block;
		color: #ff4e4e;
		font-size: 12px;
		letter-spacing: 1px;
		line-height: 100%;
	}

	footer nav ul.icon {
		width: 100%;
		padding-top: 15px;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	footer nav ul.icon li {
		width: 30px;
		margin: 0px 5px;
	}
}

/*======*/
.pan {
	width: 100%;
	height: auto;
	display: block;
	padding: 6px 0px;
	background: rgb(21, 17, 16, 0.6);
}

.pan ul {
	height: auto;
	padding: 0px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	text-align: left;
}

.pan li {
	height: auto;
	padding: 0px;
	font-size: 12px;
	display: inline-block;
	margin: 0px;
}

.pan li a:after {
	content: "　>　";
}

.pan li a {
	display: block;
}

@media all and (min-width: 1025px) {
	.pan ul {
		width: 1200px;
	}
}

@media all and (max-width: 1024px) {
	.pan ul {
		width: 95%;
	}

	.pan {
		width: 100%;
	}

	.pan li a:after {
		content: ">";
	}

	.pan li {
		font-size: 10px;
	}
}

/*======*/
.etc .header .h2_area {
	padding-top: 132px;
}

.etc .header .h2 small.en,
.etc .h2 span.en {
	color: #381b1b;
}

.etc .h2 span.ja {
	color: #ff871c;
}

.etc .header h2.h2:before {
	color: #222222;
}

.etc .header h2.h2 span.en {
	background: url(../img/wing_b_l.png), url(../img/wing_b_r.png);
	background-repeat: no-repeat, no-repeat;
	background-size: 61px 15px, 61px 15px;
	background-position: 0% 50%, 100% 50%;
}

.etc .main_contents_box .h2 small.en,
.etc .main_contents_box .h2 span.en {}

.etc .main_contents_box .h2 span.ja {
	color: #ff871c;
}

h2.h2 {
	width: auto;
	height: auto;
	position: relative;
}

h2.h2:before {
	/*content: 'POM POM';*/
	display: inline-block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	color: #6cb0ff;
	font-family: "Lilita One", sans-serif;
	font-weight: 400;
	font-style: normal;
	opacity: 0.15;
	filter: alpha(opacity=15);
	font-size: 65px;
	line-height: 100%;
	letter-spacing: 5px;
}

h2.h2 small.en {
	display: block;
	width: auto;
	height: auto;
	padding: 0px 0px 2px 0px;
	font-size: 13px;
	letter-spacing: 1px;
	line-height: 100%;
}

h2.h2 span.en {
	display: inline-block;
	width: auto;
	height: auto;
	padding: 0px 70px 1px 70px;
	font-size: 26px;
	letter-spacing: 1px;
	line-height: 100%;
	background: url(../img/wing_l.png), url(../img/wing_r.png);
	background-repeat: no-repeat, no-repeat;
	background-size: 61px 15px, 61px 15px;
	background-position: 0% 50%, 100% 50%;
}

h2.h2 span.ja {
	display: block;
	width: auto;
	height: auto;
	padding: 2px 0px 0px 0px;
	font-size: 12px;
	letter-spacing: 0px;
	line-height: 100%;
	color: #ff871c;
}

@media all and (max-width: 1024px) {
	.etc .header .h2_area {
		padding: 50px 0px 100px 0px;
	}

	h2.h2 {
		padding: 10px 0px;
	}

	.etc .header h2.h2 span.en {
		padding: 0px 70px 1px 70px;
		background: url(../img/wing_l.png), url(../img/wing_r.png);
		background-repeat: no-repeat, no-repeat;
		background-size: 61px 15px, 61px 15px;
		background-position: 0% 50%, 100% 50%;
	}

	h2.h2 small.en {
		font-size: 11px;
		padding: 0px 0px 4px 0px;
	}

	h2.h2 span.en {
		font-size: 19px;
	}

	h2.h2 span.en {
		padding: 0px 55px 1px 55px;
		background: url(../img/wing_l.png), url(../img/wing_r.png);
		background-repeat: no-repeat, no-repeat;
		background-size: 48px 12px, 48px 12px;
		background-position: 0% 50%, 100% 50%;
	}

	h2.h2:before {
		font-size: 45px;
		position: absolute;
		top: 11px;
		left: 0px;
	}
}

/*======*/
#fixedTop {
	left: 0px;
	top: -150px;
	width: 100%;
	height: auto;
	position: fixed;
	z-index: 9999;
	background: #000000;
}

#fixedTop ul {
	width: 90%;
	padding: 0px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

@media all and (min-width: 1025px) {
	#fixedTop ul {
		width: 90%;
		height: auto;
	}

	#fixedTop li {
		width: 8.3%;
		height: auto;
		transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		-webkit-transition: all 0.3s ease-out;
		-o-transition: all 0.3s ease-out;
	}

	#fixedTop ul li:hover {
		-webkit-transform: translate(0px, -9px);
		-ms-transform: translate(0px, -9px);
	}

	#fixedTop a span.hover {
		display: block;
		width: 100%;
		padding: 0px 0px 6px 0px;
		color: #ffffff;
		font-size: 12px;
		line-height: 100%;
		position: relative;
	}

	#fixedTop a span.hover:after {
		content: '';
		position: absolute;
		bottom: 0px;
		left: 0%;
		width: 96%;
		height: 1px;
		background: #5d4a23;
	}

	#fixedTop a span.en_b {
		width: 100%;
		padding-top: 4px;
		display: block;
		color: #877552;
		font-size: 11px;
		letter-spacing: 2px;
		line-height: 100%;
	}

	#fixedTop a {
		display: block;
		padding: 11px 0px 11px 0px;
	}
}

@media all and (max-width: 1024px) {
	#fixedTop {
		display: none;
	}
}

@media all and (max-width: 776px) {}

@media all and (max-width: 667px) {}

@media all and (max-width: 480px) {}

@media all and (max-width: 320px) {}


/*========= ぼかし ===============*/
.mainblur {
	filter: blur(8px);
}

/*========= ナビのCSS ===============*/

#g-nav.panelactive {
	opacity: 1;
	z-index: 999;
}

#g-nav.panelactive #g-nav-list {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100vh;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav .logo {
	max-width: 240px;
	margin: 0px auto;
	padding: 0px;
}

#g-nav ul.icon {
	width: 90px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-top: 10px;
}

#g-nav ul.icon li {
	width: 30px;
	margin-right: 5px;
}

#g-nav ul.tel_line {
	width: 80%;
	padding-top: 15px;
}

#g-nav .g-nav-list {
	width: 100%;
	display: none;
	position: absolute;
	z-index: 999;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

#g-nav.panelactive .g-nav-list {
	display: block;
}

/*リストのレイアウト*/
#g-nav ul.menu {
	width: 95%;
	margin: 0px auto;
	padding-top: 15px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#g-nav ul.menu li {
	width: 48%;
	height: auto;
	margin: 0px 1%;
	padding: 0px;
	position: relative;
}

#g-nav ul.menu li a {
	padding: 0px 0px 8px 0px;
}

#g-nav ul.menu li a span.ja {
	display: block;
	width: 100%;
	padding: 0px 0px 6px 0px;
	color: #c67979;
	font-size: 12px;
	line-height: 100%;
	position: relative;
}

#g-nav ul.menu li a span.en {
	width: 100%;
	padding-top: 4px;
	display: block;
	color: #693737;
	font-size: 16px;
	letter-spacing: 2px;
	line-height: 100%;
}

.openbtn {
	background: #381b1b;
	position: fixed;
	z-index: 9999;
	top: 10px;
	right: 10px;
	cursor: pointer;
	width: 40px;
	height: 40px;
	display: none;
}

#headerMenu.show .openbtn {
	display: block;
}

.openbtn span {
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 11px;
	height: 3px;
	border-radius: 2px;
	background-color: #ffffff;
	width: 45%;
}

.openbtn span:nth-of-type(1) {
	top: 11px;
}

.openbtn span:nth-of-type(2) {
	top: 19px;
}

.openbtn span:nth-of-type(3) {
	top: 27px;
}

.openbtn.active span:nth-of-type(1) {
	top: 13px;
	left: 15px;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3) {
	top: 25px;
	left: 15px;
	transform: translateY(-6px) rotate(45deg);
	width: 30%;
}


/*======*/
@media all and (max-width: 1024px) {
	#footerMenu {
		width: 100%;
		height: 0px;
		position: fixed;
		z-index: 300;
		bottom: 0;
		overflow: none;
		left: 0;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		webkit-transition: all 0.4s ease-in-out;
		padding: 0px;
	}

	#footerMenu.show {
		height: auto;
		-moz-transition: all 0.4s ease-in-out;
		-o-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		-webkit-transition: all 0.4s ease-in-out;
		padding: 0px;
	}

	#footerMenu ul {
		width: 100%;
		height: auto;
		margin: 0px auto;
		padding: 0px;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#footerMenu a {
		display: block;
		font-size: 12px;
		padding: 7px 0px;
		color: #ffffff;
	}

	#footerMenu ul li {
		width: 33.33%;
		height: auto;
		margin: 0px auto;
		padding: 0px;
		display: inline-block;
	}

#footerMenu ul li:nth-of-type(1) {
		background: #ffb872;
	}

	#footerMenu ul li:nth-of-type(2) {
		background: #ff5182;
	}

	#footerMenu ul li:nth-of-type(3) {
		background: #ff7a7a;
	}

	#footerMenu ul li a span {
		width: auto;
		height: auto;
		margin: 0px auto;
		display: inline-block;
	}

	#footerMenu ul li:nth-of-type(1) a span {
	
		background-size: auto 14px;
		background-position: 0% 50%;
		padding: 6px 0px 4px 0px;
	}

	#footerMenu ul li:nth-of-type(2) a span {
		background: url(../img/tel1.png) no-repeat;
		background-size: auto 18px;
		background-position: 0% 50%;
		padding: 6px 0px 4px 22px;
	}

	#footerMenu ul li:nth-of-type(3) a span {
		/* background: url(../img_new/footer/line.png) no-repeat; */
		background-size: auto 18px;
		background-position: 0% 50%;
		padding: 6px 0px 4px 0px;
	}

	@media all and (max-width: 320px) {
		#footerMenu ul li {
			font-size: 11px;
		}
	}
}