@charset "UTF-8";
@import "./reset.css";

@font-face {
	font-family: 'ipaexm';
	src: url('/font/ipaexm.eot');
	src: url('/font/ipaexm.eot?iefix') format('eot'),
		url('/font/ipaexm.woff') format('woff'),
		url('/font/ipaexm.ttf') format('truetype'),
		url('/font/ipaexm.svg#webfontjSpbZQRv') format('svg');
}

/*------------------------------------------------------------------------
common
------------------------------------------------------------------------*/
body {
	-webkit-text-size-adjust: 100%;
	line-height: 1em;
	font-size: 3.5vw;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ipaexm", serif;
	letter-spacing: 1px;
}

body {
	min-width: 100%;
	background-image: url('../image/bg.png');
	color: #666666;
	line-height: 150%;
}

#content {
	width: 100%;
	-moz-box-shadow: 18px 0px 10px -7px rgba(0, 0, 0, 0.25), -18px 0px 10px -7px rgba(0, 0, 0, 0.25);
	-webkit-box-shadow: 18px 0px 10px -7px rgba(0, 0, 0, 0.25), -18px 0px 10px -7px rgba(0, 0, 0, 0.25);
	box-shadow: 18px 0px 10px -7px rgba(0, 0, 0, 0.25), -18px 0px 10px -7px rgba(0, 0, 0, 0.25);
	margin: auto;
	padding-bottom: -10px;
	position: relative;
}

img {
	width: 100%;
}

/*ライン*/
header nav:after,
article#top:after,
article#flow>div.bg:after,
article#flow>div.bg:before {
	background-color: #957861;
	content: "";
	display: block;
	height: 10px;
	width: 100%;
}

article#top:after,
article#flow>div.bg:after {
	position: absolute;
	bottom: 0;
	margin-top: 3vw;
}

h1 {
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 3.5vw;
	text-align: center;
	color: #666;
	z-index: 1;
	display: none;
}

.pk {
	color: #E378C4;
}

/*------------------------------------------------------------------------
header
------------------------------------------------------------------------*/
header {
	position: relative;
	top: 0;
	width: 100%;
	overflow: hidden;
	color: #ffffff;
	z-index: 10;
}

header div.container,
footer div.container {
	position: relative;
	margin: 0 auto;
	width: 100%;
	overflow: hidden;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

header div.container figure,
footer div.container figure {
	vertical-align: middle;
	position: relative;
	display: block;
}

footer div.container figure {
	margin: 3vw auto;
}

header div.container figure:nth-of-type(1),
footer div.container figure:nth-of-type(1) {
	width: 100%;
}

header div.container figure:nth-of-type(1) img,
footer div.container figure:nth-of-type(1) img {
	-webkit-filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 1));
	-moz-filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 1));
	-o-filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 1));
	-ms-filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 1));
	filter: drop-shadow(0px 0px 15px rgba(255, 255, 255, 1));
}

nav#scroll,
nav#scroll_btm {
	display: none;
}

/*.pagetop {
    position: fixed;
    bottom: 30px;
    display: block;
	z-index:99999;
	margin-left: 1000px;
	cursor:pointer;
}*/


nav#scroll_btm {
	width: 100%;
	margin: auto;
	z-index: 9999;
	height: 27.5vw;
	background-image: url('../image/modal/nav_footer_list.png');
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: left bottom;
}

nav#scroll_btm ul {
	width: 95vw;
	margin: 1vw auto;
	display: table;
}

nav#scroll_btm ul li {
	display: table-cell;
	overflow: hidden;
}

nav#scroll_btm figure a {
	display: block;
	height: 16vw;
	line-height: 800px;
	width: 100%;
}

nav#scroll_btm li.tel {
	width: 31.5vw;
}

nav#scroll_btm li.mail {
	width: 31.9vw;
}

nav#scroll_btm li.menu {
	width: 31.6vw;
}

nav#scroll_btm p.pageto {
	width: 16vw;
	height: 9vw;
	text-align: right;
	margin: 0 0 0 auto;
	overflow: hidden;
	line-height: 27vw;
}

/*------------------------------------------------------------------------
footer
------------------------------------------------------------------------*/
footer {
	position: relative;
	color: #ffffff;
	z-index: 500;
}

footer div.container p,
footer div.container ul {
	color: #ffffff;
	background-color: #957861;
	font-size: 4.37vw;
	font-weight: 500;
	text-align: center;
}

footer div.container p,
footer div.container ul a {
	display: block;
	width: 100%;
	height: 10vw;
	line-height: 10vw;
}

footer div.container ul {
	width: 100%;
}

footer div.container ul li {
	width: 50%;
	border-top: 1px solid #fff;
	float: left;
	background-color: #957861;
}

footer div.container ul li:nth-of-type(2n) {
	float: right;
}

footer div.container ul li:nth-of-type(2n) a {
	border-left: 1px solid #fff;
}

p#copyright {
	width: 100%;
	line-height: 5vw;
	background: #A59CD5;
	color: #ffffff;
	font-size: 3.5vw;
	text-align: center;
	padding: 1vw 0;
}

p#copyright span {
	display: block;
	font-size: 3.0vw;
	color: #ffffff;
}

/*------------------------------------------------------------------------
main
------------------------------------------------------------------------*/
article,
article div.bg {
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: relative;
}

article {
	/*margin-top:-52px;
	padding-top:52px;*/
	padding-top: 5vw;
}

article figure {
	overflow: hidden;
	line-height: 70vw;
	margin: 2vw auto;
}

article figure a {
	background-repeat: no-repeat;
	background-size: 100% auto;
	display: block;
}

p span {
	color: #E378C4;
}

h2.tit {
	background-image: url('../image/tit_bg.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
	height: 8.85vw;
	line-height: 8.85vw;
	font-size: 5.5vw;
	font-weight: bold;
	text-align: center;
	color: #957861;
	/* for modan browser */
	text-shadow: 0px 3px 1px #fff, 0px 2px 1px #fff, 1px 2px 1px #fff, 2px 2px 1px #fff, 2px 1px 1px #fff, 2px 0px 1px #fff, 3px 0px 1px #fff, 2px -1px 1px #fff, 2px -2px 1px #fff, 2px -3px 1px #fff, 1px -3px 1px #fff, 0px -3px 1px #fff, -1px -3px 1px #fff, -2px -3px 1px #fff, -3px -3px 1px #fff, -3px -2px 1px #fff, -3px -1px 1px #fff, -3px 0px 1px #fff, -3px 1px 1px #fff, -3px 2px 1px #fff, -2px 2px 1px #fff, -1px 2px 1px #fff;

	/* for IE */
	filter: dropshadow(color=#fff, offx=0, offy=3, positive=1), dropshadow(color=#fff, offx=2, offy=1, positive=1), dropshadow(color=#fff, offx=2, offy=-1, positive=1), dropshadow(color=#fff, offx=1, offy=-3, positive=1), dropshadow(color=#fff, offx=-2, offy=-3, positive=1), dropshadow(color=#fff, offx=-3, offy=-2, positive=1), dropshadow(color=#fff, offx=-3, offy=1, positive=1), dropshadow(color=#fff, offx=-1, offy=2, positive=1);
}

/*------------------------------------------------------------------------
top
------------------------------------------------------------------------*/
article#top {
	position: relative
}

article#top div.bg {
	background-image: url('../image/top_bg.png'), url('../image/top_bg_b.png');
	position: relative;
	padding-bottom: 13vw;
	background-position: left top, left bottom 9vw;
}

article#top p {
	position: absolute;
	font-size: 3.6vw;
	text-shadow: 0 0 8px #fff;
	line-height: 200%;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	padding: 2vw;
}

article#top p.p1 {
	top: 19vw;
	right: 5vw;
	letter-spacing: 2px;
	background-image: url('../image/top_bg_1.png');
}

article#top p.p2 {
	top: 51vw;
	left: 5vw;
	line-height: 150%;
	letter-spacing: 2px;
	width: 66vw;
	background-image: url('../image/top_bg_1.png');
}

article#top p.p3 {
	top: 100vw;
	right: 5vw;
	letter-spacing: 2px;
	padding-top: 4vw;
	background-image: url('../image/top_bg_1.png');
}

article#top p span {
	font-size: 5vw;
	font-weight: bold;
}

article#top p.p3 span {
	font-size: 5.2vw;
}

article#top p.p3>sp {
	line-height: 100%;
}

article#top p.p3 span span {
	font-size: 13vw;
}

article#top p.txt {
	position: relative;
	padding-top: 148vw;
	font-size: 4.2vw;
	color: #957861;
	margin: auto;
	width: 90vw;
	line-height: 150%;
	text-shadow: none;
}

/*------------------------------------------------------------------------
yakusoku
------------------------------------------------------------------------*/
article#yakusoku {
	/*height:1162px;*/
	line-height: 180%;
	padding-top: 0;
}

article#yakusoku>div {
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: relative;
	width: 90.6vw;
	margin: 4vw auto;
	line-height: 185%;
}

article#yakusoku>div.p1 {
	background-image: url('../image/bg_yakusoku.png');
	padding: 4vw 0;
	background-size: 100% 100%;
}

article#yakusoku>div.p1 p,
article#yakusoku>div.p2 p {
	padding: 0 1vw;
}

article#yakusoku>div.p2 {
	background-image: url('../image/bg_yakusoku2.png');
	padding: 4vw 0;
	background-size: 100% 100%;
}

article#yakusoku p {
	text-align: center;
	font-size: 4vw;
	letter-spacing: 0;
}

article#yakusoku>p {
	font-size: 4vw;
}

article#yakusoku>div.p2 {
	line-height: 170%;
}

article#yakusoku>div.p2 p {
	font-size: 4.0vw;
	letter-spacing: normal;
}

article#yakusoku>div p span,
article#yakusoku>p,
article#yakusoku>div.p2 ul li span {
	color: #957861;
}

article#yakusoku>p.pk {
	color: #E378C4;
}

article#yakusoku>div.p2 ul li span {
	font-weight: bold;
	text-decoration: underline;
}

article#yakusoku>p {
	margin: 2vw auto;
	width: 90.5vw;
}

article#yakusoku>p span {
	font-size: 5.0vw;
}

article#yakusoku>p+p:after {
	display: block;
	content: "";
	width: 90.5vw;
	height: 4.5vw;
	background-position: center center;
	background-image: url('../image/hr_yakusoku.png');
	background-repeat: no-repeat;
	margin-top: 3vw;
	background-size: 100% auto;
}

article#yakusoku>div.p2 ul {
	margin: 5vw auto auto 4vw;
}

article#yakusoku>div.p2 ul li {
	position: relative;
	padding-left: 6vw;
	font-size: 4.5vw;
}

article#yakusoku>div.p2 ul li:nth-of-type(n+2) {
	margin-top: 3vw;
}

article#yakusoku>div.p2 ul li:before {
	display: block;
	content: "";
	left: 0;
	position: absolute;
	width: 5vw;
	height: 6.8vw;
	background-image: url('../image/li_yakusoku.png');
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-position: center 1.8vw;
}

article#yakusoku figure.form {
	width: 96.25vw;
	margin-left: 0;
}

article#yakusoku figure.info {
	width: 90.9vw;
}

article#yakusoku figure.form a {
	height: 28.8vw;
	width: 96.25vw;
	background-image: url('../image/bn_10yen.png');
}

article#yakusoku figure.info a {
	width: 90.9vw;
	height: 25.15vw;
	background-image: url('../image/bn_eigyou.png');
}

/*------------------------------------------------------------------------
taigu
------------------------------------------------------------------------*/
article#taigu div.bg {
	background-image: url('../image/bg_concept2.png');
	position: relative;
	padding-top: 62vw;
	padding-bottom: 5vw;
	background-size: 100% 100%;
	margin-top: 1vw;
}

article#taigu div.bg div {
	/*position: absolute;*/
	left: 0;
	right: 0;
	margin: auto;
	width: 85vw;
	line-height: 180%;
	background-image: url('../image/bg_concept2_bg.png');
	background-size: 100% 100%;
	background-repeat: no-repeat;
	padding: 4vw 2vw 4vw;
}

article#taigu div.bg div h3 {
	color: #E378C4;
	font-size: 5vw;
	margin-bottom: 1.5vw;
	font-weight: bold;
	letter-spacing: 1vw;
	line-height: 115%;
	/* for modan browser */
	text-shadow: 0px 3px 1px #fff, 0px 2px 1px #fff, 1px 2px 1px #fff, 2px 2px 1px #fff, 2px 1px 1px #fff, 2px 0px 1px #fff, 3px 0px 1px #fff, 2px -1px 1px #fff, 2px -2px 1px #fff, 2px -3px 1px #fff, 1px -3px 1px #fff, 0px -3px 1px #fff, -1px -3px 1px #fff, -2px -3px 1px #fff, -3px -3px 1px #fff, -3px -2px 1px #fff, -3px -1px 1px #fff, -3px 0px 1px #fff, -3px 1px 1px #fff, -3px 2px 1px #fff, -2px 2px 1px #fff, -1px 2px 1px #fff;

	/* for IE */
	filter: dropshadow(color=#fff, offx=0, offy=3, positive=1), dropshadow(color=#fff, offx=2, offy=1, positive=1), dropshadow(color=#fff, offx=2, offy=-1, positive=1), dropshadow(color=#fff, offx=1, offy=-3, positive=1), dropshadow(color=#fff, offx=-2, offy=-3, positive=1), dropshadow(color=#fff, offx=-3, offy=-2, positive=1), dropshadow(color=#fff, offx=-3, offy=1, positive=1), dropshadow(color=#fff, offx=-1, offy=2, positive=1);
}

article#taigu div.bg div p {
	font-size: 3.7vw;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
	line-height: 140%;
}

/*article#taigu div.bg div.p1{
	top:58vw;
}
article#taigu div.bg div.p2{
	top:138vw;
}
article#taigu div.bg div.p3{
	top:212vw;
}*/
article#taigu div.bg div.p1,
article#taigu div.bg div.p2 {
	margin-bottom: 4vw;
}


article#taigu figure.form {
	width: 91.7vw;
}

article#taigu figure.form a {
	height: 25.6vw;
	width: 91.7vw;
	background-image: url('../image/bn_taigu.png');
}

/*------------------------------------------------------------------------
bosyu
------------------------------------------------------------------------*/
article#bosyu div.bg {
	background-image: url('../image/bg_concept3.png');
	position: relative;
	margin: 4vw auto 0;
	width: 92.5vw;
	padding: 5vw 0;
	background-size: 100% 100%;
}

article#bosyu table {
	margin: auto;
	width: 86vw;
	height: 90vw;
	font-size: 3.6vw;
	border-collapse: collapse;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
}

article#bosyu table th {
	width: 100%;
	color: #957861;
	text-align: center;
	vertical-align: middle;
	background-color: #E3DCD6;
	font-weight: bold;
	display: block;
	padding: 0.5vw 0;
}

article#bosyu table td {
	padding: 2vw 1vw;
	background-color: #fff;
	display: block;
}

/*------------------------------------------------------------------------
flow
------------------------------------------------------------------------*/
article#flow div.bg {
	position: relative;
}

article#flow div.bg p {
	position: relative;
	font-size: 3.6vw;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
	padding: 0 2vw;
	margin-top: -7vw;
	padding-bottom: 3vw;
}

article#flow div.bg p span {
	font-size: 4.5vw;
	font-weight: bold;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ipaexm", serif;
	margin-bottom: 0vw;
	display: block;
	/* for modan browser */
	text-shadow: 0px 3px 1px #fff, 0px 2px 1px #fff, 1px 2px 1px #fff, 2px 2px 1px #fff, 2px 1px 1px #fff, 2px 0px 1px #fff, 3px 0px 1px #fff, 2px -1px 1px #fff, 2px -2px 1px #fff, 2px -3px 1px #fff, 1px -3px 1px #fff, 0px -3px 1px #fff, -1px -3px 1px #fff, -2px -3px 1px #fff, -3px -3px 1px #fff, -3px -2px 1px #fff, -3px -1px 1px #fff, -3px 0px 1px #fff, -3px 1px 1px #fff, -3px 2px 1px #fff, -2px 2px 1px #fff, -1px 2px 1px #fff;

	/* for IE */
	filter: dropshadow(color=#fff, offx=0, offy=3, positive=1), dropshadow(color=#fff, offx=2, offy=1, positive=1), dropshadow(color=#fff, offx=2, offy=-1, positive=1), dropshadow(color=#fff, offx=1, offy=-3, positive=1), dropshadow(color=#fff, offx=-2, offy=-3, positive=1), dropshadow(color=#fff, offx=-3, offy=-2, positive=1), dropshadow(color=#fff, offx=-3, offy=1, positive=1), dropshadow(color=#fff, offx=-1, offy=2, positive=1);
}

article#flow div.bg div {
	position: relative;
}

article#flow div.bg div:before {
	background-repeat: no-repeat;
	background-size: 100% auto;
	content: "";
	display: block;
}

article#flow div.bg div.p1:before {
	background-image: url('../image/bg_concept4_1.png');
	height: 36.5vw;
}

article#flow div.bg div.p2:before {
	background-image: url('../image/bg_concept4_2.png');
	height: 37.5vw;
}

article#flow div.bg div.p3:before {
	background-image: url('../image/bg_concept4_3.png');
	height: 37.5vw;
}

article#flow div.bg div.p4:before {
	background-image: url('../image/bg_concept4_4.png');
	height: 37.5vw;
}

article#flow div.bg div.p4 {
	padding-bottom: 6vw;
}

/*------------------------------------------------------------------------
voice
------------------------------------------------------------------------*/
article#voice {
	padding-top: 0;
}

article#voice div.bg {
	background-color: #fff;
	background-image: url('../image/bg_concept5.png');
	padding: 2vw 0 5vw;
	background-size: 100% 100%;
	margin-bottom: -5vw;
}

article#voice>div>div {
	background-repeat: no-repeat;
	position: relative;
	margin: 3vw auto;
	width: 87.5vw;
	background-size: 100% 100%;
	padding-bottom: 5vw;
	background-image: url('../image/bg_concept5_bg.png');
}

article#voice>div>div p.img {
	background-repeat: no-repeat;
	position: absolute;
	height: 38.43vw;
	width: 30.8vw;
	background-size: 100% auto;
	top: 5vw;
	left: 5vw;
}

article#voice div.p1 p.img {
	background-image: url('../image/bg_concept5_img1.png');
}

article#voice div.p2 p.img {
	background-image: url('../image/bg_concept5_img2.png');
}

article#voice div.p3 p.img {
	background-image: url('../image/bg_concept5_img3.png');
}

article#voice div h3 {
	font-size: 4.55vw;
	font-weight: bold;
	position: absolute;
	top: 10vw;
	left: 38vw;
}

article#voice div h3>span:after {
	display: block;
	content: "";
	width: 41vw;
	height: 3px;
	background-position: center center;
	background-image: url('../image/hr_voice.png');
	background-size: 100% auto;
	background-repeat: no-repeat;
	margin-top: 3vw;
}

article#voice div h3>span:nth-last-child(1):after {
	background-image: none;
}

article#voice div h3>span {
	color: #666666;
	display: block;
	margin: 3vw auto;
	letter-spacing: -1px;
}

article#voice div h3 span span {
	font-size: 6.25vw;
	color: #E378C4;
}

article#voice div h4 {
	font-size: 4.5vw;
	color: #957861;
	font-weight: bold;
	letter-spacing: 1px;
	padding-top: 48vw;
	width: 76vw;
	margin: 0 auto 2vw;
	line-height: 140%;
}

article#voice div p {
	font-size: 3.8vw;
	text-align: justify;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
	width: 76vw;
	margin: auto;
}

article#voice div.p3 h4 {}

/*------------------------------------------------------------------------
qa
------------------------------------------------------------------------*/
article#qa {}

article#qa dl {
	margin: 4vw auto 3vw;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
}

article#qa dt,
article#qa dd {
	position: relative;
	padding-left: 10vw;
}

article#qa dt {
	height: 8.35vw;
	line-height: 8.35vw;
	color: #957861;
	font-size: 4vw;
	background: #fff;
	font-weight: bold;
	background-image: url('../image/arrow_q.png'), linear-gradient(to right, rgba(255, 255, 255, 1) 10%, rgba(149, 120, 97, 0.3));
	background-repeat: no-repeat;
	background-size: 5vw 5vw, 100% auto;
	background-position: right 3vw center, 0 0;
	margin: 2vw auto;
}

article#qa dt.on {
	background-image: url('../image/arrow_a.png'), linear-gradient(to right, rgba(255, 255, 255, 1) 10%, rgba(149, 120, 97, 0.3));
}

article#qa dd {
	font-size: 3.75vw;
	margin: 2vw auto;
}

article#qa dt:before,
article#qa dd:before,
article#qa dt:after {
	position: absolute;
	font-size: 6vw;
	display: block;
	height: 8.35vw;
	left: 3vw;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ipaexm", serif;
	font-weight: bold;
}

article#qa dt:before {
	content: "Q";
	color: #957861;
	opacity: 0.2;
}

article#qa dd:before {
	content: "A";
	color: #D2EDF9;
	top: 2vw;
	opacity: 0.9;
}

article#qa dt:after {
	content: "";
	width: 1vw;
	background-color: #957861;
	left: 0;
	top: 0;
}

article#qa figure.line {
	width: 91.25vw;
}

article#qa figure.line a {
	height: 46.1vw;
	width: 91.25vw;
	background-image: url('../image/bn_line.png');
	line-height: 100vw;
}

/*------------------------------------------------------------------------
form
------------------------------------------------------------------------*/



/*------------------------------------------------------------------------
modal
------------------------------------------------------------------------*/
#age_modal {
	overflow-y: scroll;

	display: none;
	width: 100%;
	height: 100vh;
	position: relative;
	background-size: 100% 100%;
	filter: brightness(90%) contrast(150%);
	-webkit-filter: brightness(90%) contrast(150%);
	-moz-filter: brightness(90%) contrast(150%);
	-o-filter: brightness(90%) contrast(150%);
	-ms-filter: brightness(90%) contrast(150%);
}

#age_modal div.modal_bg {
	background-color: #fff;
	background-image: url('../image/modal/bg.png');
	background-repeat: no-repeat;
	height: 100vh;
	background-size: 100% 100%;
	filter: alpha(opacity=60);
	opacity: 0.6;
	-moz-opacity: 0.6;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	mix-blend-mode: multiply;
}

#age_modal div.bg {
	position: absolute;
	/* width: 93.75vw; */
	width: 100%;
	margin: auto;
	left: 0;
	right: 0;
	top: 50%;
	margin-top: -40vh;
}

#age_modal div.yes,
#age_modal div.no {
	margin: auto;
	position: absolute;
	left: 0;
	right: 0;
}

#age_modal div.yes {
	top: 80vw;
	width: 50vw;
}

#age_modal div.no {
	top: 96vw;
	text-align: center;
}

#age_modal div.no a {
	color: #E378C4;
	;
}

#age_modal div.no p {
	display: table;
	vertical-align: middle;
	margin: auto;
}

#age_modal div.no p img {
	vertical-align: middle;
}

.noscroll {
	position: fixed;
	overflow-y: scroll;
	width: 100%;
}

#confirm_modal {
	width: 100% !important;
}

.remove_cookie {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 10px;
	z-index: 9999;
}

/*------------------------------------------------------------------------
メニュー
------------------------------------------------------------------------*/
.fixmenu {
	overflow: hidden !important;
}

#menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	display: none;
	text-align: right;
	color: #fff;
	z-index: 99999;
	height: 100vh;
	background-image: url('../image/modal/bg_menu.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	overflow-y: scroll;
}

#menu .wrap {
	margin: auto;
	width: 90.6vw;
	position: relative;
}

#menu .wrap h3 {
	width: 22.2vw;
	height: 4vw;
	margin: 5vw auto 4vw;
	background-image: url('../image/modal/menu.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
	overflow: hidden;
	line-height: 30vw;
}

#menu .wrap ul {
	width: 100%;
}

#menu .wrap ul.menu li {
	width: 100%;
	background-image: url('../image/modal/icon_list.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#menu .wrap ul.menu li {
	text-align: left;
	height: 8.6vw;
	position: relative;
	line-height: 8.6vw;
	font-size: 3.6vw;
	background-image: url('../image/modal/bg_list.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
	margin-bottom: 2vw;
	text-indent: 2vw;
}

#menu .wrap ul.icon {
	background-image: url('../image/modal/icon_list.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#menu .wrap ul.icon li {
	float: left;
	height: 13.6vw;
	position: relative;
	line-height: 50vw;
	font-size: 3.6vw;
	margin-bottom: 1.7vw;
	overflow: hidden;
	width: 44.5vw;
}

#menu .wrap ul.icon li:nth-of-type(2n) {
	float: right;
}

#menu p.close {
	position: absolute;
	top: 1vw;
	right: 1vw;
	width: 8vw;
	height: 8vw;
	background-image: url('../image/modal/close.png');
	background-repeat: no-repeat;
	background-size: 100% auto;
}

#menu .wrap ul li a {
	display: block;
	padding: 0px;
}

#menu .wrap p.official {
	margin: 2vw auto;
}

/*----------------------------------------------------------
アニメーション
----------------------------------------------------------*/
.modal_in {
	animation-name: modal_in;
	-webkit-animation-name: modal_in;
	animation-duration: 1s;
	-webkit-animation-duration: 1s;
	animation-timing-function: ease-in-out;
	-webkit-animation-timing-function: ease-in-out;
	visibility: visible !important;
}

.modal_out {
	animation-name: modal_out;
	-webkit-animation-name: modal_out;
	animation-duration: 1s;
	-webkit-animation-duration: 1s;
	animation-timing-function: ease-in-out;
	-webkit-animation-timing-function: ease-in-out;
	visibility: visible !important;
}

@keyframes modal_in {

	from,
	60%,
	75%,
	90%,
	to {
		-webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
		animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
	}

	from {
		opacity: 0;
		-webkit-transform: translate3d(0, -3000px, 0);
		transform: translate3d(0, -3000px, 0);
	}

	60% {
		opacity: 1;
		-webkit-transform: translate3d(0, 20px, 0);
		transform: translate3d(0, 20px, 0);
	}

	75% {
		-webkit-transform: translate3d(0, -10px, 0);
		transform: translate3d(0, -10px, 0);
	}

	90% {
		-webkit-transform: translate3d(0, 5px, 0);
		transform: translate3d(0, 5px, 0);
	}

	to {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

.modal_in {
	-webkit-animation-name: modal_in;
	animation-name: modal_in;
}

@keyframes modal_out {
	20% {
		-webkit-transform: translate3d(0, -10px, 0);
		transform: translate3d(0, -10px, 0);
	}

	40%,
	45% {
		opacity: 1;
		-webkit-transform: translate3d(0, 20px, 0);
		transform: translate3d(0, 20px, 0);
	}

	to {
		opacity: 0;
		-webkit-transform: translate3d(0, -2000px, 0);
		transform: translate3d(0, -2000px, 0);
		display: none;
	}
}

.modal_out {
	-webkit-animation-name: modal_out;
	animation-name: modal_out;
}




/*------------------------------------------------------------------------
pr
------------------------------------------------------------------------*/
#pr_area {
	padding-bottom: 5vw;
	margin-top: -5vw;
}

div.pr_area {
	width: 100%;
	margin: 4.6875vw auto auto;
	padding: 1.5625vw 1.5625vw;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	box-sizing: border-box;
}

div.pr_area h3 {
	font-size: 2.8125vw;
	font-weight: 900;
	font-family: "SF Pro JP", "SF Pro Display", "SF Pro Icons", "Hiragino Kaku Gothic Pro", "繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3", "繝｡繧､繝ｪ繧ｪ", "Meiryo", "�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け", "Helvetica Neue", "Helvetica", "Arial", sans-serif;
	margin-bottom: 1.5625vw;
}

div.pr_area p.text {
	font-size: 2.1875vw;
	line-height: 150%;
	text-align: justify;
}

div.pr_area p.text a {
	color: inherit;
	text-decoration: none;
}

div.pr_area p.text a:hover {
	text-decoration: underline;
}

div.pr_area p.text+p {
	margin-top: 1.5625vw;
}

.link-banner {
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
	background-color: #fff;
	background-image: url('../image/modal/bg.png');
	background-repeat: no-repeat;
}

.link-banner img {
	width: auto;
	max-width: 100%;
}
/********************************************
* form
********************************************/
.text02 {
  display: none;
}
article#form {
	padding-bottom: 3vw;
	font-size: 3.5vw;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	letter-spacing: 0px;
}

article#form img {
	cursor: pointer;
}



article#form {
	background-image: url('../image/bg_form.png');
	background-repeat: no-repeat;
	position: relative;
	width: 90.6vw;
	margin: 4vw auto 0;
	background-size: 100% 100%;
	padding-bottom: 3vw;
}
.form-submit{
	text-align: center;
}
.form-submit input{
	margin: 2% auto;
	width: 36.5vw !important;
  height: 9vw !important;
	background-image: url('../image/btn_submit.png');
	background-size: cover;
}

.form-box {
	position: relative;
	width: 84.375vw;
	margin: 2% auto;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.form-box label {
	background-color: #A59CD5;
	color: #fff;
text-align: center;
	width: 100%;
	height: 6.56vw;
	font-weight: bold;
	display: block;
	line-height: 6.56vw;
}

.form-box .must  {
	color: #FFF053;
}


.form-box input,
.form-box textarea{
	-moz-box-shadow: inset 0 0 0 1vw rgba(204, 204, 204, 1);
	-webkit-box-shadow: inset 0 0 0 1vw rgba(204, 204, 204, 1);
	box-shadow: inset 0 0 0 1vw rgba(204, 204, 204, 1);
	background-color: #fff;
	padding: 1.5vw 1vw 1vw 1vw;
	display: block;
	height: 5vw;
}



article#form>div ul li {
	width: 40%;
	margin: auto;
	display: inline-block;
}

article#form input,
article#form textarea {
	width: 82.3vw;
	padding: 1vw 1vw 1vw;
	border: none;
	font-size: 3.5vw;
}

article#form input {
	height: 6vw;
}

.form-box textarea {
	resize: none;
	height: 23vw;
}



/********************************************
* Now Loading
********************************************/
#form-load {
  display: none;
}

.loader {
  margin: 0 auto;
  border: 12px solid #fafafa;
  border-radius: 50%;
  border-top: 12px solid #3498db;
  width: 100px;
  height: 100px;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.load1 {
  animation: sk-scaleout 1s infinite ease-in-out;
  position: fixed;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
  z-index: 201;
  text-align: center;
  background-color: #b1b1b1;
  color: #ffffff;
  opacity: 0.8;
  width: 800px;
}

.load1 p {
  margin: 0 auto;
  text-align: center !important;
  padding: 10px;
}
.form-confirm{

	text-align: center;
	font-weight: bolder;
}