@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notoserifjapanese.css);
@font-face {
  font-family: sans-serif;
  src: url(./BASKVILL.TTF) format("truetype");
}
body {
  margin: 0px;
  padding: 0px;
  text-align: center;
  line-height: 1.5;
  font-weight: regular;
  font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #444;
  background: #fff;
  -webkit-text-size-adjust: 100%;
}

button,
.button,
input[type=submit],
form input[type=text],
form select,
form textarea {
  font-family: "sans-serif";
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
ul li {
  margin: 0;
  padding: 0;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

a:link,
a:visited {
  text-decoration: none;
  color: #444;
}

h1,
h2,
h3,
h4,
h5,
div,
a,
p,
form,
ul,
ol,
li,
figcaption,
figcaption {
  box-sizing: border-box;
}

#inframe {
  text-align: center;
  color: #444;
  background: transparent;
}

s {
  color: #5885b3;
}

img {
  border: none;
  max-width: 100%;
  height: auto;
}

.pink {
  color: #ff73a2;
}

/* header
 * --------------------------------------- */
#header {
  position: fixed;
  top: 0px;
  left: 0px;
  margin: 0;
  padding: 0;
  display: block;
  width: 100%;
  text-align: center;
  z-index: 888;
}
#header #header-inner .reserve-menu-list {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 10px;
  position: absolute;
  top: 42px;
  right: 24px;
}
#header #header-inner .reserve-menu-list li.web a {
  background-image: linear-gradient(90deg, rgb(255, 143, 69), rgb(255, 174, 73));
}
#header #header-inner .reserve-menu-list li.line a {
  background-image: linear-gradient(90deg, rgb(99, 222, 57), rgb(153, 242, 68));
}
#header #header-inner .reserve-menu-list li.tel a {
  background-image: linear-gradient(90deg, rgb(93, 169, 254), rgb(85, 209, 255));
}
#header #header-inner .reserve-menu-list li a {
  height: 40px;
  padding: 0px 20px;
  text-align: center;
  font-size: 1rem;
  font-weight: bold;
  color: #fff;
  background: #6691ff;
  /* border: solid 1px #fff; */
  display: block;
  position: relative;
  width: 100%;
  border-radius: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#header #header-inner .reserve-menu-list li a .hicon {
  width: 25px;
  padding-right: 6px;
}

#header-logo a {
  margin: 0 auto;
  padding: 0;
}

#webre {
  position: absolute;
  display: block;
  margin: 0;
  text-align: center;
  letter-spacing: 0em;
  line-height: 1em;
  vertical-align: middle;
  color: #fff;
  -webkit-border-radius: 4px;
  /*角丸*/
  -moz-border-radius: 4px;
  border-radius: 4px;
}

#webre span.jp {
  display: inline-block;
  font-style: normal;
  line-height: 1em;
}

#header-tel {
  position: absolute;
  display: block;
  margin: 0;
  text-align: left;
}

#header-open {
  display: block;
  margin: 0;
  vertical-align: middle;
}

/* footer
 * --------------------------------------- */
#footerpc-top {
  margin: 60px 0 0;
  width: 100%;
  height: 20px;
  background: url(../images/footerpc-top.png) center bottom repeat-x;
  -webkit-animation: wave 400s linear infinite;
  -moz-animation: wave 400s linear infinite;
  animation: wave 400s linear infinite;
}

@-webkit-keyframes wave {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 2000% 0;
  }
}
@-moz-keyframes wave {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 2000% 0;
  }
}
@keyframes wave {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 2000% 0;
  }
}
#footerpc {
  position: relative;
  width: 100%;
  margin: 0px 0 0;
  text-align: center;
  line-height: 1.4em;
  letter-spacing: 0em;
  color: #fff;
  background: #7663e7;
  overflow: hidden;
}

#footerpc img {
  margin: 8px auto 4px;
}

#footerpc img#footerlogo {
  margin: 0 auto 20px;
  width: 240px;
  height: auto;
}

#footermenu {
  width: 100%;
  max-width: 1400px;
  display: table;
  margin: 20px auto 20px;
  padding: 0;
  list-style-type: none;
}

#footermenu li {
  display: inline-block;
  list-style: none;
  margin: 0 4px 16px;
  padding: 0;
}

#footermenu a {
  padding: 6px 12px;
  text-align: center;
  color: #fff;
}

#footermenu a:hover {
  color: #fff;
  background: #6755ce;
}

#footercopy {
  margin: 16px 0 0;
  color: #fff;
  font-size: 80%;
}

/* Contents
 * --------------------------------------- */
/* top
 * --------------------------------------- */
#top {
  position: relative;
  margin: 0;
  padding: 0;
  width: 100%;
  overflow: hidden;
  z-index: 20;
}

#logo {
  position: absolute;
  left: 0%;
  top: 50%;
  width: 100%;
  margin: -120px 0 0;
  padding: 0;
  opacity: 0;
  -webkit-animation: fadein 2s ease-in 0.8s 1 normal forwards;
}

#logo img {
  height: auto;
  margin: 0 auto;
}

@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#gobottom {
  position: absolute;
  left: 0%;
  width: 100%;
  height: 50px;
  opacity: 0.8;
}

#newsbox .feed {
  padding-bottom: 25px;
  margin-bottom: 25px;
  border-bottom: 2px dotted #ccc;
}
#newsbox .feed .date {
  color: #6e86ff;
}
#newsbox .feed .title {
  font-size: 1.68rem;
  font-weight: bold;
  margin-bottom: 8px;
}
#newsbox .feed .content {
  margin-top: 20px;
  text-align: left;
}
#newsbox .feed .content .iframe {
  display: block;
  float: left;
  margin: 0 20px 0 0;
}

#event_wrap .owl-theme .owl-dots .owl-dot.active span,
#event_wrap .owl-theme .owl-dots .owl-dot:hover span {
  background: #8474ff;
}
#event_wrap .owl-theme .owl-dots .owl-dot span {
  background: #f1edff;
}

/* Contents
 * --------------------------------------- */
#contents {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

#toppage #main {
  background: #fff;
}

.pic {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.pic img {
  width: 100%;
  vertical-align: bottom;
}

.section {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.section .sectionin {
  margin: 0 auto;
  padding: 12px 0 12px;
  overflow: hidden;
}
.section .pgtop h2 {
  background: #6f5ae4;
  margin: 0;
  margin-bottom: 30px;
}
.section .pgtop h2 .en {
  display: block;
  color: #6755ce;
}

#toppage .top_title {
  position: relative;
  display: block;
  padding: 25px 0;
  font-size: 1.6rem;
}
#toppage .top_title span {
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  z-index: 5;
  position: relative;
}

/* Box
 * --------------------------------------- */
.box:last-of-type {
  margin: 0 auto 40px;
}

.concept-box {
  font-size: 94%;
  line-height: 1.5em;
}

#mailframe {
  width: 640px;
  height: 400px;
  margin: 0 auto;
  border: 1px solid #999;
}

.box p {
  margin: 0 0 28px;
  padding: 0;
  text-align: left;
}

.box p:last-of-type {
  margin: 0 0 20px;
}

.sectionin ol,
.sectionin ul {
  text-align: left;
}

.txt {
  text-align: left;
}

.txt-l {
  font-size: 112%;
  line-height: 150%;
}

.txt-ll {
  font-size: 128%;
  line-height: 150%;
}

.txt-s {
  font-size: 92%;
  line-height: 140%;
}

.white {
  color: #444;
}

.red {
  color: #ff4196;
}

.leftimg {
  float: left;
  margin: 0 15px 15px 0;
}

.rightimg {
  float: right;
  margin: 0 0 0px 15px;
}

.h2 {
  display: table;
  margin: 0 auto;
  padding: 14px 0 30px;
  text-align: center;
  font-weight: normal;
  font-size: 3.2em;
  line-height: 1.2em;
  letter-spacing: 0em;
  color: #6755ce;
  overflow: hidden;
}
.h2 .en {
  display: block;
  font-size: 26px;
  font-weight: normal;
  line-height: 1;
  color: #666;
}

#profile .pgtop .point {
  width: 100%;
  height: auto;
  margin: 10px 0 20px;
  padding: 0;
  text-align: center;
  overflow: hidden;
  color: #666666;
  font-size: 0.88em;
}

.h3 {
  color: #fff;
  position: relative;
  margin: 0 0 15px 0;
  padding: 10px 40px;
  text-align: left;
  font-weight: bold;
  font-size: 1.06rem;
  border-radius: 6px;
  background: rgb(84, 198, 255);
  background: linear-gradient(90deg, rgb(84, 198, 255) 0%, rgb(147, 219, 255) 100%);
}
.h3:after {
  content: "";
  width: 20px !important;
  height: 20px;
  border-radius: 120px;
  display: block;
  background: #0099e6 url("/assets/images/navi_arrow.png") no-repeat;
  background-size: 70%;
  background-position: center;
  position: absolute;
  top: 12px;
  left: 12px;
}
.h3 .en {
  display: block;
  font-size: 3rem;
  line-height: 0.7em;
}
.h3 .jp {
  font-size: 1.1rem;
  line-height: 1em;
}

h3.section_title {
  font-size: 1.64rem;
  color: #6755ce;
}
h3.section_title .ruby {
  font-size: 1rem;
  display: block;
  color: #777;
  align-items: center;
  display: flex;
  justify-content: center;
}
h3.section_title .ruby::before, h3.section_title .ruby::after {
  background-color: #777;
  content: "";
  height: 1px;
  width: 30px;
}
h3.section_title .ruby::before {
  margin-right: 15px;
}
h3.section_title .ruby::after {
  margin-left: 15px;
}

h4 {
  position: relative;
  margin: 0 0 20px 0;
  padding: 4px 0 12px;
  text-align: center;
  font-weight: bold;
  font-size: 1.3em;
  line-height: 1.1em;
  letter-spacing: 0.04em;
  color: #666;
  border-bottom: 2px solid #6755ce;
}

h4 .en {
  display: block;
  font-size: 2.2rem;
  line-height: 0.6em;
}

h4 .jp {
  font-size: 1rem;
  line-height: 0.6em;
}

h5 {
  display: block;
  padding: 15px;
  font-size: 1.3em;
  line-height: 1em;
  letter-spacing: 0px;
  font-weight: normal;
  text-indent: 0px;
  color: #fff;
  background: #999;
}

#rinenex {
  height: 0;
  overflow: hidden;
}

.rinenopen #rinenex {
  height: auto;
}

.basic_price_wrap {
  padding: 0 20px;
  width: 100%;
}
.basic_price_wrap h3.price_title {
  font-size: 1.13rem;
  padding: 12px;
  background: #7663e7;
  border-radius: 6px;
  color: #fff;
  position: relative;
  margin-bottom: 20px;
}
.basic_price_wrap h3.price_title:after {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  border: 10px solid transparent;
  border-top: 10px solid #7663e7;
  width: 0;
  height: 0;
  margin-left: -10px;
}
.basic_price_wrap .basic_price_box {
  margin-bottom: 25px;
}
.basic_price_wrap .basic_price_box h3 {
  margin-bottom: 0;
}
.basic_price_wrap .basic_price_box .basic_price_table {
  text-align: center;
  width: 100%;
  border-collapse: collapse;
}
.basic_price_wrap .basic_price_box .basic_price_table thead th {
  padding: 15px 0 0;
}
.basic_price_wrap .basic_price_box .basic_price_table td {
  padding: 12px 0;
  font-size: 1.13rem;
  font-weight: bold;
  border-top: 1px solid #e0e0e0;
  border-bottom: 1px solid #e0e0e0;
}
.basic_price_wrap .basic_price_box .basic_price_table td .new_price {
  font-size: 0.81rem;
}
.basic_price_wrap .basic_price_box .basic_price_table td.head {
  text-align: right;
  width: 40%;
  background: #dbd5f7;
  padding-right: 18px;
  border-top: 1px solid #b0a5ee;
  border-bottom: 1px solid #b0a5ee;
}
.basic_price_wrap .basic_price_box .basic_price_table td.price {
  text-align: right;
  color: #39f;
}
.basic_price_wrap .basic_price_box .basic_price_table td .del {
  font-size: 0.88rem;
  color: #666;
}
.basic_price_wrap .basic_price_box .basic_price_table td .del .lt {
  text-decoration: line-through;
}
.basic_price_wrap .basic_price_box .basic_price_table .recommend td.head {
  border: 4px solid #ff84b3;
  border-right: 0;
  background: #ffdae9;
  position: relative;
}
.basic_price_wrap .basic_price_box .basic_price_table .recommend td.head .label {
  font-size: 0.69rem;
  background: #ff84b3;
  line-height: 1;
  padding: 0px 4px;
  color: #fff;
  display: block;
  text-align: center;
  writing-mode: vertical-rl;
  width: auto;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.basic_price_wrap .basic_price_box .basic_price_table .recommend td.head .label span {
  text-combine-upright: all;
}
.basic_price_wrap .basic_price_box .basic_price_table .recommend td.price {
  border: 4px solid #ff84b3;
  border-left: 0;
}
.basic_price_wrap .basic_price_box .basic_price_table .recommend td.price .price .num {
  font-size: 1.6rem;
}
.basic_price_wrap .basic_price_box .basic_price_table.transport td.head {
  font-size: 1rem !important;
}
.basic_price_wrap .basic_price_box .basic_price_table.transport td.price {
  font-size: 1rem;
}

.system_wrap {
  margin: 0 auto;
  margin-bottom: 40px;
}
.system_wrap .price_table {
  width: 100%;
}
.system_wrap .price_table th {
  background: #80d1fa;
  color: #fff;
  padding: 10px 5px;
}
.system_wrap .price_table td {
  padding: 15px 30px;
  border-bottom: 2px dashed #ccc;
  text-align: left;
}
.system_wrap .price_table td.head {
  font-weight: bold;
  white-space: nowrap;
  background: #7663e7;
  width: 30%;
}
.system_wrap .price_table td.supple_cel {
  border: none;
}
.system_wrap .price_table td .num {
  font-size: 32px;
}
.system_wrap .price_table td.price {
  text-align: center;
}
.system_wrap .price_table2 {
  width: 100%;
}
.system_wrap .price_table2 th,
.system_wrap .price_table2 td {
  border-collapse: collapse;
}
.system_wrap .price_table2 th {
  background: #6f5ae4;
  color: #fff;
  padding: 10px 15px;
  font-size: 1rem;
}
.system_wrap .price_table2 td {
  padding: 10px 15px;
  border-top: 1px dashed #ccc;
  border-bottom: 1px dashed #ccc;
  text-align: left;
  font-size: 1rem;
  white-space: nowrap;
}
.system_wrap .price_table2 td.head {
  font-weight: bold;
  white-space: wrap;
  background: #dbd5f7;
  width: 50%;
}
.system_wrap p {
  text-align: left;
}
.system_wrap .system_supple p {
  margin: 5px 0 0 0;
  text-align: left;
  font-size: 0.88em;
}
.system_wrap .system_supple p .secret {
  font-weight: bold;
  color: #f00;
}
.system_wrap .plus_option {
  background: #57d8ff;
  color: #fff;
  display: inline-block;
  padding: 6px 30px;
  border-radius: 200px;
}
.system_wrap.op {
  position: relative;
}
.system_wrap .option_title {
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  background: #ffba42;
  border-radius: 200px;
  padding: 10px 35px;
  width: 60%;
  filter: drop-shadow(4px 4px 3px rgba(0, 0, 0, 0.2));
}
.system_wrap .option_title .strong {
  font-weight: bold;
}
.system_wrap .play_list,
.system_wrap .option_list {
  overflow: hidden;
  padding: 0;
  display: flex;
}
.system_wrap .play_list.play_list,
.system_wrap .option_list.play_list {
  flex-wrap: wrap;
  flex-shrink: 3;
}
.system_wrap .play_list.option_list,
.system_wrap .option_list.option_list {
  flex-wrap: wrap;
  flex-shrink: 3;
}
.system_wrap .play_list li,
.system_wrap .option_list li {
  list-style: none;
}
.system_wrap .play_list li .op,
.system_wrap .option_list li .op {
  background: #fff;
  border-radius: 8px;
  padding: 16px 16px;
  display: block;
  margin: 0 10px 10px 0;
  font-size: 0.88em;
  background: #6f5ae4;
  background: #ffebf1;
  color: #ef307e;
  border: 2px solid #ffd5e3;
  font-weight: bold;
}
.system_wrap .play_list li .op .num,
.system_wrap .option_list li .op .num {
  font-weight: bold;
  display: inline-block;
  padding-right: 4px;
}
.system_wrap .play_list li .op .num:after,
.system_wrap .option_list li .op .num:after {
  content: ".";
}
.system_wrap .play_list li span,
.system_wrap .option_list li span {
  color: #ff73a2;
  font-weight: bold;
  display: block;
}
.system_wrap .play_list li .detail,
.system_wrap .option_list li .detail {
  display: flex;
  justify-content: space-between;
}
.system_wrap .play_list li .detail .price,
.system_wrap .option_list li .detail .price {
  font-size: 1rem;
}

.system_wrap h3.sub_title,
.basic_price_wrap h3.sub_title {
  position: relative;
  margin: 0 0 24px 0;
  padding: 4px 0 10px;
  text-align: center;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 1.1em;
  letter-spacing: 0.04em;
  color: #666;
  border-bottom: none;
  background: none;
}
.system_wrap h3.sub_title:after,
.basic_price_wrap h3.sub_title:after {
  position: absolute;
  content: "";
  top: 100%;
  left: 50%;
  background: #7663e7;
  width: 60px;
  height: 3px;
  margin-left: -30px;
}

.op500 .option_title {
  background: #95f0ca;
}
.op500 .option_list {
  background: #b8fcdf;
}

.op1000 .option_title {
  background: #9af8e7;
}
.op1000 .option_list {
  background: #b6fff2;
}

.op1500 .option_title {
  background: #a2e0fd;
}
.op1500 .option_list {
  background: #b8e8ff;
}

.op2000 .option_title {
  background: #a3b0ff;
}
.op2000 .option_list {
  background: #b6c0ff;
}

.op2500 .option_title {
  background: #cda8ff;
}
.op2500 .option_list {
  background: #dcc1ff;
}

.op3000 .option_title {
  background: #fea8ff;
}
.op3000 .option_list {
  background: #fec8ff;
}

.op4000 .option_title {
  background: #ffa8c8;
}
.op4000 .option_list {
  background: #ffbcd5;
}

.op4500 .option_title {
  background: #ffa8a8;
}
.op4500 .option_list {
  background: #ffbbbb;
}

.op5000 .option_title {
  background: #ffc4a8;
}
.op5000 .option_list {
  background: #ffd0ba;
}

.all_option .option_title {
  background: #fff6a8;
  position: inherit;
  top: 0;
  width: 65%;
  margin-bottom: 25px;
}
.all_option .option_list {
  background: #ffd0ba;
}

/* cast
 * --------------------------------------- */
.thumbparkmenu {
  overflow: hidden;
  clear: both;
  text-align: center;
  width: 100%;
}
.thumbparkmenu ul {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  padding: 0;
  text-align: center;
  gap: 8px;
}
.thumbparkmenu ul li {
  width: calc(50% - 4px);
  display: inline-block;
  list-style-type: none;
  background: #7663e7;
  -webkit-border-radius: 2px;
  /*角丸*/
  border-radius: 2px;
  overflow: hidden;
  letter-spacing: normal;
  /*隙間対策 */
}
.thumbparkmenu ul li:first-child {
  width: 100%;
}
.thumbparkmenu ul li.active {
  background: #6755ce;
}
.thumbparkmenu ul li .today {
  color: #ffff00;
}
.thumbparkmenu ul li a,
.thumbparkmenu ul li button {
  display: block;
  margin: 0;
  padding: 4px;
  text-decoration: none;
  line-height: 1em;
  color: #fff;
  background: none;
  cursor: pointer;
  color: #fff;
}
.thumbparkmenu ul li a.red,
.thumbparkmenu ul li button.red {
  color: #ffff00;
}
.thumbparkmenu ul li aa:link, .thumbparkmenu ul li aa:visited,
.thumbparkmenu ul li buttona:link,
.thumbparkmenu ul li buttona:visited {
  color: #fff;
  text-decoration: none;
}
.thumbparkmenu ul li abutton.active, .thumbparkmenu ul li abutton:hover,
.thumbparkmenu ul li buttonbutton.active,
.thumbparkmenu ul li buttonbutton:hover {
  color: #fff;
}

.group_schedule_list {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center !important;
}
.group_schedule_list li {
  list-style: none;
  display: inline-block;
  text-align: center;
  padding: 0 8px;
  width: 40%;
}
.group_schedule_list li img {
  width: 100%;
}

.thumb_list {
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
  gap: 15px 10px;
}

.thumbindex {
  margin: 0 auto;
  padding: 0 0 0px;
  text-align: center;
  line-height: 0em;
  overflow: hidden;
}

.thumb {
  position: relative;
  width: calc(50% - 5px);
}
.thumb a {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 8;
}
.thumb figure {
  position: relative;
  margin: 0 auto 0;
  padding: 0;
  overflow: hidden;
  text-align: center;
  overflow: hidden;
  -webkit-border-radius: 2px;
  /*角丸*/
  -moz-border-radius: 2px;
  border-radius: 2px;
}
.thumb figure img {
  width: 100%;
  height: auto;
  margin: 0 auto;
  border-style: none;
  vertical-align: top;
  position: relative;
}
.thumb figure .price_category {
  position: absolute;
  top: 5px;
  left: 0px;
  width: 75px;
  z-index: 1;
}
.thumb figure .sns_list {
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 1;
}
.thumb figure .sns_list li {
  width: 24px;
  display: inline-block;
  margin-left: 5px;
}
.thumb figure .status_label {
  position: absolute;
  top: 5px;
  left: 5px;
  z-index: 80;
}
.thumb figure .status_label img {
  width: 65px;
}
.thumb figure .schedule_label {
  position: absolute;
  width: 80%;
  bottom: 6px;
  left: -50%;
  margin-left: 60%;
  background: #ffdcd4;
  /* border: 1px solid #ffc0ae; */
  padding: 3px 15px;
  border-radius: 20px;
  z-index: 1;
  line-height: 1.5;
  box-sizing: border-box;
}
.thumb figcaption {
  margin: 0;
  text-align: center;
  color: #111;
  line-height: 1.3em;
  letter-spacing: normal;
  /*隙間対策 */
  overflow: hidden;
  background: #dbd5f7;
  padding: 0 0 6px 0;
}
.thumb figcaption .thumbcom {
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 4px auto;
  border-radius: 60px;
  font-size: 0.81rem;
  display: inline-block;
  background: linear-gradient(90deg, #a629ee 30%, #fa43bd 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.thumb figcaption .thumbdetail .thumbname,
.thumb figcaption .thumbdetail .thumbsize,
.thumb figcaption .thumbdetail .thumbcom {
  display: block;
}
.thumb figcaption .thumbdetail .thumbname {
  font-size: 1.13rem;
  font-weight: bold;
  color: #523ec5;
}
.thumb figcaption .thumbdetail .thumbname .thumbage {
  font-size: 0.94rem;
}
.thumb figcaption .thumbdetail .thumbsize {
  color: #666;
}
.thumb figcaption .thumbdetail .time-week {
  display: block;
  color: #fff;
  background: #6f5ae4;
  width: calc(100% - 30px);
  margin: 6px auto;
  padding: 3px 0 2px;
  border-radius: 50px;
  font-size: 0.94rem;
}
.thumb figcaption .thumbdetail .time,
.thumb figcaption .thumbdetail .timemon,
.thumb figcaption .thumbdetail .timetue,
.thumb figcaption .thumbdetail .timewed,
.thumb figcaption .thumbdetail .timethu,
.thumb figcaption .thumbdetail .timefri,
.thumb figcaption .thumbdetail .timesat,
.thumb figcaption .thumbdetail .timesun {
  display: none;
}
.thumb figcaption .thumbdetail .time,
.thumb figcaption .thumbdetail .tday-mon .timemon,
.thumb figcaption .thumbdetail .tday-tue .timetue,
.thumb figcaption .thumbdetail .tday-wed .timewed,
.thumb figcaption .thumbdetail .tday-thu .timethu,
.thumb figcaption .thumbdetail .tday-fri .timefri,
.thumb figcaption .thumbdetail .tday-sat .timesat,
.thumb figcaption .thumbdetail .tday-sun .timesun {
  display: block;
  color: #fff;
}

.new {
  position: absolute;
  display: block;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 6;
  background-image: url(../images/new.png);
}

.icon {
  position: absolute;
  display: block;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 6;
}

.icona {
  background-image: url(../images/icona.png);
}

.iconb {
  background-image: url(../images/iconb.png);
}

.iconc {
  background-image: url(../images/iconc.png);
}

.icond {
  background-image: url(../images/icond.png);
}

.icone {
  background-image: url(../images/icong.png);
}

.iconf {
  background-image: url(../images/iconf.png);
}

/* news
 * --------------------------------------- */
#newsindex {
  height: 460px;
  overflow: auto;
}

#tw {
  height: 400px;
  margin-bottom: 30px;
}

#diarybox {
  height: 460px;
  overflow: auto;
}

#newsbox {
  height: 460px;
  overflow: auto;
}
#newsbox .news {
  overflow: hidden;
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px dotted #ccc;
}
#newsbox .news .news_image {
  float: left;
  width: 28%;
}
#newsbox .news .news_content {
  float: left;
  padding-left: 25px;
}
#newsbox .news .news_content dt {
  font-size: 1.13rem;
  font-weight: bold;
}

/* sidebar
 * --------------------------------------- */
#sidebar .side_contents {
  margin: 0 15px 25px;
  padding: 15px 15px 15px 15px;
  background: #fff;
}
#sidebar .side_contents .sidebar_title {
  display: block;
  background: #523ec5;
  color: #fff;
  font-size: 1.06rem;
  font-weight: bold;
  padding: 9px;
  text-align: center;
  margin: -15px -15px 15px;
}
#sidebar .pickup_girl .sidebar_title.pickup {
  border-radius: 0;
}
#sidebar .pickup_girl .sidebar_title.pickup span {
  font-size: 1.32rem;
}
#sidebar .pickup_girl .sidebar_title.pickup.no1 {
  background: #ff88b0;
}
#sidebar .pickup_girl .sidebar_title.pickup.no1 {
  background: #ff966c;
}
#sidebar .pickup_girl a {
  display: block;
}
#sidebar .pickup_girl a figure {
  position: relative;
  margin: 0 auto 0;
  padding: 0;
  overflow: hidden;
  text-align: center;
  overflow: hidden;
}
#sidebar .pickup_girl a figure .status_label {
  position: absolute;
  top: 0;
  left: 10px;
  z-index: 100;
}
#sidebar .pickup_girl a figure .status_label img {
  width: 50px;
}
#sidebar .pickup_girl a figcaption {
  text-align: left;
}
#sidebar .pickup_girl a figcaption .thumbcom {
  text-align: left;
}
#sidebar .pickup_girl a figcaption .comment {
  font-size: 0.81rem;
}
#sidebar .banner_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
#sidebar .banner_list li {
  list-style: none;
  padding: 0 0 6px 0;
  margin: 0;
}
#sidebar .banner_list li img {
  width: 100%;
}
#sidebar .side_menu_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
#sidebar .side_menu_list li {
  list-style: none;
  padding: 0 0 0px 0;
  margin: 0;
}
#sidebar .side_menu_list li a {
  display: block;
  padding: 15px 0;
  text-align: left;
  margin: 0;
  border-bottom: 1px dashed #99A;
}
#sidebar .side_menu_list li img {
  width: 100%;
}

/* Cell
 * --------------------------------------- */
.cell {
  margin: 0 auto 16px;
}

.cell .cset {
  margin: 0 auto 6px;
  overflow: hidden;
  line-height: 1.4em;
  background: rgba(184, 201, 226, 0.4);
}

.cell .cset:nth-child(2n+1) {
  background: rgba(168, 193, 223, 0.3);
}

.cell .cset:nth-child(2n+2) {
  background: rgba(184, 201, 226, 0.3);
}

.cell .cset.cset1 {
  background: rgba(160, 160, 160, 0.2);
}

.cell .cset.cset2 {
  background: rgba(180, 180, 180, 0.2);
}

.cell .cset.cset3 {
  background: rgba(200, 200, 200, 0.2);
}

.cell .cset.cset4 {
  background: rgba(220, 220, 220, 0.2);
}

.mcell .cset .append {
  font-size: 0.88rem;
  line-height: 1.5;
}

.pcell .cset div {
  font-size: 116%;
}

.plcell .cset div {
  font-size: 128%;
}

.scell .cset div {
  color: #6a9be3;
}

.cell .cset div .no {
  margin-right: 3px;
  font-style: italic;
  font-size: 140%;
}

.cell .cset .cleft {
  width: 20%;
  padding: 16px 2% 12px;
  text-align: right;
  float: left;
}

.cell .cset .cright {
  width: 80%;
  padding: 16px 2% 12px;
  text-align: left;
  border-left: solid 3px #fff;
  float: left;
}

.pcell .cset .cleft {
  padding: 14px 2% 10px;
  width: 50%;
  float: left;
}

.pcell .cset .cright {
  padding: 14px 2% 10px;
  width: 50%;
  float: left;
}

.plcell .cset .cleft {
  width: 50%;
  float: left;
}

.plcell .cset .cright {
  width: 50%;
  float: left;
}

.tcell .cset .cleft {
  width: 76%;
  font-size: 96%;
  float: left;
}

.tcell .cset .cright {
  width: 24%;
  float: left;
}

.mcell .cset div {
  font-size: 104%;
}

.mcell .cset .cleft {
  width: 32%;
  padding: 16px 1.4% 8px;
  float: left;
}

.mcell .cset .cright {
  width: 68%;
  padding: 8px 1.4% 8px;
  float: left;
}

.need {
  margin: 0 auto 0 4px;
  padding: 2px 3px 1px 3px;
  font-size: 84%;
  line-height: 80%;
  text-align: center;
  color: #fff;
  background-color: #f07eed;
  -webkit-border-radius: 2px;
  /*角丸*/
  -moz-border-radius: 2px;
  border-radius: 2px;
}

ul.options {
  display: table;
  width: 100%;
  margin: 0 auto 20px;
  padding: 0;
  list-style-type: none;
}

ul.options li {
  display: inline-block;
  list-style: none;
  margin: 4px 6px 8px !important;
  padding: 6px 12px !important;
  text-align: center;
  font-size: 112%;
  background: rgba(180, 180, 180, 0.2);
  -webkit-border-radius: 48px;
  /*角丸*/
  -moz-border-radius: 48px;
  border-radius: 48px;
}

.rec-box {
  display: table;
  list-style-type: none;
  width: 100%;
  padding: 12px 40px 12px;
  font-size: 116%;
  color: #333;
  background: #e6f5f4;
}

p.rec-box {
  margin: 0 0 12px;
  padding: 12px 40px 12px;
  text-align: left;
}

ul.rec-box {
  margin: 0 0 12px;
  padding: 20px 12px 8px;
  text-align: center;
}

ul.rec-box li {
  display: inline-block;
  margin: 0 6px 12px;
  padding: 2px 8px;
  line-height: 1em;
}

/* flow */
.flow_step .step {
  border: 2px solid #c9efff;
  border-radius: 8px;
  padding: 15px;
  margin-bottom: 40px;
  position: relative;
}
.flow_step .step:after {
  display: block;
  position: absolute;
  content: "";
  bottom: -23px;
  left: 50%;
  margin-left: -6px;
  width: 12px;
  height: 12px;
  border-top: 2px solid rgb(83, 186, 255);
  border-right: 2px solid rgb(83, 186, 255);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
.flow_step .step:last-child {
  margin-bottom: 0;
}
.flow_step .step:last-child:after {
  display: none;
}
.flow_step .step h4 {
  margin: 0;
  padding: 0 0 12px 0;
  color: rgb(83, 186, 255);
  text-align: left;
  font-size: 1rem;
  border-bottom: none;
}
.flow_step .step .reserve-menu-list {
  display: flex;
  flex-wrap: nowrap;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 10px;
}
.flow_step .step .reserve-menu-list li {
  width: 33.3333%;
}
.flow_step .step .reserve-menu-list li.web a {
  background-image: linear-gradient(90deg, rgb(255, 143, 69), rgb(255, 174, 73));
}
.flow_step .step .reserve-menu-list li.line a {
  background-image: linear-gradient(90deg, rgb(99, 222, 57), rgb(153, 242, 68));
}
.flow_step .step .reserve-menu-list li.tel a {
  background-image: linear-gradient(90deg, rgb(93, 169, 254), rgb(85, 209, 255));
}
.flow_step .step .reserve-menu-list li a {
  height: 36px;
  padding: 0px 0 0 0px;
  text-align: center;
  font-size: 0.81rem;
  font-weight: bold;
  color: #fff;
  background: #6691ff;
  /* border: solid 1px #fff; */
  display: block;
  position: relative;
  width: 100%;
  border-radius: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.flow_step .step .reserve-menu-list li a .hicon {
  width: 20px;
  padding-right: 6px;
}

.flowbox {
  margin: 0 auto 10px;
  padding: 15px 0px 15px;
}

.flow {
  display: block;
  width: 100%;
  margin: 0 auto 4px;
  padding: 8px 0px;
  text-align: center;
  background: rgba(255, 255, 255, 0.4);
}

.flow img {
  margin: 7px 7px 7px;
}

.flow p {
  margin: 0 auto 12px;
  padding: 0px 12px;
  text-align: left;
}

.box .flow p:last-of-type {
  margin: 0 auto 0px;
}

.flow .no {
  display: block;
  margin: 0px auto 4px;
  padding: 2px 2px 3px;
  width: 48px;
  height: 48px;
  font-size: 2.2em;
  line-height: 100%;
  color: #fff;
  background: #6755ce;
  -webkit-border-radius: 60%;
  /*角丸*/
  -moz-border-radius: 60%;
  border-radius: 60%;
}

.arrow {
  height: 18px;
  margin: 0px auto 6px;
  padding: 0;
  background: url(../images/arrow.gif) center 0px no-repeat;
  background-size: auto 18px;
}

.qabox {
  display: block;
  width: 100%;
  margin: 0 auto 16px;
  padding: 0;
  text-align: left;
}

.qabox h4.qaques {
  margin: 0 0 0px;
  padding: 4px 0px 4px;
  font-size: 1.2em;
  line-height: 1.5em;
  color: #666;
  text-align: left;
}

.qabox .qaans {
  margin: 0 0 40px;
  padding: 8px 0px 12px;
}

.qaques .no,
.qaans .no {
  display: inline-block;
  margin: 0 15px 4px 0;
  font-size: 1.6em;
  line-height: 1em;
  font-weight: bold;
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  color: #FFF;
  font-size: 28px;
  font-weight: bold;
  background: #ff8fd0;
  border-radius: 50%;
  box-sizing: border-box;
}
.qaques .no:before,
.qaans .no:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -22px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #ff8fd0;
  z-index: 0;
}

.qaans .no {
  background: #8fbeff;
}
.qaans .no:before {
  border-left: 15px solid #8fbeff;
}

.faq_list {
  counter-reset: number 0;
  margin-bottom: 20px !important;
}
.faq_list dt {
  background: #dbd5f7;
  border-radius: 8px;
  padding: 8px 6px 8px 50px;
  margin-bottom: 4px;
  position: relative;
}
.faq_list dt::before {
  counter-increment: number;
  content: "Q" counter(number);
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  color: #523ec5;
  font-weight: bold;
}
.faq_list dd {
  margin-top: 6px !important;
  margin-bottom: 15px !important;
  border-radius: 8px;
  border: 1px solid #ccc;
  padding: 8px 12px !important;
}
.faq_list dd .pink {
  color: #ff73a2;
}

.sectionin dl {
  margin: 0;
  text-align: left;
}

.sectionin dd {
  margin: 0;
  padding: 0;
}

.rec-box {
  display: table;
  list-style-type: none;
  width: 100%;
  margin: 0 auto 28px;
  padding: 12px 40px 12px;
  font-size: 116%;
  color: #111;
  border: 1px solid #999;
}

div.rec-box {
  line-height: 1.8em;
}

p.rec-box {
  margin: 0 auto 28px;
  padding: 12px 40px 12px;
  text-align: left;
}

ul.rec-box {
  margin: 0 auto 28px;
  padding: 20px 12px 8px;
  text-align: center;
}

ul.rec-box li {
  display: inline-block;
  margin: 0 6px 12px;
  padding: 2px 8px;
  line-height: 1em;
}

.box {
  margin-bottom: 20px;
  overflow: hidden;
}
.box .main_catch {
  padding: 25px;
  color: #555;
  font-size: 1.23em;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
}
.box .main_catch span {
  color: #f69;
  display: block;
  font-size: 56px;
}
.box .point {
  color: #523ec5;
}
.box .point a {
  color: #523ec5;
}
.box .point2 {
  color: #ff73a2;
}
.box .large {
  font-size: 1.13rem;
  font-weight: bold;
}
.box .guide_detail dt {
  font-weight: bold;
}
.box .guide_detail dd {
  margin-bottom: 15px;
}
.box .detail_table {
  border: 1px solid #ccc;
  border-collapse: collapse;
}
.box .detail_table th,
.box .detail_table td {
  border: 1px solid #ccc;
  border-collapse: collapse;
}
.box .detail_table th {
  background: #ffd6e4;
  width: 25%;
  padding: 8px 15px;
  text-align: left;
}
.box .detail_table td {
  background: #f0f0f0;
  padding: 8px 15px;
  text-align: left;
}
.box .company_detail {
  border: 1px solid #ccc;
  background: #f0f0f0;
  padding: 8px 12px;
}

/*form
*/
form {
  margin: 0;
  padding: 0;
  text-align: center;
}

form input[type=text],
form input[type=tel],
form input[type=email],
form select,
form textarea {
  margin: 4px 0;
  font-size: 100%;
  line-height: 1.2em;
  background: #fff;
  border: solid 1px #aaa;
  border-radius: 4px;
  padding: 4px 6px;
}

form input[type=text],
form input[type=tel],
form input[type=email],
form textarea {
  width: 86%;
  padding: 6px 4px 6px;
}

form #inputage {
  width: 20%;
}

form .options {
  margin-top: 4px;
  margin-bottom: 4px;
  display: inline-block;
}

form .error {
  color: #f23276;
}

.files {
  clear: both;
  width: 100%;
  margin: 0 auto 8px 0;
}

.file {
  clear: both;
  float: none;
  display: inline-block;
  overflow: hidden;
  position: relative;
  margin: 8px auto 0 0;
  padding: 0.6em;
  font-size: 18px !important;
  line-height: 1em;
  color: #444;
  background: #eee;
  border: 0px solid #fae5ee;
}

.file input[type=file] {
  opacity: 0;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  position: absolute;
  right: 0;
  top: 0;
  margin: 0;
  font-size: 100px;
  cursor: pointer;
}

.button,
input[type=submit] {
  display: block;
  width: 360px;
  margin: 12px auto 0px;
  padding: 20px 0 20px;
  text-align: center;
  font-size: 128%;
  line-height: 1em;
  letter-spacing: 0;
  color: #fff;
  background: #6755ce;
  border: solid 0px #222;
  cursor: pointer;
  -webkit-border-radius: 8px;
  /*角丸*/
  -moz-border-radius: 8px;
  border-radius: 8px;
}

input[type=submit] {
  margin: 28px auto 20px;
}

.button:link,
.button:visited {
  color: #fff;
  text-decoration: none;
}

.on:hover,
.button:hover,
input[type=submit]:hover {
  color: #fff;
  opacity: 0.5;
  border: solid 0px #222;
}

input[type=submit].halfbutton,
.halfbutton {
  display: table;
  width: 280px;
  margin: 8px auto 8px;
  padding: 10px 0 8px;
  font-size: 120%;
}

input[type=submit].on {
  background: #f07eed;
}

/*ios用リセット*/
input[type=submit],
input[type=button] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

/* news
 * --------------------------------------- */
.txt .kiji {
  max-width: 640px;
  margin: 0 auto 28px;
  padding: 0 0 28px;
  border-bottom: 1px solid #666;
}

.txt .kiji .date {
  margin: 0;
  padding: 0;
  font-size: 136%;
  color: #39c0ff;
}

.txt .kiji .sub {
  display: block;
  padding: 12px 0;
  font-size: 148%;
}

.txt .kiji .com {
  text-align: left;
  margin: 0;
  padding: 0 12px;
  line-height: 1.6em;
}

.txt .kiji img {
  display: block;
  max-width: 640px;
  height: auto;
  margin: 0 auto 16px;
}

/* news news
 * --------------------------------------- */
#newsindex .kiji {
  width: 100%;
  margin: 0 auto 28px;
  padding: 8px 0 8px;
  text-align: left;
  overflow: hidden;
}

#newsindex .kiji .date {
  float: left;
  margin: 0 8px 0px 0;
  padding: 0;
  font-size: 120%;
  line-height: 1em;
  color: #39c0ff;
  background-color: transparent;
}

#newsindex .kiji .sub {
  display: block;
  margin: 0 0 4px;
  padding: 0;
  font-size: 112%;
  line-height: 1.2em;
}

#newsindex .kiji .com {
  margin: 0;
  padding: 0;
  font-size: 92%;
  line-height: 1.2em;
  text-align: left;
}

#newsindex .kiji img {
  display: block;
  max-width: 100%;
  height: auto;
  float: none;
  margin: 0 auto 12px;
}

/* news diary
 * --------------------------------------- */
.post {
  position: relative;
  width: 96%;
  margin: 0 auto 0;
  padding: 8px 2% 8px;
  text-align: left;
  overflow: hidden;
  border-bottom: 0px solid #aaa;
}

.postpic {
  float: left;
  width: 48px;
  height: 48px;
  margin: 0 8px 0 0;
  padding: 0;
  overflow: hidden;
  -webkit-border-radius: 6px;
  /*角丸*/
  -moz-border-radius: 6px;
  border-radius: 6px;
}

.post img {
  display: block;
  width: 48px;
  height: auto;
  border-style: none;
  margin: 0;
  -webkit-border-radius: 6px;
  /*角丸*/
  -moz-border-radius: 6px;
  border-radius: 6px;
}

.postmain {
  display: block;
  margin: 0;
  padding: 0;
  line-height: 100%;
  overflow: hidden;
}

.postname {
  float: left;
  margin: 0 10px 0 0;
  padding: 0;
  color: #db9dff;
}

.postdate {
  margin: 0;
  padding: 0;
  color: #ddd;
  font-size: 92%;
}

.posttitle {
  margin: 0;
  padding: 3px 0 0;
  color: #444;
  clear: both;
}

.postcom {
  margin: 0;
  padding: 4px 0 0;
  color: #666666;
}

.postcom:after {
  display: block;
  padding: 5px 0 0;
  color: #9d9684;
  content: "開く";
}

.post p {
  margin: 0;
  padding: 0;
}

.post p.linkarea a {
  background: rgba(255, 255, 255, 0);
}

.post p.linkarea a:hover {
  background: rgba(255, 255, 255, 0.5);
}

.meeting_spot {
  margin-top: 25px;
  border: 3px solid #f69;
}
.meeting_spot dt {
  background: #f69;
  color: #fff;
  margin: 0;
  padding: 10px;
}
.meeting_spot dd {
  padding: 0;
  margin: 0;
}
.meeting_spot dd .spot_list {
  margin: 0;
  padding: 26px 26px 10px 26px;
}
.meeting_spot dd .spot_list li {
  list-style: none;
  font-weight: bold;
  font-size: 1.06em;
  margin-bottom: 28px;
}
.meeting_spot dd .spot_list li .tel_point {
  background: #fff0b9;
  color: #333;
  /* font-weight: normal; */
  font-size: 0.88em;
  padding: 6px 24px 6px 50px;
  margin-left: 12px;
  margin-bottom: 10px;
  position: relative;
}
.meeting_spot dd .spot_list li .tel_point img {
  position: absolute;
  width: 60px;
  top: -6px;
  left: -20px;
}
.meeting_spot dd .spot_list li .map_view {
  color: #39f;
  font-weight: normal;
  border: 1px solid #666;
  padding: 8px 16px;
  margin-top: 8px;
  display: inline-block;
  border-radius: 12px;
}

#map_canvas {
  margin-bottom: 20px;
}

#mapp {
  border: 3px solid #95dcff;
  padding: 20px;
  text-align: center;
}
#mapp .hotel_icon_desc {
  background: #e3f6ff;
  list-style: none;
  padding: 8px;
}
#mapp .hotel_icon_desc li {
  list-style: none;
  display: inline-block;
  margin-right: 10px;
}

/*----------------------------------------------------------------
* スライドショー
----------------------------------------------------------------*/
#detailphoto {
  float: left;
  margin: 12px 12px 0 0;
  width: 480px;
  text-align: center;
  position: relative;
}
#detailphoto .status_label {
  position: absolute;
  top: 0px;
  left: 20px;
  z-index: 100;
}
#detailphoto .photos {
  width: 100%;
  margin: 0 0 0px auto;
  padding: 0;
  text-align: center;
}
#detailphoto .photos .flexslider {
  margin: 0 auto 0 0;
}
#detailphoto .photos .flexslider .slides img {
  width: auto;
  height: auto;
}

.flex-control-thumbs {
  display: table;
  width: auto;
  height: 80px;
  margin: 12px auto 0;
  padding: 0;
  overflow: hidden;
}

.flex-control-thumbs li {
  display: table-cell;
  width: 60px;
  height: 80px;
  margin: 0 12px 0 0;
  padding: 0;
  border-style: none;
  overflow: hidden;
}

.flex-control-thumbs img {
  width: auto;
  height: 80px;
  border-style: none;
}

.flex-control-thumbs img:hover {
  border-style: none;
}

.flex-control-thumbs .flex-active {
  overflow: hidden;
}

.dcell {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin: 0;
  gap: 4px;
}
.dcell .cset {
  display: flex;
  align-items: stretch;
  margin: 0;
  width: 100%;
  background: #ffe0ed !important;
  border-radius: 6px;
}
.dcell .cset.csethalf {
  width: calc(50% - 4px);
}
.dcell .cset .cleft {
  width: 44%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.dcell .cset .cright {
  width: 56%;
  display: flex;
}
.dcell .cset .op_cleft,
.dcell .cset .op_cright {
  height: 40px;
  display: flex;
  vertical-align: middle;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.dcell .cset .op_cleft {
  width: 80%;
  text-align: left;
  font-size: 0.88em;
  padding: 2px 12px;
}
.dcell .cset .op_cright {
  width: 20%;
  font-size: 0.88em;
  padding-right: 12px;
  justify-content: end;
}
.dcell .cset .op_cright .price {
  font-size: 1.13rem;
}
.dcell .cset .op_cright .yen {
  font-size: 0.69rem;
}

#detail {
  width: 968px;
  margin: 0 auto;
  padding: 20px 0;
}
#detail .box {
  width: 100%;
  margin: 0 auto 20px;
  padding: 16px 0px 16px 20px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.4);
  border: solid 1px #c0b190;
}
#detail #profile_name {
  position: relative;
  padding: 15px;
  text-align: left;
  background: #dbd5f7;
  border-radius: 6px;
}
#detail #profile_name .point {
  margin: 0;
  padding: 0;
  font-weight: bold;
  display: inline-block;
  background: linear-gradient(90deg, #a629ee 30%, #fa43bd 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#detail #profile_name .name_box h2 {
  font-size: 1.69rem;
  margin: 0;
  padding: 0;
  position: relative;
}
#detail #profile_name .name_box h2 .old {
  font-size: 1.25rem;
}
#detail #profile_name .name_box h2 .price_category {
  position: absolute;
  top: 3px;
  right: 0px;
}
#detail #profile_name .name_box h2 .price_category img {
  width: 90px;
}
#detail #profile_name .tall_weight_box .tall_weight {
  display: flex;
  font-size: 0.88rem;
}
#detail #profile_name .tall_weight_box .tall_weight li {
  margin: 0 14px 0 0;
}
#detail #profile_name .tall_weight_box .tall_weight li .tall,
#detail #profile_name .tall_weight_box .tall_weight li .weight {
  font-size: 1.06rem;
}
#detail #profile_name .tall_weight_box .status_label_list {
  margin-top: 8px;
}
#detail #profile_name .tall_weight_box .status_label_list li {
  display: inline-block;
  background: #0099e6;
  font-size: 0.81rem;
  padding: 3px 8px;
  margin-right: 6px;
  margin-bottom: 4px;
  color: #fff;
  border-radius: 3px;
}
#detail .sns_box .x_link {
  display: flex;
  width: calc(100% - 36px);
  margin: 16px auto 0;
  background: #f0f0f0;
  border: 2px solid #333;
  border-radius: 120px;
  padding: 10px;
  justify-content: center;
  align-items: center;
}
#detail .sns_box .x_link::before {
  content: " ";
  background: url(/assets/images/icon_x.png);
  background-repeat: no-repeat;
  background-size: 100%;
  width: 30px;
  height: 30px;
  margin-right: 12px;
}
#detail .pgtop h2.profilename {
  padding: 12px 16px;
  font-size: 1.8rem;
  position: relative;
}
#detail .pgtop h2.profilename .age {
  font-size: 1.2rem;
}
#detail .pgtop h2.profilename .status_label {
  position: absolute;
  top: 14px;
  right: 15px;
  width: 60px;
}
#detail .pgtop h2.profilename .status_label img {
  width: 80px;
}
#detail .qa_wrap {
  margin: 0 auto 0 0;
  padding: 6px 0px 12px;
  text-align: left;
  overflow: hidden;
}
#detail .profile_box {
  margin-bottom: 25px;
}
#detail #com pre,
#detail #cast_com pre {
  white-space: inherit;
  font-family: inherit;
  margin: 0;
}
#detail #com p,
#detail #cast_com p {
  margin: 0 auto 20px;
}
#detail #com p:last-child,
#detail #cast_com p:last-child {
  margin: 0;
}
#detail .profile_box .qa_list dt {
  background: #f0f0f0;
  padding: 8px;
}
#detail .profile_box .qa_list dt .qq {
  display: inline-block;
  font-weight: bold;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  background: #c6ecff;
  color: #0099e6;
  margin-right: 8px;
  border-radius: 50%;
}
#detail .profile_box .qa_list dd {
  padding: 8px;
  margin: 0;
}
#detail .profile_box .qa_list dd .aa {
  display: inline-block;
  font-weight: bold;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  background: #ffe6eb;
  color: rgb(255, 88, 180);
  margin-right: 8px;
  border-radius: 50%;
}
#detail .profile_box .profileh3 {
  display: flex;
  align-items: center;
  color: #7163bf;
}
#detail .profile_box .profileh3 .shop_icon {
  background: urL("/assets/images/logo_mark.png");
  width: 45px;
  height: 45px;
  background-position-y: -2px;
  background-position-x: center;
  background-size: 100%;
  border-radius: 50%;
  margin-right: 8px;
}
#detail .profile_box #shop_com {
  border-radius: 6px;
  padding: 12px;
  background: #edf7ff;
  position: relative;
  text-align: left;
}
#detail .profile_box #shop_com::before {
  content: "";
  position: absolute;
  left: 13px;
  top: -10px;
  display: block;
  width: 0;
  height: 0;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #edf7ff;
  border-left: 10px solid transparent;
}
#detail .profile_box .cast_comh3 {
  display: flex;
  align-items: center;
  color: #7163bf;
}
#detail .profile_box .cast_comh3 .cast_icon {
  width: 45px;
  height: 45px;
  background-position-y: -2px;
  background-position-x: center;
  background-size: 130%;
  border-radius: 50%;
  margin-right: 8px;
}
#detail .profile_box #cast_com {
  border-radius: 6px;
  padding: 12px;
  background: #f0f0f0;
  position: relative;
  text-align: left;
}
#detail .profile_box #cast_com::before {
  content: "";
  position: absolute;
  left: 13px;
  top: -10px;
  display: block;
  width: 0;
  height: 0;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #f0f0f0;
  border-left: 10px solid transparent;
}
#detail .profile_box .customer_voice_wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  flex-basis: 1;
}
#detail .profile_box .customer_voice_wrap .voice_box {
  display: flex;
  flex-wrap: nowrap;
  width: calc(50% - 15px);
}
#detail .profile_box .customer_voice_wrap .voice_box .customer_name {
  font-size: 0.81rem;
  margin-top: 4px;
  text-align: center;
  margin-right: 15px;
}
#detail .profile_box .customer_voice_wrap .voice_box .customer_name::before {
  content: " ";
  display: block;
  background: url(/assets/images/icon_female.jpg) no-repeat;
  background-size: 100%;
  width: 50px;
  height: 50px;
  border-radius: 80px;
}
#detail .profile_box .customer_voice_wrap .voice_box .customer_voice {
  background: #ffebf3;
  padding: 12px;
  border-radius: 10px;
  font-size: 0.88rem;
  text-align: left;
  position: relative;
}
#detail .profile_box .customer_voice_wrap .voice_box .customer_voice::after {
  content: "";
  position: absolute;
  top: 22px;
  left: 0;
  border-style: solid;
  border-width: 6.5px 13px 6.5px 0;
  border-color: transparent #ffebf3 transparent transparent;
  translate: -100% 0;
}
#detail #option_body .shift_wrap {
  border-bottom: 1px solid #ddd;
}
#detail #option_body .shift_wrap .shift_box {
  display: flex;
  border: 1px solid #ddd;
  border-bottom: none;
}
#detail #option_body .shift_wrap .shift_box .date,
#detail #option_body .shift_wrap .shift_box .time {
  padding: 6px;
}
#detail #option_body .shift_wrap .shift_box .date {
  width: 50%;
  background: #f0f0f0;
}
#detail #option_body .shift_wrap .shift_box .date.sat {
  background: #83adec;
  color: #fff;
}
#detail #option_body .shift_wrap .shift_box .date.sun {
  background: #f3a181;
  color: #fff;
}
#detail #option_body .shift_wrap .shift_box .time {
  width: 50%;
  text-align: center;
}

.center {
  text-align: center;
}

#contents-wrap {
  position: relative;
  margin: 0;
}

#page-top {
  position: fixed;
  opacity: 0;
  margin: 0;
  padding: 0;
  width: 56px;
  height: 56px;
  -webkit-border-radius: 2px;
  /*角丸*/
  -moz-border-radius: 2px;
  border-radius: 2px;
  z-index: 400;
  overflow: hidden;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.down #page-top {
  opacity: 0.9;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#page-top a {
  text-decoration: none;
  width: 56px;
  height: 56px;
  text-align: center;
  display: block;
  background: url(../images/arrow_top.png) center 16px no-repeat #666;
}

#page-top a:hover {
  text-decoration: none;
  opacity: 0.6;
}

.pgtop {
  -webkit-animation: 2.4s ease 0s 1 normal h2fadein;
  animation: 2.4s ease 0s 1 normal h2fadein;
  animation-fill-mode: h2fadein;
}

#bg {
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 0;
}

#topbg {
  position: fixed;
  top: 0;
  left: 0;
  margin: 0;
  padding: 0;
}

#topbg p {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 0;
}

#topbg p#bg2 {
  opacity: 0;
  animation: 16s linear 0s infinite normal crossfade2;
}

#topbg p#bg3 {
  opacity: 0;
  animation: 16s linear 0s infinite normal crossfade3;
}

@keyframes crossfade2 {
  0% {
    opacity: 0;
  }
  24% {
    opacity: 0;
  }
  36% {
    opacity: 1;
  }
  56% {
    opacity: 1;
  }
  68% {
    opacity: 0;
  }
}
@keyframes crossfade3 {
  0% {
    opacity: 0;
  }
  56% {
    opacity: 0;
  }
  68% {
    opacity: 1;
  }
  88% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
#conceptmain .concept_visual {
  background: url(/assets/images/bg_concept.jpg) no-repeat;
  background-size: cover;
  background-position: inherit;
  min-height: 360px;
  padding: 30px 0 0px 0;
  margin-bottom: 0px;
  margin-top: 64px;
  position: relative;
}
#conceptmain .concept_visual .main_catch {
  position: relative;
  z-index: 5;
  width: 60%;
  margin-bottom: 35px;
}
#conceptmain .concept_visual::after {
  content: "";
  display: block;
  background-size: contain;
  position: absolute;
  top: 30%;
  left: 50%;
  margin-left: -125px;
  z-index: 0;
  opacity: 0.1;
  width: 100%;
  height: 250px;
}
#conceptmain .concept_visual::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -1px;
  background: url(/assets/images/wht_mask.png) repeat-x;
  background-position: bottom;
  background-size: contain;
  height: 80px;
  width: 100%;
  z-index: 5;
}
#conceptmain .concept_visual .vision {
  margin-top: 0px;
  padding: 0 95px;
  padding-bottom: 100px;
  font-size: 1.13rem;
  text-align: center;
}
#conceptmain .concept_text {
  padding: 0 20px;
}
#conceptmain .concept_text .concept_title {
  padding-top: 0;
  margin-top: 0;
  margin-bottom: 40px;
}
#conceptmain .concept_text .concept_title::after {
  content: " ";
  display: block;
  width: 140px;
  height: 1px;
  background: #6755ce;
  margin: 5px auto 0;
}
#conceptmain .concept_text .main_concept {
  font-size: 1.75rem;
  font-weight: normal;
  margin: 0;
  margin-bottom: 40px;
  padding: 20px 0;
  text-align: center;
  position: relative;
}
#conceptmain .concept_text .main_concept::after {
  display: inline-block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #7663e7;
  border-right: 0;
  border-bottom: 0;
  height: 50px;
  width: 50px;
}
#conceptmain .concept_text .main_concept::before {
  display: inline-block;
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  border: 1px solid #7663e7;
  border-top: 0;
  border-left: 0;
  height: 50px;
  width: 50px;
}
#conceptmain .concept_text .concept_desc h3 {
  color: #6755ce;
}
#conceptmain .effect {
  background: #eee;
  padding: 20px;
}
#conceptmain .effect ul li {
  list-style: circle;
  margin-left: 15px;
}
#conceptmain .value_wrap {
  margin-top: 25px;
}
#conceptmain .value_wrap h3 {
  display: inline-block;
  padding: 0px 0;
  margin: 0px 0 25px;
  color: #555;
}
#conceptmain .value_wrap h3 .strong {
  color: #f69;
  display: inline;
}
#conceptmain .value_wrap h3 .num {
  font-size: 2rem;
}
#conceptmain .value_wrap .value_box {
  margin: 0 0px;
  padding: 30px;
}
#conceptmain .value_wrap .value_box .text {
  background: #fff;
  padding: 15px 30px;
  border-radius: 12px;
  box-shadow: 0 0 15px rgba(151, 26, 53, 0.15);
}
#conceptmain .value_wrap .value_box .text .desc_wrap {
  display: flex;
  flex-wrap: wrap;
}
#conceptmain .value_wrap .value_box .text .desc_wrap .image {
  width: 45%;
  padding-right: 30px;
}
#conceptmain .value_wrap .value_box .text .desc_wrap .image img {
  width: 100%;
  border-radius: 8px;
}
#conceptmain .value_wrap .value_box .text .desc_wrap .desc {
  width: 55%;
}
#conceptmain .value_wrap .value_box .text .bold {
  font-weight: bold;
}
#conceptmain .value_wrap .value_box h4 {
  background: none;
  margin: 0;
  padding: 0;
  border: none;
  font-size: 1.24rem;
  text-align: left;
  text-align: center;
  align-items: center;
  margin-bottom: 10px;
  line-height: 1.6;
}
#conceptmain .value_wrap .value_box h4 span {
  display: block;
  font-size: 0.88rem;
}
#conceptmain .value_wrap .value_box h4:before {
  display: inline-block;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-right: 15px;
  background: #ddd;
}
#conceptmain .value_wrap .value_box.counseling {
  background: #ffe3f3;
}
#conceptmain .value_wrap .value_box.counseling h4 {
  color: #fa6dbf;
}
#conceptmain .value_wrap .value_box.counseling h4:before {
  background: url(/assets/images/download.jpg) center top;
  background-size: cover;
}
#conceptmain .value_wrap .value_box.counseling h4 span {
  color: #ffa6da;
}
#conceptmain .value_wrap .value_box.counseling .bold {
  color: #fa6dbf;
}
#conceptmain .value_wrap .value_box.technique {
  background: #e3ebff;
}
#conceptmain .value_wrap .value_box.technique h4 {
  color: #719cff;
}
#conceptmain .value_wrap .value_box.technique h4:before {
  background: url(/assets/images/download.jpg) center top;
  background-size: cover;
}
#conceptmain .value_wrap .value_box.technique h4 span {
  color: #9fbcff;
}
#conceptmain .value_wrap .value_box.technique .bold {
  color: #719cff;
}
#conceptmain .value_wrap .value_box.trust {
  background: #fffddc;
}
#conceptmain .value_wrap .value_box.trust h4 {
  color: #fdb82d;
}
#conceptmain .value_wrap .value_box.trust h4:before {
  background: url(/assets/images/download.jpg) center top;
  background-size: cover;
}
#conceptmain .value_wrap .value_box.trust h4 span {
  color: #ffd47d;
}
#conceptmain .value_wrap .value_box.trust .bold {
  color: #fdb82d;
}

.magazine_merit {
  margin: 0;
  margin-bottom: -14px;
  padding: 0;
}
.magazine_merit li {
  display: block;
  position: relative;
  background: #7663e7;
  color: #333;
  border-radius: 12px;
  padding: 12px 12px 12px 66px;
  font-weight: bold;
  margin-bottom: 14px;
}
.magazine_merit li:before {
  position: absolute;
  left: 24px;
  content: "";
  display: block;
  width: 18px;
  height: 10px;
  border-left: 5px solid #25AF01;
  border-bottom: 5px solid #25AF01;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(-45deg);
  transform: translateY(-50%) rotate(-45deg);
}

.maga_entry_form {
  width: 100%;
}
.maga_entry_form dt {
  font-weight: bold;
  background: none;
  margin: 0;
  padding: 0;
}
.maga_entry_form dd {
  width: 100%;
  margin: 0;
  padding: 0;
}
.maga_entry_form dd input {
  width: 100%;
  border: 1px solid #ccc;
  background: #f0f0f0;
  border-radius: 8px;
  padding: 12px;
}

.hotel_wrap dt,
.hotel_wrap dd {
  padding: 0;
  margin: 0;
}
.hotel_wrap dt {
  background: none;
  font-weight: bold;
  padding: 12px 0;
  margin-bottom: 15px;
  text-align: center;
  position: relative;
}
.hotel_wrap dt span {
  display: inline-block;
  padding: 0 20px;
  background: #fff;
  z-index: 5;
  position: relative;
}
.hotel_wrap dt:before {
  content: "";
  width: 100%;
  height: 3px;
  background: rgb(147, 219, 255);
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 3;
}
.hotel_wrap .hotel_list {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: num;
}
.hotel_wrap .hotel_list li {
  list-style: none;
  margin-bottom: 12px;
}
.hotel_wrap .hotel_list li a {
  background: #fff;
  border: 2px solid #9edfff;
  display: block;
  list-style: none;
  border-radius: 6px;
  padding: 10px 13px;
}
.hotel_wrap .hotel_list li a .hotel_name {
  font-weight: bold;
  color: #4cc3ff;
  display: block;
  border-bottom: 1px dotted #ccc;
  padding-bottom: 4px;
  margin-bottom: 4px;
  position: relative;
}
.hotel_wrap .hotel_list li a .hotel_name .recommend_label {
  background: #fdff66;
  background: linear-gradient(to right, #f7ff70 0%, #f1da36 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  font-size: 0.81rem;
  color: #666;
  padding: 1px 5px;
  border-radius: 4px;
  margin-right: 6px;
}
.hotel_wrap .hotel_list li a .address,
.hotel_wrap .hotel_list li a .tel {
  font-size: 0.88rem;
  color: #555;
}
.hotel_wrap .hotel_list li img {
  width: 100%;
}
.hotel_wrap ol.hotel {
  counter-reset: num;
  list-style-type: none !important;
  padding: 0;
  margin: 0;
  border-radius: 8px;
  background: #ffdeee;
}
.hotel_wrap ol.hotel li {
  position: relative;
  border-bottom: solid 1px #fff;
  color: #7c5a50;
}
.hotel_wrap ol.hotel li a {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  padding: 14px 45px;
}
.hotel_wrap ol.hotel li a:after {
  content: "";
  display: inline-block;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
  width: 8px;
  height: 8px;
  position: absolute;
  right: 1em;
  top: 50%;
  /* top: 8px; */
  border-top: 2px solid #ff9bcd;
  border-right: 2px solid #ff9bcd;
}
.hotel_wrap ol.hotel li a:before {
  position: absolute;
  counter-increment: num;
  content: counter(num);
  display: inline-block;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  color: #FFF;
  font-weight: bold;
  font-size: 0.7rem;
  border-radius: 50%;
  left: 1em;
  top: 50%;
  width: 20px;
  height: 20px;
  line-height: 22px;
  text-align: center;
  background: #ff9bcd;
}
.hotel_wrap ol.hotel li:last-of-type {
  border-bottom: none;
}

.modal-wrapper {
  z-index: 999;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 40px 15px;
  text-align: center;
}
.modal-wrapper:not(:target) {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.modal-wrapper:target {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.4s, visibility 0.4s;
}
.modal-wrapper::after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  vertical-align: middle;
  content: "";
}
.modal-wrapper .modal-window {
  box-sizing: border-box;
  display: inline-block;
  z-index: 20;
  position: relative;
  width: 100%;
  max-width: 700px;
  height: auto;
  padding: 30px 30px 30px;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
  vertical-align: middle;
}
.modal-wrapper .modal-window .modal-content {
  max-height: 80vh;
  overflow-y: auto;
  text-align: left;
}
.modal-wrapper .modal-window .modal-content .hotel_link {
  text-align: right;
  font-size: 0.88rem;
}
.modal-wrapper .modal-window .modal-content a {
  color: #39f;
}
.modal-wrapper .modal-window .modal-content .h_detail {
  word-break: break-all;
  margin-bottom: 15px;
}
.modal-wrapper .modal-window .modal-content .h_btn,
.modal-wrapper .modal-window .modal-content a.h_btn {
  color: #fff;
  background-color: #ff9bcd;
  text-align: center;
  display: block;
  width: 50%;
  padding: 8px;
  border-radius: 16px;
  margin: 0 auto;
  margin-bottom: 20px;
}
.modal-wrapper .modal-window .modal-content .h_btn:hover,
.modal-wrapper .modal-window .modal-content a.h_btn:hover {
  color: #fff;
  background: #fab6d8;
}
.modal-wrapper .modal-close {
  z-index: 20;
  position: absolute;
  top: -18px;
  right: -18px;
  width: 55px;
  color: #fff !important;
  font-size: 26px;
  font-weight: 700;
  line-height: 55px;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  background: #b0b0b0;
  border-radius: 120px;
}
.modal-wrapper .modal-close:hover {
  color: #2b2e38 !important;
}
.modal-wrapper .modal-overlay {
  z-index: 10;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(66, 66, 66, 0.8);
}

#media_gene {
  background: #ffebf4;
  margin-top: 50px;
}
#media_gene .wrap {
  background: #fff;
  padding: 30px 30px 45px 30px;
  width: 60%;
  margin: 0 auto;
}
#media_gene .wrap dl {
  margin: 0;
  padding: 0;
}
#media_gene .wrap dl dt,
#media_gene .wrap dl dd {
  display: inline-block;
  padding: 12px 0;
}
#media_gene .wrap dl dd select {
  font-size: 1.64rem;
  padding: 6px 12px;
  border: 1px solid #666;
  border-radius: 8px;
}

.health_dl {
  overflow: hidden;
  margin-bottom: 15px;
}
.health_dl dt {
  float: left;
  width: 35%;
  padding-right: 20px;
}
.health_dl dt img {
  width: 100%;
}
.health_dl dd {
  float: left;
  width: 40%;
}

.red_ribbon {
  display: table;
  margin: 0;
  padding: 0;
}
.red_ribbon .ribbon {
  min-width: 50px;
}
.red_ribbon li {
  display: table-cell;
  vertical-align: middle;
}

.costume_list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
  padding: 0 0px;
}
.costume_list li {
  width: 50%;
  list-style: none;
  padding: 10px;
}
.costume_list li .cos_box {
  border: 1px solid #ccc;
  padding: 0px;
}
.costume_list li .cos_box .cos_pic {
  position: relative;
}
.costume_list li .cos_box .cos_pic img {
  width: 100%;
  vertical-align: bottom;
}
.costume_list li .cos_box .cos_pic .status_label {
  position: absolute;
  top: 5px;
  right: 5px;
  left: inherit;
  bottom: inherit;
  display: inline-block;
  background: #ffe987;
  color: #eb1e55;
  padding: 1px 6px;
  width: inherit;
  height: inherit;
  font-size: 0.81rem;
  border-radius: 4px;
}
.costume_list li .cos_name {
  position: relative;
  padding: 10px 10px 10px 63px;
  height: 80px;
  display: flex;
  align-items: center;
  font-size: 0.94em;
  line-height: 1.3;
  background: #fff3fd;
}
.costume_list li .cos_name .no {
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 0.88em;
  width: 40px;
  height: 40px;
  background: #ff88c3;
  color: #fff;
  border-radius: 100px;
  text-align: center;
  padding-top: 10px;
}

.event-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.event-list li {
  list-style: none;
  margin: 0 0 20px 0;
}
.event-list li img {
  width: 100%;
}
#mariten .offer_price {
  font-size: 1em;
  margin-bottom: 30px;
  border-collapse: collapse;
}
#mariten .offer_price th {
  white-space: nowrap;
  text-align: left;
  background: rgb(255, 230, 238);
  font-size: 0.94em;
}
#mariten .offer_price th,
#mariten .offer_price td {
  padding: 12px;
  border-top: 1px dotted #666;
  border-bottom: 1px dotted #666;
  font-size: 0.94em;
}
#mariten .condition_list dt {
  color: #444;
  margin: 0;
  padding: 10px 24px 8px;
  background: #ffd571;
}
#mariten .condition_list dd {
  margin: 0;
  padding: 12px 0px 30px;
}
#mariten .condition_list .button_list {
  overflow: hidden;
  padding: 0;
  margin-right: -20px;
}
#mariten .condition_list .button_list li {
  list-style: none;
  padding-right: 20px;
  float: left;
  width: 50%;
}
#mariten .condition_list .button_list li a.button {
  width: 100%;
}
#mariten .condition_list .button_list li a.button.mailmag {
  background: #53c9ff;
}
#mariten .condition_list .button_list li a.button.lineat {
  background: #30df7f;
}
#mariten .tousen {
  margin-bottom: 30px;
}
#mariten .tousen dl {
  padding: 24px;
  border: 2px solid rgb(255, 152, 186);
}
#mariten .tousen dl dt {
  margin-bottom: 20px;
  padding: 0;
  background: none;
  font-weight: bold;
}
#mariten .tousen dl dd {
  padding: 0;
  font-size: 1.36em;
  line-height: 1.5;
  font-weight: bold;
  color: #f00;
}
#mariten .tousen dl dd .supple {
  font-size: 0.69em;
  color: #333;
  font-weight: normal;
}/*# sourceMappingURL=common.css.map */