@charset "UTF-8";
@font-face {
  /*フォントの名前*/
  font-family: "CakeSans";
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("../font/VisbyRoundCF-Bold.woff") format("woff"),
       url("../font/CakeSans-Regular.woff") format("woff");
}
@font-face {
  /*フォントの名前*/
  font-family: "Nubolts";
  /*フォントファイルへのパス（複数指定の場合、上から順に読み込まれる）*/
  src: url("../font/Nubolts.otf") format("otf"),
       url("../font/CakeSans-Regular.woff") format("woff");
}
* {
  margin:0;
  padding:0;
  zoom:1;
  box-sizing: border-box;
}
body {
  font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  font-size: 16px;
  color: #222;
  background: url("../img/pink.jpg") fixed;
  background-position: top center;
  background-size: cover;
}
.wall {
  background: url("../img/bg.png") no-repeat top center fixed;
}
.content {
  width: 1100px;
  margin: 0 auto;
  padding: 20px 10px 20px;
  background: #FFF7FA;
  overflow: hidden;
}
.h2_top {
  text-align: center;
  background: url("../../img/h2/h2_bg.png");
}
h2 img {
  display: block;
  margin: 0 auto;
}
.frame {
  border: 1px solid #627ded;
  border-radius: 10px;
  overflow: hidden;
}
header img {
  width: 100%;
}
header .header_top {
  padding-bottom: 10px;
}
header nav ul {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  background: url("../img/menu/dot.png");
}
header nav ul li {
  width: calc(100% / 7);
  border-right: 1px dashed #627ded;
}
header nav ul li:nth-of-type(7n) {
  border-right: none;
}
header nav ul li:nth-of-type(-n+7) {
  border-bottom: 1px dashed #627ded;
}
header nav ul li img {
  vertical-align: bottom;
}
footer {
  width: 1100px;
  margin: 0 auto;
  background: #00d8d8;
  color: #FFF;
  font-size: 12px;
  text-align: center;
}
footer ul {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  padding: 30px 0 20px;
  margin: 0 auto;
  width: 90%;
}
footer ul li {
  width: calc(100% / 12);
  border-right: 1px solid #FFF;
}
footer ul li:last-of-type {
  border-right: none;
}
footer ul li a {
  display: block;
  color: #FFF;
  text-decoration: none;
}
footer .copyright {
  padding-bottom: 10px;
}
footer .footer_p {
  padding-bottom: 20px;
}
.prof_block {
  width: 20%;
  padding: 10px;
  position: relative;
}
.prof_block a {
  text-decoration: none;
}
.prof_block .start_day {
  background: #EBE0FF;
  color: #7B7CFF;
  text-align: center;
  border-radius: 10px;
  padding: 3px;
  width: 80%;
  margin: 0 auto;
  font-weight: bold;
  margin-bottom: 5px;
}
.prof_block .prof_block_fresh_icon {
  background: #00d8d8;
  color: #FFF;
  padding: 5px 0;
  margin: 0 auto;
  width: 80%;
  text-align: center;
  opacity: .9;
  position: absolute;
  left: 0;
  right: 0;
  top: 235px;
  font-family: CakeSans;
  font-style: normal;
  font-weight: bold;
}
.prof_block .girls_name {
  color: #00d8d8;
  text-align: center;
  padding-top: 7px;
  font-weight: bold;
}
.prof_block .girls_size {
  color: #222;
  font-size: 14px;
  padding-top: 5px;
  text-align: center;
}
.prof_block a:hover {
	background-color: transparent; /* IE6対応 */
}
.prof_block a img {
  width: 100%;
	opacity: 1;
	-webkit-transition: all 0.5s;
  -moz-transition: all 0.5s;
  -ms-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  vertical-align: bottom;
}
.prof_block a:hover img {
  opacity: 0;
}
.prof_block .prof_time {
  background: #FFF;
  text-align: center;
  border: 2px solid #00d8d8;
  -webkit-display: flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 170px;
  margin: 10px auto 0;
}

p.girls_startday {
    color: #00d8d8;
    text-align: center;
    padding-top: 7px;
    font-weight: bold;
}

.prof_block .prof_time span {
  color: #FFF;
  display: block;
  background: #00d8d8;
  padding: 5px 5px 5px 3px;
  font-weight: bold;
}
.prof_block .prof_time span.prof_time_right {
  color: #00d8d8;
  background: #FFF;
  margin: 0 auto;
  padding: 5px;
  font-weight: bold;
}
.prof_block .girls_name {
  color: #00d8d8;
  text-align: center;
  padding-top: 7px;
  font-weight: bold;
}
.prof_block .girls_size {
  color: #222;
  font-size: 14px;
  padding-top: 5px;
  text-align: center;
}
/* index.php */
.index_caution {
  text-align: center;
  line-height: 2em;
  padding: 30px 0;
}
.dto_bn {
  padding-bottom: 30px;
  width: 640px;
  margin: 0 auto;
  text-align: center;
}
.index_btn {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 635px;
  margin: 0 auto;
}
.index_bn {
  padding: 30px 0;
  width: 640px;
  margin: 0 auto;
  text-align: center;
}
.banner_area {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.index_foot {
  padding-top: 20px;
}
/* newface.php */
#newface {
  margin-top: 20px;
}
#newface #newfacewrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
#newface #newfacewrap .prof_block {
  width: 20%;
  padding: 10px;
}
#newface #newfacewrap img {
  width: 100%;
  vertical-align: bottom;
}
#newface #newfacewrap .prof_block a {
  text-decoration: none;
}
#newface #newfacewrap .prof_block .start_day {
  background: #EBE0FF;
  color: #7B7CFF;
  text-align: center;
  border-radius: 10px;
  padding: 3px;
  width: 80%;
  margin: 0 auto;
  font-weight: bold;
  margin-bottom: 5px;
}
#newface #newfacewrap .prof_block .prof_block_fresh_icon {
  display: none;
}
/* girls.php */
#girls {
  margin-top: 20px;
}
#girls #girlswrap {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  -ms-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
#girls #girlswrap .prof_block {
  width: 20%;
  padding: 10px;
  position: relative;
}
#girls #girlswrap img {
  width: 100%;
  vertical-align: bottom;
}
#girls #girlswrap .prof_block a {
  text-decoration: none;
}
#girls #girlswrap .prof_block .start_day {
  background: #EBE0FF;
  color: #7B7CFF;
  text-align: center;
  border-radius: 10px;
  padding: 3px;
  width: 80%;
  margin: 0 auto;
  font-weight: bold;
  margin-bottom: 5px;
}
#search_f {
  border-top: 2px solid #FF779D;
  border-bottom: 2px solid #FF779D;
  padding: 20px;
  width: 50%;
  margin: 25px auto;
}
#search_f h3 {
  color: #FF779D;
  text-align: center;
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 15px;
}
#search_f form {
  display: flex;
  justify-content: center;
}
#search_f form div {
  width: 25%;
  text-align: center;
}
#search_f form div p {
  margin-bottom: 5px;
}
#search_f form div select {
  padding: 5px;
}
#search_f form input {
  width: 100px;
  margin-top: 20px;
  height: 29px;
}
#search_f form input:hover {
  cursor: pointer;
}
/* sch.php */
#sch {
  margin-top: 20px;
}
#sch .week ul {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
}
#sch .week ul li {
  width: calc(100% / 7);
  background: #FFF;
  border-right: 1px solid #FFEAF6;
  text-align: center;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}
#sch .week ul li.present {
  color: rgb(0, 184, 255);
  background: rgb(223, 245, 255);
  font-weight: bold;
  padding: 20px 0;
  display: block;
}
#sch .week ul li.present span {
  display: block;
  margin-top: 5px;
}
#sch .week ul li.over3 {
  display: flex;
}
#sch .week ul li:last-of-type {
  border-right: none;
}
#sch .week ul li a {
  color: #222;
  font-weight: bold;
  text-decoration: none;
  padding: 20px 0;
  display: block;
  width: 100%;
}
#sch .week ul li:nth-of-type(n+4) a {
  padding: 30px 0;
}
#sch .week ul li a span {
  display: block;
  margin-top: 5px;
}
.sch_tab .prof_block_sch {
	width: calc(100% / 5);
	padding: 10px;
}
.day_contents {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
/* review.php */
#review {
  margin-top: 20px;
}
#reviewwrap {
  margin-top: 10px;
  background: #FFF;
}
.ank_content {
  text-align: center;
  padding: 25px 0 50px;
}
.ank_content h3 {
  color: #F1749E;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 5px;
}
.ank_content p {
  line-height: 1.25em;
}
.ank_content p:first-of-type {
  margin-bottom: 15px;
}
.ank_form {
  width: 85%;
  margin: 0 auto;
}
.ank_form .row {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
}
.ank_form .row .ttx {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 40%;
  padding: 30px 20px;
  background: #FFF3F5;
  border-bottom: 1px solid #FFF;
}
.ank_form .row .ttx .caution{
  margin-left: 3px;
  color: #F74A3A;
}
.ank_form .row .answer {
  width: 60%;
  padding: 22px 20px;
  background: #FFF;
  border-bottom: 1px solid #FFF3F5;
  border-right: 1px solid #FFF3F5;
}
.ank_form .row:first-of-type .answer {
  border-top: 1px solid #FFF3F5;
}
.ank_form .row .answer input.inputtext {
  width: 250px;
}
.ank_form .row .answer select, .ank_form .row .answer input, .ank_form .row .answer textarea {
  padding: 6px;
}
.ank_form .row .answer textarea {
  line-height: 1.3em;
}
.ank_form .btn {
  text-align: center;
  padding: 30px 0;
}
.ank_form .btn input {
  width: 300px;
  height: 60px;
  font-size: 24px;
  color: #fc779d;
  font-weight: bold;
  border: none;
  box-shadow: 1px 1px 1px #666;
}
#reviewwrap .comp_wrap {
  text-align: center;
}
#reviewwrap .comp_wrap p {
  margin-bottom: 10px;
}
#reviewwrap .comp_wrap p:first-of-type {
  font-size: 24px;
  margin-bottom: 20px;
}
/* system.php */
#system {
  margin-top: 20px;
}
#system #systemwrap{
  margin-top: 10px;
}
#system .system_card {
  margin-top: 5px;
}
#system .system_mmag {
  margin: 20px 0;
}
/* event.php */
#event {
  margin-top: 20px;
}
#eventwrap {
  background: #fff;
  margin-top: 10px;
  padding: 20px;
}
#eventwrap .eventcont {
  background: #f0faff;
  padding: 30px 20px;
  margin-bottom: 20px;
}
#eventwrap .eventcont > div {
  width: 968px;
  margin: 0 auto;
}
#eventwrap .eventcont .event_img p {
  text-align: center;
}
#eventwrap .eventcont .event_title {
  background: #FFF;
  font-size: 28px;
  font-weight: bold;
  text-align: center;
  color: #FF77A5;
  margin-top: 20px;
  margin-bottom: 20px;
  padding: 30px 0;
  border: 1px solid #FF77A5;
}
#eventwrap .eventcont .event_desc {
  padding: 0 15px;
  line-height: 1.5em;
}
/* mmag.php */
#mmag {
  margin-top: 10px;
}
#mmag #mmagwrap {
  margin-top: 10px;
  position: relative;
}
#mmag #mmagwrap .mmag_link{
  width: 390px;
  margin: 0 auto;
  position: absolute;
  bottom: 50px;
  left: 0;
  right: 0;
}
/* hotel.php */
#hotel {
	margin-top: 20px;
}
#hotelwrap h3 {
  margin: 25px 35px;
  font-size: 26px;
  font-weight: bold;
  color: #FF77A5;
  position: relative;
  background: #FFDCE2;
  box-shadow: 0px 0px 0px 5px #FFDCE2;
  border: dashed 2px white;
  padding: 0.4em 0.5em;
}
#hotelwrap h3:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #FF77A5;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
.hotel_flex {
  display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}
.hotel_flex::after {
    width: 480px;
    content: "";
    display: block;
    height: 0;
}
.monohotel {
	padding: 0.5em 1em;
	font-weight: bold;
	background: #FFF;
	border: solid 3px #FF779D;
	border-radius: 10px;
	width: 480px;
	margin-top: 5px ;
  margin-bottom: 25px;
}
.hotelname {
	padding: 8px 19px;
	margin: 0.5em 0;
	color: #2c2c2f;
	background: #FFDCE2;
	border-bottom: solid 2px #FF779D;
	border-left: solid 20px #FF779D;
}
.hotelinfo {
	position: relative;
	background: #FFDCE2;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
	border: dashed 2px white;
	padding: 0.2em 0.5em;
	color: #454545;
	/* height: 110px; */
}
.price {
	padding: 1em;
	margin: 0.5em 0;
	background: #6eb7ff;
  color: #FFF;
	border-bottom: solid 3px #3f87ce;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
	border-radius: 9px 0px 0px 9px;
	width: 110px;
  text-align: center;
}
.lowerlimit {
	padding: 1em;
	margin: 0.5em 0;
	background: #fff;
	border-bottom: solid 3px #d4d9dc;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
	border-radius: 0px 9px 9px 0px;
	width: 350px;
}
.single {
	display: flex;
}
.hotelblock {
	/* display: flex; */
	line-height: 2em;
}
.hotelright {
	margin: 0px 10px 0px 10px;
}
.hotelphoto {
	width: 390px;
	height: 245px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.25);
}
.adress {
	display: flex;
	margin: 10px;
}
.adress img {
	width: 30px;
  height: 32px;
}
.hotellist {
	background-image: url("../img/pattern.jpg");
	background-repeat: repeat-y;
	background-position: right bottom
}
.monohotel a {
  color: #af8432;
  text-decoration: none;
}
.monohotel a:hover {
  color: #ff77a5;
  font-weight: bold;
  text-decoration:underline;
}

/* メルマガ */
.mmag_form {
  width: 450px;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto 20px;
}
.mmag_form .form_mail {
  margin-bottom: 15px;
}
.mmag_form .form_mail input {
  width: 100%;
  padding: 10px 5px;
  text-align: center;
  font-size: 16px;
}
.mmag_form .form_flex {
  display: flex;
  justify-content: center;
  margin-bottom: 15px;
}
.mmag_form .form_flex p {
  width: 55px;
}
.mmag_form .form_submit {
  width: 120px;
  height: 30px;
  margin: 0 auto 10px;
  display: block;
}