@charset "utf-8";
 @import url('https://fonts.googleapis.com/css?family=Oswald');
/*リセット*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, input, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, object, embed {
	margin: 0px;
	padding: 0px;
	border: 0px;
	outline: 0px;
}
dl, dt, dd, ol, ul, li {
	list-style: none;
}
img {
	border: 0;
}
li {
	list-style: none;
}
input, button, textarea, select, optgroup, option {
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
}
select::-ms-expand {
    display: none;
}
b {
	font-weight: bold
}
.sponly {
	display: none
}

input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/***************************************
 * Global
 ***************************************/

* {
	padding: 0;
	margin: 0;
}
html {
	height: 100%;
}
body {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
	font-size: 14px;
  /* for IE6/7 */
  *font-size:small;
  /* for IE Quirks Mode */
  *font:x-small;
	line-height: 1.5;
	color: #223f99;
	width: 100%;
	height: 100%;
	overflow-x: hidden;
}
/***************************************
 * Common
 ***************************************/


.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px; /*¥*//*/ height: auto; overflow: hidden;/**/
}
a {
	color: #223f99;
	text-decoration: none;
}
img {
	vertical-align: bottom;
}
a:hover {
	text-decoration: none;
	opacity: 0.7
}
input, select, textarea {
	font-size: 100%;
}
button {
	padding: 5px 40px;
	border-radius: 5px;
	color: #fff;
	font-size: 90%;
	font-weight: bold;
	cursor: pointer;
}
.element2 {
	display: block;
}
.gray {
	background-color: #eeeeee;
}
.fl_left {
	float: left
}
.fl_right {
	float: right
}
.clear {
	clear: both
}
.small {
	font-size: 80%
}
/***************************************
 * Layout
 ***************************************/
 
#container {
	width: 100%;
	margin: 0;
	overflow-x: hidden;
}
/*==================
 * Header
 */
.sp_only_320, .sp_only {
	display: none
}
header {
	width: 100%;
	background: url(../images/back.png) no-repeat center top;
	background-size: cover;
	-webkit-background-size: cover;
	height: 640px;
	z-index: 0;
	position: relative;
	top: 0;
}
header div.wrap {
	max-width: 1100px;
	padding: 0;
	height: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 1
}
header div.wrap h1 {
	width: 486px;
	height: 337px;
	background: url(../images/title.png) no-repeat center bottom;
	background-size: 100%;
	text-indent: -10000px;
	z-index: 100;
	position: absolute;
	top: 125px;
	left: 50%;
	transform: translateX(-50%);
}
header div.wrap::before {
    content: "";
    display: block;
    width: 110px;
    height: 100px;
    position: absolute;
    left: 50%;
    transform: translateX(250px);
    top: 180px;
    z-index: 110;
    background: url(../images/vol2.png) no-repeat center/contain;
}
p.lead {
	text-align: center;
	width: 100%;
	font-size: 20px;
	font-weight: bold;
	color: #223f99;
	position: absolute;
	bottom: 147px;
	z-index: 80;
}
img.logo {
	position: absolute;
	top: 50px;
	left: 0;
}
img.girl {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 100
}
img.boy {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 100
}
img.parts1 {
	position: absolute;
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 10;
}
img.parts2 {
	position: absolute;
	bottom: 75px;
	left: 50%;
	z-index: 10;
	transform: translateX(-50%);
}
img.edanon {
	position: absolute;
	top: -220px;
	right: 10%;
	z-index: 100;
}
#date {
	background: url(../images/check2.png) no-repeat right bottom;
	position: absolute;
	top: 650px;
	width: 100%;
	height: 300px;
	z-index: 10;
}
#date:before {
	content: '';
	position: absolute;
	top: 0;
	left: -10%;
	width: 140%;
	height: 112%;
	background: #223f99;
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-6deg);
	-ms-transform: rotate(-6deg);
	transform: rotate(-6deg);
	z-index: 10;
}
#date div.dateBox {
	position: absolute;
	z-index: 100;
	text-align: center;
	font-size: 30px;
	width: 1000px;
	margin-left: -500px;
	left: 50%;
	top: -80px;
	color: white;
	line-height: 1.6em
}
#date p.date {
	text-align: center;
	font-size: 30px;
	width: 100%;
	text-shadow: rgb(34, 63, 153) 5px 0px 0px, rgb(34, 63, 153) 4.90033px 0.993347px 0px, rgb(34, 63, 153) 4.60531px 1.94709px 0px, rgb(34, 63, 153) 4.12668px 2.82321px 0px, rgb(34, 63, 153) 3.48353px 3.58678px 0px, rgb(34, 63, 153) 2.70151px 4.20736px 0px, rgb(34, 63, 153) 1.81179px 4.6602px 0px, rgb(34, 63, 153) 0.849836px 4.92725px 0px, rgb(34, 63, 153) -0.145998px 4.99787px 0px, rgb(34, 63, 153) -1.13601px 4.86924px 0px, rgb(34, 63, 153) -2.08073px 4.54649px 0px, rgb(34, 63, 153) -2.94251px 4.04248px 0px, rgb(34, 63, 153) -3.68697px 3.37732px 0px, rgb(34, 63, 153) -4.28444px 2.57751px 0px, rgb(34, 63, 153) -4.71111px 1.67494px 0px, rgb(34, 63, 153) -4.94996px 0.7056px 0px, rgb(34, 63, 153) -4.99147px -0.291871px 0px, rgb(34, 63, 153) -4.83399px -1.27771px 0px, rgb(34, 63, 153) -4.48379px -2.2126px 0px, rgb(34, 63, 153) -3.95484px -3.05929px 0px, rgb(34, 63, 153) -3.26822px -3.78401px 0px, rgb(34, 63, 153) -2.4513px -4.35788px 0px, rgb(34, 63, 153) -1.53666px -4.75801px 0px, rgb(34, 63, 153) -0.560763px -4.96845px 0px, rgb(34, 63, 153) 0.437495px -4.98082px 0px, rgb(34, 63, 153) 1.41831px -4.79462px 0px, rgb(34, 63, 153) 2.34258px -4.41727px 0px, rgb(34, 63, 153) 3.17346px -3.86382px 0px, rgb(34, 63, 153) 3.87783px -3.15633px 0px, rgb(34, 63, 153) 4.4276px -2.32301px 0px, rgb(34, 63, 153) 4.80085px -1.39708px 0px, rgb(34, 63, 153) 4.98271px -0.415447px 0px;
}
#date p strong {
	font-family: 'Oswald', sans-serif;
	font-size: 60px;
}
#date p.place {
}
#date p.free {
	background: url(../images/label.svg) no-repeat center center;
	color: #223f99;
	font-size: 24px;
	padding: 10px 20px 20px 20px;
	font-weight: bold
}
#date .fukidashi1 {
	background: url(../images/fukidashi1.svg) no-repeat center top;
	width: 188px;
	height: 140px;
	font-size: 20px;
	color: #223f99;
	font-weight: bold;
	position: absolute;
	top: 98px;
	left: 120px;
	line-height: 1.6em;
}
#date .fukidashi1 p{padding: 50px 0 0 0;}
#date .fukidashi2 {
	background: url(../images/fukidashi2.svg) no-repeat center top;
	width: 188px;
	height: 140px;
	font-size: 20px;
	color: #223f99;
	font-weight: bold;
	position: absolute;
	top: 96px;
	right: 120px;
	line-height: 1.6em;
}
#date .fukidashi2 p{padding: 52px 0 0 0;}
#date .fukidashi1 span, #date .fukidashi2 span {
	font-size: 28px;
	background: linear-gradient(transparent 50%, yellow 50%);
}
/*==================
 * コンテンツ基本
 */
.contents {
	width: 100%;
	background: white;
	z-index: 5;
	position: relative;
	padding: 10px 0
}
/*900px BOX*/
.contents div.box {
	width: 1000px;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 40px 0px 80px 0px;
	z-index: 5;
	position: relative
}
.contents div.box p {
	padding: 0 0px 20px 0px;
	line-height: 1.7em;
	font-size: 16px
}
/*装飾基本*/
.big {
	font-size: 18px;
	font-weight: bold;
}
.ubig {
	font-size: 24px;
	font-weight: bold;
	padding: 0;
	text-align: center
}
.noppading {
	padding: 0!important
}
.ubig span {
	font-size: 30px
}
.mid {
	font-size: 16px;
}
/*見出し基本*/
.contents h2 {
	width: 80%;
	border: 2px solid #223f99;
	padding: 20px;
	box-sizing: border-box;
	text-indent: -9999px;
	margin: 30px auto 50px auto;
	position: relative
}
.contents h2:before {
	content: "";
	background: url(../images/h2_f_1.png) no-repeat;
	background-size: 100%;
	width: 59px;
	height: 47px;
	position: absolute;
	left: -20px;
	top: -20px
}
.contents h2:after {
	content: "";
	background: url(../images/h2_f_2.png) no-repeat;
	background-size: 100%;
	width: 47px;
	height: 38px;
	position: absolute;
	right: -20px;
	bottom: -20px
}
#prologue.contents h2 {
	background: url(../images/h2_1.png) no-repeat center center;
	width: 73%;
}
#what.contents h2 {
	background: url(../images/h2_2.png) no-repeat center center;
}
#program.contents h2 {
	background: url(../images/h2_3.png) no-repeat center center;
}
#guest.contents h2 {





	background: url(../images/h2_4.png) no-repeat center center;
	width: 50%
}
#entry.contents h2 {
	background: url(../images/h2_5.png) no-repeat center center;
	width: 80%
}
#inq.contents h2 {
	background: url(../images/h2_6.png) no-repeat center center;
	width: 50%
}
.contents h3 {
	font-size: 20px;
	margin-bottom: 20px;
}
#what.contents, #guest.contents, #inq.contents {
	background: url(../images/grid_back.png)
}
#prologue.contents p, #what.contents p, #program.contents p {
	width: 60%
}
.contents div.box p small {
	font-size: 90%
}
.contents p strong.yellow {
	background: #fff600
}
div.box div.ph {
	float: right;
	width: 370px;
	margin-left: 30px;
}
div.box div.ph img {
	width: 100%;
	position: relative;
	display: block
}
/*div.box div.ph img:before{ 
	content:  "";
	display: block;
	position: absolute;
	top: -1px;
	left: -1px;
	width: 5px;
	height:5px;
	background: url(../images/sankaku1.svg) no-repeat;
	z-index: 100;
}
div.box div.ph img:after{ content:  "";
	display: block;
	position: absolute;
	bottom: -1px;
	right: -1px;
	width: 20px;
	height: 20px;
	border-top: 10px solid transparent;
  border-right: 10px solid #223f99;
  border-bottom: 10px solid #223f99;
  border-left: 10px solid transparent;
	z-index: 100;
}*/



/*プロローグ*/
#prologue {
	position: relative;
	margin-top: 380px;
}
#prologue:before {
	content: '';
	position: absolute;
	top: 0;
	left: -10%;
	width: 140%;
	height: 80%;
	background: #fff;
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-6deg);
	-ms-transform: rotate(-6deg);
	transform: rotate(-6deg);
	z-index: 1;
}
#prologue.contents h2 {
	margin-top: 0
}
#what div.promise {
	background: white;
	border: 1px solid #223f99;
	padding: 30px 0;
	text-align: center
}
#what div.promise h3 span {
	background: linear-gradient(transparent 50%, #fff600 50%);
	font-size: 30px;
	position: relative
}
#what div.promise h3 span:before {
	content: "";
	background: url(../images/h2_f_1.png) no-repeat;
	background-size: 100%;
	width: 59px;
	height: 47px;
	position: absolute;
	left: -65px;
	top: -10px
}
#what div.promise>ul li {
	font-size: 20px;
	font-weight: bold
}
#what div.promise>ul li:before {
	font-size: 40px;
	color: #db608e;
	font-family: 'Oswald', sans-serif;
	font-style: italic;
	padding-right: 5px
}
#what div.promise>ul li:nth-child(1):before {
	content: "1.";
}
#what div.promise>ul li:nth-child(2):before {
	content: "2.";
}
#what div.promise>ul li:nth-child(3):before {
	content: "3.";
}

#guest.contents p.photo{ text-align: center}
#guest.contents p.photo img{ width: 200px}
div .photo {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}

div .photo img {
    width: 100%;
    max-width: 240px;
}

div .photo>div {
    text-align: center;
    margin: 0;
    width: 50%;
}

div .photo>div:first-child {
    width: 30%;
}


div .photo ul {
    display: flex;
    text-align: center;
    margin-bottom: 0px;
    justify-content: center;
}

div .photo ul img {
    margin: 0 10px 14px;
}

div .photo ul img {
    max-width: 160px;
}

div .photo ul p {
    font-size: 12px!important;
}

#guest> div>ul {
	display: flex;
	flex-flow: wrap;
	margin-bottom: 20px;
}
#guest> div>ul li {
	width: 12%;
	padding-right: 0.5%;
	padding-bottom: 0.5%;
}
#guest> div>ul li img {
	width: 100%
}
#guest> div>ul li p {
	text-align: center;
	font-size: 12px;
	line-height: 1.2em;
	padding-top: 10px;
	display: none;
}

#guest> div>ul li p span {
    font-size: 90%;
}
#entry {
}
#entry p.date {
	font-size: 20px;
	margin-bottom: 20px
}
#entry p.place img {
	vertical-align: middle
}
#entry p.address {
	padding-left: 100px
}
#entry p.date span, #entry p.place span {
	display: inline-block;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #223f99;
	font-size: 16px;
	text-align: center;
	line-height: 80px;
	color: white;
	vertical-align: middle;
	margin-right: 10px;
	position: relative;
	top: -10px
}
#entry p.date span:after, #entry p.place span:after {
	left: 99%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(34, 63, 153, 0);
	border-left-color: #223f99;
	border-width: 8px;
	margin-top: -8px;
}
#entry p strong {
	font-family: 'Oswald', sans-serif;
	font-size: 40px;
}

#entry p strong.place {
    font-size: 30px;
}
#entry div.box p.place {
	padding-bottom: 0;
	line-height: 1em
}
#entry div.list {
	text-align: center
}
#entry div.list h3 {
	display: inline-block;
	padding: 0 50px;
	position: relative
}
#entry div.list h3:before {
	content: "";
	display: block;
	border-top: solid 1px #223f99;
	width: 100%;
	height: 1px;
	position: absolute;
	top: 50%;
	z-index: 1;
	left: 0;
}
#entry div.list h3 span {
	background: #fff;
	padding: 0 10px;
	position: relative;
	z-index: 5;
}
#entry div.list p strong {
	font-size: 24px;
	background: linear-gradient(transparent 50%, #fff600 50%);
}
#entry div.list p.sweet strong {
	color: #db608e
}
#entry div.list p.sweet:before {
	content: "";
	background: url(../images/okashi_point1.png) no-repeat;
	width: 60px;
	height: 66px;
	display: inline-block;
	margin-top: -30px
}
#entry div.list p.sweet:after {
	content: "";
	background: url(../images/okashi_point2.png) no-repeat;
	width: 89px;
	height: 60px;
	display: inline-block;
	margin-top: -30px
}
#entry .entryBox {
	text-align: center;
	position: relative;
	border: 1px solid #223f99;
	margin-top: 40px;
}
#entry .entryBox h3 {
	background: #db608e;
	display: block;
	width: 200px;
	margin: -30px auto 20px auto;
	padding: 20px 0;
	border-radius: 60%;
	position: relative;
	color: white
}
#entry .entryBox h3:after {
	left: 50%;
	bottom: -7px;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(34, 63, 153, 0);
	border-top-color: #db608e;
	border-width: 8px;
	margin-bottom: -8px;
	margin-left: -4px;
}
#entry .entryBox img {
	margin-bottom: 20px
}
#entry .entryBox a.line img {
	width: 368px;
	margin-bottom: 20px
}
#form h4, #schedule h4, #inq h4 {
	font-size: 24px;
	font-weight: bold;
	text-align: left
}

#form div.box {
}
#form div.box p.lead {
	font-size: 18px;
}
/*#form div.expBox{ font-size:18px; padding:10px 10px 0 10px; border:1px solid #fff;width:890px; box-sizing:border-box; margin:0 auto; background:rgba(255,255,255,0.3)}
#form div.expBox h3{ padding-left:20px; border-bottom:1px solid #fff; margin-bottom:10px}*/
#form div.expBox {
	padding: 10px;
}
#form div.expBox h3 {
	float: left;
	width: 100px;
	height: 100px;
	background: #ad0706;
	text-align: center;
	color: white;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	padding-top: 35px;
	box-sizing: border-box;
	margin-right: 20px
}
#form div.expBox p {
	padding-top: 20px;
	font-size: 18px;
}
#form div.whiteBox {
	padding: 20px;
	background: white;
	width: 890px;
	box-sizing: border-box;
	margin: 30px auto
}
#form div.whiteBox h3 {
	text-align: center;
	margin-bottom: 20px;
	font-size: 24px
}
form.exp, form.inq {
	margin: 10px 20px;
	font-size: 16px
}
form.exp p, form.inq p {
	padding: 10px 0
}
form.exp table {
	width: 100%;
	text-align: left
}
form.exp table th {
	padding: 10px 30px 10px 10px;
	text-align: right
}
form.exp table th span, form.inq table th span {
	background: #ad0706;
	display: inline-block;
	padding: 2px 5px;
	color: white;
	font-size: 12px;
	margin-left: 10px;
	display: none
}
form.exp table td {
	padding: 10px
}
form.exp input.txt {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding: 10px;
	margin-right: 10px;
	width: 500px;
	background: #e9e9e9;
	box-sizing: border-box;
}
form.exp td select {
	-moz-appearance: none;
	appearance: none;
	-webkit-appearance: none;
	border: none;
	background: #e9e9e9;
	padding: 10px 30px 10px 10px;
	color: #666;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	box-sizing: border-box;

	width: 500px;
	line-height: 1.3em
}
form.exp td .selectBox select {
	padding: 10px 40px 10px 10px;
	margin-left: 0;
	background: #e9e9e9
}
form.exp td .selectBox {
	position: relative;
	width: 500px
}
form.exp td .selectBox:after {
	position: absolute;
	right: 10px;
	top: 16px;
	width: 5px;
	height: 5px;
	border-right: 3px solid #223f99;
	border-bottom: 3px solid #223f99;
	content: '';
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
form.exp input.short {
	width: 100px;
	width: 500px;
}
form.exp textarea {

	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding: 10px;
	width: 500px;
	height: 120px;
	background: #e9e9e9
}
form.exp textarea.keireki {
	width: 500px;
	height: 70px
}
form.exp input.send, form.inq input.send {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #223f99;
	color: white;
	text-align: center;
	display: block;
	font-size: 20px;
	padding: 20px 10px 18px 10px;
	width: 77px;
	margin: 10px auto;
	width: 250px;
	cursor: pointer;
	-webkit-appearance: none;
}
form.exp input.send:hover {
	opacity: 0.7
}
form.exp input.back, form.inq input.back {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #fff;
	color: black;
	text-align: center;
	display: block;
	font-size: 18px;
	padding: 7px 10px 5px 10px;
	width: 77px;
	margin: 5px auto;
	border: 1px solid #bbb;
	width: 200px;
	cursor: pointer
}
form.inq table {
	width: 100%;
	margin: 0 auto
}
form.inq table th {
	padding: 10px 10px 10px 10px;
	text-align: right;
	font-weight: normal
}
form.inq table td {
	padding: 10px
}
form.inq input.txt {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #e9e9e9;
	box-sizing: border-box;
	padding: 10px;
	margin-right: 10px;
	width: 500px
}
form.inq textarea {
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	background: #e9e9e9;
	box-sizing: border-box;
	padding: 10px;
	width: 500px;
	height: 100px;
	border: none
}
p.checboxtext {
	text-align: center
}
#inq div.box p {
	text-align: center
}
#inq div.box h4 {
	text-align: center
}
#inq div.box p.att {
	font-size: 80%;
	padding-top: 20px
}
#inq div.box p a img {
	width: 100px;
	display: inline-block;
	padding: 0 10px
}
#banner div.banbox {
	width: 50%;
	float: left;
	padding: 20px 0;
	text-align: center
}
#banner div.banbox.kyoryoku {
	width: 64%;
	border-right: 1px dotted #ccc;
}
#banner div.banbox.shusai {
	width: 35%
}
#banner div.banbox h4 {
	background: none;
}
footer {
	padding: 20px 10px 20px 10px;
	text-align: center;
	color: white;
	position: relative;
	z-index: 10;
	background: #223f99
}
footer p {
	width: 1000px;
	text-align: center;
	margin: 0 auto
}
.notice {
	color: #ad0706;
	font-weight: bold
}
#snsBox {
	position: fixed;
	right: 0;
	top: 60%;
	padding: 20px;
	border-radius: 5px 0 0 5px;
	-webkit-border-radius: 5px 0 0 5px;
	-moz-border-radius: 5px 0 0 5px;
	background-color: rgba(255,255,255,0.9);
	z-index: 1000;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
}
.twitter, .fb-share-button {
	padding-bottom: 10px
}
#privacy h2 {
	font-size: 30px;
	font-weight: bold;
	padding: 30px 0;
	text-indent: inherit;
	width: auto;
	height: auto
}
#privacy h4 {
	text-align: left;
	padding-bottom: 10px
}
#privacy h5 {
	padding-left: 20px;
	font-size: 16px
}
#privacy ol {
	margin-left: 50px
}
#privacy ol li {
	list-style-type: decimal;
	margin-bottom: 10px
}
.fb_iframe_widget iframe {
	right: 0
}
.contents div.box p.stop {
	font-size: 22px;
	color: white;
	text-align: center;
	background: #ad0706;
	line-height: 1em;
	padding: 20px 0;
	margin-bottom: 20px
}
#member {
    position: absolute;
    top: 830px;
    left: 50%;
    z-index: 11;
    transform: translateX(-50%);
    width: 1000px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#member>div {
    width: 190px;
}

#member>div>div p {
    color: #223f99;
    text-shadow: none;
    font-size: 9px;
    width: 100%;
    line-height: 1.2em;
}

#member>div>div {
    width: 100%;
}

#member>div {
    display: flex;
    width: 310px;
    flex-wrap: wrap;
    justify-content: center;
}

#member>div>p {}

#member>div>div>div {
    width: 50%;
    text-align: center;
}

#member>div>div {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 3px;
    margin-right: 10px;
}

#member>div>div>p {
    width: 100%;
    text-shadow: rgb(34, 63, 153) 5px 0px 0px, rgb(34, 63, 153) 4.90033px 0.993347px 0px, rgb(34, 63, 153) 4.60531px 1.94709px 0px, rgb(34, 63, 153) 4.12668px 2.82321px 0px, rgb(34, 63, 153) 3.48353px 3.58678px 0px, rgb(34, 63, 153) 2.70151px 4.20736px 0px, rgb(34, 63, 153) 1.81179px 4.6602px 0px, rgb(34, 63, 153) 0.849836px 4.92725px 0px, rgb(34, 63, 153) -0.145998px 4.99787px 0px, rgb(34, 63, 153) -1.13601px 4.86924px 0px, rgb(34, 63, 153) -2.08073px 4.54649px 0px, rgb(34, 63, 153) -2.94251px 4.04248px 0px, rgb(34, 63, 153) -3.68697px 3.37732px 0px, rgb(34, 63, 153) -4.28444px 2.57751px 0px, rgb(34, 63, 153) -4.71111px 1.67494px 0px, rgb(34, 63, 153) -4.94996px 0.7056px 0px, rgb(34, 63, 153) -4.99147px -0.291871px 0px, rgb(34, 63, 153) -4.83399px -1.27771px 0px, rgb(34, 63, 153) -4.48379px -2.2126px 0px, rgb(34, 63, 153) -3.95484px -3.05929px 0px, rgb(34, 63, 153) -3.26822px -3.78401px 0px, rgb(34, 63, 153) -2.4513px -4.35788px 0px, rgb(34, 63, 153) -1.53666px -4.75801px 0px, rgb(34, 63, 153) -0.560763px -4.96845px 0px, rgb(34, 63, 153) 0.437495px -4.98082px 0px, rgb(34, 63, 153) 1.41831px -4.79462px 0px, rgb(34, 63, 153) 2.34258px -4.41727px 0px, rgb(34, 63, 153) 3.17346px -3.86382px 0px, rgb(34, 63, 153) 3.87783px -3.15633px 0px, rgb(34, 63, 153) 4.4276px -2.32301px 0px, rgb(34, 63, 153) 4.80085px -1.39708px 0px, rgb(34, 63, 153) 4.98271px -0.415447px 0px;
    color: #fff;
    font-size: 16px;
    margin-bottom: 3px;
}

#member>div img {
    width: 60%;
    margin-bottom: 7px;
}

#member p {
    width: auto;
    color: #fff;
    text-shadow: rgb(34, 63, 153) 5px 0px 0px, rgb(34, 63, 153) 4.90033px 0.993347px 0px, rgb(34, 63, 153) 4.60531px 1.94709px 0px, rgb(34, 63, 153) 4.12668px 2.82321px 0px, rgb(34, 63, 153) 3.48353px 3.58678px 0px, rgb(34, 63, 153) 2.70151px 4.20736px 0px, rgb(34, 63, 153) 1.81179px 4.6602px 0px, rgb(34, 63, 153) 0.849836px 4.92725px 0px, rgb(34, 63, 153) -0.145998px 4.99787px 0px, rgb(34, 63, 153) -1.13601px 4.86924px 0px, rgb(34, 63, 153) -2.08073px 4.54649px 0px, rgb(34, 63, 153) -2.94251px 4.04248px 0px, rgb(34, 63, 153) -3.68697px 3.37732px 0px, rgb(34, 63, 153) -4.28444px 2.57751px 0px, rgb(34, 63, 153) -4.71111px 1.67494px 0px, rgb(34, 63, 153) -4.94996px 0.7056px 0px, rgb(34, 63, 153) -4.99147px -0.291871px 0px, rgb(34, 63, 153) -4.83399px -1.27771px 0px, rgb(34, 63, 153) -4.48379px -2.2126px 0px, rgb(34, 63, 153) -3.95484px -3.05929px 0px, rgb(34, 63, 153) -3.26822px -3.78401px 0px, rgb(34, 63, 153) -2.4513px -4.35788px 0px, rgb(34, 63, 153) -1.53666px -4.75801px 0px, rgb(34, 63, 153) -0.560763px -4.96845px 0px, rgb(34, 63, 153) 0.437495px -4.98082px 0px, rgb(34, 63, 153) 1.41831px -4.79462px 0px, rgb(34, 63, 153) 2.34258px -4.41727px 0px, rgb(34, 63, 153) 3.17346px -3.86382px 0px, rgb(34, 63, 153) 3.87783px -3.15633px 0px, rgb(34, 63, 153) 4.4276px -2.32301px 0px, rgb(34, 63, 153) 4.80085px -1.39708px 0px, rgb(34, 63, 153) 4.98271px -0.415447px 0px;
    font-size: 23px;
    font-weight: bold;
    text-align: center;
}
#member p.photo{ width: 155px; margin-right: 10px}
#member p.photo img{ width: 100%} 

#member ul {
    display: flex;
    flex-wrap: wrap;
    width: 600px;
}

#member ul li {
    width: 12.5%;
    padding-right: 0;
}


#member ul li img {
    width: 100%;
    height: auto;
}
@media screen and (max-width: 1000px){
	.pconly{ display:none!important}
.sponly,
	.sp_only{ display:block!important}

	img.logo {
    top: 2vw;
    width: 23vw;
    left: 2vw;
}

header {
    height: 124vw;
    background-image: url(../images/back_sp.png);
    background-size: 106%;
    background-position: center top 11%;
}

img.girl {
    width: 41vw;
}

img.boy {
    width: 45vw;
    right: -4vw;
}
	
img.edanon.sp_only {
	display: block;
    width: 30vw;
	top:54%;
	left:50%;
	margin-left: -12vw;
	z-index: 1000
}

header div.wrap h1 {
    top: 0vw;
    width: 71vw;
    height: 53vw;
}

p.lead {
    text-align: left;
    display: block;
    transform: rotate(-6deg);
    font-size: 3vw;
    bottom: 11vw;
    left: 30vw;
    z-index: 101;

    line-height: 3.9vw;
}

#date {
    top: 112vw;
    height: 48vw;
    background-size: 100vw;
    overflow: hidden;
}

#date div.dateBox {
    width: 100%;
    left: 0;
    margin: 0;
    top: 0;
}

#date div.dateBox p {
    padding-bottom: 0vw;
}

#date p.date {
    font-size: 4vw;
    letter-spacing: 0.4vw;
    padding-top: 6vw;
    margin-bottom: -1vw;
    line-height: 8vw;
}

#date p strong {
    font-size: 6vw;
}

#date .fukidashi2 {
    width: 30vw;
    height: 22vw;
    box-sizing: border-box;
    font-size: 3vw;
    line-height: 4.5vw;
    top: 22.7vw;
    right: 1vw;
}
#date .fukidashi2 p{ padding-top: 8vw;}

#date .fukidashi1 span, #date .fukidashi2 span {
    font-size: 4vw;
}

#date .fukidashi1 {
    left: 0;
    width: 26vw;
    height: 21vw;
    box-sizing: border-box;
    top: 23vw;
    line-height: 4vw;
}
#date .fukidashi1 p{padding-top: 7vw;}

#date p.place {
    font-size: 4.3vw;
}

#date p.free {
    font-size: 3.2vw;
    padding-top: 0vw;
    padding-bottom: 1.8vw!important;
    line-height: 6.3vw;
}

img.parts2 {
    bottom: 63vw;
    width: 63vw;
    left: 36vw;
}

img.parts1 {
	display: none;
    top: 81vw;
    width: 43vw;
    left: 51vw;
}
#date:before {
    height: 30vw;
    width: 120vw;
    position: relative;
    display: block;
    left: auto;
    top: auto;
    margin-left: -10vw;
    margin-top: 13.6vw;
}

.contents div.box {
    width: 100%;
    padding: 20px 20px 30px;
}

.contents#guest div.box {
    padding-bottom: 20px;
}
	
	#guest.contents p.photo img{ width: 100px}


div .photo>div{width:100%!important;}

.contents h2 {
    background-size: auto 39%!important;
    padding: 0;
    height: 13.3vw;
    width: 100%!important;
    margin-bottom: 30px;
}

.contents h2:before,.contents h2:after {
    width: 8vw!important;
    height: 8vw!important;
}

.contents h2:before {
    left: -5vw;
    top: -4vw;
}

.contents h2:after {
    right: -5vw;
    bottom: -4vw;
}

#prologue {
    margin-top: 0vw;
    padding-top: 0vw;
}
	div.box div.ph {
    float: none;
    width: 100%;
    margin: 0 0 20px;
}

#prologue.contents p, #what.contents p, #program.contents p {
    width: 100%;
}

#what div.promise {
    padding: 30px 9vw;
}

#what div.promise h3 span {
    font-size: 4.5vw;
}

#what div.promise h3 span:before {
    width: 8vw;
    left: -10vw;
    height: 10vw;
    top: -2vw;
}

#what div.promise>ul li {
    font-size: 3.3vw;
}

#guest> div>ul li {
    /* width: 31.3%; */
    /* padding-right: 3%; */
}

#guest> div>ul li:nth-of-type(3n) {
    padding-right: 0;
}

#guest> div>ul {
}
	#what div.promise>ul li:before {
    font-size: 6vw;
}

.contents div.box p {
    font-size: 14px;
}
	.contents div.box p small{ font-size: 80%}
	#entry p.date span, #entry p.place span {
    font-size: 3.2vw;
    width: 12vw;
    height: 12vw;
    box-sizing: border-box;
    line-height: 1vw;
    padding-top: 5.3vw;
    margin-right: 3vw;
}

#entry p.date {
    font-size: 3.6vw;
}

#entry p strong {
    font-size: 5.2vw!important;
}
	#entry div.box .grid {
    width: 50%;
    margin: 10px auto 20px;
}

#entry p.date span:after, #entry p.place span:after {
    left: 11vw;
    border-width: 2.4vw;
    margin-top: 0;
    transform: translateY(-50%);
}

#entry p.address {
    padding-left: 0;
}

#entry div.list p strong {
    font-size: 20px;
}

.contents h3 {
    font-size: 22px;
}

p.sweet {
    position: relative;
}

#entry div.list p.sweet:before,#entry div.list p.sweet:after {
    position: absolute;
    top: -7vw;
    width: 11vw;
    background-size: contain;
    height: 14vw;
}

#entry div.list p.sweet:before {
    left: 1vw;
}

#entry div.list p.sweet:after {
    right: 1vw;
    width: 14vw;
}

#entry .entryBox {
    padding: 0px 10px;
}

form.exp table th, form.exp table td, form.exp table tr,form.exp td .selectBox {
    display: block;
    box-sizing: border-box;
    width: 100%;
}

form.exp table th, form.exp table tr {
    padding-bottom: 20px;
}

form.exp table th,form.exp table td {
    text-align: left;
    padding: 0 0 10px;
}


form.exp table {
    margin: 0;
    display: block;
}

form.exp table tbody {
    width: 100%;
    display: block;
}

form.exp input.txt {
    width: 100%;
}

form.exp td .selectBox select {
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
    width: 100%;
}

tbody {
}

form.inq table td,form.inq table th {
    width: 100%;
    display: block;
    text-align: left;
    padding: 0 0 10px;
}

form.inq table tr {
    padding-bottom: 20px;
    display: block;
}

form.inq textarea, form.inq .txt {
    width: 100%!important;
}



footer p {
    width: 100%;
}
	#snsBox {
    position: relative;
    margin-top: 123vw;
    border: none;
    box-shadow: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#snsBox>div {
    display: flex!important;
    align-items: center;
}

#snsBox>div.lineBt>span {
    display: flex;
    align-items: center;
}

#snsBox .twitter {
    padding: 0;
}
	.contents.sns {
    border: none!important;
}

#prologue:before {
    background: none;
}
	#entry .entryBox a.line img {
    width: 80%;
		display: block;
		margin: 0 auto;
}
	form.exp, form.inq {
    margin: 10px 0;
}
	#member {
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
    top: 158vw;
    flex-wrap: wrap;
}

#member p {
    /* width: 20%; */
    /* text-shadow: none; */
    /* background: url(../images/text01.png)no-repeat center left/contain; */
    /* text-indent: -9999px; */
    /* height: 12vw; */
    /* margin-right: 5px; */
    margin-bottom: 1vw;
    font-size: 6vw;
}
#member p.photo{ background: none; width: 14%; margin-right: 5px; text-indent: 0; height: 9vh}
#member p.photo img{ width: 100%; vertical-align: top} 

#member ul {
    width: 92%;
}
	#member>div {
    width: 100%;
}

#member>div>div>p {
    font-size: 6vw;
    margin-bottom: 10px;
}

#member>div>div {
    margin-bottom: 1vw;
    margin-right: 0;
}
	header div.wrap::before {
    left: auto;
    right: 1vw;
    transform: none;
    width: 14vw;
    height: 13vw;
    top: 9vw;
}
}