@charset "UTF-8";
/*------------------------------------------------------------------------
 ベンダープレフィックス
-------------------------------------------------------------------------*/
/*------------------------------------------------------------------------
 imports
-------------------------------------------------------------------------*/
@import "https://fonts.googleapis.com/css?family=Pinyon+Script";
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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

/*------------------------------------------------------------------------
 mixin
-------------------------------------------------------------------------*/
html {
  font-family: Arial, Roboto, "Droid Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", Meiryo, sans-serif;
  font-size: 62.5%;
  overflow-y: auto;
  height: 100%;
}

body {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  color: #6E6E6E;
  line-height: 1.7;
  -webkit-text-size-adjust: 100%;
  height: 100%;
}

a {
  color: #735b61;
  cursor: pointer;
  text-decoration: none;
  outline: none;
}

a, img, button {
  -webkit-transition: .2s;
  transition: .2s;
}

input, select, textarea {
  border: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select::-ms-expand {
  display: none;
}

/*------------------------------------------------------------------------
 Clearfix
 -------------------------------------------------------------------------*/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.clearfix {
  display: inline-block;
}

/* Hide from Mac IE \*/
.clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

/* Hide from Mac IE */
/*------------------------------------------------------------------------
 PC/SP 切り替え
 -------------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  .sp_only {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
}
/*------------------------------------------------------------------------
 common class
 -------------------------------------------------------------------------*/
.bg_overlay {
  position: relative;
}
.bg_overlay:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

iframe[name="google_conversion_frame"] {
  position: absolute;
  display: none;
}

/* button */
button {
  border: none;
  cursor: pointer;
  outline: none;
}

.btn {
  border-radius: 5px;
  display: block;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  margin: auto;
  padding: 10px 0;
}
@media screen and (max-width: 768px) {
  .btn {
    width: 100%;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.btn_main {
  background-color: #ffaabe;
  color: #fff;
}
.btn_main:hover {
  background-color: #735b61;
}
@media screen and (min-width: 769px) {
  .btn_main {
    width: 200px;
  }
}

.btn_sub {
  background-color: #fff;
  color: #ffaabe;
}
.btn_sub:hover {
  background-color: #735b61;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .btn_sub {
    width: 200px;
  }
}

.btn_more {
  background-color: #F8ADC4;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  padding: 5px 0;
}
.btn_more:hover {
  background-color: #735b61;
}
@media screen and (min-width: 769px) {
  .btn_more {
    width: 300px;
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_more {
    width: 80%;
    font-size: 20px;
    font-size: 2rem;
    padding: 2px 0;
  }
}

.btn_jmore {
  padding: 6px 0;
}
@media screen and (min-width: 769px) {
  .btn_jmore {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_jmore {
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.btn_view {
  border: 1px solid #ffaabe;
  background-color: #fff;
  color: #ffaabe;
  padding: 5px 0;
  position: relative;
}
.btn_view:hover {
  background-color: #ffaabe;
  color: #fff;
}
.btn_view:after {
  content: "\e903";
  font-family: 'emopa';
  position: absolute;
  right: 10%;
  top: 12px;
  font-size: 16px;
  font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
  .btn_view:after {
    top: 9px;
  }
}
@media screen and (min-width: 769px) {
  .btn_view {
    width: 300px;
    font-size: 24px;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_view {
    font-size: 18px;
    font-size: 1.8rem;
    width: 80%;
    padding: 6.5px 0;
  }
}

.btn_cta {
  background: linear-gradient(to bottom, rgba(137, 173, 186, 0) 0%, rgba(137, 173, 186, 0) 50%, rgba(137, 173, 186, 0.1) 100%);
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0 2px 5px rgba(46, 53, 43, 0.5);
  color: #6E6E6E;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.9;
}
.btn_cta:hover {
  background: linear-gradient(to bottom, #ffaabe, rgba(255, 170, 190, 0.1));
  background-color: #ffaabe;
  color: #fff;
  text-shadow: none;
}
@media screen and (min-width: 769px) {
  .btn_cta {
    width: 250px;
    font-size: 20px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_cta {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

.btn_tel {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  border: 1px solid #89c997;
  color: #89c997;
  border-radius: 30px;
  width: 70%;
}

.btn_search {
  background-color: #FF8CA7;
  color: #fff;
}
.btn_search:hover {
  background-color: #735b61;
}
@media screen and (min-width: 769px) {
  .btn_search {
    width: 420px;
    font-size: 20px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_search {
    width: 70%;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.btn_research {
  background-color: #FF8CA7;
  color: #fff;
}
.btn_research:hover {
  background-color: #735b61;
}
@media screen and (min-width: 769px) {
  .btn_research {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_research {
    padding: 12.5px 0;
    font-size: 15px;
    font-size: 1.5rem;
  }
}

.orange {
  background-color: #ff9800;
}

.btn_detail {
  background-color: #ffaabe;
  color: #fff;
}
.btn_detail:hover {
  background-color: #735b61;
}
@media screen and (min-width: 769px) {
  .btn_detail {
    width: 300px;
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 768px) {
  .btn_detail {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 11px 0;
  }
}

.btn_favo {
  background-color: #F3BD00;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .btn_favo {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 11px 0;
  }
}

.btn_photo {
  background-color: #735b61;
  border-radius: 3px;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  width: 230px;
}
.btn_photo:hover {
  background-color: #a28089;
}

.btn_movie {
  background-color: #5f687a;
  border-radius: 3px;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  width: 230px;
}
.btn_movie:hover {
  background-color: #8b96ad;
}

@media screen and (max-width: 768px) {
  .btn_sp {
    display: block;
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    margin: auto;
    padding: 6.5px 0;
    background: linear-gradient(to bottom, rgba(137, 173, 186, 0) 0%, rgba(137, 173, 186, 0) 50%, rgba(137, 173, 186, 0.1) 100%);
    background-color: #fff;
    border-radius: 30px;
    box-shadow: 0 2px 5px rgba(46, 53, 43, 0.5);
    color: #6E6E6E;
    text-shadow: 0 1px 0 #fff;
    opacity: 0.9;
    width: 100%;
  }
}

.btn_venue_search {
  width: 100%;
  background-color: #FF8CA7;
  color: #fff;
  position: relative;
}
.btn_venue_search:hover {
  background-color: #735b61;
}
.btn_venue_search:before {
  content: "\e900";
  font-family: 'emopa';
  position: absolute;
}
.btn_venue_search .wf-venue {
  vertical-align: middle;
}

.btn_form {
  background-color: #ff9800;
  border-radius: 6px;
  color: #fff;
  padding: 20px 0;
}
.btn_form:hover {
  background-color: #ef4f74;
  color: #fff;
}
@media screen and (min-width: 769px) {
  .btn_form {
    font-size: 16px;
    font-size: 1.6rem;
    width: 300px;
    padding: 20px 0;
  }
}
@media screen and (max-width: 768px) {
  .btn_form {
    font-size: 15px;
    font-size: 1.5rem;
    width: 80%;
    padding: 15px 0;
    margin-top: 10px;
  }
}

.btn_form_partner {
  background-color: #ff9800;
  color: #fff;
}
.btn_form_partner:hover {
  background-color: #735b61;
}

.btn_form_back {
  background-color: #c77c7c;
  color: #fff;
}
.btn_form_back:hover {
  background-color: #a1747e;
}

.btn_pdf {
  background-color: #735b61;
  border-radius: 5px;
  color: #fff;
}
.btn_pdf:hover {
  background-color: #a28089;
}
@media screen and (min-width: 769px) {
  .btn_pdf {
    font-size: 28px;
    font-size: 2.8rem;
    padding: 20px 0;
    width: 80%;
  }
}
@media screen and (max-width: 768px) {
  .btn_pdf {
    font-size: 18px;
    font-size: 1.8rem;
    width: 100%;
  }
}

.btns_area.infinite_scroll {
  position: relative;
  margin-top: 20px;
  text-align: center;
}
.btns_area.infinite_scroll .btn {
  display: inline-block;
  margin: 0 0 20px !important;
}

.pagetop {
  position: absolute;
  top: 50px;
  right: 15px;
  -webkit-transition: .2s;
  transition: .2s;
}
.pagetop:hover a {
  color: #999999;
}
.pagetop a {
  display: block;
  color: #6E6E6E;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
}
.pagetop a:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  line-height: 40px;
  margin-right: 10px;
  border-radius: 50%;
  background-color: #fff;
  font-family: 'emopa';
  text-align: center;
  content: "\e902";
}

.search_list .btns_area .btn.btn_showmore {
  width: auto;
  min-width: 220px;
  border: 1px solid #FF8CA7;
  background-color: #fff;
  color: #FF8CA7;
  padding: 5px 20px;
  position: relative;
}
.search_list .btns_area .btn.btn_showmore:hover {
  border-color: #ffaabe;
  color: #ffaabe;
}
@media screen and (max-width: 768px) {
  .search_list .btns_area .btn.btn_showmore {
    width: 80%;
    max-width: 280px;
    padding: 8px 20px;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 768px) {
  .pagetop {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .btn_venue_search {
    background-image: url(../images/bg_venue_search.jpg);
    background-size: 50%;
    background-repeat: no-repeat;
    background-position: left center;
    font-size: 20px;
    font-size: 2rem;
    padding: 30px 0;
  }
  .btn_venue_search:before {
    font-size: 15px;
    font-size: 1.5rem;
    top: 35px;
    right: 30px;
  }
  .btn_venue_search .wf-venue {
    font-size: 40px;
    font-size: 4rem;
    padding-right: 20px;
  }
  .btn_venue_search span {
    padding-left: 43%;
  }
}
@media screen and (max-width: 768px) {
  .btn_venue_search {
    padding: 12px 0;
  }
  .btn_venue_search:before {
    font-size: 12px;
    font-size: 1.2rem;
    top: 15px;
    right: 10px;
  }
  .btn_venue_search .wf-venue {
    font-size: 25px;
    font-size: 2.5rem;
    padding-right: 15px;
  }
}
/*------------------------------------------------------------------------
header
-------------------------------------------------------------------------*/
header {
  background-color: #fff;
  box-shadow: 0px 5px 5px -5px rgba(170, 170, 170, 0.5);
  width: 100%;
  z-index: 999;
  position: fixed;
  top: 0;
  left: 0;
}

.top_header {
  background-color: #f5f0f0;
  width: 100%;
  z-index: 1000;
}
.top_header header {
  left: 0;
}
.top_header.fixed {
  position: fixed;
  top: 0;
}
.top_header.fixed #header {
  bottom: 0;
}

.header_contents span {
  color: #6E6E6E;
  display: inline-block;
}

@media screen and (min-width: 769px) {
  .top_header header {
    position: fixed;
    top: 0;
  }
  .top_header.fixed #header {
    position: relative;
    bottom: 0;
  }

  header {
    height: 70px;
  }

  .header_contents {
    display: table;
    width: 980px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .header_contents {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .header_contents .title {
    display: table-cell;
    padding: 12px 0;
    white-space: nowrap;
    vertical-align: middle;
  }
  .header_contents .title img[src$=".svg"] {
    width: 172px;
    height: 39px;
  }
  .header_contents .title span {
    font-size: 11px;
    font-size: 1.1rem;
    padding-left: 10px;
    line-height: 1.5;
    vertical-align: text-bottom;
  }

  .header_menu {
    display: table-cell;
    vertical-align: middle;
  }
  .header_menu ul {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 14px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
    vertical-align: middle;
    text-align: left;
  }
  .header_menu ul li {
    display: table-cell;
    line-height: 1.3;
    min-width: 2em;
    max-width: 6em;
    padding-left: 20px;
    vertical-align: middle;
  }
  .header_menu ul li a {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .header_menu ul li a:hover {
    color: #ffaabe;
  }
  .header_menu .tel_box {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 12px;
    font-size: 1.2rem;
    color: #fff;
    background-color: #FF8CA7;
    padding: 7px 10px;
    line-height: 1.4;
    white-space: nowrap;
  }
  .header_menu .tel_box .tel_number {
    font-size: 18px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    font-family: 'Roboto', sans-serif;
    letter-spacing: 1.5px;
  }
  .header_menu .tel_box .time {
    font-size: 11px;
    font-size: 1.1rem;
    text-align: right;
    letter-spacing: 1.2px;
  }
}
@media screen and (max-width: 979px) {
  .header_contents .title .sublogo {
    display: none;
  }
}
@media (max-width: 844px) and (min-width: 800px) {
  .header_contents .title {
    padding: 17px 0;
  }
  .header_contents .title img[src$=".svg"] {
    width: 132px;
    height: 30px;
  }
}
@media screen and (max-width: 880px) {
  .top_header header {
    position: relative;
    bottom: 0px;
  }
  .top_header.fixed #header {
    position: relative;
    bottom: 0;
  }

  header {
    height: 60px;
  }
  header .pc_only {
    display: none !important;
  }
  header .sp_only {
    display: table !important;
  }

  .header_contents {
    width: 100%;
  }
  .header_contents .title {
    display: block;
    padding: 13px 10px;
    height: 34px;
  }
  .header_contents .title .logo {
    width: 115px;
    height: 34px;
  }
  .header_contents .title img[src$=".svg"] {
    width: 115px;
    height: 34px;
  }
  .header_contents .title .sublogo {
    display: inline-block;
    font-size: 10px;
    font-size: 1rem;
    padding-left: 5px;
    height: 34px;
    vertical-align: text-bottom;
  }
  .header_contents .venue_search {
    color: #ff809e;
    display: table-cell;
    vertical-align: bottom;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    padding: 0 10px 5px 0;
    width: 60px;
  }
  .header_contents .venue_search .wf-star_line,
  .header_contents .venue_search .wf-venue {
    display: block;
    font-size: 30px;
    font-size: 3rem;
  }
  .header_contents .menu_box {
    color: #ff809e;
    display: table-cell;
    vertical-align: bottom;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    padding: 0 10px 5px 0;
    width: 50px;
  }
  .header_contents .menu_box .menu_btn {
    cursor: pointer;
    display: inline-block;
    box-sizing: border-box;
    position: relative;
    width: 26px;
    height: 20px;
  }
  .header_contents .menu_box .menu_btn span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #ff809e;
    border-radius: 3px;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(1) {
    top: 0;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(2) {
    top: 9px;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(3) {
    bottom: 0;
  }
  .header_contents .menu_box.close_menu {
    position: absolute;
    top: 3px;
    right: 0;
  }
  .header_contents .menu_box.close_menu .menu_btn {
    margin-bottom: 15px;
  }
  .header_contents .menu_box.close_menu span {
    background-color: #fff;
  }
  .header_contents .menu_box.close_menu span:nth-of-type(1) {
    position: relative;
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
  }
  .header_contents .menu_box.close_menu span:nth-of-type(2) {
    opacity: 0;
  }
  .header_contents .menu_box.close_menu span:nth-of-type(3) {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(9px) rotate(45deg);
    transform: translateY(9px) rotate(45deg);
  }
  .header_contents .menu_box.close_menu p {
    color: #fff;
  }
  .header_contents nav {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    overflow-y: scroll;
    text-align: right;
  }
  .header_contents nav ul {
    padding: 70px 15px 20px;
    text-align: left;
  }
  .header_contents nav ul ul {
    padding: 0;
  }
  .header_contents nav .close_menu {
    text-align: center;
    margin-bottom: 10px;
  }
  .header_contents nav .close_menu .close_btn {
    cursor: pointer;
    display: inline-block;
    position: relative;
    padding: 0;
    width: 2px;
    height: 25px;
    background: #fff;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  .header_contents nav .close_menu .close_btn:before {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    left: -12px;
    width: 25px;
    height: 2px;
    margin-top: -1px;
    background: #fff;
  }
  .header_contents nav .close_menu p {
    color: #fff;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
  }
}
@media screen and (max-width: 460px) {
  .header_contents .title .sublogo {
    display: none;
  }
}
@media screen and (max-width: 769px) {
  .header_contents .title .sublogo {
    display: none !important;
  }
}
/*------------------------------------------------------------------------
footer
-------------------------------------------------------------------------*/
.footer_box .title span {
  color: #6E6E6E;
  display: block;
}
.footer_box .footer_info .company {
  font-weight: bold;
}
.footer_box .cta-tel_time {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 10px;
}

.copyright {
  text-align: center;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 5px 0;
}

@media screen and (min-width: 769px) {
  .footer_area {
    background: url(../images/bg_pcfooter.jpg) no-repeat left bottom;
    background-size: 450px;
    padding: 80px 0 40px;
  }
  .footer_area .contact_table {
    display: table;
    width: 980px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .footer_area .contact_table {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .footer_area .contact_table .title {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
  }
  .footer_area .contact_table .title img[src$=".svg"] {
    width: 85%;
  }
  .footer_area .contact_table .tel {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    border-left: 1px solid #ddd;
    border-right: 1px solid #ddd;
    width: 25%;
    padding: 10px 0;
  }
  .footer_area .contact_table .tel .tel_number {
    font-size: 21px;
    font-size: 2.1rem;
    line-height: 1.5;
  }
  .footer_area .contact_table .contact {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #ddd;
    width: 25%;
  }
  .footer_area .contact_table .contact a {
    display: block;
    padding: 10px 0;
  }
  .footer_area .contact_table .contact a:hover {
    background-color: #f1f1f1;
  }
  .footer_area .contact_table .contact .contact_title {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .footer_area .contact_table .heading {
    color: #ffaabe;
    margin-bottom: 10px;
  }
  .footer_area .contact_table .heading i {
    font-size: 40px;
    font-size: 4rem;
    padding-left: 5px;
    vertical-align: middle;
  }
  .footer_area .contact_table span {
    color: #999999;
    display: block;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .footer_area .footer_box {
    width: 980px;
    margin: auto;
    margin-top: 100px;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .footer_area .footer_box {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .footer_area .footer_box .title {
    float: left;
    margin-top: 30px;
    padding-left: 50px;
  }
  .footer_area .footer_box .title img[src$=".svg"] {
    width: 330px;
    height: 76px;
  }
  .footer_area .footer_box .title span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .footer_area .footer_box .footer_info {
    float: right;
  }
  .footer_area .footer_box .footer_info .company {
    margin-bottom: 20px;
  }
  .footer_area .footer_box .footer_info p {
    margin-bottom: 5px;
  }
  .footer_area .footer_box .footer_info a {
    display: inline-block;
    width: 70px;
    margin-right: 10px;
    padding: 2px;
    border: 1px solid #f091a0;
    background: #fff;
    color: #f091a0;
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
  }
  .footer_area .footer_box .footer_info a:hover {
    background: #f091a0;
    background: -webkit-linear-gradient(45deg, rgba(240, 145, 160, 0.7) 0%, rgba(255, 170, 190, 0.79) 30%, #ffaabe 100%);
    background: linear-gradient(45deg, rgba(240, 145, 160, 0.7) 0%, rgba(255, 170, 190, 0.79) 30%, #ffaabe 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3f091a0', endColorstr='#ffaabe',GradientType=1 );
    color: #fff;
  }

  .footer_link {
    background-color: #ffaabe;
    color: #fff;
    padding: 45px 0 25px;
  }
  .footer_link .link_area {
    display: table;
    width: 980px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .footer_link .link_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .footer_link .link_area .category {
    border-bottom: 2px solid #fff;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    padding-bottom: 5px;
    margin-bottom: 30px;
  }
  .footer_link .link_area .link_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .footer_link .link_area .link_box li {
    margin-bottom: 10px;
  }
  .footer_link .link_area .link_box li a {
    display: block;
  }
  .footer_link .link_area .link_box a {
    color: #fff;
  }
  .footer_link .link_area .link_box a span {
    border-bottom: 1px solid transparent;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .footer_link .link_area .link_box a:hover span {
    border-bottom-color: #fff;
  }
  .footer_link .link_area .link_box .service_menu_box {
    float: right;
  }
  .footer_link .link_area .venue_search_box {
    font-size: 12px;
    font-size: 1.2rem;
    float: left;
    width: 70%;
  }
  .footer_link .link_area .venue_search_box .venue_title {
    font-size: 14px;
    font-size: 1.4rem;
    display: block;
    margin-bottom: 20px;
  }
  .footer_link .link_area .venue_search_box .venue_title span {
    border-bottom: 1px solid transparent;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .footer_link .link_area .venue_search_box .venue_title:hover {
    border-bottom-color: #fff;
  }
  .footer_link .link_area .venue_search_box .search_link_area {
    margin-bottom: 30px;
  }
  .footer_link .link_area .venue_search_box .search_link_area p {
    margin-bottom: 5px;
  }
  .footer_link .link_area .venue_search_box .search_link_area .area_link_box {
    padding-left: 12px;
  }
  .footer_link .link_area .venue_search_box .search_link_area .area_link_box a {
    line-height: 2;
  }
  .footer_link .link_area .venue_search_box .search_link_area .area_link_box a:hover {
    text-decoration: underline;
  }
  .footer_link .link_area .venue_search_box .search_link_area .area_link_box a:after {
    content: "|";
    padding: 0 10px;
  }
  .footer_link .link_area .venue_search_box .search_link_area .area_link_box a:last-child:after {
    content: "";
  }
  .footer_link .link_area .useful_link_box {
    width: 25%;
    padding-left: 5%;
  }
  .footer_link .link_area .useful_link_box .category {
    margin-bottom: 30px;
  }
  .footer_link .link_area2 {
    display: table;
    width: 980px;
    margin: auto;
    border-top: 1px solid #fff;
    margin-top: 15px;
    padding-top: 25px;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .footer_link .link_area2 {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .footer_link .link_area2 .link_box2 {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .footer_link .link_area2 li {
    display: inline-block;
  }
  .footer_link .link_area2 li a {
    color: #fff;
  }
  .footer_link .link_area2 li a span {
    border-bottom: 1px solid transparent;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .footer_link .link_area2 li a:hover span {
    border-bottom-color: #fff;
  }
  .footer_link .link_area2 .company_link a:after {
    content: "|";
    padding: 0 10px;
  }
  .footer_link .link_area2 .follow_us {
    text-align: right;
    width: 40%;
  }
  .footer_link .link_area2 .follow_us .category {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .footer_link .link_area2 .follow_us ul {
    margin-bottom: 10px;
  }
  .footer_link .link_area2 .follow_us .sns i {
    font-size: 22px;
    font-size: 2.2rem;
    padding: 10px;
  }
  .footer_link .under_link_box {
    display: table;
    width: 98%;
    max-width: 980px;
    margin: auto;
  }
  .footer_link .under_link_box.special_linkbox {
    margin-bottom: 20px;
  }
  .footer_link .under_link_box .link_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .footer_link .under_link_box .main_title {
    border-bottom: 2px solid #fff;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    padding-bottom: 5px;
    margin-bottom: 30px;
  }
  .footer_link .under_link_box li {
    margin-bottom: 10px;
  }
  .footer_link .under_link_box li a {
    display: block;
    color: #fff;
  }
  .footer_link .under_link_box li a span {
    border-bottom: 1px solid transparent;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .footer_link .under_link_box li a:hover span {
    border-bottom-color: #fff;
  }
}
@media screen and (max-width: 1100px) {
  .footer_area {
    background-image: none;
  }
}
@media screen and (max-width: 768px) {
  .follow_us {
    background-color: #f5f0f0;
    padding: 30px 0;
  }
  .follow_us ul {
    text-align: center;
    margin-top: 10px;
  }
  .follow_us li {
    display: inline-block;
    font-size: 25px;
    font-size: 2.5rem;
  }
  .follow_us li i {
    color: #6E6E6E;
    margin: 10px;
  }

  .footer_box {
    background-color: #fff;
    padding: 30px 0;
  }
  .footer_box .title {
    text-align: center;
  }
  .footer_box .title .logo {
    display: block;
    margin: auto;
    width: 250px;
    height: 58px;
  }
  .footer_box .title img[src$=".svg"] {
    width: 250px;
    height: 58px;
  }
  .footer_box .title span {
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 10px;
  }
  .footer_box .footer_info {
    text-align: center;
    margin-top: 30px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .footer_box .footer_info .company {
    margin-bottom: 10px;
  }
  .footer_box .footer_info .location {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .footer_box .footer_info .location span {
    padding: 0 5px;
  }
  .footer_box .footer_info .btn {
    margin-top: 15px;
  }

  .copyright {
    color: #fff;
    background-color: #ffaabe;
    padding-bottom: 55px;
  }
}
/*------------------------------------------------------------------------
nav
-------------------------------------------------------------------------*/
nav:before {
  content: "";
  display: block;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -100;
  background-image: url(../images/bg_spmenu.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-background-size: cover;
}
nav ul {
  padding: 30px 15px;
}
nav ul li {
  width: 100%;
  background-color: #ffaabe;
  margin-bottom: 2px;
}
nav ul li.select {
  background-color: #735b61;
  margin-bottom: 0;
}
nav ul li a {
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  display: block;
  padding: 15px;
}
nav ul .acmenu {
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 15px 0;
}
nav ul .acmenu span {
  color: #fff;
  padding-left: 15px;
}
nav ul .acmenu i {
  font-size: 14px;
  font-size: 1.4rem;
  float: right;
  margin-top: 2px;
  padding-right: 15px;
}
nav ul ul {
  display: none;
  padding: 0;
}
nav ul ul li {
  background-color: #FF8CA7;
  border-top: 1px solid #ddd;
  margin-bottom: 0;
}
nav ul ul li:last-child {
  margin-bottom: 5px;
}

/*------------------------------------------------------------------------*/
.hub_name {
  font-feature-settings: "palt";
}

.cta_box .tel .tel_number {
  font-size: 28px;
  font-size: 2.8rem;
  margin-top: 30px;
}
.cta_box .tel .tel_number:last-of-type {
  margin-top: 5px;
}
.cta_box .tel .hub_name {
  letter-spacing: 1.8px;
  vertical-align: 1px;
}

.pc_only .cta_box .tel .hub_name {
  margin-right: 5px;
  font-size: 24px;
  font-size: 2.4rem;
}

.footer_box .cta-tel_time {
  font-size: 14px;
  font-size: 1.4rem;
}
.footer_box .footer_info .btn:last-of-type {
  margin-top: 25px;
}
.footer_box .footer_info .btn .hub_name {
  margin-right: 2px;
  font-size: 13px;
  font-size: 1.3rem;
  vertical-align: 1px;
}

@media screen and (min-width: 769px) {
  .header_menu ul {
    padding: 0 10px 0 0;
  }
  .header_menu ul li {
    padding-left: 13px;
  }

  .header_contents .hub_name {
    color: #fff;
  }
  .header_contents .title span {
    padding-left: 0;
    font-size: 10px;
    font-size: 1rem;
    transform: scale(0.9);
  }

  .header_menu .tel_box {
    padding: 10px 6px;
    min-width: 154px;
    font-size: 10px;
    font-size: 1rem;
    box-sizing: border-box;
  }
  .header_menu .tel_box.kansai {
    background-color: #88c996;
  }
  .header_menu .tel_box .tel_number {
    font-size: 16px;
    font-size: 1.6rem;
  }

  .footer_area .contact_table .hub_name {
    display: inline-block;
    margin-right: 2px;
    vertical-align: 2px;
  }
  .footer_area .contact_table .tel .tel_number:last-of-type {
    margin-top: 6px;
  }
}
@media screen and (max-width: 980px) and (min-width: 769px) {
  .header_contents {
    width: 98%;
  }
}
@media screen and (max-width: 880px) and (min-width: 801px) {
  .header_contents .title img[src$=".svg"] {
    width: 132px;
    height: 30px;
  }
}
@media screen and (max-width: 880px) {
  header {
    height: 60px;
  }

  .header_contents.pc_only {
    display: none;
  }
  .header_contents.sp_only {
    display: table !important;
  }
  .header_contents .title {
    display: block;
    padding: 13px 10px;
    height: 34px;
  }
  .header_contents .venue_search {
    color: #ff809e;
    display: table-cell;
    vertical-align: bottom;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    padding: 0 10px 5px 0;
    width: 60px;
  }
  .header_contents .title .logo {
    width: 115px;
    height: 34px;
  }
  .header_contents .title .sublogo {
    display: inline-block;
    font-size: 10px;
    font-size: 1rem;
    padding-left: 5px;
    height: 34px;
    vertical-align: text-bottom;
  }
  .header_contents .venue_search .wf-star_line, .header_contents .venue_search .wf-venue {
    display: block;
    font-size: 30px;
    font-size: 3rem;
  }
  .header_contents .menu_box {
    color: #ff809e;
    display: table-cell;
    vertical-align: bottom;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    padding: 0 10px 5px 0;
    width: 50px;
  }
  .header_contents .menu_box .menu_btn {
    cursor: pointer;
    display: inline-block;
    box-sizing: border-box;
    position: relative;
    width: 26px;
    height: 20px;
  }
  .header_contents .menu_box .menu_btn span {
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #ff809e;
    border-radius: 3px;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(1) {
    top: 0;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(2) {
    top: 9px;
  }
  .header_contents .menu_box .menu_btn span:nth-of-type(3) {
    bottom: 0;
  }
}
@media screen and (max-width: 768px) {
  .cta_box .tel .tel_number {
    margin-top: 20px;
    width: 90%;
  }
  .cta_box .tel .btn_sp {
    display: block;
  }
  .cta_box i {
    display: inline-block;
    width: auto;
    font-size: 28px;
    font-size: 2.8rem;
    vertical-align: -8px;
  }
  .cta_box .tel .btn_text {
    display: inline-block;
    width: auto;
  }
  .cta_box .tel .btn_text.contact {
    width: auto;
  }
  .cta_box .tel .hub_name {
    margin-right: 3px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cta_box .time_text {
    margin-top: 10px;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.6;
  }

  .fixed_menu li a {
    padding: 5px 10px 3px;
  }
  .fixed_menu li a.kanto i, .fixed_menu li a.kanto p {
    color: #ff809e;
  }
  .fixed_menu li a p {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .fixed_menu li a .small_text {
    font-size: 10px;
    font-size: 1rem;
  }

  .footer_box .footer_info .btn {
    padding: 6px 0;
  }

  .sp_fixed_menu {
    bottom: 38px !important;
  }

  .sp_fixed_contact {
    position: fixed;
    left: 0;
    bottom: -20px;
    width: 100%;
    height: 39px;
  }
  .sp_fixed_contact a {
    display: block;
    position: relative;
    color: #fff;
    padding: 8px 15px;
    text-align: center;
    background-color: #88c996;
    box-sizing: border-box;
  }
  .sp_fixed_contact a span {
    display: inline-block;
    position: absolute;
    top: 14px;
    left: auto;
    right: 20px;
    width: 10px;
    height: 10px;
    border-left: none;
    border-right: 2px solid #fff;
  }
}
@media screen and (max-width: 480px) {
  .cta_box i {
    width: auto;
  }
  .cta_box i.contact {
    width: auto;
  }
}
@media screen and (max-width: 320px) {
  .fixed_menu li a .small_text {
    display: block;
  }
}
/*------------------------------------------------------------------------
 contact
 -------------------------------------------------------------------------*/
.modal-wrapper {
  display: none;
  overflow: auto;
}

.form_contents {
  color: #fff;
}
.form_contents .title_area .title {
  color: #ff8fa9;
  font-size: 18px;
  margin: 20px 0 30px;
}
.form_contents .flow .flow_contents {
  background-color: #fedede;
  border-radius: 50%;
  color: #ff8fa9;
  text-align: center;
  display: inline-block;
}
.form_contents .flow .flow_contents.now {
  background-color: #EEE;
}
.form_contents .flow .flow_contents .number {
  display: block;
}
.form_contents .flow .wf-angle_right {
  color: #f5f0f0;
}
.form_contents .tel-time {
  text-align: center;
  color: #ccc;
}
.form_contents .telNumber {
  text-align: center;
}
.form_contents .telNumber a {
  text-align: center;
  color: #ff8fa9;
}

.contact_form .form_list.hope_date {
  display: none;
}
.contact_form .form_list .list_title .required {
  background-color: #F00;
  color: #fff;
  padding: 2px;
  margin-left: 5px;
}
.contact_form .form_list .list_contents.radio_btn {
  /*display: inline;*/
}
.contact_form .form_list .list_contents.radio_btn .radio {
  display: inline-block;
  position: relative;
  color: #000;
  cursor: pointer;
  margin-left: 10px;
  margin-right: 20px;
  padding: 10px;
  line-height: 1px;
  font-size: 12px;
}
.contact_form .form_list .list_contents.radio_btn .radio:before {
  position: absolute;
  content: "";
  left: -10px;
  width: 14px;
  height: 14px;
  margin-top: -8px;
  border: 1px solid #EEE;
  border-radius: 50%;
  background-color: #EEE;
}
.contact_form .form_list .list_contents.error input {
  background: #fedede;
}
.contact_form .form_list .list_contents.error input:focus {
  background: #fedede;
}
.contact_form .form_list .list_contents .privacy_box {
  background-color: #fff;
  color: #999999;
  overflow-y: scroll;
}
.contact_form .form_list .list_contents .error_text {
  color: #F00;
}
.contact_form .form_list .select_box .wf-triangle_down {
  position: relative;
  font-size: 16px;
  color: #ddd;
}
.contact_form .form_list .select_box .wf-triangle_down:before {
  position: absolute;
  pointer-events: none;
  z-index: 1;
  font-size: 13px;
  font-size: 0px\9;
}
@media all and (-ms-high-contrast: none) {
  .contact_form .form_list .select_box .wf-triangle_down:before {
    font-size: 16px\9;
  }
}
.contact_form .form_list input, .contact_form .form_list textarea {
  background-color: #f5f5f5;
  border-radius: 0;
  color: #000;
  width: 96%;
  padding: 3%;
  border-radius: 5px;
}
.contact_form .form_list input:focus, .contact_form .form_list textarea:focus {
  color: #000;
}
.contact_form .form_list input::-webkit-input-placeholder, .contact_form .form_list textarea::-webkit-input-placeholder {
  color: #ddd;
}
.contact_form .form_list input:-ms-input-placeholder, .contact_form .form_list textarea:-ms-input-placeholder {
  color: #ddd;
}
.contact_form .form_list input::-moz-placeholder, .contact_form .form_list textarea::-moz-placeholder {
  color: #ddd;
}
.contact_form .form_list input {
  border-bottom: 1px solid #fff;
  padding: 5px 0;
}
.contact_form .form_list input:focus {
  border-bottom: 3px solid #fff;
  margin-bottom: -2px;
}
.contact_form .form_list input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #ff98b1 inset;
  -webkit-text-fill-color: #fff !important;
}
.contact_form .form_list input[type="radio"] {
  display: none;
}
.contact_form .form_list input[type="radio"]:checked + .radio:after {
  position: absolute;
  content: "";
  top: 5px;
  left: -7px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ef4f74;
}
.contact_form .form_list input[type="checkbox"] {
  display: none;
}
.contact_form .form_list textarea {
  border-left: transparent;
  border-right: transparent;
  height: 100px;
  padding: 3%;
  outline: none;
  overflow: auto;
  resize: vertical;
}
.contact_form .form_list textarea:focus {
  border-top: 3px solid #fff;
  border-bottom: 3px solid #fff;
  margin-top: -2px;
  margin-bottom: -2px;
}
.contact_form .form_list .defalt textarea {
  height: 40px;
  background: transparent;
  padding: 0;
}
.contact_form .form_list select {
  background-color: #f5f5f5;
  border-radius: 5px;
  color: #000;
  padding: 10px;
}
.contact_form .form_list select::-ms-expand {
  display: none;
}
.contact_form .form_list select option {
  color: #6E6E6E;
}

input[type="checkbox"]:checked + .check_agree:after {
  position: absolute;
  content: "";
  top: 5px;
  left: -7px;
  width: 10px;
  height: 10px;
  background-color: #ef4f74;
}

.prLink {
  text-align: center;
}
.prLink a {
  font-size: 11px;
  color: #ffaabe;
}

.remodal-overlay {
  background: #fff !important;
}

.error_text {
  display: block;
  color: #F00;
}

.agree_btn {
  text-align: center;
  margin-bottom: 20px;
}
.agree_btn .check_agree {
  display: inline-block;
  position: relative;
  color: #000;
  font-size: 11px;
  font-size: 1.1rem;
  text-align: center;
  cursor: pointer;
  margin-left: 10px;
  padding: 10px;
  line-height: 1px;
}
.agree_btn .check_agree:before {
  position: absolute;
  content: "";
  left: -10px;
  width: 14px;
  height: 14px;
  margin-top: -8px;
  border: 1px solid #EEE;
  background-color: #EEE;
}

.modal-close .close_btn {
  cursor: pointer;
  display: inline-block;
  position: relative;
  padding: 0;
  width: 2px;
  background: #ffaabe;
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.modal-close .close_btn:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  height: 2px;
  background: #ffaabe;
}

.contact_confirm .btn_area {
  text-align: center;
}
.contact_confirm .btn_area .btn_form {
  display: inline-block;
}
.contact_confirm .btn_area .btn_form_back {
  margin-right: 20px;
}

.contact_complete .complete_text {
  text-align: center;
}
.contact_complete .complete_text .mail_customer {
  border-bottom: 1px solid #fff;
  display: inline-block;
}
.contact_complete .complete_text .text {
  text-align: left;
}
.contact_complete .complete_text .text a {
  border-bottom: 1px solid #ff8fa9;
  color: #ff8fa9;
}
.contact_complete .thanks_close {
  text-align: center;
}
.contact_complete .thanks_close p {
  cursor: pointer;
}

.yearArea, .monthArea, .dayArea {
  width: 33%;
  color: #000;
}
.yearArea p, .monthArea p, .dayArea p {
  display: inline;
}

.teltxt {
  margin-top: 20px;
  color: #000;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .modal-wrapper {
    width: 100%;
    height: 100%;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1002;
  }

  .form_contents {
    width: 900px;
    margin: auto;
    position: relative;
    margin: 70px auto 90px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .form_contents {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .form_contents .flow {
    position: absolute;
    top: -10px;
    right: 0;
  }
  .form_contents .flow .flow_contents {
    width: 60px;
    height: 60px;
    line-height: 1.1;
  }
  .form_contents .flow .flow_contents .flow_text {
    font-size: 13px;
    font-size: 1.3rem;
    padding-top: 12px;
  }
  .form_contents .flow .flow_contents .flow_text .number {
    font-size: 20px;
    font-size: 2rem;
  }
  .form_contents .flow .wf-angle_right {
    position: relative;
    top: -10px;
    margin: 0 5px;
  }
  .form_contents .read {
    margin-left: 25%;
    margin-bottom: 60px;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .form_contents .sub_read {
    margin-left: 25%;
    margin-bottom: 50px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .contact_form .form_list {
    display: table;
    width: 100%;
    margin-bottom: 30px;
  }
  .contact_form .form_list.textarea {
    margin-top: 100px;
  }
  .contact_form .form_list.hope_date.select {
    display: table;
  }
  .contact_form .form_list dt, .contact_form .form_list dd {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .contact_form .form_list .list_title {
    width: 23%;
    font-size: 16px;
    color: #666;
  }
  .contact_form .form_list .list_title .required {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .contact_form .form_list .list_contents.radio_btn .radio {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .contact_form .form_list .list_contents p {
    font-size: 16px;
    font-size: 1.6rem;
    color: #000;
  }
  .contact_form .form_list .list_contents .privacy_box {
    height: 100px;
    padding: 15px;
  }
  .contact_form .form_list .list_contents .agree_btn {
    margin-top: 30px;
  }
  .contact_form .form_list .list_contents .error_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .contact_form .form_list .select_box .wf-triangle_down:before {
    top: 38%;
    left: 46%;
  }
  .contact_form .form_list input, .contact_form .form_list textarea, .contact_form .form_list select {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 10px;
  }
  .contact_form .form_list select {
    width: 50%;
  }

  .modal-close {
    z-index: 1005;
  }
  .modal-close .close_btn {
    height: 33px;
  }
  .modal-close .close_btn:before {
    left: -16px;
    width: 33px;
    margin-top: -1px;
  }

  .contact_close {
    position: fixed;
    top: 5px;
    right: 40px;
    padding: 15px;
  }

  #modal-overlay {
    z-index: 1000;
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 120%;
    background: -webkit-linear-gradient(#ff8ca7, #ffa1b7);
    background: -o-linear-gradient(#ff8ca7, #ffa1b7);
    background: linear-gradient(#ff8ca7, #ffa1b7);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff8ca7', endColorstr='#ffa1b7', GradientType=0);
    opacity: 0.98;
  }

  .contact_confirm,
  .contact_complete,
  .consultation_confirm {
    display: none;
  }

  .contact_confirm .btn_area .btn_form {
    width: 25%;
  }

  .contact_complete .title_area {
    /*padding-top: 70px;*/
  }
  .contact_complete .read {
    margin-left: 0;
    margin-bottom: 80px;
    text-align: center;
    color: #000;
  }
  .contact_complete .complete_text {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .contact_complete .complete_text .mail_customer {
    margin-bottom: 30px;
  }
  .contact_complete .complete_text .text {
    margin-bottom: 40px;
  }
  .contact_complete .thanks_close {
    margin-top: 100px;
  }
  .contact_complete .thanks_close p {
    color: #000;
    font-size: 20px;
    font-size: 2rem;
  }

  .yearArea, .monthArea, .dayArea {
    display: inline;
  }

  .complete_text {
    color: #000;
  }

  .teltxt {
    font-size: 14px;
  }

  .form_contents .telNumber a {
    font-size: 18px;
  }
  .form_contents .tel-time {
    font-size: 14px;
  }

  .prLink a,
  .agree_btn .check_agree {
    font-size: 13px;
  }
}
@media screen and (max-width: 768px) {
  .form_contents {
    background: #fff;
    padding: 15px 15px 50px;
    position: relative;
  }
  .form_contents .flow {
    text-align: center;
    margin-bottom: 20px;
  }
  .form_contents .flow .flow_contents {
    width: 40px;
    height: 40px;
    line-height: 1.1;
  }
  .form_contents .flow .flow_contents .flow_text {
    font-size: 10px;
    font-size: 1rem;
    padding-top: 5px;
  }
  .form_contents .flow .flow_contents .flow_text .number {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .form_contents .flow .wf-angle_right {
    position: relative;
    top: -3px;
    margin: 0 3px;
  }
  .form_contents .read {
    font-size: 13px;
    margin-bottom: 30px;
  }
  .form_contents .sub_read {
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 25px;
  }
  .form_contents .telNumber a {
    font-size: 16px;
    padding-top: 10px;
  }
  .form_contents .tel-time {
    font-size: 11px;
    padding-top: 0;
  }

  .contact_form .form_list {
    margin-bottom: 20px;
  }
  .contact_form .form_list.hope_date.select {
    display: block;
  }
  .contact_form .form_list .list_title {
    width: 33%;
    display: inline-block;
    font-size: 1.2rem;
    margin-bottom: 10px;
    vertical-align: top;
    color: #666;
  }
  .contact_form .form_list .list_title .required {
    font-size: 10px;
    font-size: 1rem;
  }
  .contact_form .form_list .list_contents {
    width: 65%;
    display: inline-block;
    color: #000;
  }
  .contact_form .form_list .list_contents input, .contact_form .form_list .list_contents textarea, .contact_form .form_list .list_contents select {
    font-size: 16px;
  }
  .contact_form .form_list .list_contents select {
    display: inline;
    width: 80%;
    color: #000;
    border: none;
    background: #f5f5f5;
    border-radius: 5px;
  }
  .contact_form .form_list .list_contents .privacy_box {
    height: 80px;
    padding: 10px;
  }
  .contact_form .form_list .list_contents .agree_btn {
    margin-top: 10px;
  }
  .contact_form .form_list .select_box .wf-triangle_down:before {
    top: 38%;
    left: 73%;
  }

  .modal-close .close_btn {
    height: 25px;
  }
  .modal-close .close_btn:before {
    left: -12px;
    width: 25px;
    margin-top: -1px;
  }

  .contact_close {
    position: absolute;
    top: 5px;
    right: 10px;
    padding: 15px;
  }

  .contact_confirm .btn_area .btn_form {
    width: 45%;
  }

  .contact_complete .title_area .title {
    font-size: 30px;
    font-size: 3rem;
  }
  .contact_complete .read {
    margin-bottom: 60px;
    color: #000;
  }
  .contact_complete .complete_text .mail_customer {
    margin-bottom: 20px;
    color: #000;
  }
  .contact_complete .complete_text .text {
    margin-bottom: 30px;
    color: #000;
  }
  .contact_complete .thanks_close {
    margin-top: 50px;
  }
  .contact_complete .thanks_close p {
    color: #fff;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .yearArea, .monthArea, .dayArea {
    float: left;
  }

  .teltxt {
    font-size: 13px;
  }
}
.form_list .list_contents.radio_btn .radio:before {
  position: absolute;
  content: "";
  left: -10px;
  width: 14px;
  height: 14px;
  margin-top: -8px;
  border: 1px solid #EEE;
  border-radius: 50%;
  background-color: #EEE;
}

.form_list input[type="radio"]:checked + .radio:after {
  position: absolute;
  content: "";
  top: 5px;
  left: -7px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #ef4f74;
}

/*------------------------------------------------------------------------
 cta
 -------------------------------------------------------------------------*/
.cta_area {
  color: #fff;
  width: 100%;
  background-color: #333;
  background-image: url(../images/bg_cta01.jpg), url(../images/bg_cta02.jpg);
  background-position: left top, right top;
  background-repeat: no-repeat;
  background-size: 50% 100%;
}

.cta_box {
  border: 1px solid #ddd;
  display: table;
}
.cta_box .tel {
  display: table-cell;
  vertical-align: top;
  text-align: center;
  width: 50%;
}
.cta_box .reservation {
  display: table-cell;
  vertical-align: top;
  text-align: center;
  width: 50%;
}

@media screen and (min-width: 769px) {
  .cta_area {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.7;
    padding: 60px 0;
  }

  .cta_box {
    width: 900px;
    margin: auto;
    padding: 70px 0 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .cta_box {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .cta_box i {
    font-size: 70px;
    font-size: 7rem;
  }
  .cta_box .text {
    margin-top: 30px;
  }
  .cta_box .tel .tel_number {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    font-size: 34px;
    font-size: 3.4rem;
    font-family: 'Roboto', sans-serif;
    margin-top: 45px;
  }
  .cta_box .tel .tel_number a {
    color: #fff;
  }
  .cta_box .reservation .btn {
    margin-top: 45px;
  }
}
@media screen and (max-width: 768px) {
  .cta_area {
    background-image: url(../images/bg_cta01.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px 0;
  }

  .cta_box {
    display: block;
    width: 95%;
    margin: auto;
    padding: 20px 0 25px;
  }
  .cta_box i {
    display: table-cell;
    width: 40%;
    color: #000;
    font-size: 30px;
    font-size: 3rem;
    text-align: right;
  }
  .cta_box i.contact {
    width: 40%;
  }
  .cta_box .cta_content-text {
    padding: 0 20px 25px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cta_box .text {
    height: auto;
    margin-bottom: 15px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .cta_box .time_text {
    margin-top: 15px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .cta_box .tel {
    display: block;
    width: 100%;
    margin-bottom: 25px;
    padding: 0;
  }
  .cta_box .tel:last-child {
    margin-bottom: 0;
  }
  .cta_box .tel .tel_number {
    font-size: 13px;
    font-size: 1.3rem;
    margin-top: 25px;
    width: 70%;
    margin: 0 auto;
  }
  .cta_box .tel .tel_number a {
    color: #000;
  }
  .cta_box .tel .btn_sp {
    display: table;
    box-sizing: border-box;
  }
  .cta_box .tel .btn_text {
    display: table-cell;
    width: 60%;
    color: #000;
    vertical-align: middle;
    text-align: left;
  }
  .cta_box .tel .btn_text.contact {
    font-size: 15px;
    font-size: 1.5rem;
    width: 60%;
  }
  .cta_box .reservation {
    padding: 0 10px;
  }
  .cta_box .reservation .btn {
    margin-top: 25px;
  }
}
@media screen and (max-width: 480px) {
  .cta_box i {
    width: 32%;
  }
  .cta_box i.contact {
    width: 22%;
  }
  .cta_box .tel .btn_text {
    width: 68%;
  }
  .cta_box .tel .btn_text.contact {
    width: 78%;
  }
}
.hub_name {
  font-feature-settings: "palt";
}

.tel_number_list {
  text-align: center;
}
.tel_number_list li {
  display: inline-block;
}
.tel_number_list li .hub_name {
  margin-right: 2px;
  vertical-align: 1px;
}

.teltxt {
  margin-top: 30px;
}

@media screen and (min-width: 980px) {
  .tel_number_list li a {
    pointer-events: none;
  }
}
@media screen and (min-width: 769px) {
  .tel_number_list li:first-child {
    margin-right: 10px;
  }
  .tel_number_list li:last-child {
    margin-left: 10px;
  }
  .tel_number_list li .hub_name {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 768px) {
  .tel_number_list li:not(:last-child) {
    margin-bottom: 10px;
  }
  .tel_number_list li .hub_name {
    font-size: 12px;
    font-size: 1.2rem;
  }

  .contact_form .form_list .list_title .required {
    display: inline-block;
    padding: 0 2px;
  }
}
/*------------------------------------------------------------------------
 recently
 -------------------------------------------------------------------------*/
.recently .subheading {
  color: #8b96ad;
}
.recently .recently_box a {
  display: block;
}
.recently .recently_box a:hover .trimming {
  opacity: 0.8;
}
.recently .recently_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: .5s;
  transition: .5s;
}
.recently .recently_box .place {
  color: #999999;
  font-size: 11px;
  font-size: 1.1rem;
}
.recently .favorite_box {
  background-color: #f9f5e7;
}
.recently .favorite_box .favo_venue {
  color: #444444;
}
.recently .favorite_box i {
  color: #F3BD00;
  font-size: 20px;
  font-size: 2rem;
  padding: 5px;
}
.recently .favorite_box .number span {
  color: #444444;
  font-weight: bold;
}
.recently .favorite_box .btn_favo:hover {
  background-color: #eca700;
}

@media screen and (min-width: 769px) {
  .recently {
    width: 900px;
    margin: auto;
    padding: 40px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .recently {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .recently .subheading {
    font-size: 38px;
    font-size: 3.8rem;
    text-align: left;
    margin-bottom: 10px;
  }
  .recently .subtitle {
    display: inline-block;
    margin-right: 25px;
    margin-bottom: 12px;
    color: #444444;
    font-size: 20px;
    font-size: 2rem;
    text-align: left;
  }
  .recently .text {
    display: inline-block;
    color: #999999;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .recently .recently_area {
    display: inline-block;
    width: 68%;
  }
  .recently .recently_area .recently_box {
    display: inline-block;
    margin-right: 10px;
    vertical-align: top;
  }
  .recently .recently_area .recently_box:last-of-type {
    margin-right: 0;
  }
  .recently .recently_area .recently_box a {
    width: 110px;
  }
  .recently .recently_area .recently_box a:hover .link_text {
    text-decoration: underline;
  }
  .recently .recently_area .recently_box .trimming {
    width: 110px;
    height: 110px;
    margin-bottom: 5px;
  }
  .recently .recently_area .recently_box .place {
    margin-bottom: 1px;
  }
  .recently .recently_area .recently_box .link_text {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .recently .favorite_box {
    border: 3px solid #fff;
    outline: 3px solid #f2eacf;
    display: inline-block;
    vertical-align: top;
    padding: 10px;
    width: 25%;
    margin-left: 3%;
  }
  .recently .favorite_box .favo_venue {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .recently .favorite_box .number {
    text-align: center;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .recently .favorite_box .number span {
    font-size: 28px;
    font-size: 2.8rem;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .recently .recently_area {
    margin-right: 8px;
  }
  .recently .recently_area .recently_box a {
    width: 100px;
  }
  .recently .recently_area .recently_box .trimming {
    width: 100px;
    height: 100px;
  }

  .favorite_box {
    margin-left: 2% !important;
  }
}
@media (max-width: 849px) and (min-width: 769px) {
  .recently .recently_area {
    margin-right: 0;
  }
  .recently .recently_area .recently_box {
    margin-right: 6px;
  }
  .recently .recently_area .recently_box a {
    width: 90px;
  }
  .recently .recently_area .recently_box .trimming {
    width: 90px;
    height: 90px;
  }
}
@media screen and (max-width: 768px) {
  .recently {
    background-color: #fff;
    padding-top: 30px;
  }
  .recently .subtitle {
    line-height: 1;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 500;
  }
  .recently .text {
    color: #999999;
    font-size: 12px;
    font-size: 1.2rem;
    margin: 0 10px 5px 10px;
  }
  .recently .recently_area {
    padding-bottom: 10px;
  }
  .recently .recently_area .recently_box {
    border-bottom: 1px solid #e5e5e5;
    position: relative;
  }
  .recently .recently_area .recently_box:first-of-type {
    border-top: 1px solid #e5e5e5;
  }
  .recently .recently_area .recently_box:after {
    content: "\e900";
    color: #5f687a;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: 'emopa';
    position: absolute;
    top: 40%;
    right: 10px;
  }
  .recently .recently_area .recently_box a {
    padding: 10px 30px 10px 10px;
  }
  .recently .recently_area .recently_box .trimming {
    width: 70px;
    height: 70px;
    float: left;
    margin-right: 15px;
  }
  .recently .recently_area .recently_box .link_text {
    padding-top: 2px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.3;
  }
  .recently .favorite_box {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    text-align: center;
    padding: 20px 0 30px;
    margin-bottom: 2px;
    position: relative;
  }
  .recently .favorite_box:before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #f9f5e7;
    position: absolute;
    top: -3px;
  }
  .recently .favorite_box:after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #f9f5e7;
    position: absolute;
    bottom: -3px;
  }
  .recently .favorite_box .favo_venue {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .recently .favorite_box .number {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .recently .favorite_box .number span {
    font-size: 27px;
    font-size: 2.7rem;
  }
  .recently .favorite_box .btn_favo {
    font-size: 15px;
    font-size: 1.5rem;
    width: 70%;
    margin-top: 10px;
  }
}
/*------------------------------------------------------------------------
 ranking
 -------------------------------------------------------------------------*/
.ranking_area .ranking_box a {
  display: block;
  margin: auto;
}
.ranking_area .ranking_box a:hover .trimming {
  opacity: 0.8;
}
.ranking_area .ranking_box a .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  -webkit-transition: .5s;
  transition: .5s;
}
.ranking_area .ranking_box a .number {
  color: #ffaabe;
}
.ranking_area .ranking_box a .number span {
  display: inline-block;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.ranking_area .ranking_box a .place span {
  color: #999999;
}

@media screen and (min-width: 769px) {
  .ranking {
    background-color: #f5f0f0;
    padding: 80px 0;
  }

  .ranking_area {
    display: table;
    width: 900px;
    margin: auto;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .ranking_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .ranking_area .ranking_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
    padding-right: 15px;
    width: 25%;
  }
  .ranking_area .ranking_box:last-child {
    padding-right: 0;
  }
  .ranking_area .ranking_box a:hover .link_text {
    text-decoration: underline;
  }
  .ranking_area .ranking_box .trimming {
    width: 150px;
    height: 150px;
  }
  .ranking_area .ranking_box .number {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 10px;
  }
  .ranking_area .ranking_box .number .wf-crown {
    padding-right: 5px;
  }
  .ranking_area .ranking_box .link_text {
    line-height: 1.4;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .ranking_area .ranking_box {
    padding-right: 0;
  }
  .ranking_area .ranking_box:last-child {
    display: none;
  }
  .ranking_area .ranking_box a {
    width: 150px;
  }
}
@media screen and (max-width: 768px) {
  .ranking {
    padding-top: 30px;
    background-color: #fff;
  }
  .ranking .btn_more {
    display: none;
  }

  .ranking_area .ranking_box {
    border-top: 1px solid #e5e5e5;
    position: relative;
  }
  .ranking_area .ranking_box:after {
    content: "\e900";
    color: #ffaabe;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: 'emopa';
    position: absolute;
    top: 40%;
    right: 10px;
  }
  .ranking_area .ranking_box a {
    padding: 10px 30px 10px 10px;
  }
  .ranking_area .ranking_box .trimming {
    width: 70px;
    height: 70px;
    float: left;
    margin-right: 15px;
  }
  .ranking_area .ranking_box .number {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .ranking_area .ranking_box .number .wf-crown {
    padding-right: 3px;
  }
  .ranking_area .ranking_box .link_text {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .ranking_area .ranking_box .link_text span {
    display: block;
    font-size: 11px;
    font-size: 1.1rem;
    padding: 1px 0 2px;
  }
}
/*------------------------------------------------------------------------
 usufulinfomation
 -------------------------------------------------------------------------*/
/*------------------------------------------------------------------------
 useful_detail NEW
 -------------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  .relevance-wrap {
    display: flex;
    justify-content: space-between;
    max-width: 900px;
  }
  .relevance-wrap a {
    display: block;
    color: #444444;
    text-align: left;
  }
  .relevance-wrap .relevance-box {
    position: relative;
    width: 33.333%;
    margin-right: 15px;
    margin-bottom: 25px;
    background-color: #fff;
  }
  .relevance-wrap .relevance-box:nth-child(3n) {
    margin-right: 0;
  }
  .relevance-wrap .relevance-box .eyeCatch {
    width: 100%;
    margin-bottom: 10px;
    padding-top: 62%;
    background-size: cover;
    background-position: center;
    transition: all .3s ease-out;
  }
  .relevance-wrap .relevance-box .eyeCatch:hover {
    opacity: 0.9;
  }
  .relevance-wrap .relevance-box .label {
    display: inline-block;
    line-height: 1;
    margin-bottom: 8px;
    padding: 3px 4px 2px;
    color: #FF8CA7;
    border: solid 1px #FF8CA7;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .relevance-wrap .relevance-box .title {
    clear: both;
    text-align: left;
  }
}
@media screen and (max-width: 768px) {
  .relevance-wrap {
    border-top: 1px solid #ddd;
  }
  .relevance-wrap:last-of-type {
    border-top: 0;
  }
  .relevance-wrap a {
    display: table;
    position: relative;
    width: 100%;
    height: 100%;
    color: #444444;
  }
  .relevance-wrap a:after {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-top: 1px solid #ddd;
    border-right: 1px solid #ddd;
    content: "";
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .relevance-wrap .relevance-box {
    width: 100%;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
  }
  .relevance-wrap .relevance-box .eyeCatch {
    display: table-cell;
    width: 100px;
    background-size: cover;
    background-position: center;
  }
  .relevance-wrap .relevance-box .label {
    display: inline-block;
    line-height: 1;
    color: #FF8CA7;
    border: solid 1px #FF8CA7;
    margin: 12px 10px 8px 10px;
    padding: 3px 4px 1px;
    font-size: 10px;
    font-size: 1rem;
  }
  .relevance-wrap .relevance-box .title {
    min-height: 3em;
    line-height: 1.6;
    padding: 0 20px 10px 10px;
    font-size: 13px;
    font-size: 1.3rem;
  }
}
.useful_area .useful_box {
  background-color: #fff;
  position: relative;
}
.useful_area .useful_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  float: left;
  margin-right: 15px;
}
.useful_area .useful_box .label {
  color: #FF8CA7;
  position: absolute;
  bottom: 15px;
  padding: 0 5px;
  margin-right: 10px;
  border: solid 1px #FF8CA7;
}

@media screen and (min-width: 769px) {
  .bg {
    background-color: #f5f0f0;
  }

  .useful_info {
    padding: 80px 0;
  }

  .useful_area {
    width: 900px;
    margin: auto;
    padding-bottom: 50px;
    display: table;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .useful_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .useful_area .useful_box {
    display: inline-block;
    width: 287px;
    margin: 0 10px 15px 0;
  }
  .useful_area .useful_box a {
    display: inline-table;
    padding: 0px;
    border: 1px solid #ddd;
  }
  .useful_area .useful_box a:hover .trimming {
    opacity: 0.8;
  }
  .useful_area .useful_box a:hover .link_text {
    border-bottom-color: #735b61;
  }
  .useful_area .useful_box a .trimming {
    width: 100%;
    padding-top: 65%;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .useful_area .useful_box a .link_text {
    border-bottom: 1px solid transparent;
    display: inline;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .useful_area .useful_box a .label {
    font-size: 11px;
    font-size: 1.1rem;
    left: 120px;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .useful_area {
    text-align: center;
  }
  .useful_area .useful_box {
    width: 45%;
  }
  .useful_area .useful_box a {
    text-align: left;
  }
}
@media screen and (max-width: 768px) {
  .useful_info {
    background-color: #fff;
    padding-bottom: 30px;
  }
  .useful_info .heading {
    padding-top: 20px;
  }

  .useful_area {
    width: 100%;
    padding-bottom: 20px;
  }
  .useful_area .useful_box {
    border-bottom: 1px solid #ddd;
    position: relative;
  }
  .useful_area .useful_box:after {
    content: "\e900";
    color: #ff7ba3;
    font-size: 12px;
    font-size: 1.2rem;
    font-family: 'emopa';
    position: absolute;
    top: 40%;
    right: 10px;
  }
  .useful_area .useful_box a {
    padding: 10px 30px 10px 10px;
  }
  .useful_area .useful_box .trimming {
    width: 80px;
    height: 80px;
  }
  .useful_area .useful_box .link_text {
    font-size: 13px;
    font-size: 1.3rem;
    color: #6E6E6E;
  }
  .useful_area .useful_box .label {
    font-size: 10px;
    font-size: 1rem;
    left: 105px;
  }
}
/*------------------------------------------------------------------------
 feature
 -------------------------------------------------------------------------*/
.feature_area .feature_box {
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.feature_area .feature_box a {
  display: block;
  overflow: hidden;
  position: relative;
  height: 0;
  padding-bottom: 64%;
}
.feature_area .feature_box a:hover {
  opacity: 0.8;
}
.feature_area .feature_box img {
  position: absolute;
  top: 50%;
  width: 100%;
  margin-top: -50%;
}
.feature_area .feature_box p {
  color: #fff;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  line-height: 1.3;
  width: 100%;
  position: absolute;
}

@media screen and (min-width: 769px) {
  .feature {
    width: 900px;
    margin: auto;
    padding: 50px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .feature {
    width: 98%;
  }
}

@media screen and (min-width: 769px) {
  .feature_area {
    margin: 0 -7px;
  }
  .feature_area .feature_box {
    margin-bottom: 15px;
    padding: 0 7px;
    width: 25%;
  }
  .feature_area .feature_box p {
    font-size: 24px;
    font-size: 2.4rem;
    top: 33%;
  }
  .feature_area .feature_box p.short_name {
    top: 42%;
    backface-visibility: hidden;
  }
}
@media screen and (max-width: 768px) {
  .feature {
    background-color: #f5f0f0;
    padding: 30px 15px 20px;
  }

  .feature_area {
    margin: 30px -5px 0;
  }
  .feature_area .feature_box {
    margin-bottom: 10px;
    padding: 0 5px;
    width: 50%;
  }
  .feature_area .feature_box p {
    font-size: 18px;
    font-size: 1.8rem;
    top: 36%;
  }
  .feature_area .feature_box p.short_name {
    top: 41%;
  }
}
/*------------------------------------------------------------------------
 パンくず
 -------------------------------------------------------------------------*/
.breadcrumb {
  background-color: #fff;
  margin-top: 70px;
}

.visual_breadcrumb {
  margin-top: 0;
}

.breadcrumb_box {
  width: 980px;
  margin: auto;
  padding: 15px 0;
}
@media (max-width: 980px) {
  .breadcrumb_box {
    width: 98%;
  }
}
.breadcrumb_box ul {
  float: left;
  margin-top: 5px;
  max-width: 800px;
}
.breadcrumb_box ul li {
  display: inline-block;
  max-width: 750px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.breadcrumb_box ul li span {
  padding: 0 5px;
  color: #999999;
}
.breadcrumb_box ul li a {
  padding-bottom: 1px;
  border-bottom: 1px solid transparent;
}
.breadcrumb_box ul li a:hover {
  border-bottom: 1px solid #735b61;
}
.breadcrumb_box .favorit {
  font-size: 13px;
  font-size: 1.3rem;
  float: right;
  padding-top: 2px;
}
.breadcrumb_box .favorit i {
  color: #F3BD00;
  font-size: 18px;
  font-size: 1.8rem;
  padding-right: 5px;
  vertical-align: text-bottom;
}
.breadcrumb_box .favorit a {
  text-decoration: underline;
}

/*------------------------------------------------------------------------
 sp_fixed_menu
 -------------------------------------------------------------------------*/
.sp_fixed_menu {
  box-shadow: 0 -2px 3px -3px rgba(0, 0, 0, 0.5);
  width: 100%;
}
.sp_fixed_menu .menu_text {
  height: 25px;
  background-color: #6bcb80;
  text-align: center;
}
.sp_fixed_menu .menu_text.detail {
  background-color: #ff9800;
}
.sp_fixed_menu .menu_text p {
  color: #fff;
  font-size: 13px;
  line-height: 25px;
}

.fixed_menu {
  background-color: #fff;
  display: table;
  width: 100%;
}
.fixed_menu li {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  border-right: 1px solid #ddd;
  width: 50%;
  height: 50px;
}
.fixed_menu li:last-child {
  border-right: none;
}
.fixed_menu li a {
  color: #ffaabe;
  display: table;
  width: 100%;
  padding: 5px 20px 3px;
  font-size: 10px;
  font-size: 1rem;
  box-sizing: border-box;
}
.fixed_menu li a i {
  display: table-cell;
  font-size: 32px;
  font-size: 3.2rem;
  margin-bottom: 3px;
  color: #6bcb80;
  vertical-align: middle;
}
.fixed_menu li a i.wf-contact {
  padding-right: 5px;
}
.fixed_menu li a p {
  display: table-cell;
  color: #6bcb80;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.3;
  text-align: left;
  vertical-align: middle;
}
.fixed_menu li a .small_text {
  font-size: 11px;
  font-size: 1.1rem;
}

.fixed_menu.detail li {
  position: relative;
  border-right: 0;
}
.fixed_menu.detail li:first-child:after {
  position: absolute;
  top: 9px;
  right: 0;
  width: 1px;
  height: 32px;
  background-color: #ddd;
  content: "";
}
.fixed_menu.detail a {
  height: 100%;
}
.fixed_menu.detail a i {
  padding-right: 10px;
  color: #bdbdbd;
  font-size: 24px;
  font-size: 2.4rem;
}
.fixed_menu.detail a p {
  color: #6E6E6E;
  font-size: 12px;
  font-size: 1.2rem;
}
.fixed_menu.detail a p span {
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: .02em;
}
.fixed_menu.detail a .wf-venue {
  padding-right: 6px;
}
.fixed_menu.detail a p {
  color: #6E6E6E;
}

@media (max-width: 320px) {
  .fixed_menu a {
    letter-spacing: -1px;
  }
}
@media screen and (max-width: 768px) {
  .fixed_menu li a {
    padding: 5px 10px 3px;
    padding: 5px 10px 3px;
  }
  .fixed_menu li a p {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .fixed_menu li a .small_text {
    font-size: 10px;
    font-size: 1rem;
  }

  .cta_box .tel .tel_number {
    margin-top: 20px;
    width: 90%;
  }
  .cta_box .tel .btn_sp {
    display: block;
  }
  .cta_box i {
    display: inline-block;
    width: auto;
    font-size: 28px;
    font-size: 2.8rem;
    vertical-align: -8px;
  }
}
@media screen and (max-width: 480px) {
  .cta_box i {
    width: auto;
  }
  .cta_box i.contact {
    width: auto;
  }
}
@media screen and (max-width: 768px) {
  .cta_box .tel .btn_text {
    display: inline-block;
    width: auto;
  }
  .cta_box .tel .btn_text.contact {
    width: auto;
  }
  .cta_box i.contact {
    width: auto;
  }

  .sp_fixed_contact {
    z-index: 100;
  }
}
/*------------------------------------------------------------------------
 top
 -------------------------------------------------------------------------*/
.subheading,
.title_area .title {
  color: #ffaabe;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

.subtitle {
  display: block;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .subheading,
  .title_area .title {
    font-size: 50px;
    font-size: 5rem;
  }

  .form_contents .title_area .title {
    font-size: 25px;
    margin-bottom: 80px;
  }

  .subtitle {
    font-size: 20px;
    font-size: 2rem;
    margin: 0 0 40px;
  }
}
@media screen and (max-width: 768px) {
  .subheading,
  .title_area .title {
    font-size: 25px;
    font-size: 2.5rem;
  }

  .subtitle {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 0 0 20px;
  }
}
/*------------------------------------------------------------------------
 mainvisual
 -------------------------------------------------------------------------*/
.mainvisual {
  width: 100%;
  height: 100%;
  min-height: 550px;
  overflow: hidden;
  position: relative;
}
.mainvisual:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.tel_bnr {
  background-color: rgba(115, 91, 97, 0.8);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 2;
}
.tel_bnr p {
  color: #fff;
}

.top_contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-orient: vertical;
  margin: 0 auto;
  width: fit-content;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: #fff;
  text-align: center;
}

@media screen and (min-width: 769px) {
  .top_contents > div::nth-of-type(0) {
    margin-top: 170px;
    flex-basis: 48%;
    width: 360px;
  }
  .top_contents > div {
    margin-top: 170px;
    flex-basis: 48%;
    width: 450px;
  }
}
@media screen and (max-width: 768px) {
  .top_contents {
    flex-direction: column;
  }
}
.arrow {
  position: absolute;
  left: 0;
  right: 0;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-decoration: none;
  z-index: 2;
}
.arrow span {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}

.btn_area {
  padding: 0 15px;
  margin: 10px 0;
}

.btn_box {
  display: table;
  width: 100%;
  max-width: 400px;
  height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
}
.btn_box .tab_menu {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.btn_box .tab_menu li {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  background-color: white;
  width: 32%;
  float: left;
  cursor: pointer;
  color: #ff9800;
  padding: 10px 0;
  border: #ff9800 solid 2px;
  border-bottom: none;
  box-sizing: border-box;
}
.btn_box .tab_menu li:nth-child(3n-1) {
  margin: 0 2%;
}
.btn_box .tab_menu li:last-child {
  padding-right: 0;
}
.btn_box .tab_menu li.selected {
  background-color: #ff9800;
  color: #fff;
}
.btn_box .tab_content {
  padding: 10px;
  background-color: rgba(255, 255, 255, 0.5);
  border-top: #ff9800 6px solid;
}
.btn_box .tab_content .search_from_area {
  float: left;
  width: 100%;
  background-color: white;
  color: #FF8CA7;
  border: #FF8CA7 solid 2px;
  border-radius: 6px;
  box-sizing: border-box;
  margin-bottom: 10px;
  cursor: pointer;
  text-align: left;
}
.btn_box .tab_content .search_from_area li {
  display: table;
}
.btn_box .tab_content .search_from_map {
  float: left;
  width: 48%;
  background-color: white;
  color: #FF8CA7;
  border: #FF8CA7 solid 2px;
  border-radius: 6px;
  cursor: pointer;
}
.btn_box .tab_content .search_from_map img {
  height: 24px;
  width: 24px;
}
.btn_box .tab_content .search_from_station {
  float: right;
  width: 48%;
  background-color: white;
  color: #FF8CA7;
  border: #FF8CA7 solid 2px;
  border-radius: 6px;
  cursor: pointer;
}
.btn_box .tab_content .search_from_station img {
  height: 24px;
  width: 24px;
}
.btn_box .tab_content > div {
  display: none;
}
.btn_box .tab_content > div.selected {
  display: table;
}
.btn_box .tab_content > div .select_box {
  display: table-cell;
  position: relative;
  width: 100%;
  height: 40px;
  vertical-align: middle;
}
.btn_box .tab_content > div .select_box select {
  width: 100%;
  height: 40px;
  padding: 5px 30px 5px 10px;
  border-radius: 0;
  border: 1px solid #ccc;
  border-right: 0;
  background-color: #fff;
  color: #6E6E6E;
  font-size: 16px;
  font-size: 1.6rem;
}
.btn_box .tab_content > div .select_box:before {
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 10px;
  line-height: 1;
  margin-top: -.5em;
  color: #6E6E6E;
  font-family: 'emopa';
  font-size: 10px;
  font-size: 1rem;
  content: "\e907";
}
.btn_box .tab_content > div .btn {
  display: table-cell;
  overflow: hidden;
  height: 40px;
  padding: 0;
  vertical-align: middle;
}
.btn_box .tab_content > div .btn span {
  display: block;
  width: 40px;
  height: 100%;
  text-indent: 100%;
}
.btn_box .tab_content > div .btn span:before {
  position: absolute;
  right: 50%;
  top: 50%;
  margin: -.5em -.5em 0 0;
}
.btn_box .tab_content:after {
  clear: both;
  display: block;
  content: '';
}
.btn_box .search_from_keyword {
  background-color: white;
  color: #FF8CA7;
  border: #FF8CA7 solid 2px;
  border-radius: 6px;
  text-align: left;
}
.btn_box .search_from_keyword > .input-box input[type='text'] {
  width: 100%;
  height: 40px;
  padding: 5px 30px 5px 10px;
  border-radius: 0;
  border: 1px solid #ccc;
  border-right: 0;
  background-color: #fff;
  color: #6E6E6E;
  font-size: 16px;
  font-size: 1.6rem;
  box-sizing: border-box;
}

.banner_area .img1 {
  display: block;
}

.banner_area .img2,
.banner_area .img3 {
  display: none;
}

.bx-viewport .banner_area .img2,
.bx-viewport .banner_area .img3 {
  display: block !important;
}

@media screen and (min-width: 769px) {
  .search_from_area {
    padding: 18px 5px;
  }

  .search_from_map, .search_from_station {
    padding: 18px 0;
  }

  .search_from_keyword {
    padding: 18px;
  }
}
@media screen and (max-width: 768px) {
  .search_from_map, .search_from_station {
    padding: 8px 0 0 0;
  }

  .search_from_area, .search_from_keyword {
    padding: 10px;
  }
}
@media screen and (min-width: 769px) {
  .movie {
    width: 100%;
    height: 100%;
    z-index: -100;
    overflow: hidden;
  }
  .movie video {
    min-width: 100%;
    min-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .tel_bnr {
    display: table;
    width: 100%;
    height: 70px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 15px;
    color: #fff;
    z-index: 5;
  }
  .tel_bnr > div {
    display: table-cell;
    vertical-align: middle;
  }
  .tel_bnr .tel_lead {
    line-height: 1.5;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
  }
  .tel_bnr .tel_area {
    padding: 0 30px;
    text-align: center;
  }
  .tel_bnr .tel_area strong {
    position: relative;
    margin-right: 15px;
    font-family: "Roboto", sans-serif;
    font-size: 22px;
    font-size: 2.2rem;
  }
  .tel_bnr .tel_area strong:before {
    margin-right: 4px;
    font-size: 20px;
    font-size: 2rem;
    font-family: "emopa";
    vertical-align: baseline;
    content: "\e90e";
  }
  .tel_bnr .tel_area time {
    font-family: "Roboto", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 300;
  }
  .tel_bnr .tel_area span {
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 300;
  }
  .tel_bnr .inquiry_area {
    text-align: right;
  }
  .tel_bnr .inquiry_area .btn_inquiry {
    display: inline-block;
    height: 40px;
    line-height: 40px;
    padding: 0 20px;
    border-radius: 5px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .tel_bnr .inquiry_area .btn_inquiry:before {
    margin-right: 6px;
    font-family: "emopa";
    content: "\e914";
    vertical-align: bottom;
  }

  .top_contents {
    padding: 0 0 70px;
  }
  .top_contents .top_contents_ttl > p {
    margin-bottom: 44px;
  }
  .top_contents .top_contents_ttl > p img {
    display: block;
    width: 430px;
    margin: 0 auto;
  }
  .top_contents .top_contents_ttl > .btn_area {
    padding: 0px;
    margin: 0px;
  }
  .top_contents .top_contents_ttl > .btn_area .btn_box {
    max-width: 440px;
  }
  .top_contents .banner_container {
    margin-top: 30px;
  }
  .top_contents .banner_container p {
    margin-bottom: 10px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .top_contents .banner_container img {
    width: 420px;
    height: 92px;
  }
  .top_contents .banner_container img:hover {
    opacity: 0.8;
  }
  .top_contents .bx-wrapper {
    margin-bottom: 75px;
  }
  .top_contents .banner_area {
    margin-top: 30px;
  }
  .top_contents .banner_area p {
    margin-bottom: 10px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .top_contents .banner_area img {
    width: 420px;
    height: 92px;
  }
  .top_contents .banner_area img:hover {
    opacity: 0.8;
  }

  .subheading,
  .title_area .title {
    color: #ffaabe;
    text-align: center;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
  }

  .subtitle {
    display: block;
    text-align: center;
  }

  .arrow {
    bottom: 120px;
  }
  .arrow span {
    width: 24px;
    height: 24px;
  }

  .btn-search {
    display: table-cell;
    width: auto;
    height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    padding: 0 10px;
    border-radius: 0;
    background-color: #FF8CA7;
    vertical-align: middle;
  }
  .btn-search span {
    display: inline-block;
    position: relative;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .btn-search span:before {
    position: relative;
    top: 1px;
    margin-right: 5px;
    font-family: "emopa";
    text-indent: initial;
    content: "\e911";
  }

  .bx-wrapper {
    width: 80%;
    margin-bottom: 40px;
  }
  .bx-wrapper img {
    max-width: 400px;
  }
}
@media screen and (max-width: 768px) {
  .slide_area {
    z-index: 0;
  }
  .slide_area img {
    width: 100%;
    height: auto;
  }

  .tel_bnr {
    display: table;
    table-layout: fixed;
    width: 100%;
    height: 50px;
    color: #fff;
    z-index: 5;
  }
  .tel_bnr > div {
    display: table-cell;
    vertical-align: middle;
  }
  .tel_bnr > div a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    height: 100%;
    color: #fff;
  }
  .tel_bnr > div a > div {
    display: inline-block;
    text-align: left;
  }
  .tel_bnr .tel_area {
    position: relative;
    line-height: 1;
    text-align: center;
  }
  .tel_bnr .tel_area:before {
    position: absolute;
    top: 6px;
    right: 0;
    width: 1px;
    height: 38px;
    background-color: rgba(255, 255, 255, 0.3);
    content: "";
  }
  .tel_bnr .tel_area strong {
    display: block;
    position: relative;
    margin-bottom: 2px;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .tel_bnr .tel_area strong:before {
    position: relative;
    top: 1px;
    margin-right: 2px;
    font-size: 18px;
    font-size: 1.8rem;
    font-family: "emopa";
    vertical-align: baseline;
    content: "\e90e";
  }
  .tel_bnr .tel_area time {
    font-family: "Roboto", sans-serif;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 300;
  }
  .tel_bnr .tel_area span {
    font-size: 10px;
    font-size: 1rem;
    font-weight: 300;
  }
  .tel_bnr .inquiry_area .btn_inquiry {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .tel_bnr .inquiry_area .btn_inquiry > div {
    display: inline-block;
    position: relative;
    line-height: 1.4;
    padding-left: 25px;
  }
  .tel_bnr .inquiry_area .btn_inquiry > div:before {
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -.9em;
    font-family: "emopa";
    font-size: 16px;
    font-size: 1.6rem;
    content: "\e914";
  }
  .tel_bnr .inquiry_area .tel-text {
    display: block;
  }
  .tel_bnr .inquiry_area .tel-time {
    display: block;
    font-size: 10px;
  }

  .top_contents {
    padding: 50px 0 60px;
  }
  .top_contents p {
    width: 240px;
    height: 77px;
    margin: 15px auto 20px;
  }
  .top_contents p img[src$=".svg"] {
    display: block;
    width: 240px;
    height: 77px;
  }
  .top_contents .search_txtbox {
    display: table-cell;
    position: relative;
    width: 100%;
    height: 100%;
    vertical-align: middle;
  }
  .top_contents .search_txtbox:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background-color: #fff;
    content: "";
    transform-origin: 0% 0%;
    transform: scale(0, 0) translate(-50%, -50%);
    transition: all .3s ease-out;
  }
  .top_contents .search_txtbox.zoom:before {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: scale(1, 1) translate(-50%, -50%);
  }
  .top_contents .search_txtbox span {
    cursor: pointer;
    display: block;
    width: 100%;
    height: 100%;
    line-height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 15px;
    background-color: #fff;
    color: #6E6E6E;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
  }
  .top_contents .btn {
    display: table-cell;
    width: auto;
    height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    padding: 0 10px;
    border-radius: 0;
    background-color: #FF8CA7;
    vertical-align: middle;
  }
  .top_contents .btn span {
    display: inline-block;
    position: relative;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .top_contents .btn span:before {
    position: relative;
    top: 1px;
    margin-right: 5px;
    font-family: "emopa";
    text-indent: initial;
    content: "\e911";
  }
  .top_contents .bx-wrapper {
    width: 80%;
    margin-bottom: 40px;
  }
  .top_contents .bx-wrapper img {
    max-width: 400px;
  }
  .top_contents .banner_container {
    margin: -10px 0 30px;
  }
  .top_contents .banner_area {
    margin: 10px auto  30px;
    width: 80%;
  }
  .top_contents .banner_area a {
    display: block;
  }
  .top_contents .banner_area p {
    height: auto;
    margin-bottom: 10px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .top_contents .banner_area img {
    width: 100%;
  }
  .top_contents .banner_area img:hover {
    opacity: 0.8;
  }

  .btn-search {
    display: table-cell;
    width: auto;
    height: 40px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    line-height: 1;
    padding: 0 10px;
    border-radius: 0;
    background-color: #FF8CA7;
    vertical-align: middle;
  }
  .btn-search span {
    display: inline-block;
    position: relative;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .btn-search span:before {
    position: relative;
    top: 1px;
    margin-right: 5px;
    font-family: "emopa";
    text-indent: initial;
    content: "\e911";
  }

  .arrow {
    display: none;
  }
}
/*------------------------------------------------------------------------
 about
 -------------------------------------------------------------------------*/
.text_area {
  text-align: center;
}
.text_area .wf-heart_line {
  color: #ffaabe;
  position: relative;
}
.text_area .wf-heart_line:after {
  content: "\e909";
  color: rgba(153, 153, 153, 0.15);
  position: absolute;
  top: 5px;
  right: -10%;
}
.text_area h1 {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

.peculiarity {
  color: #fff;
  text-align: center;
}
.peculiarity .service .number {
  display: inline-block;
  border-bottom: 1px solid #fff;
  padding: 0 5px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.peculiarity .service .circle {
  border-radius: 100%;
  overflow: hidden;
  background-position: center center;
  background-size: cover;
  position: relative;
}
.peculiarity .service .circle:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.3);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 100%;
  overflow: hidden;
}
.peculiarity .service .circle:after {
  content: "";
  font-family: 'emopa';
  position: absolute;
  top: 15%;
  left: 0;
  right: 0;
}
.peculiarity .service .circle01:after {
  content: "\e90a";
}
.peculiarity .service .circle02:after {
  content: "\e90b";
}
.peculiarity .service .circle03:after {
  content: "\e90c";
}
.peculiarity .service .text {
  margin: auto;
}

@media screen and (min-width: 769px) {
  .text_area {
    margin: 70px 0 95px;
  }
  .text_area .wf-heart_line {
    font-size: 60px;
    font-size: 6rem;
  }
  .text_area h1 {
    font-size: 30px;
    font-size: 3rem;
    margin: 40px 0;
  }
  .text_area p {
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.7;
  }

  .peculiarity {
    background-color: #ffaabe;
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .peculiarity .service {
    font-size: 15px;
    font-size: 1.5rem;
    display: table-cell;
    vertical-align: top;
    text-align: center;
    border-right: 1px solid #fff;
    line-height: 1.8;
    padding: 40px 5px;
  }
  .peculiarity .service:last-child {
    border-right: 0;
  }
  .peculiarity .service .number {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.5;
  }
  .peculiarity .service .title {
    font-size: 20px;
    font-size: 2rem;
    margin: 10px 0 25px;
  }
  .peculiarity .service .circle {
    width: 250px;
    height: 250px;
    margin: 0 auto 30px;
  }
  .peculiarity .service .circle:after {
    font-size: 90px;
    font-size: 9rem;
  }
  .peculiarity .service .text {
    font-size: 15px;
    font-size: 1.5rem;
    width: 290px;
  }
  .peculiarity .service .btn_box {
    margin-top: 35px;
  }
  .peculiarity .service .btn_box .btn {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .peculiarity .service .circle {
    width: 230px;
    height: 230px;
  }
  .peculiarity .service .text {
    width: 240px;
  }
}
@media screen and (max-width: 768px) {
  .about {
    background-color: #f5f0f0;
    padding: 0 15px 30px;
    margin-top: 0px;
    padding-top: 15px;
  }

  .text_area {
    margin: 10px 0 30px;
  }
  .text_area .wf-heart_line {
    font-size: 30px;
    font-size: 3rem;
  }
  .text_area h1 {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 20px 0;
  }
  .text_area p {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
  }

  .peculiarity .service {
    background-color: #ffaabe;
    margin: 15px 0 0;
    padding: 30px 10px;
    position: relative;
  }
  .peculiarity .service:before {
    content: "";
    width: 0;
    height: 0;
    border-top: 10px solid #f5f0f0;
    border-right: 20px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 20px solid transparent;
    position: absolute;
    top: 0;
    left: 44%;
  }
  .peculiarity .service .number {
    font-size: 20px;
    font-size: 2rem;
  }
  .peculiarity .service .title {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 10px 0 20px;
  }
  .peculiarity .service .circle {
    width: 200px;
    height: 200px;
    margin: 0 auto 15px;
  }
  .peculiarity .service .circle:after {
    font-size: 80px;
    font-size: 8rem;
  }
  .peculiarity .service .btn_box {
    width: 70%;
    margin: 25px auto 0;
  }
}
/*------------------------------------------------------------------------
 ranking
 -------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  .top_ranking .ranking {
    background-color: #f5f0f0;
    padding: 30px 15px 50px;
  }
  .top_ranking .ranking .btn_more {
    display: block;
  }
  .top_ranking .ranking_area {
    width: 100%;
    display: table;
    table-layout: fixed;
    padding-bottom: 30px;
  }
  .top_ranking .ranking_area .ranking_box {
    border-top: none;
    padding: 0;
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .top_ranking .ranking_area .ranking_box:after {
    content: "";
  }
  .top_ranking .ranking_area .ranking_box a {
    width: 100px;
    padding: 0;
  }
  .top_ranking .ranking_area .ranking_box .trimming {
    width: 100px;
    height: 100px;
    float: none;
    margin-bottom: 10px;
  }
  .top_ranking .ranking_area .ranking_box .number {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .top_ranking .ranking_area .ranking_box .link_text {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1.5;
  }
  .top_ranking .ranking_area .ranking_box .link_text span {
    color: #735b61;
    display: inline;
  }
}
@media (max-width: 320px) {
  .top_ranking .ranking_area .ranking_box a {
    width: 90px;
  }
  .top_ranking .ranking_area .ranking_box .trimming {
    width: 90px;
    height: 90px;
  }
}
/*------------------------------------------------------------------------
 case
 -------------------------------------------------------------------------*/
.case {
  background-color: #fff;
}

.case_area {
  display: table;
}
.case_area .case_box {
  display: table-cell;
  vertical-align: top;
  text-align: left;
}
.case_area .case_box a {
  display: block;
  margin: auto;
}
.case_area .case_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-bottom: 10px;
}

@media screen and (min-width: 769px) {
  .case {
    padding: 80px 0;
  }

  .case_area {
    width: 900px;
    margin: auto;
    padding-bottom: 60px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .case_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .case_area .case_box {
    width: 30%;
    padding-right: 15px;
  }
  .case_area .case_box:last-child {
    padding-right: 0;
  }
  .case_area .case_box a:hover .link_text {
    border-bottom-color: #735b61;
  }
  .case_area .case_box a:hover .mask {
    opacity: 1;
  }
  .case_area .case_box .img_box {
    position: relative;
  }
  .case_area .case_box .img_box .mask {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: all .6s ease;
    transition: all .6s ease;
  }
  .case_area .case_box .img_box .caption {
    color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    text-align: center;
    display: table;
    width: 100%;
    height: 100%;
  }
  .case_area .case_box .img_box .caption span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  .case_area .case_box .trimming {
    width: 290px;
    height: 200px;
  }
  .case_area .case_box .link_text {
    border-bottom: 1px solid transparent;
    display: inline;
    font-size: 15px;
    font-size: 1.5rem;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .case_area .case_box {
    padding-right: 0;
  }
  .case_area .case_box a {
    width: 240px;
  }
  .case_area .case_box .trimming {
    width: 240px;
    height: 150px;
  }
  .case_area .case_box .img_box .caption {
    padding-top: 55px;
  }
}
@media screen and (max-width: 768px) {
  .case {
    padding: 30px 15px 50px;
  }

  .case_area {
    width: 100%;
    table-layout: fixed;
    padding-bottom: 30px;
  }
  .case_area .case_box a {
    width: 100px;
  }
  .case_area .case_box a:hover .link_text {
    text-decoration: underline;
  }
  .case_area .case_box .mask {
    display: none;
  }
  .case_area .case_box .trimming {
    width: 100px;
    height: 100px;
  }
  .case_area .case_box p {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .case_area .case_box .link_text {
    line-height: 1.5;
  }
}
@media (max-width: 320px) {
  .case_area .case_box a {
    width: 90px;
  }
  .case_area .case_box .trimming {
    width: 90px;
    height: 90px;
  }
}
/*------------------------------------------------------------------------
 news
 -------------------------------------------------------------------------*/
.news {
  background-color: #f5f0f0;
  padding: 80px 0;
}
.news .btn_view {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

.news_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.news_box .date {
  color: #6E6E6E;
}

@media screen and (min-width: 769px) {
  .news {
    padding: 80px 0;
  }

  .news_area {
    width: 900px;
    margin: auto;
    padding-bottom: 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .news_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .news_area .news_box {
    display: inline-block;
    vertical-align: top;
    margin-right: 8px;
  }
  .news_area .news_box:last-child {
    margin-right: 0;
  }
  .news_area .news_box a {
    background-color: #fff;
    display: block;
    padding: 5px;
    width: 160px;
    height: 350px;
  }
  .news_area .news_box a:hover .trimming {
    opacity: 0.8;
  }
  .news_area .news_box a:hover .text_box .link_text {
    border-bottom-color: #735b61;
  }
  .news_area .news_box a .trimming {
    width: 155px;
    height: 155px;
    margin: auto;
    -webkit-transition: .5s;
    transition: .5s;
  }
  .news_area .news_box a .text_box {
    padding: 10px 5px;
  }
  .news_area .news_box a .text_box .date {
    margin-bottom: 10px;
  }
  .news_area .news_box a .text_box .link_text {
    border-bottom: 1px solid transparent;
    display: inline;
    padding-bottom: 1px;
    -webkit-transition: .5s;
    transition: .5s;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .news_area {
    display: table;
  }
  .news_area .news_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .news_area .news_box:last-child {
    display: none;
  }
  .news_area .news_box a {
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  .news {
    padding: 30px 0 50px;
  }

  .news_box {
    border-top: 1px solid #ddd;
    padding: 15px 10px;
  }
  .news_box .trimming {
    width: 70px;
    height: 70px;
    float: left;
    margin-right: 10px;
  }
  .news_box .text_box .date {
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 5px;
  }
  .news_box .text_box .link_text {
    font-size: 13px;
    font-size: 1.3rem;
    text-decoration: underline;
    margin-left: 80px;
  }
}
.input-box {
  display: table;
  width: 100%;
}
.input-box > div {
  vertical-align: top;
  display: table-cell;
}

/*------------------------------------------------------------------------
recommend
-------------------------------------------------------------------------*/
@media screen and (min-width: 769px) {
  .recommend_cotainer {
    padding: 80px 0 90px;
    background-color: #f5f0f0;
  }
  .recommend_cotainer .recommend_heading {
    margin-bottom: 40px;
    font-size: 30px;
    font-size: 3rem;
  }
  .recommend_cotainer .recommend_area {
    width: 900px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .recommend_cotainer .recommend_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .recommend_cotainer .recommend_area ul {
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
  }
  .recommend_cotainer .recommend_area li {
    position: relative;
    width: 32%;
    margin-right: 2%;
    margin-bottom: 15px;
    cursor: pointer;
  }
  .recommend_cotainer .recommend_area li:nth-child(3n) {
    margin-right: 0;
  }
  .recommend_cotainer .recommend_area a {
    display: block;
  }
  .recommend_cotainer .recommend_area a:hover {
    opacity: 0.8;
  }
  .recommend_cotainer .recommend_area .img_catch {
    width: 100%;
    padding-top: 66%;
    background-size: cover;
    background-position: center;
  }
  .recommend_cotainer .recommend_area .text_wrap {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 10px 10px 8px;
    color: #fff;
    background: rgba(255, 140, 167, 0.8);
    box-sizing: border-box;
  }
  .recommend_cotainer .recommend_area .text_wrap p {
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 400;
  }
}
@media screen and (max-width: 768px) {
  .recommend_cotainer {
    background-color: #fff;
  }
  .recommend_cotainer .recommend_heading {
    padding: 26px 0;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .recommend_cotainer .recommend_area {
    width: 100%;
  }
  .recommend_cotainer .recommend_area li {
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
  .recommend_cotainer .recommend_area li:first-child {
    border-top: 1px solid #ddd;
  }
  .recommend_cotainer .recommend_area a {
    display: table;
    width: 100%;
    height: 100%;
    color: #444444;
  }
  .recommend_cotainer .recommend_area a:hover {
    opacity: 0.8;
  }
  .recommend_cotainer .recommend_area .img_catch {
    display: table-cell;
    width: 100px;
    background-size: cover;
    background-position: center;
  }
  .recommend_cotainer .recommend_area .text_wrap {
    position: relative;
    padding: 30px 40px 30px 20px;
  }
  .recommend_cotainer .recommend_area .text_wrap:after {
    position: absolute;
    top: 50%;
    right: 12px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border: 1px solid;
    border-color: #FFA9BD #FFA9BD transparent transparent;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
  }
}
/*------------------------------------------------------------------------
 search_contents
 -------------------------------------------------------------------------*/
.search_contents {
  background-color: #f5f0f0;
}
.search_contents .feature {
  padding: 0;
}
.search_contents .h1_area h1 {
  font-size: 30px;
  font-size: 3rem;
  padding-top: 30px;
}

@media screen and (min-width: 769px) {
  .search_title {
    background-image: url(../images/mainvisual_search.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 70px;
    padding: 150px 0;
    position: relative;
    z-index: 0;
  }
  .search_title:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.2);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }
}
@media screen and (max-width: 768px) {
  .search {
    padding: 60px 0 0;
  }
  .search .title_area {
    background-image: url(../images/mainvisual_search.jpg);
    background-size: cover;
    color: #fff;
    padding: 20px 0;
  }
  .search .title_area .title {
    color: #fff;
  }
  .search .title_area .subtitle {
    margin-bottom: 5px;
  }
  .search .h1_area .subheading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 30px 10px;
  }
}
@media screen and (min-width: 769px) {
  .search_title {
    background-image: url(../images/mainvisual_search.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 70px;
    padding: 150px 0;
    position: relative;
    z-index: 0;
  }
  .search_title:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.2);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }
}
@media screen and (max-width: 768px) {
  .search {
    padding: 60px 0 0;
  }
  .search .title_area {
    background-image: url(../images/mainvisual_search.jpg);
    background-size: cover;
    color: #fff;
    padding: 20px 0;
  }
  .search .title_area .title {
    color: #fff;
  }
  .search .title_area .subtitle {
    margin-bottom: 5px;
  }
  .search .h1_area .subheading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 30px 10px;
  }
}
/*------------------------------------------------------------------------
 area_search
 -------------------------------------------------------------------------*/
.area_search {
  width: 900px;
  margin: auto;
  padding: 35px 0 30px;
}
@media (max-width: 900px) {
  .area_search {
    width: 98%;
  }
}
.area_search .title {
  font-size: 25px;
  font-size: 2.5rem;
  margin-bottom: 30px;
}
.area_search .tab {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  float: left;
}
.area_search .tab li {
  background-color: #ffe2e2;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  color: #735b61;
  cursor: pointer;
  font-size: 24px;
  font-size: 2.4rem;
  float: left;
  text-align: center;
  padding: 0 25px;
  height: 162px;
  margin-bottom: 10px;
  margin-left: -23px;
}
.area_search .tab li.select {
  background-color: #F8ADC4;
  color: #fff;
}
.area_search .tab_contents {
  background-color: #fff;
  margin-left: 90px;
  height: 506px;
  position: relative;
}
.area_search .tab_contents .contents li.hide {
  display: none;
}
.area_search .tab_contents .contents li img {
  height: 450px;
  margin: 20px 0 0 20px;
}
.area_search .tab_contents .address_box,
.area_search .tab_contents .keyword_box {
  background-color: #8b96ad;
  color: #fff;
  padding: 15px 10px;
  position: absolute;
}
.area_search .tab_contents .address_box p,
.area_search .tab_contents .keyword_box p {
  font-size: 15px;
  font-size: 1.5rem;
  margin-bottom: 10px;
}
.area_search .tab_contents .address_box p i,
.area_search .tab_contents .keyword_box p i {
  font-size: 14px;
  font-size: 1.4rem;
  padding-right: 3px;
}
.area_search .tab_contents .address_box input,
.area_search .tab_contents .keyword_box input {
  width: 200px;
  padding: 10px;
  font-size: 13px;
  font-size: 1.3rem;
}
.area_search .tab_contents .address_box .search_box,
.area_search .tab_contents .keyword_box .search_box {
  position: relative;
}
.area_search .tab_contents .address_box .search_box dd,
.area_search .tab_contents .keyword_box .search_box dd {
  position: absolute;
  top: 10px;
  right: 10px;
}
.area_search .tab_contents .address_box .search_box dd button,
.area_search .tab_contents .keyword_box .search_box dd button {
  display: block;
  background: none;
  border: none;
}
.area_search .tab_contents .address_box .search_box dd button .wf-search,
.area_search .tab_contents .keyword_box .search_box dd button .wf-search {
  color: #6E6E6E;
  font-size: 15px;
  font-size: 1.5rem;
}
.area_search .tab_contents .address_box {
  top: 20px;
  right: 20px;
}
.area_search .tab_contents .keyword_box {
  top: 150px;
  right: 20px;
}

/*------------------------------------------------------------------------
 search
 -------------------------------------------------------------------------*/
.search {
  background-color: #f5f0f0;
}

.category_search .category_area {
  padding-left: 16px;
  padding-right: 16px;
  background-color: #fff;
}
.category_search .category_area ul {
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flexbox;
  display: -moz-flexbox;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.category_search .category_area li {
  border-bottom: 1px solid #ddd;
  margin-bottom: -1px;
}
.category_search .category_area input[type=checkbox] {
  display: none;
}
.category_search .category_area input[type=checkbox]:checked + label:before {
  content: "\e908";
  font-family: 'emopa';
  font-size: 10px;
  font-size: 1rem;
  background-color: #ffaabe;
  border: 1px solid #FF8CA7;
  color: #fff;
}
.category_search .category_area label {
  cursor: pointer;
  display: inline-block;
  position: relative;
  line-height: 1.3;
  width: 90%;
}
.category_search .category_area label:before {
  content: "";
  border: 1px solid #999999;
  display: inline-block;
  position: absolute;
  left: 0;
}
.category_search .category_name {
  color: #FF8CA7;
  border-bottom: solid 1px #FF8CA7;
  text-align: left;
  transform: scale(1, 1);
}
.category_search .category_name i {
  vertical-align: middle;
}
.category_search .area_choice .acmenu {
  border-bottom: 1px solid #ddd;
  cursor: pointer;
  position: relative;
}
.category_search .area_choice .acmenu.nagoya {
  border-bottom: none;
}
.category_search .area_choice .acmenu:after {
  content: "\e904";
  color: #ffaabe;
  font-family: 'emopa';
  right: 25px;
  position: absolute;
}
.category_search .area_choice .acmenu.select:after {
  content: "\e905";
}
.category_search .area_choice ul {
  display: none;
  background-color: #f5f5f5;
}
.category_search .personnel_choice .select_box {
  display: inline-block;
  position: relative;
}
.category_search .personnel_choice .select_box:before {
  content: "\e907";
  color: #999999;
  cursor: pointer;
  font-family: 'emopa';
  position: absolute;
  right: 10px;
  pointer-events: none;
  font-size: 0px\9;
}
.category_search .personnel_choice select {
  border: 1px solid #ddd;
  background-color: #fff;
  border-radius: 0;
  cursor: pointer;
}
.category_search .zip_notes {
  margin: -10px 15px 0;
  padding-bottom: 15px;
  color: #999999;
  line-height: 1.5;
}
.category_search .zip_notes span:before {
  content: "※";
  padding-right: 2px;
}
.category_search .btn_area .wf-search {
  padding-right: 10px;
}
.category_search .btn_area .reset {
  cursor: pointer;
}

@media screen and (min-width: 769px) {
  .search {
    padding: 50px 0 100px;
  }

  .category_search {
    width: 900px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .category_search {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .category_search .category_area {
    margin-bottom: 50px;
  }
  .category_search .category_area li {
    font-size: 17px;
    padding-left: 3%;
    width: 30.3333%;
    display: inline-block;
  }
  .category_search .category_area input[type=checkbox]:checked + label:before {
    padding-left: 5px;
    padding-top: 5px;
    width: 15px;
    height: 15px;
  }
  .category_search .category_area input[type=text] {
    border: 1px solid #ddd;
    background-color: #fff;
    border-radius: 0;
    font-size: 17px;
    font-size: 1.7rem;
    width: 70%;
    padding: 10px;
    margin: 25px 3%;
  }
  .category_search .category_area label {
    padding: 25px 0 25px 30px;
  }
  .category_search .category_area label:before {
    top: 22px;
    width: 20px;
    height: 20px;
  }
  .category_search .category_name {
    font-size: 20px;
    font-size: 2rem;
    padding: 20px 0 13px 5px;
  }
  .category_search .category_name i {
    font-size: 30px;
    font-size: 3rem;
    padding-right: 15px;
  }
  .category_search .area_choice .acmenu {
    font-size: 17px;
    font-size: 1.7rem;
    padding: 23px 25px;
  }
  .category_search .area_choice ul li {
    width: 97%;
    margin-bottom: 0;
  }
  .category_search .area_choice ul li.capital_area {
    width: 97%;
  }
  .category_search .personnel_choice .select_box {
    margin: 45px 25px;
  }
  .category_search .personnel_choice .select_box:before {
    font-size: 16px;
    font-size: 1.6rem;
    top: 22%;
  }
  .category_search .personnel_choice select {
    font-size: 17px;
    font-size: 1.7rem;
    width: 250px;
    height: 50px;
    padding: 10px;
  }
  .category_search .zip_notes {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .category_search .btn_area {
    margin-top: 80px;
    position: relative;
  }
  .category_search .btn_area .reset {
    color: #735b61;
    text-decoration: underline;
    position: absolute;
    top: 30%;
    right: 3%;
  }
}
@media screen and (max-width: 768px) {
  .category_search {
    padding-bottom: 70px;
  }
  .category_search .category_area {
    margin-bottom: 30px;
  }
  .category_search .category_area ul {
    border-bottom: 1px solid #ddd;
  }
  .category_search .category_area li {
    font-size: 12px;
    font-size: 1.2rem;
    display: inline-block;
    padding-left: 10px;
    box-sizing: border-box;
    width: 49%;
    line-height: 1.4;
  }
  .category_search .category_area li:nth-child(odd) {
    border-right: 1px solid #ddd;
  }
  .category_search .category_area input[type=text] {
    border: 1px solid #999999;
    border-radius: 0;
    font-size: 16px;
    font-size: 1.6rem;
    width: 80%;
    padding: 10px;
    margin: 20px 10px;
  }
  .category_search .category_area input[type=checkbox]:checked + label:before {
    padding-left: 2px;
    padding-top: 2px;
    width: 11px;
    height: 11px;
  }
  .category_search .category_area label {
    padding: 15px 0 15px 25px;
  }
  .category_search .category_area label:before {
    top: 14px;
    width: 13px;
    height: 13px;
  }
  .category_search .category_name {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 15px 0px 10px 0px;
  }
  .category_search .category_name i {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 5px;
  }
  .category_search .area_choice .acmenu {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 10px;
  }
  .category_search .area_choice ul li {
    width: 100%;
  }
  .category_search .area_choice ul li:nth-child(odd) {
    border-right: none;
  }
  .category_search .personnel_choice .select_box {
    margin: 20px 10px;
  }
  .category_search .personnel_choice .select_box:before {
    font-size: 16px;
    font-size: 1.6rem;
    top: 25%;
  }
  .category_search .personnel_choice select {
    width: 250px;
    height: 40px;
    padding: 5px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .category_search .zip_notes {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .category_search .zip_notes span {
    display: block;
  }
  .category_search .btn_area .sp_fixed_btn {
    background-color: rgba(255, 255, 255, 0.8);
    display: block;
    width: 100%;
    padding: 10px 0;
    position: fixed;
    bottom: 0;
  }
  .category_search .btn_area .reset {
    font-size: 13px;
    font-size: 1.3rem;
    text-align: center;
    padding: 5px 0;
  }
}
@media (max-width: 320px) {
  .category_search .category_area li {
    font-size: 12px;
    font-size: 1.2rem;
    display: inline-block;
    padding-left: 10px;
    box-sizing: border-box;
    width: 49%;
  }
  .category_search .category_area li:nth-child(odd) {
    border-right: 1px solid #ddd;
  }
  .category_search .category_area label {
    box-sizing: border-box;
  }
}
/*------------------------------------------------------------------------
 search_list
 -------------------------------------------------------------------------*/
.search_list_contents {
  background-color: #f5f0f0;
}
.search_list_contents .title {
  max-width: 978px;
  margin: 0 auto 20px auto;
  background-color: none;
  color: #6E6E6E;
  font-size: 20px;
  font-size: 2rem;
  padding: 5px 15px;
  line-height: 1.4;
}

.select_map-area {
  position: relative;
  overflow: hidden;
  display: flex;
  max-width: 978px;
  margin: auto;
}

.search_map-area {
  position: relative;
  overflow: hidden;
  display: flex;
  max-width: 978px;
  height: 420px;
  margin: auto;
}
.search_map-area .place-list {
  position: absolute;
  z-index: 30;
  height: 100%;
  overflow: hidden;
  width: 30%;
  left: 0;
  box-sizing: border-box;
  background-color: #fff;
  border-right: solid 2px #ff9800;
  overflow-y: scroll;
  transition: 0.3s linear;
  -webkit-transition: linear 0.3s;
  -moz-transition: linear 0.3s;
  -o-transition: linear 0.3s;
  /*スクロールバー全体*/
  /*スクロールバーの軌道*/
  /*スクロールバーの動く部分*/
}
.search_map-area .place-list ::-webkit-scrollbar {
  width: 10px;
}
.search_map-area .place-list ::-webkit-scrollbar-track {
  border-radius: 10px;
  box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
}
.search_map-area .place-list ::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 50, 0.5);
  border-radius: 10px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.3);
}
.search_map-area .place-list .box-wrap {
  width: 100%;
  border-bottom: solid 1px #bdbdbd;
  padding-top: 10px;
}
.search_map-area .place-list .box-wrap:hover {
  background-color: #f9f5e7;
  cursor: pointer;
}
.search_map-area .place-list .box-wrap .top-box {
  width: 100%;
  display: flex;
  margin-bottom: 4px;
  box-sizing: border-box;
}
.search_map-area .place-list .box-wrap .top-box .pic {
  width: 60px;
  height: 60px;
  margin-left: 10px;
}
.search_map-area .place-list .box-wrap .top-box .pic img {
  width: 100%;
}
.search_map-area .place-list .box-wrap .top-box .place-name {
  margin-left: 8px;
  margin-right: 8px;
  width: 60%;
}
.search_map-area .place-list .box-wrap .top-box .place-name .name {
  color: #FF8CA7;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.2;
  margin-bottom: 8px;
}
.search_map-area .place-list .box-wrap .top-box .place-name .type {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1;
}
.search_map-area .place-list .box-wrap .top-box .star {
  width: 20px;
  height: 20px;
}
.search_map-area .place-list .box-wrap .top-box .star img {
  width: 100%;
}
.search_map-area .place-list .box-wrap .bottom {
  display: flex;
  justify-content: space-between;
  margin: 0 12px 0 12px;
}
.search_map-area .place-list .box-wrap .bottom .point {
  flex: grow;
  display: flex;
  font-size: 13px;
  font-size: 1.3rem;
}
.search_map-area .place-list .box-wrap .bottom .point .icon {
  font-size: 11px;
  font-size: 1.1rem;
  width: 18px;
  height: 18px;
  color: #fff;
  background-color: #999;
  border-radius: 2px;
  text-align: center;
  margin-right: 2px;
}
.search_map-area .place-list .box-wrap .bottom .point .icon.circle {
  border-radius: 14px;
}
.search_map-area .place-list.close {
  left: -30%;
}
.search_map-area .place-list .favo i {
  color: #d8d5d5;
  font-size: 20px;
  font-size: 2rem;
  padding: 5px 7px 5px 0;
}
.search_map-area .place-list .favo.doing i {
  color: #F3BD00;
}
.search_map-area .map {
  position: relative;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden;
  background-color: antiquewhite;
}
.search_map-area .map .placename {
  font-size: 14px;
  font-size: 1.4rem;
  color: #735b61;
  font-weight: bold;
  line-height: 1.2;
}
.search_map-area .map .bar-switch {
  display: none;
  width: 30px;
  height: 100%;
  background-color: #ff9800;
  cursor: pointer;
}
.search_map-area .map .bar-switch p {
  color: #fff;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1.4;
  padding-left: 4px;
  padding-top: 10px;
}
.search_map-area .map .switch {
  position: absolute;
  top: 0;
  left: 30%;
  width: 30px;
  height: 60px;
  z-index: 100;
  cursor: pointer;
  background: url(../images/half-circle-l.svg);
  background-size: 30px;
  transition: 0.3s linear;
  -webkit-transition: linear 0.3s;
  -moz-transition: linear 0.3s;
  -o-transition: linear 0.3s;
}
.search_map-area .map .switch img {
  position: absolute;
  top: 20px;
  left: 5px;
  display: block;
  width: 35%;
}
.search_map-area .map .switch.close {
  left: 0;
}
.search_map-area .map .badge {
  padding: 4px 5px;
  border-radius: 14px;
  background-color: #ff9800;
  color: #fff;
  font-size: 13px;
  font-size: 1.3rem;
}

.search_list .result_none {
  clear: both;
}
.search_list .research_btn_area .wf-search {
  padding-right: 5px;
}
.search_list .btns_area .wf-search {
  padding-right: 10px;
}
.search_list .other_wedding-hall_area {
  padding-top: 15px;
  clear: both;
}
.search_list .other_wedding-hall_area .other_wedding-hall_inner {
  padding: 20px 15px;
  background: #fff;
}
.search_list .other_wedding-hall_area .headline {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  color: #8b96ad;
}
.search_list .other_wedding-hall_area .headline:before, .search_list .other_wedding-hall_area .headline:after {
  display: inline-block;
  width: 4px;
  background: #8b96ad;
  content: "";
  vertical-align: middle;
}
.search_list .other_wedding-hall_area .other_wedding-hall {
  margin-top: 5px;
}
.search_list .other_wedding-hall_area .other_wedding-hall li {
  display: inline-block;
  padding: 6px 10px 0 4px;
}
.search_list .other_wedding-hall_area .other_wedding-hall li a {
  color: #735b61;
}
.search_list .distance_area {
  clear: both;
}
.search_list .distance_area .distance_notes {
  margin-top: 15px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #f091a0;
  color: #f091a0;
  line-height: 1.5;
}
.search_list .distance_area .distance_notes li:before {
  display: inline-block;
  padding-right: 3px;
  content: "●";
  font-size: 15px;
  font-size: 1.5rem;
}

.search_list_area .list_box {
  position: relative;
  background-color: #fff;
}
.search_list_area .list_box .official_ribbon {
  position: absolute;
  top: 0;
  left: 0;
  width: 64px;
}
.search_list_area .list_box .distance_label .distance {
  display: inline-block;
  padding: 3px 20px;
  color: #8b96ad;
}
.search_list_area .list_box .distance_label .distance span {
  padding-left: 10px;
}
.search_list_area .list_box .venue_name {
  display: inline-block;
  line-height: 1.2;
  margin-bottom: 10px;
  color: #ffaabe;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
}
.search_list_area .list_box .venue_name .venue_name_kana {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  vertical-align: middle;
  opacity: .8;
}
.search_list_area .list_box img {
  display: block;
  width: 100%;
}
.search_list_area .list_box .favo {
  display: table;
  cursor: pointer;
  line-height: 1;
  margin-bottom: 10px;
}
.search_list_area .list_box .favo i,
.search_list_area .list_box .favo span {
  display: table-cell;
  vertical-align: middle;
}
.search_list_area .list_box .favo i:before {
  position: relative;
  top: -2px;
}
.search_list_area .list_box .special, .search_list_area .list_box .video {
  display: inline-block;
  padding-right: 16px;
  font-size: 12px;
  font-size: 1.2rem;
}
.search_list_area .list_box .wf-heart3 {
  color: #ffaabe;
  font-size: 12px;
  font-size: 1.2rem;
}
.search_list_area .list_box .wf-movie {
  color: #8b96ad;
  font-size: 14px;
  font-size: 1.4rem;
}
.search_list_area .list_box .wf-heart3, .search_list_area .list_box .wf-movie {
  padding-right: 4px;
}

@media screen and (min-width: 769px) {
  .search_list_contents {
    padding: 30px;
  }
  .search_list_contents .numberof {
    margin-bottom: 21px;
  }
  .search_list_contents .search_tab {
    max-width: 978px;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    padding: 0;
    margin: 0 auto 20px auto;
    border-bottom: solid 4px #ff9800;
  }
  .search_list_contents .search_tab li {
    width: 150px;
    text-align: center;
    color: #ff9800;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 5px 10px;
    background-color: #fff;
    border-radius: 5px 5px 0 0;
    border: solid 1px #ff9800;
    border-bottom: none;
    margin-right: 10px;
    cursor: pointer;
  }
  .search_list_contents .search_tab li.tab-active {
    color: #fff;
    background-color: #ff9800;
  }

  .search_list_contents_inner {
    display: table;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
  }
  .search_list_contents_inner .search_list {
    display: table-cell;
  }

  .search_map_input-area {
    max-width: 978px;
    box-sizing: border-box;
    margin: auto;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    background-color: #fff;
    margin-bottom: 20px;
    padding: 10px 15px;
  }
  .search_map_input-area.min-w {
    min-width: 978px;
  }
  .search_map_input-area .search_result {
    min-width: 140px;
    display: table;
    line-height: 1;
  }
  .search_map_input-area .search_result .count {
    display: table;
    padding-right: 25px;
    padding-bottom: 8px;
  }
  .search_map_input-area .search_result .count em {
    margin-right: 5px;
    color: #FF8CA7;
    font-size: 28px;
    font-size: 2.8rem;
    font-weight: 600;
  }
  .search_map_input-area .search_result .count span {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .search_map_input-area .search_result .total {
    display: table;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_map_input-area .search_result .total strong {
    display: inline-block;
    margin-left: 10px;
  }
  .search_map_input-area .search-address {
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 5px;
  }
  .search_map_input-area .search-address dl {
    display: -webkit-flex;
    display: flex;
    align-items: center;
    margin: auto;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_map_input-area .search-address dl dt {
    font-weight: bold;
    color: #5f687a;
    line-height: 1.4;
    margin: 0 10px;
  }
  .search_map_input-area .search-address dl dd input {
    width: 210px;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 5px 30px 5px 10px;
    border: solid 1px #ddd;
    margin-top: 21px;
  }
  .search_map_input-area .search-address dl span {
    display: block;
    color: #FF8CA7;
  }
  .search_map_input-area .search-select {
    width: 42%;
    display: flex;
    justify-content: center;
    padding-top: 5px;
  }
  .search_map_input-area .search-select dl {
    display: -webkit-flex;
    display: flex;
    align-items: center;
    margin: auto;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_map_input-area .search-select dl dt {
    font-weight: bold;
    color: #5f687a;
    line-height: 1.4;
    margin: 0 10px;
  }
  .search_map_input-area .search-select dl dd .select_box {
    width: 80px;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 5px 10px 5px 10px;
    border: solid 1px #ddd;
  }
  .search_map_input-area .search-select dl dd .select_box select {
    font-size: 14px;
    font-size: 1.4rem;
    background-color: #fff;
    width: 100%;
  }
  .search_map_input-area .search-select dl dd .select_box select option {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_map_input-area .search-select dl span {
    display: block;
    color: #FF8CA7;
  }

  .search_detail_area {
    display: table-cell;
    width: 240px;
    padding-right: 20px;
    vertical-align: top;
  }
  .search_detail_area .search_cont {
    margin-bottom: 5px;
    padding: 15px;
    background-color: #fff;
  }
  .search_detail_area .search_ttl {
    display: block;
    line-height: 1;
    margin: -15px -15px 12px -15px;
    padding: 9px 10px 7px;
    background-color: #ffaabe;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
  }
  .search_detail_area dl {
    margin-bottom: 20px;
  }
  .search_detail_area dl:last-child {
    margin-bottom: 5px;
  }
  .search_detail_area dl dt {
    line-height: 1;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #FF8CA7;
    color: #FF8CA7;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 500;
  }
  .search_detail_area dl dt span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_detail_area dl dd {
    margin-top: 10px;
  }
  .search_detail_area dl dd:first-of-type {
    margin-top: 0;
  }
  .search_detail_area dl dd [class^="btn_area_"] {
    display: block;
    float: right;
    background-color: #f5f5f5;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
  }
  .search_detail_area dl dd .btn_area_change {
    color: #FF8CA7;
  }
  .search_detail_area dl dd .btn_area_change:hover {
    background-color: #F8ADC4;
    color: #fff;
  }
  .search_detail_area dl dd .btn_area_remove {
    overflow: hidden;
    position: relative;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    white-space: nowrap;
    text-indent: -9999px;
  }
  .search_detail_area dl dd .btn_area_remove:hover {
    background-color: #999999;
  }
  .search_detail_area dl dd .btn_area_remove:hover:before, .search_detail_area dl dd .btn_area_remove:hover:after {
    background-color: #fff;
  }
  .search_detail_area dl dd .btn_area_remove:before, .search_detail_area dl dd .btn_area_remove:after {
    position: absolute;
    top: 10px;
    left: 5px;
    width: 10px;
    height: 1px;
    background-color: #6E6E6E;
    content: "";
  }
  .search_detail_area dl dd .btn_area_remove:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .search_detail_area dl dd .btn_area_remove:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .search_detail_area dl dd.area_children {
    position: relative;
    margin-top: 0;
    padding: 4px 0 0 15px;
  }
  .search_detail_area dl dd.area_children:before {
    position: absolute;
    top: 50%;
    left: 5px;
    width: 6px;
    height: 6px;
    margin-top: -4px;
    border-bottom: 1px solid #999999;
    border-left: 1px solid #999999;
    content: "";
  }
  .search_detail_area dl dd.area_children > span {
    display: block;
    float: left;
    overflow: hidden;
    width: 163px;
    text-overflow: ellipsis;
    font-size: 14px;
    font-size: 1.4rem;
    white-space: nowrap;
  }
  .search_detail_area dl dd .select_box {
    position: relative;
  }
  .search_detail_area dl dd .select_box select {
    width: 100%;
    padding: 5px 30px 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fff;
    font-size: 14px;
  }
  .search_detail_area dl dd .select_box:before {
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 10px;
    line-height: 1;
    margin-top: -.5em;
    color: #6E6E6E;
    font-family: 'emopa';
    font-size: 10px;
    font-size: 1rem;
    content: "\e907";
  }
  .search_detail_area dl dd li {
    margin-bottom: 5px;
  }
  .search_detail_area dl dd .checkbox {
    cursor: pointer;
  }
  .search_detail_area dl dd .checkbox input[type="checkbox"] {
    display: none;
  }
  .search_detail_area dl dd .checkbox input[type="checkbox"]:checked + span:before {
    background-color: #ffaabe;
    border: 1px solid #ffaabe;
  }
  .search_detail_area dl dd .checkbox input[type="checkbox"]:checked + span:after {
    opacity: 1;
  }
  .search_detail_area dl dd .checkbox span {
    display: inline-block;
    position: relative;
    padding-left: 21px;
  }
  .search_detail_area dl dd .checkbox span:before, .search_detail_area dl dd .checkbox span:after {
    position: absolute;
    content: "";
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .search_detail_area dl dd .checkbox span:before {
    top: 2px;
    left: 0;
    width: 14px;
    height: 14px;
    border: 1px solid #bbb;
  }
  .search_detail_area dl dd .checkbox span:after {
    opacity: 0;
    top: 3px;
    left: 3px;
    color: #fff;
    font-family: 'emopa';
    font-size: 10px;
    content: "\e908";
  }
  .search_detail_area dl dd input[type="text"] {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 10px;
    border: 1px solid #ddd;
    font-size: 14px;
  }
  .search_detail_area .btn_search_word {
    width: 100%;
    padding: 6px 10px 4px;
    border-radius: 5px;
    background-color: #ffaabe;
    color: #fff;
    font-size: 14px;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .search_detail_area .btn_search_word:hover {
    background-color: #735b61;
  }
  .search_detail_area .btn_search_word span {
    position: relative;
  }
  .search_detail_area .btn_search_word span:before {
    position: relative;
    top: -1px;
    margin-right: 6px;
    font-family: "emopa";
    vertical-align: middle;
    content: "\e911";
  }

  .search_list {
    position: relative;
    max-width: 980px;
    margin: 0 auto;
    vertical-align: top;
  }
  .search_list .title {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 13px;
  }
  .search_list .result_none {
    padding: 30px 0;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .search_list .research_btn_area {
    width: 240px;
    position: absolute;
    top: 55px;
    right: 0;
  }
  .search_list .btns_area .btn {
    font-size: 20px;
    font-size: 2rem;
    width: 430px;
    margin: 20px auto;
  }
  .search_list .btns_area .btn_view {
    padding: 10px 0;
  }
  .search_list .btns_area .btn_view:after {
    top: 18px;
    right: 25%;
  }
  .search_list .other_wedding-hall_area .headline {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .search_list .other_wedding-hall_area .headline:before, .search_list .other_wedding-hall_area .headline:after {
    height: 20px;
    margin: 0px 10px 5px;
  }
  .search_list .other_wedding-hall_area .other_wedding-hall {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_list .other_wedding-hall_area .other_wedding-hall a {
    padding-bottom: 1px;
    border-bottom: 1px solid transparent;
  }
  .search_list .other_wedding-hall_area .other_wedding-hall a:hover {
    border-bottom: 1px solid #735b61;
  }
  .search_list .distance_notes {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_list .distance_notes li {
    display: inline;
  }

  .search_list_area .list_box {
    padding: 23px 20px;
    margin-bottom: 20px;
  }
  .search_list_area .list_box .official_ribbon {
    width: 75px;
  }
  .search_list_area .list_box .distance_label {
    margin-left: -20px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .search_list_area .list_box .venue_name {
    font-size: 28px;
    font-size: 2.8rem;
    line-height: 1;
  }
  .search_list_area .list_box .venue_name:hover {
    color: #735b61;
  }
  .search_list_area .list_box .catch {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 13px;
  }
  .search_list_area .list_box .box {
    position: relative;
    float: left;
    width: 30%;
    padding-right: 3%;
  }
  .search_list_area .list_box .box > a {
    display: block;
    position: relative;
    margin-bottom: 7px;
  }
  .search_list_area .list_box .box .official_partner {
    position: absolute;
    top: 5px;
    left: 5px;
    width: 50px;
    height: 50px;
  }
  .search_list_area .list_box .box .favo i {
    color: #d8d5d5;
    font-size: 20px;
    font-size: 2rem;
    padding: 5px 7px 5px 0;
  }
  .search_list_area .list_box .box .favo.doing i {
    color: #F3BD00;
  }
  .search_list_area .list_box .box .video {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_list_area .list_box .box .video .wf-movie {
    padding: 5px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .search_list_area .list_box .box.vr > a:after {
    display: block;
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 40px;
    height: 40px;
    background: url(../images/vr_label_pc.png) no-repeat;
    background-size: 40px;
    content: "";
  }
  .search_list_area .list_box .table_box {
    float: left;
    width: 67%;
    margin-bottom: 40px;
  }
  .search_list_area .list_box .table_box dl {
    display: table;
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
  .search_list_area .list_box .table_box dl:first-child {
    border-top: 1px solid #ddd;
  }
  .search_list_area .list_box .table_box dt, .search_list_area .list_box .table_box dd {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    padding: 10px;
    word-break: break-all;
  }
  .search_list_area .list_box .table_box dt {
    background-color: #f0eeee;
    width: 30%;
  }
  .search_list_area .list_box .table_box dt .wf-heart3 {
    padding: 0 0 0 6px;
  }
  .search_list_area .list_box .btn_area {
    clear: both;
  }

  #venue_tokyo_search .background-gray {
    background-image: url("../images/map-tokyo.png");
    background-size: contain;
    width: 596px;
  }

  #venue_kansai_search .background-gray {
    background-image: url("../images/map-kansai.png");
    background-size: contain;
    width: 596px;
    height: 435px;
  }

  #venue_tokai_search .background-gray {
    background-image: url("../images/map-tokai.png");
    background-size: contain;
    height: 314px;
    width: 596px;
  }

  #venue_tokyo_search .background-gray, #venue_kansai_search .background-gray, #venue_tokai_search .background-gray {
    position: relative;
  }
  #venue_tokyo_search .background-gray .btn_map_select, #venue_kansai_search .background-gray .btn_map_select, #venue_tokai_search .background-gray .btn_map_select {
    border: solid 1px #ddd;
    background-color: white;
    border-radius: 4px;
    height: 20px;
    line-height: 20px;
    text-align: left;
    position: absolute;
  }
  #venue_tokyo_search .background-gray .btn_map_select:hover, #venue_kansai_search .background-gray .btn_map_select:hover, #venue_tokai_search .background-gray .btn_map_select:hover {
    background-color: #735B61;
    border: solid 1px #735B61;
    transition: 0.2s;
  }
  #venue_tokyo_search .background-gray .btn_map_select:hover a, #venue_kansai_search .background-gray .btn_map_select:hover a, #venue_tokai_search .background-gray .btn_map_select:hover a {
    color: #fff;
    transition: 0.2s;
  }
  #venue_tokyo_search .background-gray .btn_map_select:after, #venue_kansai_search .background-gray .btn_map_select:after, #venue_tokai_search .background-gray .btn_map_select:after {
    display: block;
    clear: both;
    content: "";
  }
  #venue_tokyo_search .background-gray .btn_map_select a, #venue_kansai_search .background-gray .btn_map_select a, #venue_tokai_search .background-gray .btn_map_select a {
    margin: 0;
    padding: 4px 8px;
  }
  #venue_tokyo_search .background-gray #千葉, #venue_kansai_search .background-gray #千葉, #venue_tokai_search .background-gray #千葉 {
    left: 580px;
    top: 326px;
  }
  #venue_tokyo_search .background-gray #大宮・浦和, #venue_kansai_search .background-gray #大宮・浦和, #venue_tokai_search .background-gray #大宮・浦和 {
    top: 14px;
    left: 244px;
  }
  #venue_tokyo_search .background-gray #六本木・西麻布, #venue_kansai_search .background-gray #六本木・西麻布, #venue_tokai_search .background-gray #六本木・西麻布 {
    top: 277px;
    left: 219px;
  }
  #venue_tokyo_search .background-gray #丸の内・東京・日本橋, #venue_kansai_search .background-gray #丸の内・東京・日本橋, #venue_tokai_search .background-gray #丸の内・東京・日本橋 {
    top: 210px;
    left: 429px;
  }
  #venue_tokyo_search .background-gray #豊洲・お台場, #venue_kansai_search .background-gray #豊洲・お台場, #venue_tokai_search .background-gray #豊洲・お台場 {
    top: 389px;
    left: 338px;
  }
  #venue_tokyo_search .background-gray #池袋, #venue_kansai_search .background-gray #池袋, #venue_tokai_search .background-gray #池袋 {
    top: 67px;
    left: 243px;
  }
  #venue_tokyo_search .background-gray #新宿, #venue_kansai_search .background-gray #新宿, #venue_tokai_search .background-gray #新宿 {
    top: 147px;
    left: 179px;
  }
  #venue_tokyo_search .background-gray #その他東京, #venue_kansai_search .background-gray #その他東京, #venue_tokai_search .background-gray #その他東京 {
    top: 125px;
    left: 25px;
  }
  #venue_tokyo_search .background-gray #横浜, #venue_kansai_search .background-gray #横浜, #venue_tokai_search .background-gray #横浜 {
    top: 455px;
    left: 280px;
  }
  #venue_tokyo_search .background-gray #みなとみらい, #venue_kansai_search .background-gray #みなとみらい, #venue_tokai_search .background-gray #みなとみらい {
    top: 455px;
    left: 150px;
  }
  #venue_tokyo_search .background-gray #新横浜, #venue_kansai_search .background-gray #新横浜, #venue_tokai_search .background-gray #新横浜 {
    top: 424px;
    left: 234px;
  }
  #venue_tokyo_search .background-gray #その他神奈川（川崎・湘南）, #venue_kansai_search .background-gray #その他神奈川（川崎・湘南）, #venue_tokai_search .background-gray #その他神奈川（川崎・湘南） {
    top: 403px;
    left: 20px;
  }
  #venue_tokyo_search .background-gray #関内・馬車道・元町中華街, #venue_kansai_search .background-gray #関内・馬車道・元町中華街, #venue_tokai_search .background-gray #関内・馬車道・元町中華街 {
    width: 119px;
    height: 40px;
    top: 435px;
    left: 20px;
  }
  #venue_tokyo_search .background-gray #表参道・原宿・青山, #venue_kansai_search .background-gray #表参道・原宿・青山, #venue_tokai_search .background-gray #表参道・原宿・青山 {
    top: 243px;
    left: 219px;
  }
  #venue_tokyo_search .background-gray #恵比寿・代官山, #venue_kansai_search .background-gray #恵比寿・代官山, #venue_tokai_search .background-gray #恵比寿・代官山 {
    top: 277px;
    left: 76px;
  }
  #venue_tokyo_search .background-gray #銀座・汐留・日比谷, #venue_kansai_search .background-gray #銀座・汐留・日比谷, #venue_tokai_search .background-gray #銀座・汐留・日比谷 {
    top: 268px;
    left: 388px;
  }
  #venue_tokyo_search .background-gray #品川・大崎・五反田, #venue_kansai_search .background-gray #品川・大崎・五反田, #venue_tokai_search .background-gray #品川・大崎・五反田 {
    top: 341px;
    left: 317px;
  }
  #venue_tokyo_search .background-gray #赤坂・赤坂見附・虎の門, #venue_kansai_search .background-gray #赤坂・赤坂見附・虎の門, #venue_tokai_search .background-gray #赤坂・赤坂見附・虎の門 {
    top: 210px;
    left: 219px;
  }
  #venue_tokyo_search .background-gray #渋谷, #venue_kansai_search .background-gray #渋谷, #venue_tokai_search .background-gray #渋谷 {
    top: 243px;
    left: 141px;
  }
  #venue_tokyo_search .background-gray #中目黒・白金, #venue_kansai_search .background-gray #中目黒・白金, #venue_tokai_search .background-gray #中目黒・白金 {
    top: 310px;
    left: 89px;
  }
  #venue_tokyo_search .background-gray #大阪・梅田・福島, #venue_kansai_search .background-gray #大阪・梅田・福島, #venue_tokai_search .background-gray #大阪・梅田・福島 {
    top: 197px;
    left: 350px;
  }
  #venue_tokyo_search .background-gray #北浜・中之島・京橋, #venue_kansai_search .background-gray #北浜・中之島・京橋, #venue_tokai_search .background-gray #北浜・中之島・京橋 {
    top: 265px;
    left: 436px;
  }
  #venue_tokyo_search .background-gray #本町・心斎橋・堀江・なんば, #venue_kansai_search .background-gray #本町・心斎橋・堀江・なんば, #venue_tokai_search .background-gray #本町・心斎橋・堀江・なんば {
    top: 321px;
    left: 297px;
  }
  #venue_tokyo_search .background-gray #三宮・旧居留地・元町・北野・芦屋, #venue_kansai_search .background-gray #三宮・旧居留地・元町・北野・芦屋, #venue_tokai_search .background-gray #三宮・旧居留地・元町・北野・芦屋 {
    top: 280px;
    left: 40px;
  }
  #venue_tokyo_search .background-gray #祇園・河原町・三条, #venue_kansai_search .background-gray #祇園・河原町・三条, #venue_tokai_search .background-gray #祇園・河原町・三条 {
    top: 15px;
    left: 500px;
  }
  #venue_tokyo_search .background-gray #四条・烏丸・御池, #venue_kansai_search .background-gray #四条・烏丸・御池, #venue_tokai_search .background-gray #四条・烏丸・御池 {
    top: 15px;
    left: 343px;
  }
  #venue_tokyo_search .background-gray #京都駅, #venue_kansai_search .background-gray #京都駅, #venue_tokai_search .background-gray #京都駅 {
    top: 53px;
    left: 371px;
  }
  #venue_tokyo_search .background-gray #新大阪・江坂, #venue_kansai_search .background-gray #新大阪・江坂, #venue_tokai_search .background-gray #新大阪・江坂 {
    top: 102px;
    left: 348px;
  }
  #venue_tokyo_search .background-gray #その他大阪, #venue_kansai_search .background-gray #その他大阪, #venue_tokai_search .background-gray #その他大阪 {
    top: 365px;
    left: 297px;
  }
  #venue_tokyo_search .background-gray #天王寺, #venue_kansai_search .background-gray #天王寺, #venue_tokai_search .background-gray #天王寺 {
    top: 377px;
    left: 467px;
  }
  #venue_tokyo_search .background-gray #名駅, #venue_kansai_search .background-gray #名駅, #venue_tokai_search .background-gray #名駅 {
    top: 179px;
    left: 200px;
  }
  #venue_tokyo_search .background-gray #伏見・丸の内, #venue_kansai_search .background-gray #伏見・丸の内, #venue_tokai_search .background-gray #伏見・丸の内 {
    top: 123px;
    left: 262px;
  }
  #venue_tokyo_search .background-gray #金山, #venue_kansai_search .background-gray #金山, #venue_tokai_search .background-gray #金山 {
    top: 250px;
    left: 250px;
  }
  #venue_tokyo_search .background-gray #栄・錦・久屋大通, #venue_kansai_search .background-gray #栄・錦・久屋大通, #venue_tokai_search .background-gray #栄・錦・久屋大通 {
    top: 184px;
    left: 381px;
  }
  #venue_tokyo_search .background-gray #千種, #venue_kansai_search .background-gray #千種, #venue_tokai_search .background-gray #千種 {
    top: 184px;
    left: 550px;
  }
}
@media screen and (max-width: 768px) {
  .search_list_contents {
    margin-top: 60px;
  }
  .search_list_contents .title {
    background-color: #ffaabe;
    color: #fff;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 5px 15px;
    line-height: 1.4;
  }
  .search_list_contents .search_tab {
    width: 90%;
    display: -webkit-flex;
    display: -webkit-box;
    display: flex;
    box-sizing: border-box;
    padding: 0;
    margin: 0 auto 5px auto;
    border-bottom: solid 4px #ff9800;
  }
  .search_list_contents .search_tab li {
    width: 48.5%;
    text-align: center;
    color: #ff9800;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 5px 10px 2px 10px;
    background-color: #fff;
    border-radius: 5px 5px 0 0;
    border: solid 1px #ff9800;
    border-bottom: none;
    margin-right: 10px;
    box-sizing: border-box;
  }
  .search_list_contents .search_tab li.tab-active {
    color: #fff;
    background-color: #ff9800;
  }
  .search_list_contents .search_tab li:last-child {
    margin-right: 0;
  }
  .search_list_contents .search_tab li:hover {
    color: #fff;
    background-color: #ff9800;
  }
  .search_list_contents .search-address {
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 5px;
    margin-bottom: 10px;
  }
  .search_list_contents .search-address input {
    width: 100%;
    box-sizing: border-box;
    font-size: 16px;
    font-size: 1.6rem;
    transform: scale(0.9);
    -webkit-transform: scale(0.9);
    padding: 5px 30px 5px 10px;
    border: solid 1px #ddd;
    margin-top: 21px;
    margin: auto;
  }
  .search_list_contents .select_map-area {
    max-width: 978px;
    margin: auto;
  }
  .search_list_contents .search_map-area {
    max-width: 978px;
    height: 420px;
    margin: auto;
  }
  .search_list_contents .search_map-area .map {
    position: relative;
    width: 90%;
    height: 420px;
    box-sizing: border-box;
    overflow: hidden;
    margin: auto;
    background-color: antiquewhite;
  }
  .search_list_contents .search_map-area .map .placename {
    font-size: 12px;
    font-size: 1.2rem;
    color: #735b61;
    font-weight: bold;
    line-height: 1.2;
  }
  .search_list_contents .search_map-area .map .zoom {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 230px;
    height: 40px;
    font-size: 16px;
    font-size: 1.6rem;
    text-align: center;
    background-color: rgba(95, 104, 122, 0.9);
    color: #fff;
    line-height: 2.6;
    border-radius: 4px;
  }
  .search_list_contents .search_map-area .map .badge {
    padding: 4px 5px;
    border-radius: 14px;
    background-color: #ff9800;
    color: #fff;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .search_list_contents .search_map-area .map > .map {
    width: 100%;
  }

  .place-list-sp_fixed {
    position: fixed;
    bottom: -70px;
    left: 0;
    z-index: 100;
    width: 100%;
    box-sizing: border-box;
    background-color: rgba(95, 104, 122, 0.5);
    transition: 0.3s linear;
    -webkit-transition: linear 0.3s;
    -moz-transition: linear 0.3s;
    -o-transition: linear 0.3s;
  }
  .place-list-sp_fixed.visible {
    bottom: 50px;
  }
  .place-list-sp_fixed .place-list {
    max-height: 120px;
    overflow-y: scroll;
  }
  .place-list-sp_fixed .btn-close-sp {
    width: 60px;
    position: absolute;
    left: 0;
    top: -30px;
    cursor: pointer;
  }
  .place-list-sp_fixed .btn-close-sp img {
    width: 100%;
  }
  .place-list-sp_fixed .box-wrap {
    position: relative;
    width: 90%;
    margin: auto;
    padding-top: 8px;
    padding-bottom: 2px;
    border-radius: 4px;
    background-color: #fff;
    box-shadow: 0 0 10px 0px #5F687A;
  }
  .place-list-sp_fixed .box-wrap:hover {
    background-color: #f9f5e7;
    cursor: pointer;
  }
  .place-list-sp_fixed .box-wrap .top-box {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 4px;
    box-sizing: border-box;
  }
  .place-list-sp_fixed .box-wrap .top-box .pic {
    width: 50px;
    height: 50px;
    margin-left: 8px;
  }
  .place-list-sp_fixed .box-wrap .top-box .pic img {
    width: 100%;
  }
  .place-list-sp_fixed .box-wrap .top-box .place-name {
    margin-left: 8px;
    margin-right: 8px;
    width: 65%;
  }
  .place-list-sp_fixed .box-wrap .top-box .place-name .name {
    color: #FF8CA7;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.2;
    margin-bottom: 8px;
  }
  .place-list-sp_fixed .box-wrap .top-box .place-name .type {
    font-size: 11px;
    font-size: 1.1rem;
    line-height: 1;
  }
  .place-list-sp_fixed .box-wrap .top-box .star {
    width: 16px;
    height: 16px;
  }
  .place-list-sp_fixed .box-wrap .top-box .star img {
    width: 100%;
  }
  .place-list-sp_fixed .box-wrap .bottom {
    display: -webkit-box;
    display: flex;
    -webkit-box-pack: justify;
    justify-content: space-between;
    margin: 0 12px 0 12px;
  }
  .place-list-sp_fixed .box-wrap .bottom .point {
    flex: grow;
    display: flex;
    line-height: 1.4;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .place-list-sp_fixed .box-wrap .bottom .point .icon {
    font-size: 11px;
    font-size: 1.1rem;
    display: inline;
    width: 14px;
    height: 14px;
    color: #fff;
    background-color: #999;
    border-radius: 2px;
    text-align: center;
    margin-right: 2px;
  }
  .place-list-sp_fixed .box-wrap .bottom .point .icon.circle {
    border-radius: 14px;
  }

  .search_list {
    padding-bottom: 30px;
  }
  .search_list .numberof {
    color: #999999;
    font-size: 13px;
    font-size: 1.3rem;
    float: left;
    padding-left: 15px;
    margin: 12px 0 8px;
  }
  .search_list .search_result {
    display: table;
    padding: 5px 15px 5px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .search_list .search_result dl {
    display: table-row-group;
  }
  .search_list .search_result dl dt,
  .search_list .search_result dl dd {
    display: table-cell;
    white-space: nowrap;
  }
  .search_list .search_result dl dd {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 19em;
    padding-left: 5px;
  }
  .search_list .search_result dl dd:before {
    margin-right: 5px;
    content: ":";
  }
  .search_list .result_none {
    padding: 20px 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .search_list .research_btn_area {
    float: right;
    width: 40%;
    padding-right: 15px;
  }
  .search_list .btns_area {
    margin-top: 50px;
  }
  .search_list .btns_area .btn {
    font-size: 14px;
    font-size: 1.4rem;
    width: 70%;
    margin: 20px auto;
  }
  .search_list .btns_area .btn_view {
    padding: 10px 0;
  }
  .search_list .other_wedding-hall_area .headline {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
  }
  .search_list .other_wedding-hall_area .headline:before, .search_list .other_wedding-hall_area .headline:after {
    height: 15px;
    margin: 0px 5px 5px;
  }
  .search_list .other_wedding-hall_area .other_wedding-hall {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .search_list .other_wedding-hall_area .other_wedding-hall a {
    border-bottom: 1px solid #735b61;
  }
  .search_list .distance_area {
    padding-top: 15px;
  }
  .search_list .distance_area .distance_notes {
    margin: 0 15px;
    font-size: 13px;
    font-size: 1.3rem;
  }

  .search_list_area {
    clear: both;
    padding: 0 15px;
  }
  .search_list_area .list_box {
    padding: 0;
    margin-bottom: 25px;
  }
  .search_list_area .list_box:last-child {
    margin-bottom: 0;
  }
  .search_list_area .list_box .distance_label {
    margin-left: -15px;
    font-size: 13px;
    font-size: 1.3rem;
  }
  .search_list_area .list_box .distance_label .distance {
    padding: 3px 15px;
  }
  .search_list_area .list_box .venue_name {
    position: absolute;
    bottom: 0;
    left: 0;
    margin-bottom: 0;
    padding: 15px 15px 12px;
    color: #fff;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.3;
  }
  .search_list_area .list_box .venue_name .venue_name_kana {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .search_list_area .list_box .venue_name .special {
    line-height: 1;
    margin-bottom: 6px;
    padding: 3px 4px;
    background-color: #fff;
    font-size: 10px;
    font-size: 1rem;
    color: #6e6e6e;
  }
  .search_list_area .list_box .venue_name .special i {
    font-size: 9px;
    font-size: 0.9rem;
  }
  .search_list_area .list_box .venue_name .vr_label {
    display: inline-block;
    position: relative;
    margin-bottom: 6px;
    padding: 3px 4px 3px 18px;
    color: #6E6E6E;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1;
    background-color: #fff;
  }
  .search_list_area .list_box .venue_name .vr_label:before {
    display: block;
    position: absolute;
    top: 50%;
    left: 3px;
    width: 12px;
    height: 10px;
    margin-top: -5px;
    background: url(../images/vr_movie.svg) no-repeat;
    background-size: 12px;
    content: "";
  }
  .search_list_area .list_box .venue_name > strong {
    display: block;
  }
  .search_list_area .list_box .catch {
    border-left: 4px solid #ffaabe;
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 13px;
    padding-left: 10px;
    line-height: 1.4;
  }
  .search_list_area .list_box .box {
    position: relative;
    margin: 0;
  }
  .search_list_area .list_box .box > a {
    display: block;
  }
  .search_list_area .list_box .box > a:before {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40%;
    background-image: -webkit-linear-gradient(top, transparent, rgba(0, 0, 0, 0.35));
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35));
    content: "";
  }
  .search_list_area .list_box .box .official_partner {
    position: absolute;
    top: 5px;
    left: 6px;
    width: 50px;
    height: 50px;
  }
  .search_list_area .list_box .btn_area .btn {
    width: 45%;
  }
  .search_list_area .list_box .btn_area .btn_favo {
    background-color: #bdbdbd;
    float: left;
  }
  .search_list_area .list_box .btn_area .btn_favo.doing {
    background-color: #F3BD00;
  }
  .search_list_area .list_box .btn_area .btn_detail {
    float: right;
  }
  .search_list_area .list_box .catch_sp {
    display: table;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 13px 0 10px 15px;
    border-bottom: 1px solid #ddd;
  }
  .search_list_area .list_box .catch_sp > p {
    display: table-cell;
    vertical-align: middle;
  }
  .search_list_area .list_box .catch_sp .btn_favo_sp {
    display: table-cell;
    width: 50px;
    text-align: center;
    vertical-align: middle;
  }
  .search_list_area .list_box .catch_sp .btn_favo_sp:before {
    color: #ddd;
    font-family: "emopa";
    font-size: 20px;
    font-size: 2rem;
    content: "\e912";
  }
  .search_list_area .list_box .catch_sp .btn_favo_sp.doing:before {
    color: #F3BD00;
  }
  .search_list_area .list_box .btn_inquiry {
    display: block;
    position: relative;
    line-height: 1;
    padding: 15px 40px 15px 15px;
    color: #FF8CA7;
  }
  .search_list_area .list_box .btn_inquiry:before {
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -.5em;
    color: #FF8CA7;
    font-family: "emopa";
    font-size: 14px;
    font-size: 1.4rem;
    content: "\e900";
  }
}
/*------------------------------------------------------------------------
 search modal
 -------------------------------------------------------------------------*/
.venue_area_search {
  width: 100%;
  display: none;
  opacity: 0;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 100;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.25s cubic-bezier(0.67, 0.19, 0.87, 0.4);
  transition: all 0.25s cubic-bezier(0.67, 0.19, 0.87, 0.4);
}
.venue_area_search.dissolve {
  opacity: 1;
}
.venue_area_search.modal {
  background-color: #fff;
  position: fixed;
  width: 100%;
  height: 100%;
  overflow: scroll;
  z-index: 1000;
}
.venue_area_search.modal .search_header {
  top: 0;
}
.venue_area_search .search_main .checkbox {
  cursor: pointer;
}
.venue_area_search .search_main .checkbox input[type="checkbox"] {
  display: none;
}
.venue_area_search .search_main .checkbox input[type="checkbox"]:checked + span:before {
  background-color: #ffaabe;
  border: 1px solid #ffaabe;
}
.venue_area_search .search_main .checkbox input[type="checkbox"]:checked + span:after {
  opacity: 1;
}
.venue_area_search .search_main .checkbox input[type="checkbox"]:disabled + span {
  color: #ddd;
}
.venue_area_search .search_main .checkbox > span {
  display: inline-block;
  position: relative;
  padding-left: 21px;
}
.venue_area_search .search_main .checkbox > span:before, .venue_area_search .search_main .checkbox > span:after {
  position: absolute;
  content: "";
  -webkit-transition: all .2s ease-out;
  transition: all .2s ease-out;
}
.venue_area_search .search_main .checkbox > span:before {
  top: 2px;
  left: 0;
  width: 14px;
  height: 14px;
  border: 1px solid #bbb;
  background-color: #fff;
}
.venue_area_search .search_main .checkbox > span:after {
  opacity: 0;
  top: 3px;
  left: 3px;
  color: #fff;
  font-family: 'emopa';
  font-size: 10px;
  font-size: 1rem;
  content: "\e908";
}
.venue_area_search .search_main .search_ttl {
  line-height: 1;
  padding-bottom: 8px;
  border-bottom: 1px solid #FF8CA7;
  color: #FF8CA7;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 500;
}

@media screen and (min-width: 769px) {
  .venue_area_search {
    padding-bottom: 80px;
  }
  .venue_area_search.dissolve {
    overflow: auto;
  }
  .venue_area_search .search_header {
    display: table;
    width: 100%;
    height: 90px;
  }
  .venue_area_search .search_header h1 {
    display: table-cell;
    color: #FF8CA7;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 300;
    text-align: center;
    vertical-align: middle;
  }
  .venue_area_search .search_header .btn_close {
    position: fixed;
    top: 0;
    right: 0;
    width: 90px;
    height: 90px;
  }
  .venue_area_search .search_header .btn_close button {
    display: inline-block;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100%;
    background-color: transparent;
    text-indent: -9999px;
    white-space: nowrap;
  }
  .venue_area_search .search_header .btn_close button:before, .venue_area_search .search_header .btn_close button:after {
    position: absolute;
    top: 50%;
    right: 30px;
    width: 32px;
    height: 2px;
    background-color: #FF8CA7;
    content: "";
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .venue_area_search .search_header .btn_close button:before {
    transform: rotate(45deg);
  }
  .venue_area_search .search_header .btn_close button:after {
    transform: rotate(-45deg);
  }
  .venue_area_search .search_header .btn_close button:hover:before, .venue_area_search .search_header .btn_close button:hover:after {
    background-color: #735b61;
  }
  .venue_area_search .search_main {
    padding: 0 30px 40px;
  }
  .venue_area_search .search_main .area_ttl {
    max-width: 900px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 10px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
  }
  .venue_area_search .search_main .area_select {
    overflow: hidden;
    max-width: 900px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
  }
  .venue_area_search .search_main .area_select:last-of-type {
    border-bottom: 0;
  }
  .venue_area_search .search_main .area_select li {
    float: left;
    width: 33.333%;
    margin-bottom: 10px;
  }
  .venue_area_search .search_main .search_others {
    max-width: 900px;
    margin: 0 auto 30px;
  }
  .venue_area_search .search_main .search_ttl {
    max-width: 900px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto 10px;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 600;
  }
  .venue_area_search .search_main .select_box {
    position: relative;
  }
  .venue_area_search .search_main .select_box select {
    width: 100%;
    padding: 5px 30px 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fff;
    color: #6E6E6E;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_main .select_box:before {
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 10px;
    line-height: 1;
    margin-top: -.5em;
    color: #6E6E6E;
    font-family: 'emopa';
    font-size: 10px;
    font-size: 1rem;
    content: "\e907";
  }
  .venue_area_search .search_main .select_box {
    position: relative;
  }
  .venue_area_search .search_main .select_box select {
    width: 100%;
    padding: 5px 30px 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fff;
    color: #6E6E6E;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_main .select_box:before {
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 10px;
    line-height: 1;
    margin-top: -.5em;
    color: #6E6E6E;
    font-family: 'emopa';
    font-size: 10px;
    font-size: 1rem;
    content: "\e907";
  }
  .venue_area_search .search_main .checkbox_list {
    margin-top: -10px;
  }
  .venue_area_search .search_main .checkbox_list ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .venue_area_search .search_main .checkbox_list ul li {
    display: inline-block;
    width: 49%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
  }
  .venue_area_search .search_main .checkbox_list ul li:nth-child(odd) {
    border-right: 1px solid #ccc;
  }
  .venue_area_search .search_main .checkbox_list ul li label {
    display: block;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .venue_area_search .search_main .free_word input[type="text"] {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    color: #6E6E6E;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_footer {
    display: table;
    table-layout: fixed;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background-color: #ffaabe;
  }
  .venue_area_search .search_footer .select_count {
    display: table-cell;
    padding-right: 15px;
    color: #fff;
    text-align: right;
    vertical-align: middle;
  }
  .venue_area_search .search_footer .select_count em {
    margin: 0 5px 0 10px;
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: 600;
    letter-spacing: .02em;
  }
  .venue_area_search .search_footer .btn_area_search {
    display: table-cell;
    padding-left: 15px;
    vertical-align: middle;
  }
  .venue_area_search .search_footer .btn_area_search button {
    height: 40px;
    min-width: 240px;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #fff;
    color: #FF8CA7;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_footer .btn_area_search button span {
    position: relative;
  }
  .venue_area_search .search_footer .btn_area_search button span:before {
    position: relative;
    top: -2px;
    margin-right: 6px;
    font-family: "emopa";
    vertical-align: middle;
    content: "\e911";
  }
}
@media screen and (max-width: 768px) {
  .venue_area_search {
    overflow: hidden;
  }
  .venue_area_search form {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    height: 100%;
  }
  .venue_area_search .search_header {
    display: table;
    position: fixed;
    top: 60px;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 15px;
    background-color: rgba(255, 140, 167, 0.75);
    color: #fff;
  }
  .venue_area_search .search_header h1 {
    display: table-cell;
    height: 100%;
    font-size: 16px;
    font-size: 1.6rem;
    vertical-align: middle;
  }
  .venue_area_search .search_header .btn_close {
    display: table-cell;
    height: 100%;
    text-align: right;
    vertical-align: middle;
  }
  .venue_area_search .search_header .btn_close button {
    display: inline-block;
    position: relative;
    overflow: hidden;
    width: 48px;
    height: 100%;
    background-color: transparent;
    text-indent: -9999px;
    white-space: nowrap;
  }
  .venue_area_search .search_header .btn_close button:before, .venue_area_search .search_header .btn_close button:after {
    position: absolute;
    top: 50%;
    right: 15px;
    width: 20px;
    height: 2px;
    background-color: #fff;
    content: "";
  }
  .venue_area_search .search_header .btn_close button:before {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .venue_area_search .search_header .btn_close button:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .venue_area_search .search_main {
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    padding: 35px 15px 65px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .venue_area_search .search_main .search_ttl {
    margin: 20px 0 10px 0;
  }
  .venue_area_search .search_main .search_ttl span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .venue_area_search .search_main .area_ttl {
    cursor: pointer;
    position: relative;
    padding: 8px 10px;
    border-bottom: 1px solid #ccc;
  }
  .venue_area_search .search_main .area_ttl:first-of-type {
    margin-top: -10px;
  }
  .venue_area_search .search_main .area_ttl:after {
    position: absolute;
    right: 10px;
    font-family: "emopa";
    content: "\e904";
  }
  .venue_area_search .search_main .area_select {
    background-color: #f5f5f5;
  }
  .venue_area_search .search_main .area_select li {
    border-bottom: 1px solid #ccc;
  }
  .venue_area_search .search_main .area_select .checkbox {
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 8px 10px;
  }
  .venue_area_search .search_main .search_others {
    margin-top: 25px;
  }
  .venue_area_search .search_main .select_box {
    position: relative;
  }
  .venue_area_search .search_main .select_box select {
    width: 100%;
    padding: 5px 30px 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    background-color: #fff;
    color: #6E6E6E;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_main .select_box:before {
    pointer-events: none;
    position: absolute;
    top: 50%;
    right: 10px;
    line-height: 1;
    margin-top: -.5em;
    color: #6E6E6E;
    font-family: 'emopa';
    font-size: 10px;
    font-size: 1rem;
    content: "\e907";
  }
  .venue_area_search .search_main .checkbox_list {
    margin-top: -10px;
  }
  .venue_area_search .search_main .checkbox_list ul {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .venue_area_search .search_main .checkbox_list ul li {
    display: inline-block;
    width: 49%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #ccc;
  }
  .venue_area_search .search_main .checkbox_list ul li:nth-child(odd) {
    border-right: 1px solid #ccc;
  }
  .venue_area_search .search_main .checkbox_list ul li label {
    display: block;
    cursor: pointer;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 10px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .venue_area_search .search_main .free_word input[type="text"] {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 10px;
    border-radius: 0;
    border: 1px solid #ddd;
    color: #6E6E6E;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .venue_area_search .search_footer {
    display: table;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 5px 5px 15px;
    box-shadow: 0 0 5px rgba(170, 170, 170, 0.5);
    background-color: #fff;
  }
  .venue_area_search .search_footer .select_count {
    display: table-cell;
    font-size: 12px;
    font-size: 1.2rem;
    vertical-align: middle;
  }
  .venue_area_search .search_footer .select_count em {
    margin: 0 5px 0 10px;
    color: #FF8CA7;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
  }
  .venue_area_search .search_footer .btn_area_search {
    display: table-cell;
    text-align: right;
    vertical-align: middle;
  }
  .venue_area_search .search_footer .btn_area_search .btn_search {
    height: 40px;
    min-width: 140px;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #FF8CA7;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .venue_area_search .search_footer .btn_area_search .btn_search span {
    position: relative;
  }
  .venue_area_search .search_footer .btn_area_search .btn_search span:before {
    position: relative;
    top: -1px;
    margin-right: 6px;
    font-family: "emopa";
    vertical-align: middle;
    content: "\e911";
  }

  .sp_fixed_menu {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 50px;
  }
  .sp_fixed_menu .search_footer {
    display: table;
    position: relative;
    width: 100%;
    height: 50px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px 5px 5px 15px;
    box-shadow: 0 0 5px rgba(170, 170, 170, 0.5);
    background-color: #fff;
  }
  .sp_fixed_menu .search_footer .select_count {
    display: table-cell;
    font-size: 12px;
    font-size: 1.2rem;
    vertical-align: middle;
  }
  .sp_fixed_menu .search_footer .select_count em {
    margin: 0 5px 0 10px;
    color: #FF8CA7;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
  }
  .sp_fixed_menu .search_footer .btn_area_search {
    display: table-cell;
    text-align: right;
    vertical-align: middle;
  }
  .sp_fixed_menu .search_footer .btn_area_search button {
    height: 40px;
    min-width: 140px;
    padding: 5px 10px;
    border-radius: 5px;
    background-color: #FF8CA7;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .sp_fixed_menu .search_footer .btn_area_search button span {
    position: relative;
  }
  .sp_fixed_menu .search_footer .btn_area_search button span:before {
    position: relative;
    top: -1px;
    margin-right: 6px;
    font-family: "emopa";
    vertical-align: middle;
    content: "\e911";
  }
}
.ui-autocomplete {
  width: 290px;
  position: relative;
  background: #fff;
  box-shadow: 0 0 0 #fff, 0 0 0 #ccc, 0 0 1px #222;
  -webkit-box-shadow: 0 0 0 #fff, 0 0 0 #ccc, 0 0 1px #222;
  -moz-box-shadow: 0 0 0 #fff, 0 0 0 #ccc, 0 0 1px #222;
  z-index: 1000 !important;
  text-align: left;
  max-height: 160px;
  overflow-y: auto;
  overflow-x: hidden;
}

.ui-autocomplete li {
  background: none;
  border: none;
  padding: 5px;
  border: #E5E5E5 1px solid;
}

.ui-autocomplete li a {
  text-decoration: none;
}

.ui-autocomplete li:hover {
  cursor: pointer;
  background: #F9F5E7 !important;
  padding: 5px;
}

#partyspace_map .label {
  color: #735B61;
  font-weight: bold;
  font-family: "Noto Sans CJK JP";
  font-size: 14px;
  text-shadow: white 1px 1px 0, white -1px -1px 0, white -1px 1px 0, white 1px -1px 0, white 0px 1px 0, white -1px 0, white -1px 0 0, white 1px 0 0;
  /*上・下*/
  bottom: -25px;
  position: absolute;
  left: 15px;
  width: 150px;
  height: 42px;
  overflow: hidden;
}

#btn_zoomup {
  position: absolute;
  bottom: 52px;
  right: 14px;
}

#btn_zoomout {
  right: 14px;
  bottom: 19px;
  position: absolute;
}

.zoom_m:nth-of-type(1) {
  position: absolute;
  top: 15px;
  right: 14px;
  border: #6E6E6E solid 1px;
  background-color: white;
  border-radius: 5px;
  width: 60px;
  height: 24px;
  text-align: center;
  color: #6E6E6E;
  cursor: pointer;
}

.zoom_m:nth-of-type(2) {
  position: absolute;
  top: 45px;
  right: 14px;
  border: #6E6E6E solid 1px;
  background-color: white;
  border-radius: 5px;
  width: 60px;
  height: 24px;
  text-align: center;
  color: #6E6E6E;
  cursor: pointer;
}

.zoom_m:nth-of-type(3) {
  position: absolute;
  top: 75px;
  right: 14px;
  border: #6E6E6E solid 1px;
  background-color: white;
  border-radius: 5px;
  width: 60px;
  height: 24px;
  text-align: center;
  color: #6E6E6E;
  cursor: pointer;
}

.highlight {
  -webkit-animation: target-fade 3s 1;
  -moz-animation: target-fade 3s 1;
}

@-webkit-keyframes target-fade {
  0% {
    background-color: #F9F5E7;
  }
  100% {
    background-color: transparent;
  }
}
@-moz-keyframes target-fade {
  0% {
    background-color: #F9F5E7;
  }
  100% {
    background-color: transparent;
  }
}
.btn_js_area_open {
  background-color: #FF9800;
  color: white;
  border-radius: 5px;
  width: 240px;
  height: 60px;
  font-size: 18px;
}

@media screen and (min-width: 769px) {
  .btn_js_area_open:not(:last-of-type) {
    margin-right: 36px;
  }
}
@media screen and (max-width: 768px) {
  .btn_js_area_open:not(:last-of-type) {
    margin-bottom: 30px;
  }
}
#venue_line_area_search > .search_main {
  text-align: center;
  margin-top: 50px;
}

.invisible {
  display: none;
}

.pull-right {
  float: right;
}

.pull-left {
  float: left;
}

.clearfix {
  clear: both;
  display: block;
  content: '';
}

.btn_area_select {
  border: #FF8CA7 solid 2px;
  background-color: white;
  border-radius: 10px;
  padding: 22px 18px;
  color: #735B61;
  font-size: 14px;
  display: inline-block;
  text-align: center;
  min-width: 140px;
  margin: 6px;
  cursor: pointer;
}
.btn_area_select:hover {
  background-color: #FF8CA7;
  color: white;
}

.background-gray {
  text-align: center;
  background-color: #F5F5F5;
  width: 600px;
  height: 440px;
  padding: 30px 40px;
  margin: auto;
}
.background-gray::after {
  clear: both;
  display: block;
  content: '';
}

.search_footer > .btn_area_search.center {
  text-align: center;
}

@media screen and (min-width: 769px) {
  .modal_bottom_search_button > img {
    width: 16px;
    margin-right: 10px;
  }
}
@media screen and (max-width: 768px) {
  .btn_area_select {
    min-width: 30%;
    padding: 8px;
  }

  .background-gray {
    width: auto;
  }

  #msg_zoom {
    position: absolute;
    background-color: rgba(95, 104, 122, 0.9);
    top: 44%;
    left: 23%;
    color: white;
    height: 40px;
    width: 200px;
    text-align: center;
    line-height: 40px;
    border-radius: 5px;
    display: none;
  }

  .modal_bottom_search_button {
    background-color: #FF8CA7;
    color: white;
    border-radius: 5px;
    width: 48%;
    height: 40px;
    font-size: 14px;
  }
  .modal_bottom_search_button > img {
    display: none;
  }
}
/*------------------------------------------------------------------------
 detail
-------------------------------------------------------------------------*/
.detail_contents {
  background-color: #f5f0f0;
  padding-top: 20px;
}

.official-partner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  max-width: 900px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: solid 1px #f7c86d;
  background-color: #fff;
  margin: 0 auto;
  padding: 10px;
}
.official-partner img {
  width: 80px;
  height: 80px;
  margin-right: 10px;
  margin-left: 0;
}
.official-partner .title {
  display: block;
  color: #f7c86d;
  font-weight: 600;
}
.official-partner p {
  font-size: 16px;
  font-size: 1.6rem;
}

@media (max-width: 900px) and (min-width: 769px) {
  .official-partner {
    margin: 0 10px;
  }
}
.detail_area .banner {
  display: block;
}
.detail_area .banner img {
  width: 100%;
}
.detail_area .title_area .place {
  color: #999999;
  font-size: 13px;
  font-size: 1.3rem;
  margin-bottom: 3px;
}
.detail_area .title_area .name_area {
  line-height: 1.4;
}
.detail_area .title_area .name_area {
  margin-top: 5px;
  line-height: 1.4;
}
.detail_area .title_area .name_area h2 {
  border-left: 4px solid #FF8CA7;
  padding-left: 5px;
}
.detail_area .title_area .venue_name {
  color: #372B2E;
  line-height: 1.2;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  text-align: left;
}
.detail_area .title_area .venue_name .venue_name_kana {
  font-size: 13px;
  font-size: 1.3rem;
  line-height: 1;
  vertical-align: middle;
  opacity: .8;
}
.detail_area .title_area .btn_box .favo, .detail_area .title_area .btn_box .btn_favo {
  cursor: pointer;
}
.detail_area .catch {
  line-height: 1.4;
}
.detail_area .img_area .big_trimming, .detail_area .img_area .trimming {
  background-color: #222;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
}
.detail_area .img_area .main_img {
  position: relative;
  padding-bottom: 15px;
}
.detail_area .img_area .main_img img {
  display: block;
  position: absolute;
}
.detail_area .img_area .thumbnail td {
  vertical-align: top;
}
.detail_area .img_area .thumbnail td:first-child {
  padding-left: 0;
}
.detail_area .sns_btn_area li {
  display: inline-block;
}
.detail_area .sns_btn_area li:first-child {
  padding-left: 0;
}
.detail_area .sns_btn_area li:last-child {
  padding-right: 0;
}
.detail_area .sns_btn_area li .wf-movie,
.detail_area .sns_btn_area li .wf-photo {
  vertical-align: middle;
}
.detail_area .detail_info {
  background-color: #fff;
}
.detail_area .detail_info .info_title {
  border-bottom: 2px solid #ddd;
  width: 100%;
}
.detail_area .detail_info .info_title .info_tab {
  cursor: pointer;
  color: #aaa;
  text-align: center;
  float: left;
  width: 50%;
}
.detail_area .detail_info .info_title .info_tab:first-child {
  position: relative;
}
.detail_area .detail_info .info_title .info_tab:first-child:before {
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #f5f0f0;
  content: "";
}
.detail_area .detail_info .info_title .current {
  color: #ffaabe;
  border-bottom: 4px solid #ffaabe;
  margin-bottom: -2px;
}
.detail_area .detail_info .info_title.bottom {
  border-top: 2px solid #ddd;
  border-bottom: 0;
}
.detail_area .detail_info .info_title.bottom .info_tab:after {
  top: 0;
  bottom: auto;
  margin-top: -2px;
  margin-bottom: 0;
}
.detail_area .detail_info .info_title.bottom .current {
  border-top: 4px solid #ffaabe;
  border-bottom: 0;
  margin-top: -2px;
  margin-bottom: 0;
}
.detail_area .detail_info .detail_info_contents .partner {
  border: 1px solid #dfc359;
  display: table;
  padding: 10px 0;
  width: 100%;
}
.detail_area .detail_info .detail_info_contents .partner img {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
  width: 30px;
}
.detail_area .detail_info .detail_info_contents .partner p {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
  color: #b0983f;
}
.detail_area .detail_info .detail_info_contents .partner {
  border: 1px solid #dfc359;
  display: table;
  padding: 10px 0;
  width: 100%;
}
.detail_area .detail_info .detail_info_contents .partner img {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
  width: 30px;
}
.detail_area .detail_info .detail_info_contents .partner p {
  display: table-cell;
  vertical-align: middle;
  text-align: left;
  color: #b0983f;
}
.detail_area .detail_info .table_box dl {
  display: table;
  width: 100%;
}
.detail_area .detail_info .table_box .tel_number {
  letter-spacing: .5px;
  font-size: 15px;
  font-size: 1.5rem;
}
.detail_area .detail_info .table_box .tel_number p {
  padding: 5px;
  margin-top: 5px;
  color: #777;
  letter-spacing: 0;
  font-size: 12px;
  font-size: 1.2rem;
}
@media screen and (min-width: 769px) {
  .detail_area .detail_info .table_box .tel_number p {
    border: 1px solid #FF8CA7;
  }
}
@media screen and (max-width: 768px) {
  .detail_area .detail_info .table_box .tel_number p {
    padding: 8px;
    line-height: 1.4;
    background: rgba(255, 170, 204, 0.3);
  }
}
.detail_area .detail_info .table_box .tel_number p span {
  padding: 0 3px;
  color: #FF8CA7;
  font-weight: bold;
}
.detail_area .detail_info .table_box .facility li {
  border: 1px solid #f7c86d;
  color: #bbb;
  display: inline-block;
  text-align: center;
}
.detail_area .detail_info .table_box .facility li.active {
  background-color: #f9f5e7;
  color: #6E6E6E;
}
.detail_area .detail_info .recommend_info {
  display: none;
}
.detail_area .detail_info .recommend {
  border-top: 1px solid #ffaabe;
}
.detail_area .detail_info .recommend:first-of-type {
  border: none;
}
.detail_area .detail_info .recommend .label {
  background-color: #89c997;
  color: #fff;
  text-align: center;
  display: inline-block;
}
.detail_area .detail_info .recommend img {
  display: block;
  margin-top: 20px;
}
.detail_area .detail_info .recommend .embed {
  position: relative;
  width: 100%;
  max-width: 640px;
  margin: 0 auto;
  padding-top: 56.25%;
}
.detail_area .detail_info .recommend .embed iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* reset */
.recommend_inner {
  overflow: hidden;
}
.recommend_inner h1, .recommend_inner h2, .recommend_inner h3, .recommend_inner h4, .recommend_inner h5, .recommend_inner h6, .recommend_inner p, .recommend_inner div, .recommend_inner blockquote, .recommend_inner pre, .recommend_inner a, .recommend_inner code, .recommend_inner del, .recommend_inner dfn, .recommend_inner em, .recommend_inner img, .recommend_inner ins, .recommend_inner q, .recommend_inner s, .recommend_inner strong, .recommend_inner b, .recommend_inner u, .recommend_inner i, .recommend_inner span, .recommend_inner ol, .recommend_inner ul, .recommend_inner hr {
  clear: both;
  overflow: hidden;
}
.recommend_inner h1, .recommend_inner h2, .recommend_inner h3, .recommend_inner h4, .recommend_inner h5, .recommend_inner h6, .recommend_inner strong {
  font-weight: bold;
  line-height: 1.3;
}
.recommend_inner h1 {
  font-size: 22px;
  font-size: 2.2rem;
  margin: 0.67em 0;
}
.recommend_inner h2 {
  font-size: 20px;
  font-size: 2rem;
  margin: 0.83em 0;
}
.recommend_inner h3 {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 1.17em 0;
}
.recommend_inner h4 {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 1.33em 0;
}
.recommend_inner h5 {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.67em 0;
}
.recommend_inner h6 {
  font-size: 12px;
  font-size: 1.2rem;
  margin: 2.33em 0;
}
.recommend_inner p {
  margin: 1em 0;
}
.recommend_inner ul, .recommend_inner ol {
  margin: 1em 0;
  padding-left: 30px;
  list-style-type: disc;
  list-style-position: outside;
}
.recommend_inner li {
  display: list-item;
}
.recommend_inner em {
  font-style: italic;
}
.recommend_inner a {
  pointer-events: none;
  cursor: default;
  color: #6E6E6E;
}
.recommend_inner a:hover {
  text-decoration: none;
  color: #6E6E6E;
}
.recommend_inner .alignright {
  float: right;
}
.recommend_inner .alignleft {
  float: left;
}
.recommend_inner .aligncenter {
  display: block;
  margin: 0 auto;
  text-align: center;
}
.recommend_inner .aligncenter img {
  display: inline-block;
}
.recommend_inner .aligncenter .wp-caption-tex {
  text-align: left;
}
.recommend_inner .wp-caption-text {
  margin: 0;
  font-size: 13px;
  font-size: 1.3rem;
  color: #999;
}
@media screen and (min-width: 769px) {
  .recommend_inner {
    font-size: 17px;
    font-size: 1.7rem;
  }
}

@media screen and (min-width: 769px) {
  .detail_area {
    width: 900px;
    margin: auto;
    padding: 30px 0 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .detail_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .detail_area .banner {
    margin-bottom: 30px;
  }
  .detail_area .title_area {
    overflow: hidden;
  }
  .detail_area .title_area .name_area {
    width: 73%;
    float: left;
    margin-bottom: 15px;
  }
  .detail_area .title_area .name_area .venue_name {
    margin-bottom: 15px;
    font-size: 26px;
    font-size: 2.6rem;
  }
  .detail_area .title_area .name_area .venue_name .venue_name_kana {
    display: block;
    padding-top: 5px;
  }
  .detail_area .title_area .name_area .catch {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .detail_area .title_area .btn_box {
    float: right;
  }
  .detail_area .title_area .btn_box .btn_research {
    margin: auto 0 auto auto;
    width: 200px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .detail_area .title_area .btn_box .favo {
    text-align: right;
    margin-top: 10px;
  }
  .detail_area .title_area .btn_box .favo i {
    color: #d8d5d5;
    font-size: 20px;
    font-size: 2rem;
    padding: 5px;
    vertical-align: text-bottom;
  }
  .detail_area .title_area .btn_box .favo.doing i {
    color: #F3BD00;
  }
  .detail_area .img_area .main_img .big_trimming {
    height: 520px;
  }
  .detail_area .img_area .main_img img {
    top: 15px;
    left: 15px;
    width: 100px;
  }
  .detail_area .img_area .thumbnail td ul li {
    display: inline-block;
    padding-right: 15px;
  }
  .detail_area .img_area .thumbnail td ul li .trimming {
    width: 67px;
    height: 45px;
  }
  .detail_area .img_area .thumbnail td p {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .detail_area .img_area .thumbnail td.button {
    width: 1%;
  }
  .detail_area .img_area .thumbnail td.button .wf-photo {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 20px;
    vertical-align: middle;
  }
  .detail_area .sns_btn_area {
    text-align: left;
  }
  .detail_area .sns_btn_area li {
    padding: 10px 5px;
  }
  .detail_area .sns_btn_area li .wf-movie,
  .detail_area .sns_btn_area li .wf-photo {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 10px;
  }
  .detail_area .sns_btn_area .mail {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
    color: #5f687a;
    font-size: 11px;
    font-size: 1.1rem;
    padding: 5px 10px;
  }
  .detail_area .sns_btn_area .mail .wf-mail {
    padding-right: 5px;
  }
  .detail_area .sns_btn_area .twitter {
    position: relative;
    top: 7px;
  }
  .detail_area .sns_btn_area .g-plus {
    width: 60px;
    position: relative;
    top: 9px;
  }
  .detail_area .sns_btn_area .photo_btn {
    float: right;
  }
  .detail_area .detail_info {
    margin: 30px 0;
  }
  .detail_area .detail_info .info_title .info_tab {
    font-size: 20px;
    font-size: 2rem;
    padding: 20px 0;
  }
  .detail_area .detail_info .detail_info_contents {
    padding: 0 45px;
  }
  .detail_area .detail_info .detail_info_contents .partner {
    margin-top: 50px;
  }
  .detail_area .detail_info .detail_info_contents .partner img {
    padding: 0 10px;
  }
  .detail_area .detail_info .detail_info_contents .partner p {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 0 10px;
  }
  .detail_area .detail_info .info_text {
    font-size: 17px;
    font-size: 1.7rem;
    margin: 50px 0;
  }
  .detail_area .detail_info .table_box dl {
    border-bottom: 1px solid #ddd;
  }
  .detail_area .detail_info .table_box dl:first-child {
    border-top: 1px solid #ddd;
  }
  .detail_area .detail_info .table_box dt, .detail_area .detail_info .table_box dd {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    padding: 10px 20px;
  }
  .detail_area .detail_info .table_box dt {
    background-color: #f0eeee;
    width: 15%;
  }
  .detail_area .detail_info .table_box .facility {
    margin: 15px 0;
  }
  .detail_area .detail_info .table_box .facility li {
    font-size: 12px;
    font-size: 1.2rem;
    padding: 5px;
    margin: 0 10px 10px 0;
    width: 100px;
    vertical-align: top;
  }
  .detail_area .detail_info .map {
    margin-top: 50px;
  }
  .detail_area .detail_info .recommend {
    padding: 50px 0;
  }
  .detail_area .detail_info .recommend:last-of-type {
    padding: 50px 0 10px;
  }
  .detail_area .detail_info .recommend .label {
    font-size: 19px;
    font-size: 1.9rem;
    padding: 2px 20px;
    margin-bottom: 30px;
  }
  .detail_area .detail_info .recommend .catch {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  .detail_area .detail_info .recommend .text {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 30px;
  }
  .detail_area .detail_info .recommend .img_box {
    text-align: center;
    margin-bottom: 30px;
  }
  .detail_area .detail_info .recommend .btn_research {
    margin-top: 50px;
    width: 300px;
  }
  .detail_area .detail_info .recommend_detail {
    padding: 40px 0;
  }
  .detail_area .detail_info .recommend_detail li {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #ddd;
  }
  .detail_area .detail_info .recommend_detail li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .detail_area .detail_info .recommend_detail li figure {
    display: table;
    width: 100%;
  }
  .detail_area .detail_info .recommend_detail li figure img,
  .detail_area .detail_info .recommend_detail li figure figcaption {
    display: table-cell;
    vertical-align: top;
  }
  .detail_area .detail_info .recommend_detail li figure img {
    padding-right: 15px;
  }
  .detail_area .detail_info .recommend_detail li figure figcaption {
    width: 100%;
  }
  .detail_area .detail_info .recommend_detail li strong {
    display: block;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 600;
  }
  .detail_area .detail_info_end {
    overflow: hidden;
  }
  .detail_area .detail_info_end [class^="btn_"] {
    display: block;
    min-width: 200px;
    padding: 10px;
    border-radius: 5px;
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
  }
  .detail_area .detail_info_end .btn_back {
    float: left;
    background-color: #fff;
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .detail_area .detail_info_end .btn_back:hover {
    background-color: #6E6E6E;
    color: #fff;
  }
  .detail_area .detail_info_end .btn_back span {
    position: relative;
  }
  .detail_area .detail_info_end .btn_back span:before {
    margin-right: 10px;
    font-family: "emopa";
    content: "\e92a";
  }
  .detail_area .detail_info_end .btn_research {
    float: right;
  }
}
@media screen and (max-width: 768px) {
  .detail_contents {
    padding-top: 70px;
  }

  .official-partner {
    margin: 0 15px;
    padding: 7px 10px 5px;
  }
  .official-partner img {
    width: 35px;
    height: 35px;
    margin-right: 10px;
    margin-left: 0;
  }
  .official-partner p {
    font-size: 11px;
    font-size: 1.1rem;
  }

  .pt20 {
    padding-top: 80px;
  }

  .official-partner {
    width: 86%;
    padding: 5px 10px;
  }
  .official-partner img {
    width: 35px;
    height: 35px;
    margin-right: 10px;
    margin-left: 0;
  }
  .official-partner .title {
    display: inline-block;
    line-height: 1.3;
    width: 100%;
  }
  .official-partner p {
    width: 84%;
    font-size: 11px;
    font-size: 1.1rem;
  }

  .pt20 {
    padding-top: 80px;
  }

  .detail_area {
    padding: 20px 15px 40px;
  }
  .detail_area .banner {
    margin-bottom: 20px;
  }
  .detail_area .title_area .place {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .detail_area .title_area .venue_name {
    position: relative;
    padding-right: 40px;
    font-size: 19px;
    font-size: 1.9rem;
    margin-bottom: 10px;
  }
  .detail_area .title_area .venue_name .btn_favo_sp {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 100%;
    text-align: center;
  }
  .detail_area .title_area .venue_name .btn_favo_sp:before {
    color: #ddd;
    font-family: "emopa";
    font-size: 20px;
    font-size: 2rem;
    content: "\e912";
  }
  .detail_area .title_area .venue_name .btn_favo_sp.doing:before {
    color: #F3BD00;
  }
  .detail_area .title_area .catch {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .detail_area .title_area .btn_box {
    margin: 20px 0;
  }
  .detail_area .title_area .btn_box .btn {
    width: 47%;
  }
  .detail_area .title_area .btn_box .btn_favo {
    background-color: #bdbdbd;
    float: left;
  }
  .detail_area .title_area .btn_box .btn_favo:before {
    content: "\e912";
    font-family: 'emopa';
    padding-right: 3px;
  }
  .detail_area .title_area .btn_box .btn_favo.doing {
    background-color: #F3BD00;
  }
  .detail_area .title_area .btn_box .btn_research {
    width: 100%;
    max-width: 300px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 12px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .detail_area .title_area .btn_box .btn_research.wd100 {
    width: 100%;
    float: none;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .detail_area .title_area .btn_box .btn_research.orange {
    background-color: #ff9800;
  }
  .detail_area .title_area .btn_box .btn_research.orange:hover {
    background-color: #79613e;
  }
  .detail_area .title_area .btn_box .btn_research.green {
    background-color: #89c997;
  }
  .detail_area .title_area .btn_box .btn_research.green:hover {
    background-color: #49644f;
  }
  .detail_area .img_area table {
    width: 100%;
  }
  .detail_area .img_area .main_img {
    padding-bottom: 10px;
  }
  .detail_area .img_area .main_img .big_trimming {
    height: 200px;
  }
  .detail_area .img_area .main_img img {
    top: 10px;
    left: 10px;
    width: 50px;
  }
  .detail_area .img_area .thumbnail td ul li {
    display: inline-block;
  }
  .detail_area .img_area .thumbnail td ul li .trimming {
    width: 67px;
    height: 45px;
  }
  .detail_area .img_area .thumbnail td.button {
    width: 1%;
  }
  .detail_area .img_area .thumbnail td.button .btn_photo {
    width: 110px;
  }
  .detail_area .img_area .thumbnail td.button .wf-photo {
    font-size: 20px;
    font-size: 2rem;
    vertical-align: middle;
  }
  .detail_area .sns_btn_area {
    text-align: center;
  }
  .detail_area .sns_btn_area li {
    padding: 0 20px 20px 0;
  }
  .detail_area .sns_btn_area li .mail {
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 3px;
    color: #5f687a;
    font-size: 11px;
    font-size: 1.1rem;
    padding: 5px 10px;
  }
  .detail_area .sns_btn_area li .mail .wf-mail {
    padding-right: 5px;
  }
  .detail_area .sns_btn_area .movie_btn,
  .detail_area .sns_btn_area .photo_btn {
    display: block;
    margin-bottom: 30px;
    padding: 0;
  }
  .detail_area .sns_btn_area .movie_btn .wf-movie {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 8px;
    vertical-align: text-bottom;
  }
  .detail_area .sns_btn_area .photo_btn .wf-photo {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 8px;
    vertical-align: text-bottom;
  }
  .detail_area .sns_btn_area .btn_movie,
  .detail_area .sns_btn_area .btn_photo {
    display: block;
    font-size: 15px;
    font-size: 1.5rem;
    width: 100%;
    max-width: 300px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 12px;
  }
  .detail_area .sns_btn_area .twitter {
    clear: both;
  }
  .detail_area .sns_btn_area .fb {
    position: relative;
    top: -7px;
  }
  .detail_area .detail_info {
    margin: 20px 0;
  }
  .detail_area .detail_info .info_title .info_tab {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 15px 0;
  }
  .detail_area .detail_info .detail_info_contents {
    padding: 0 15px;
  }
  .detail_area .detail_info .detail_info_contents .partner {
    margin-top: 20px;
  }
  .detail_area .detail_info .detail_info_contents .partner img {
    padding: 0 5px;
  }
  .detail_area .detail_info .detail_info_contents .partner p {
    font-size: 11px;
    font-size: 1.1rem;
    padding: 0 5px;
  }
  .detail_area .detail_info .info_text {
    font-size: 15px;
    font-size: 1.5rem;
    margin: 20px 0;
  }
  .detail_area .detail_info .table_box dl {
    border-bottom: 1px solid #ffaabe;
  }
  .detail_area .detail_info .table_box dl:first-child {
    border-top: 1px solid #ffaabe;
  }
  .detail_area .detail_info .table_box dt, .detail_area .detail_info .table_box dd {
    display: table-cell;
    vertical-align: middle;
    text-align: left;
    padding: 15px 5px;
  }
  .detail_area .detail_info .table_box dt {
    color: #ffaabe;
    width: 30%;
  }
  .detail_area .detail_info .table_box dd {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .detail_area .detail_info .table_box .facility_area dt, .detail_area .detail_info .table_box .facility_area dd {
    display: block;
    width: 100%;
  }
  .detail_area .detail_info .table_box .facility_area dd {
    padding-top: 0;
  }
  .detail_area .detail_info .table_box .facility {
    margin-right: -3%;
  }
  .detail_area .detail_info .table_box .facility li {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 3px 0;
    margin: 0 3% 10px 0;
    width: 45%;
  }
  .detail_area .detail_info .map {
    padding-bottom: 30px;
  }
  .detail_area .detail_info .map p {
    color: #ffaabe;
    padding: 15px 5px;
  }
  .detail_area .detail_info .map iframe {
    height: 150px;
  }
  .detail_area .detail_info .recommend {
    padding: 30px 0;
  }
  .detail_area .detail_info .recommend .label {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 2px 15px;
    margin-bottom: 20px;
  }
  .detail_area .detail_info .recommend .catch {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 8px;
  }
  .detail_area .detail_info .recommend .text {
    margin-bottom: 20px;
  }
  .detail_area .detail_info .recommend img {
    margin: 20px auto 0;
    display: block;
    width: 100%;
    height: auto;
  }
  .detail_area .detail_info .recommend .img_box {
    margin-bottom: 20px;
  }
  .detail_area .detail_info .recommend .img_box img {
    width: 50%;
  }
  .detail_area .detail_info .recommend .btn_research {
    margin-top: 30px;
    width: 70%;
  }
  .detail_area .detail_info .recommend_info .recommend_detail {
    padding: 20px 0;
  }
  .detail_area .detail_info .recommend_info .recommend_detail li {
    margin-bottom: 30px;
  }
  .detail_area .detail_info .recommend_info .recommend_detail li:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
  }
  .detail_area .detail_info .recommend_info .recommend_detail li figure img {
    display: block;
    width: 100%;
    margin-bottom: 5px;
  }
  .detail_area .detail_info .recommend_info .recommend_detail li strong {
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
  }
  .detail_area .detail_info_end [class^="btn_"] {
    display: block;
    max-width: 300px;
    margin: 0 auto;
    padding: 12px;
    border-radius: 5px;
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
  }
  .detail_area .detail_info_end .btn_back {
    background-color: #fff;
  }
  .detail_area .detail_info_end .btn_back span {
    position: relative;
  }
  .detail_area .detail_info_end .btn_back span:before {
    margin-right: 10px;
    font-family: "emopa";
    content: "\e92a";
  }
  .detail_area .detail_info_end .btn_research {
    margin-bottom: 20px;
  }

  .send_box {
    background-color: #5f687a;
    padding: 50px 0;
  }
  .send_box .btn {
    width: 70%;
  }
  .send_box .line_btn {
    background-color: #00c300;
    color: #fff;
    margin-bottom: 10px;
  }
  .send_box .mail_btn {
    background-color: #fff;
    color: #4b4b4b;
  }
}
/*------------------------------------------------------------------------
 detail_gallery
-------------------------------------------------------------------------*/
.detail_gallery .sns_btn_area {
  text-align: left;
}
.detail_gallery .sns_btn_area li:first-child {
  padding-left: 0;
}

.photo_gallery .photo_box {
  display: block;
  float: left;
}
.photo_gallery .photo_box .img_box {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.photo_gallery .photo_box .img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.photo_gallery .photo_box .link_text {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 8px;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .detail_gallery .sns_btn_area .btn_photo {
    position: relative;
  }
  .detail_gallery .sns_btn_area .wf-back {
    position: absolute;
    left: 15px;
    font-size: 18px;
    font-size: 1.8rem;
  }

  .photo_gallery {
    margin-top: 30px;
  }
  .photo_gallery .photo_box {
    width: 24%;
    padding-right: 1.3%;
    margin-bottom: 20px;
  }
  .photo_gallery .photo_box:nth-child(4n) {
    padding-right: 0;
  }
  .photo_gallery .photo_box .img_box {
    height: 150px;
  }
  .photo_gallery .photo_box .link_text {
    height: 20px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
}
@media screen and (max-width: 768px) {
  .photo_gallery {
    margin-top: 15px;
  }
  .photo_gallery .photo_box {
    width: 49%;
    padding-right: 2%;
    margin-bottom: 20px;
  }
  .photo_gallery .photo_box:nth-child(2n) {
    padding-right: 0;
  }
  .photo_gallery .photo_box .img_box {
    height: 100px;
  }

  .detail_gallery .sns_btn_area {
    text-align: center;
  }
  .detail_gallery .sns_btn_area .back_btn {
    display: block;
    margin-bottom: 40px;
    width: 50%;
    position: relative;
  }
  .detail_gallery .sns_btn_area .back_btn .wf-back {
    position: absolute;
    left: 10px;
    font-size: 15px;
    font-size: 1.5rem;
  }
}
#videos {
  position: relative;
  overflow: hidden;
  background: #fff;
  border-radius: 8px;
  padding: 20px;
  margin: 40px auto 0;
}
#videos h3 {
  color: #89C997;
  margin-top: 10px;
}
#videos .hint {
  margin-left: 90px;
  margin-top: 40px;
}
#videos h3 span {
  display: block;
  color: #888;
  font-size: 18px;
  text-align: center;
}
#videos .guide_mark {
  width: 84px;
  height: 96px;
  background: url(../images/vr_guidemark_pc.png) no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: -70px;
  left: 10px;
  z-index: 1;
}
#videos .player {
  margin: 0 auto;
  position: relative;
  height: 300px;
}
#videos .movie {
  position: relative;
  width: auto;
  height: auto;
  z-index: 0;
  overflow: hidden;
}
#videos .main {
  position: relative;
  margin-right: 400px;
  box-sizing: border-box;
}
#videos .main .movie {
  width: 100%;
  padding-top: 100%;
  padding-top: 56.25%;
}
#videos .main .movie iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
#videos .main .title {
  font-size: 20px;
  font-size: 2rem;
  margin-left: 10px;
}
#videos .list {
  position: absolute;
  top: 0;
  right: 0;
  width: 380px;
  height: 270px;
  margin-top: 8px;
  overflow: auto;
}
#videos .list li {
  position: relative;
  clear: both;
  overflow: hidden;
  margin-bottom: 10px;
}
#videos .list li .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  cursor: pointer;
}
#videos .list li .title {
  margin-left: 166px;
  padding: 5px;
}
#videos .list li .movie {
  float: left;
  width: 176px;
  margin: -8px;
}
#videos .list li .movie iframe {
  width: 176px;
  height: 99px;
}
#videos .list li.active {
  background: #EBFFF0;
}

@media screen and (max-width: 768px) {
  #videos .guide_mark {
    left: auto;
    right: 0;
    background: url(../images/vr_guidemark_sp.png) no-repeat;
    background-size: 100% 100%;
  }
  #videos .hint {
    margin-left: 0;
    margin-right: 90px;
    margin-top: 20px;
  }
  #videos .player {
    width: auto;
    height: auto;
    margin: 0 auto;
  }
  #videos .main {
    width: 100%;
    float: none;
    position: relative;
    margin-right: 0;
    margin-bottom: 10px;
  }
  #videos .list {
    position: relative;
    width: 100%;
    height: auto;
    margin: 8px;
    max-height: 320px;
    float: none;
    overflow: auto;
  }
}
/*------------------------------------------------------------------------
 common(case,useful,service,staff)
-------------------------------------------------------------------------*/
.visual_title {
  text-align: center;
}
.visual_title p,
.visual_title h1,
.visual_title .staff-title_text {
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.visual_title span {
  display: block;
}

@media screen and (min-width: 769px) {
  .visual_title p,
  .visual_title h1,
  .visual_title .staff-title_text {
    font-size: 60px;
    font-size: 6rem;
  }
  .visual_title span {
    font-size: 40px;
    font-size: 4rem;
  }
  .visual_title .read {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.2;
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .visual_title p,
  .visual_title h1,
  .visual_title .staff-title_text {
    font-size: 19px;
    font-size: 1.9rem;
  }
  .visual_title span {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
/*------------------------------------------------------------------------
 case
-------------------------------------------------------------------------*/
.case_title {
  background-image: url(../images/mainvisual_case.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 70px;
  padding: 150px 0;
  position: relative;
  z-index: 0;
}
.case_title:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.case_contents {
  background-color: #f5f0f0;
}
.case_contents .case_box a, .case_contents .case_box .trimming {
  width: 100%;
}
.case_contents .case_lists {
  display: block;
}
.case_contents .case_lists .case_box {
  display: block;
  float: left;
}

@media screen and (min-width: 769px) {
  .case_title {
    margin-top: 70px;
    padding: 150px 0;
  }

  .case_contents .case_heading {
    font-size: 30px;
    font-size: 3rem;
    padding-top: 50px;
  }
  .case_contents .text {
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
    padding-top: 50px;
  }
  .case_contents .case_box .link_text {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .case_contents .case_list {
    padding: 50px 0 20px;
  }
  .case_contents .case_list .case_box {
    width: 50%;
    padding-right: 1%;
  }
  .case_contents .case_list .case_box:last-child {
    padding-left: 1%;
    padding-right: 0;
  }
  .case_contents .case_list .case_box .trimming {
    height: 300px;
  }
  .case_contents .case_list .case_box .caption {
    font-size: 34px;
    font-size: 3.4rem;
  }
  .case_contents .case_lists .case_box {
    width: 24%;
    margin-top: 20px;
    padding-right: 12px;
  }
  .case_contents .case_lists .case_box:nth-child(4n) {
    padding-right: 0;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .case_contents .case_lists .case_box {
    padding-right: 1%;
  }
}
@media screen and (max-width: 768px) {
  .case_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .case_contents {
    padding: 0 15px 30px;
  }
  .case_contents .case_heading {
    font-size: 19px;
    font-size: 1.9rem;
    padding-top: 30px;
  }
  .case_contents .text {
    font-size: 15px;
    font-size: 1.5rem;
    padding-top: 30px;
  }
  .case_contents .case_box .link_text {
    color: #6E6E6E;
    font-size: 10px;
    font-size: 1rem;
  }
  .case_contents .case_list {
    padding: 50px 0 0;
  }
  .case_contents .case_list .case_box,
  .case_contents .case_lists .case_box {
    width: 48%;
    padding-right: 2%;
    margin-top: 15px;
  }
  .case_contents .case_list .case_box:nth-child(2n),
  .case_contents .case_lists .case_box:nth-child(2n) {
    padding-left: 2%;
    padding-right: 0;
  }
  .case_contents .case_list .case_box .trimming,
  .case_contents .case_lists .case_box .trimming {
    height: 150px;
  }
  .case_contents .case_list .case_box .link_text,
  .case_contents .case_lists .case_box .link_text {
    height: 50px;
  }
}
/*------------------------------------------------------------------------
 common(case_detail,useful_detail)
-------------------------------------------------------------------------*/
.detail_visual img {
  width: 100%;
}

.sns_btn_area {
  text-align: right;
}
.sns_btn_area li {
  display: inline-block;
  padding: 5px;
}
.sns_btn_area li:last-child {
  padding-right: 0;
}
.sns_btn_area .fb {
  position: relative;
  top: -7px;
}

.staff .staff_title {
  color: #ffaabe;
}
.staff .staff_name {
  color: #999999;
}
.staff .staff_name .name {
  border-bottom: 1px solid #ffaabe;
  padding-bottom: 2px;
}

@media screen and (min-width: 769px) {
  .detail_visual {
    width: 980px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .detail_visual {
    width: 98%;
  }
}

@media screen and (min-width: 769px) {
  .sns_btn_area {
    padding-top: 30px;
  }
  .sns_btn_area .g-plus {
    width: 40px;
  }
}
@media screen and (min-width: 769px) and (max-width: 980px) {
  .detail_visual {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .case_visual {
    margin: 60px -15px 0;
    width: auto;
  }

  .sns_btn_area {
    padding-top: 20px;
  }
}
/*------------------------------------------------------------------------
 case_detail
-------------------------------------------------------------------------*/
.case_detail .heading {
  color: #372B2E;
  line-height: 1.5;
  text-align: center;
}
.case_detail .case_img .movie_box {
  position: relative;
  overflow: hidden;
}
.case_detail .case_img .movie_box:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: -6px;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.case_detail .case_img .movie_box:after {
  content: "";
  cursor: pointer;
  position: absolute;
  display: block;
  background-image: url(../images/icon-movie.png);
  top: 40%;
  left: 42%;
  z-index: 0;
}
.case_detail .case_img .movie_box.iphone:after {
  display: none;
}
.case_detail .case_img video {
  width: 100%;
}
.case_detail .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  margin-top: 20px;
}
.case_detail .case_detail_info {
  background-color: #fff;
}
.case_detail .case_detail_info .label {
  background-color: #ffaabe;
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.case_detail .case_detail_info .detail_info_box dd .trimming {
  float: left;
}
.case_detail .case_detail_info .detail_info_box dd .trimming:hover {
  opacity: 0.8;
}
.case_detail .case_detail_info .detail_info_box dd .trimming a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.case_detail .case_detail_info .staff .staff_title {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

@media screen and (min-width: 769px) {
  .case_detail {
    padding-bottom: 100px;
    width: 900px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .case_detail {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .case_detail .heading {
    font-size: 30px;
    font-size: 3rem;
    padding-top: 40px;
  }
  .case_detail .text {
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
    padding-top: 40px;
  }
  .case_detail .case_img {
    width: 750px;
    margin: auto;
    padding-top: 70px;
  }
  .case_detail .case_img .movie_box:after {
    width: 90px;
    height: 90px;
  }
  .case_detail .case_img .trimming {
    height: 460px;
  }
  .case_detail .case_detail_info {
    margin-top: 30px;
    padding: 40px 30px 60px;
  }
  .case_detail .case_detail_info .label {
    font-size: 20px;
    font-size: 2rem;
    padding: 5px 25px;
  }
  .case_detail .case_detail_info .info_text {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 30px;
  }
  .case_detail .case_detail_info .detail_info_box {
    margin-top: 30px;
  }
  .case_detail .case_detail_info .detail_info_box dl {
    display: table;
    width: 100%;
    border-bottom: 1px solid #ddd;
  }
  .case_detail .case_detail_info .detail_info_box dl:first-child {
    border-top: 1px solid #ddd;
  }
  .case_detail .case_detail_info .detail_info_box dt, .case_detail .case_detail_info .detail_info_box dd {
    font-size: 15px;
    font-size: 1.5rem;
    display: table-cell;
    vertical-align: top;
    text-align: left;
    padding: 25px 20px;
  }
  .case_detail .case_detail_info .detail_info_box dt {
    background-color: #f2f2f2;
    width: 24%;
  }
  .case_detail .case_detail_info .detail_info_box li {
    line-height: 2;
  }
  .case_detail .case_detail_info .detail_info_box dd .trimming {
    width: 120px;
    height: 120px;
    margin-top: 0;
    margin-right: 20px;
  }
  .case_detail .case_detail_info .detail_info_box dd .text_box {
    margin-top: 10px;
  }
  .case_detail .case_detail_info .detail_info_box dd .place {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .case_detail .case_detail_info .detail_info_box dd .venue_name {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 10px;
    padding-bottom: 1px;
    border-bottom: 1px solid transparent;
  }
  .case_detail .case_detail_info .detail_info_box dd .venue_name:hover {
    border-bottom: 1px solid #735b61;
  }
  .case_detail .case_detail_info .staff {
    border: 1px solid #ffaabe;
    margin-top: 40px;
    padding: 20px 30px 30px;
  }
  .case_detail .case_detail_info .staff .staff_title {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 15px;
  }
  .case_detail .case_detail_info .staff img {
    float: left;
    margin-right: 30px;
    width: 240px;
  }
  .case_detail .case_detail_info .staff .text_box {
    margin-top: 25px;
  }
  .case_detail .case_detail_info .staff .staff_name {
    font-size: 18px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    margin-bottom: 10px;
  }
  .case_detail .case_detail_info .staff .staff_name .name {
    font-size: 20px;
    font-size: 2rem;
    margin-right: 15px;
  }
  .case_detail .case_detail_info .staff .staff_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 768px) {
  .case_detail .heading {
    font-size: 20px;
    font-size: 2rem;
    padding-top: 20px;
  }
  .case_detail .case_img {
    padding-top: 50px;
  }
  .case_detail .case_img .movie_box:after {
    background-size: contain;
    width: 45px;
    height: 45px;
  }
  .case_detail .case_img .trimming {
    height: 180px;
  }
  .case_detail .case_detail_info {
    margin-top: 20px;
    padding: 15px;
  }
  .case_detail .case_detail_info .label {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 2px 20px;
  }
  .case_detail .case_detail_info .info_text {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 20px;
  }
  .case_detail .case_detail_info .detail_info_box {
    margin-top: 30px;
  }
  .case_detail .case_detail_info .detail_info_box dl {
    border-bottom: 1px solid #ffaabe;
    padding: 15px 10px;
  }
  .case_detail .case_detail_info .detail_info_box dl:first-child {
    border-top: 1px solid #ffaabe;
  }
  .case_detail .case_detail_info .detail_info_box dt {
    color: #ffaabe;
  }
  .case_detail .case_detail_info .detail_info_box dd .trimming {
    width: 70px;
    height: 70px;
    margin: 0 10px 0 0;
  }
  .case_detail .case_detail_info .detail_info_box dd .text_box {
    margin-top: 10px;
  }
  .case_detail .case_detail_info .detail_info_box dd .place {
    color: #999999;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .case_detail .case_detail_info .detail_info_box dd .venue_name {
    font-size: 13px;
    font-size: 1.3rem;
    text-decoration: underline;
  }
  .case_detail .case_detail_info .staff {
    padding: 15px 10px;
  }
  .case_detail .case_detail_info .staff .staff_title {
    font-size: 13px;
    font-size: 1.3rem;
    margin-bottom: 15px;
  }
  .case_detail .case_detail_info .staff img {
    width: 80%;
  }
  .case_detail .case_detail_info .staff .staff_name {
    font-size: 12px;
    font-size: 1.2rem;
    margin: 10px 0;
  }
  .case_detail .case_detail_info .staff .staff_name .name {
    font-size: 14px;
    font-size: 1.4rem;
    color: #372B2E;
    margin-right: 10px;
  }
  .case_detail .case_detail_info .staff .staff_text {
    font-size: 12px;
    font-size: 1.2rem;
  }

  .other_case {
    background-color: #fff;
    padding: 30px 15px 50px;
  }
  .other_case .case_lists {
    padding-top: 0;
  }
}
/*------------------------------------------------------------------------
 useful
 -------------------------------------------------------------------------*/
.useful_title {
  background-image: url(../images/useful/mainvisual.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: 70px;
  padding: 150px 0;
  position: relative;
  z-index: 0;
}
.useful_title:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.useful_contents {
  background-color: #f5f0f0;
}
.useful_contents .useful_list_box {
  background-color: #fff;
}
.useful_contents .useful_list_box .category_name {
  color: #fff;
  text-align: left;
  transform: scale(1, 1);
}
.useful_contents .useful_list_box .category_name i {
  vertical-align: middle;
}
.useful_contents .useful_list_box .useful_box p {
  color: #444444;
}

.useful_visual {
  margin-bottom: 25px;
}

.useful_info_ranking {
  background-color: #f5f0f0;
}

@media screen and (min-width: 769px) {
  .useful_title {
    margin-top: 70px;
    padding: 150px 0;
  }

  .useful_area {
    margin: 0 auto;
    padding-bottom: 30px;
  }
  .useful_area .subheading {
    font-size: 30px;
    font-size: 3rem;
    padding-top: 50px;
  }
  .useful_area.mw768 {
    max-width: 768px;
  }

  .useful_contents .text {
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
    padding-top: 50px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .useful_contents .useful_list {
    padding-top: 50px;
  }
  .useful_contents .useful_list_box {
    margin-bottom: 50px;
  }
  .useful_contents .useful_list_box .category_name {
    font-size: 20px;
    font-size: 2rem;
    padding: 10px 25px;
  }
  .useful_contents .useful_list_box .category_name i {
    font-size: 25px;
    font-size: 2.5rem;
    padding-right: 25px;
  }
  .useful_contents .useful_list_box .useful_box {
    display: block;
    width: auto;
    margin: 0;
  }
  .useful_contents .useful_list_box .useful_box a {
    border: none;
    padding: 0;
  }
  .useful_contents .useful_list_box .useful_box .link_text {
    color: #735b61;
    line-height: 1.3;
  }
  .useful_contents .useful_list_box .useful_box .article {
    color: #999;
  }
  .useful_contents .useful_list_box .big_useful_box {
    float: left;
    width: 45%;
    padding: 40px 0 40px 25px;
  }
  .useful_contents .useful_list_box .big_useful_box .trimming {
    width: 140px;
    height: 140px;
    margin-top: 3px;
  }
  .useful_contents .useful_list_box .big_useful_box .link_text {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .useful_contents .useful_list_box .big_useful_box .article {
    margin-top: 20px;
  }
  .useful_contents .useful_list_box .useful_box_sub {
    float: right;
    width: 45%;
    padding: 40px 25px 40px 0;
  }
  .useful_contents .useful_list_box .useful_box_sub .useful_box:first-child {
    margin-bottom: 20px;
  }
  .useful_contents .useful_list_box .useful_box_sub .trimming {
    width: 60px;
    height: 60px;
    margin-top: 3px;
  }
  .useful_contents .useful_list_box .useful_box_sub .link_text {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .useful_contents .useful_list_box .useful_box_sub .article {
    margin-top: 5px;
    padding-left: 75px;
  }
  .useful_contents .useful_list_box .useful_box_sub.md12 {
    margin-top: -12px;
    padding-top: 0;
  }

  .useful_info_ranking {
    padding: 0 0 50px;
  }
}
@media screen and (max-width: 768px) {
  .useful_visual {
    margin-top: 60px;
    margin-bottom: 0;
  }
  .useful_visual img {
    display: block;
  }

  .useful_area .subheading {
    font-size: 18px;
    font-size: 1.8rem;
    padding-top: 30px;
  }

  .useful_title {
    margin-top: 60px;
    padding: 30px 0;
  }

  .useful_contents {
    padding-bottom: 30px;
  }
  .useful_contents .text {
    padding: 25px 15px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .useful_contents .useful_list_box .category_name {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 10px;
  }
  .useful_contents .useful_list_box .category_name i {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 5px;
  }
  .useful_contents .useful_list_box .useful_box:last-child {
    border-bottom: none;
  }
  .useful_contents .useful_list_box .useful_box .link_text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .useful_contents .useful_list_box .useful_box.line {
    border-top: 1px solid #ddd;
  }

  .useful_info_ranking {
    padding: 0 0 30px;
  }
  .useful_info_ranking h2 {
    transform: scale(1, 1);
    margin-bottom: 10px;
  }
  .useful_info_ranking .wf-crown {
    font-size: 30px;
    font-size: 3rem;
  }
}
/*------------------------------------------------------------------------
 useful_detail
 -------------------------------------------------------------------------*/
.useful_detail {
  display: block;
  background-color: #fff;
  padding: 10px 20px 20px 20px;
  margin-top: 25px;
  max-width: 768px;
}
.useful_detail .label {
  color: #FF8CA7;
  display: inline-block;
  background-color: #fff;
  border: solid 1px #FF8CA7;
}
.useful_detail .date {
  color: #999999;
}
.useful_detail .heading {
  max-width: 768px;
  color: #372B2E;
  text-align: left;
  transform: scale(1, 1);
  margin-top: 30px;
}
.useful_detail .text {
  text-align: left;
}
.useful_detail .detail_title {
  padding-left: 5px;
  color: #444444;
  font-weight: bold;
}
.useful_detail .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.useful_detail .staff_box {
  background-color: #fff;
}
.useful_detail .staff {
  border: 1px solid #ffaabe;
}
.useful_detail .staff img {
  float: left;
}

.useful_info_topicks {
  background-color: #f5f0f0;
}

@media screen and (min-width: 769px) {
  .useful_detail {
    width: 900px;
    margin: auto;
    padding: 20px;
    position: relative;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .useful_detail {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .useful_detail .label {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 2px 10px;
  }
  .useful_detail .date {
    font-size: 13px;
    font-size: 1.3rem;
    margin-left: 10px;
  }
  .useful_detail .heading {
    font-size: 28px;
    font-size: 2.8rem;
    margin-top: 30px;
  }
  .useful_detail .useful_sns_btn_area {
    padding-top: 0;
    position: absolute;
    top: 15px;
    right: 20px;
  }
  .useful_detail .text {
    color: #444444;
    font-size: 16px;
    font-size: 1.6rem;
    padding-top: 0;
  }
  .useful_detail .useful_detail_box {
    margin-top: 50px;
    padding-bottom: 30px;
  }
  .useful_detail .detail_title {
    font-weight: bold;
    color: #444444;
    font-size: 22px;
    font-size: 2.2rem;
  }
  .useful_detail .trimming {
    max-width: 768px;
    padding-top: 65%;
    margin-top: 15px;
  }
  .useful_detail .description {
    color: #444444;
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 20px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  .useful_detail .staff_box {
    padding: 30px;
    margin-top: 20px;
  }
  .useful_detail .staff {
    padding: 20px 30px 30px;
  }
  .useful_detail .staff .staff_title {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 15px;
  }
  .useful_detail .staff img {
    width: 240px;
    margin-right: 30px;
  }
  .useful_detail .staff .text_box {
    margin: 0px 0 0 270px;
  }
  .useful_detail .staff .staff_name {
    font-size: 18px;
    font-size: 1.8rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    margin-bottom: 10px;
  }
  .useful_detail .staff .staff_name .name {
    color: #735b61;
    font-size: 20px;
    font-size: 2rem;
    margin-right: 15px;
  }
  .useful_detail .staff .staff_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .useful_detail .quotation {
    margin-top: 10px;
    color: #b6b6b6;
  }
  .useful_detail .quotation .wf-quotation {
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    padding-right: 12px;
  }
  .useful_detail .quotation .wf-quotation.right {
    transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
  }
  .useful_detail .quotation a {
    padding-left: 10px;
    color: #b6b6b6;
    text-decoration: underline;
  }

  .useful_info_topicks {
    padding-bottom: 30px;
  }
}
@media (max-width: 900px) and (min-width: 769px) {
  .useful_detail .useful_area {
    text-align: left;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .useful_detail {
    padding: 15px;
    margin-top: 0;
  }
  .useful_detail .label {
    font-size: 10px;
    font-size: 1rem;
    padding: 2px 5px;
  }
  .useful_detail .date {
    font-size: 10px;
    font-size: 1rem;
    margin-left: 5px;
  }
  .useful_detail .heading {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 20px;
  }
  .useful_detail .useful_sns_btn_area {
    padding-top: 0;
    text-align: center;
  }
  .useful_detail .text {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 20px 0 20px 0;
  }
  .useful_detail .useful_detail_box {
    margin-top: 30px;
    padding-bottom: 20px;
  }
  .useful_detail .detail_title {
    font-size: 16px;
    font-size: 1.6rem;
    color: #444444;
  }
  .useful_detail .trimming {
    width: 100%;
    height: 180px;
    margin-top: 20px;
  }
  .useful_detail .description {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 25px;
  }
  .useful_detail .staff_box {
    padding: 5px;
    margin-top: 20px;
  }
  .useful_detail .staff {
    padding: 10px;
  }
  .useful_detail .staff .staff_title {
    font-size: 13px;
    font-size: 1.3rem;
    margin-bottom: 10px;
  }
  .useful_detail .staff img {
    width: 30%;
    margin-right: 10px;
  }
  .useful_detail .staff .staff_name {
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
  .useful_detail .staff .staff_name .name {
    font-size: 14px;
    font-size: 1.4rem;
    margin-right: 5px;
  }
  .useful_detail .staff .staff_text {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .useful_detail .quotation {
    margin: 15px 0 -12px;
    color: #b6b6b6;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .useful_detail .quotation .wf-quotation {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    padding-right: 12px;
  }
  .useful_detail .quotation .wf-quotation.right {
    padding-right: 0;
    transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
  }
  .useful_detail .quotation a {
    display: inline-block;
    padding: 0 12px 5px 10px;
    color: #b6b6b6;
    text-decoration: underline;
  }

  .useful_info_topicks .heading {
    padding: 30px 0;
  }
}
input[type="text"]::-webkit-input-placeholder {
  color: #DDD;
}

input[type="text"]::-moz-input-placeholder {
  color: #DDD;
}

input[type="text"]::-ms-input-placeholder {
  color: #DDD;
}

.mt20 {
  margin-top: 20px;
}

.useful_contents {
  background-color: #f5f0f0;
  padding-bottom: 80px;
}
.useful_contents .useful_heading {
  text-align: center;
  font-size: 30px;
  padding-top: 50px;
  margin-bottom: 60px;
}

.mb0 {
  margin-bottom: 0;
  padding-bottom: 0;
}

.mb30 {
  margin-bottom: 30px;
}

.useful_list_wrap {
  max-width: 960px;
  display: table;
  height: auto;
  margin: 0 auto 0 auto;
  padding: 0 30px 0 30px;
  box-sizing: border-box;
  margin-bottom: 40px;
}
.useful_list_wrap .category-ttl {
  height: 50px;
  background-color: #fff;
  border: solid 1px #FFAABE;
  font-size: 20px;
  text-align: center;
  line-height: 2.5;
  color: #FF8CA7;
  margin-bottom: 15px;
}
.useful_list_wrap .useful_container {
  width: 100%;
  display: table;
  table-layout: fixed;
  border-spacing: 15px 0;
  width: calc(100% + 30px);
  margin: 15px -15px 0px;
}
.useful_list_wrap .useful_container .useful_article {
  display: table-cell;
  width: 33.3333%;
  border-spacing: 15px 0;
  background-color: #fff;
  margin-bottom: 15px;
  box-sizing: border-box;
}
.useful_list_wrap .useful_container .useful_article:nth-child(3n) {
  margin-right: 0;
}
.useful_list_wrap .useful_container .useful_article > a:hover .eyeCatch img {
  filter: brightness(105%);
  -webkit-transform: translate(-50%, -50%) scale(1.2);
  -ms-transform: translate(-50%, -50%) scale(1.2);
  transform: translate(-50%, -50%) scale(1.2);
}
.useful_list_wrap .useful_container .useful_article > a:hover .date {
  color: #F8ADC4;
}
.useful_list_wrap .useful_container .useful_article > a:hover .article-title {
  color: #FF8CA7;
}
.useful_list_wrap .useful_container .useful_article .eyeCatch {
  display: inline-block;
  width: 100%;
  padding-top: 62%;
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}
.useful_list_wrap .useful_container .useful_article .eyeCatch img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1);
  -ms-transform: translate(-50%, -50%) scale(1);
  transform: translate(-50%, -50%) scale(1);
  max-width: 130%;
  max-height: 130%;
  transition: all .3s ease-out;
}
.useful_list_wrap .useful_container .useful_article .date {
  padding: 5px 15px 0 15px;
  font-size: 12px;
  color: #999;
  transition: all .3s ease-out;
}
.useful_list_wrap .useful_container .useful_article .article-title {
  width: 100%;
  box-sizing: border-box;
  padding: 0 15px 15px 15px;
  font-size: 14px;
  color: #444;
  transition: all .3s ease-out;
}
.useful_list_wrap .useful_container .no-content {
  background-color: #f5f0f0;
}

.bar {
  display: block;
  width: 80px;
  height: 1px;
  border: 0;
  border-bottom: 1px solid #444444;
  margin-top: 45px;
  margin-bottom: 75px;
}

@media screen and (max-width: 768px) {
  .useful_contents {
    padding-bottom: 40px;
  }
  .useful_contents .useful_heading {
    text-align: center;
    font-size: 18px;
    padding-top: 80px;
    margin-bottom: 30px;
  }

  .useful_list_wrap {
    width: 100%;
    padding: 0;
    margin-bottom: 0;
  }
  .useful_list_wrap .category-ttl {
    height: 40px;
    width: 100%;
    font-size: 16px;
    line-height: 2.5;
    margin-bottom: 0;
    border-left: none;
    border-right: none;
  }
  .useful_list_wrap .useful_container {
    display: table;
    table-layout: fixed;
    border-spacing: 0px 0;
    width: 100%;
    margin: 0;
    box-sizing: border-box;
  }
  .useful_list_wrap .useful_container .useful_article {
    position: relative;
    display: block;
    width: 100%;
    border-spacing: 15px 0;
    margin-bottom: 0;
    border-bottom: solid 1px #DDDDDD;
    box-sizing: border-box;
    background: no-repeat;
    background-image: url(../images/useful/bg_arrow_right.svg);
    background-color: #fff;
    background-position: right center;
    background-size: 15px;
  }
  .useful_list_wrap .useful_container .useful_article:nth-child(3n) {
    margin-right: 0;
  }
  .useful_list_wrap .useful_container .useful_article.no-border {
    border-bottom: none;
  }
  .useful_list_wrap .useful_container .useful_article .eyeCatch {
    float: left;
    width: 30%;
    padding-top: 23%;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
  }
  .useful_list_wrap .useful_container .useful_article .eyeCatch img {
    display: block;
    top: 48%;
    left: 50%;
    width: 163%;
    max-width: 180%;
    max-height: 180%;
  }
  .useful_list_wrap .useful_container .useful_article .article-title {
    width: 65%;
    display: inline-block;
    padding: 10px 10px 0px 10px;
    font-size: 13px;
    line-height: 1.8rem;
  }
  .useful_list_wrap .useful_container .useful_article .icon-arrow-right {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 3%;
    display: inline-block;
  }
  .useful_list_wrap .useful_container .useful_article .icon-arrow-right img {
    width: 6px;
    height: 12px;
    display: block;
    position: absolute;
    top: 48%;
    bottom: 0;
  }
  .useful_list_wrap .useful_container .no-content {
    display: none;
  }

  .bar {
    width: 60px;
    margin-top: 20px;
    margin-bottom: 50px;
  }
}
/*------------------------------------------------------------------------
 service_main visual
 -------------------------------------------------------------------------*/
.service_index_title {
  background-image: url(../images/service/mainvisual.jpg);
  z-index: 0;
}

.service_dress_title {
  background-image: url(../images/service/dress/mainvisual.jpg);
  z-index: 0;
}

.service_hair_title {
  background-image: url(../images/service/hair/mainvisual.jpg);
  z-index: 0;
}

.service_photo_title {
  background-image: url(../images/service/photo/mainvisual.jpg);
  z-index: 0;
}

.service_movie_title {
  background-image: url(../images/service/movie/mainvisual.jpg);
  z-index: 0;
}

.service_game_title {
  background-image: url(../images/service/game/mainvisual.jpg);
  z-index: 0;
}

.service_prize_title {
  background-image: url(../images/service/prize/mainvisual.jpg);
  z-index: 0;
}

.service_app_title {
  background-image: url(../images/service/app/mainvisual.jpg);
  z-index: 0;
}

.service_mc_title {
  background-image: url(../images/service/mc/mainvisual.jpg);
  z-index: 0;
}

.service_other_title {
  background-image: url(../images/service/other/mainvisual.jpg);
  z-index: 0;
}

/*------------------------------------------------------------------------
 service
 -------------------------------------------------------------------------*/
.service_title {
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}
.service_title:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.service_contents {
  background-color: #f5f0f0;
}

.service_area .service_box_area .service_box {
  float: left;
  position: relative;
}
.service_area .service_box_area .service_box a {
  display: block;
}
.service_area .service_box_area .service_box a:hover {
  opacity: 0.8;
}
.service_area .service_box_area .service_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}
.service_area .service_box_area .service_box .service_name {
  color: #fff;
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  line-height: 1.3;
  width: 100%;
  position: absolute;
}
.service_area .other_text a {
  border-bottom: 1px solid #ffaabe;
  padding-bottom: 2px;
}

@media screen and (min-width: 769px) {
  .service_title {
    margin-top: 70px;
    padding: 120px 0;
  }

  .service_area {
    width: 900px;
    margin: auto;
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .service_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .service_area .text {
    padding-top: 50px;
    font-size: 17px;
    font-size: 1.7rem;
    letter-spacing: -.1px;
    text-align: center;
  }
  .service_area .service_box_area {
    margin: 50px -2% 0 0;
  }
  .service_area .service_box_area .service_box {
    margin-right: 2%;
    margin-bottom: 2%;
    width: 18%;
  }
  .service_area .service_box_area .service_box .trimming {
    width: 100%;
    height: 180px;
  }
  .service_area .service_box_area .service_box .service_name {
    font-size: 25px;
    font-size: 2.5rem;
    top: 55px;
  }
  .service_area .service_box_area .service_box .short_name {
    top: 75.5px;
    backface-visibility: hidden;
  }
  .service_area .other_text {
    font-size: 17px;
    font-size: 1.7rem;
    padding-top: 20px;
  }

  .service_heading {
    font-size: 30px;
    font-size: 3rem;
    padding-top: 50px;
  }

  .service_list {
    width: 900px;
    margin: auto;
    padding-bottom: 100px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .service_list {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .service_list .icon {
    text-align: center;
    padding-top: 80px;
  }
  .service_list .wf-heart_line {
    color: #ffaabe;
    font-size: 60px;
    font-size: 6rem;
    position: relative;
  }
  .service_list .wf-heart_line:after {
    content: "\e909";
    color: rgba(153, 153, 153, 0.15);
    position: absolute;
    top: 5px;
    right: -10%;
  }
  .service_list .service_heading {
    padding-top: 30px;
  }
  .service_list .service_list_box {
    border-bottom: 1px solid #ddd;
    display: table;
    width: 100%;
    margin-top: 50px;
    padding-bottom: 50px;
  }
  .service_list .service_list_box:last-of-type {
    margin-bottom: 80px;
  }
  .service_list .service_text,
  .service_list .circle_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .service_list .service_text {
    width: 50%;
  }
  .service_list .service_text .title {
    color: #372B2E;
    font-size: 20px;
    font-size: 2rem;
    text-align: left;
  }
  .service_list .service_text .number {
    display: inline-block;
    font-size: 30px;
    font-size: 3rem;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    padding-right: 10px;
  }
  .service_list .service_text .infinite {
    font-family: Avenir Next Regular,Roboto,"Droid Sans","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,sans-serif;
  }
  .service_list .service_text .text {
    font-size: 17px;
    font-size: 1.7rem;
    width: 90%;
    margin-top: 10px;
  }
  .service_list .service_text .btn_more {
    margin: 30px 0 0;
    padding: 0;
    width: 200px;
  }
  .service_list .circle_box {
    text-align: right;
  }
  .service_list .circle {
    border-radius: 100%;
    overflow: hidden;
    background-position: center center;
    background-size: cover;
    width: 180px;
    height: 180px;
    display: inline-block;
  }

  .line_contents {
    background-color: #fff;
    padding: 0 15px;
  }

  .line_area {
    display: flex;
  }

  .line_list {
    background: #ffebef;
    padding: 2%;
    margin-top: 35px;
    width: 100%;
  }
  .line_list li {
    font-size: 16px;
    padding-bottom: 8px;
  }

  .line_qr {
    background: #ffebef;
    padding: 2%;
    margin-top: 35px;
  }
  .line_qr img {
    width: 200px;
  }
}
@media screen and (max-width: 768px) {
  .service_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .service_contents {
    padding: 0 15px;
  }

  .service_area {
    padding-bottom: 30px;
  }
  .service_area .service_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding-top: 30px;
    line-height: 1.3;
  }
  .service_area .text {
    font-size: 15px;
    font-size: 1.5rem;
    padding-top: 20px;
  }
  .service_area .service_box_area {
    margin: 30px -3% 10px 0;
  }
  .service_area .service_box_area .service_box {
    margin-right: 3%;
    margin-bottom: 3%;
    width: 47%;
  }
  .service_area .service_box_area .service_box .trimming {
    width: 100%;
    height: 140px;
  }
  .service_area .service_box_area .service_box .service_name {
    font-size: 20px;
    font-size: 2rem;
    top: 44px;
  }
  .service_area .service_box_area .service_box .short_name {
    top: 57px;
  }
  .service_area .other_text {
    font-size: 13px;
    font-size: 1.3rem;
    margin-bottom: 30px;
  }

  .line_contents {
    background-color: #fff;
    padding: 0 15px;
  }

  .line_list {
    background: #ffebef;
    padding: 2%;
    margin-top: 35px;
  }
  .line_list li {
    font-size: 16px;
    padding-bottom: 8px;
  }

  .line_qr {
    background: #ffebef;
    padding: 2%;
    text-align: center;
  }
  .line_qr img {
    width: 200px;
  }
}
/*------------------------------------------------------------------------
 service_general
 -------------------------------------------------------------------------*/
.service_general_box .general_title {
  border-left: 4px solid #ffaabe;
}
.service_general_box .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width: 769px) {
  .service_general_area {
    width: 900px;
    margin: auto;
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .service_general_area {
    width: 98%;
  }
}

@media screen and (min-width: 769px) {
  .service_general_box {
    padding: 50px 0;
  }
  .service_general_box .general_title {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 30px;
    padding-left: 10px;
  }
  .service_general_box .trimming {
    width: 580px;
    height: 360px;
    margin-bottom: 30px;
  }
  .service_general_box .description {
    font-size: 17px;
    font-size: 1.7rem;
    padding-bottom: 30px;
  }
}
@media screen and (max-width: 768px) {
  .service_general_area {
    padding-bottom: 50px;
  }
  .service_general_area .btn_search {
    width: 100%;
  }

  .service_general_box {
    padding: 30px 0;
  }
  .service_general_box .general_title {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 20px;
    padding-left: 5px;
  }
  .service_general_box .trimming {
    width: 100%;
    height: 180px;
    margin-bottom: 20px;
  }
  .service_general_box .description {
    font-size: 15px;
    font-size: 1.5rem;
    padding-bottom: 20px;
  }

  .service_topicks {
    padding-bottom: 0;
  }
  .service_topicks .useful_area {
    padding-bottom: 0;
  }
}
/*------------------------------------------------------------------------
 rental_dress
 -------------------------------------------------------------------------*/
.salon_info,
.service_lineup {
  background-color: #fff;
}

.relation_service_area .option_service .title {
  color: #372B2E;
}
.relation_service_area .option_service a {
  border-bottom: 1px solid #735b61;
  padding-bottom: 3px;
}
.relation_service_area .option_service .text {
  margin-bottom: 10px;
}
.relation_service_area .circle {
  border-radius: 100%;
  overflow: hidden;
  background-position: center center;
  background-color: #fff;
  width: 200px;
  height: 200px;
}
.relation_service_area .circle i {
  color: #ffaabe;
  position: relative;
  font-size: 100px;
  font-size: 10rem;
  top: 22%;
}

.service_contents .salon_info .title {
  color: #ffaabe;
  text-align: center;
}
.service_contents .salon_info .salon_box .location_name {
  border-bottom: 1px solid #ffaabe;
}
.service_contents .salon_info .salon_box .place_name {
  color: #ffaabe;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  display: inline-block;
}
.service_contents .salon_info .salon_box .salon_name {
  color: #999999;
}

@media screen and (min-width: 769px) {
  .service_lineup {
    padding: 50px 0 30px;
  }
  .service_lineup .service_list_box:last-child {
    border-bottom: none;
  }

  .relation_service {
    width: 900px;
    margin: auto;
    padding: 30px 0 50px;
    margin-top: -80px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .relation_service {
    width: 98%;
  }
}

@media screen and (min-width: 769px) {
  .relation_service_area {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin: 50px auto 120px;
  }
  .relation_service_area .option_service {
    display: table-cell;
    vertical-align: top;
    text-align: center;
    padding: 0 15px;
  }
  .relation_service_area .option_service .title {
    font-size: 20px;
    font-size: 2rem;
    margin: 20px 0 44px;
  }
  .relation_service_area .option_service .title.longtitle {
    margin: 0;
  }
  .relation_service_area .option_service .text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .relation_service_area .option_service a {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .relation_service_area .circle {
    margin: 30px auto;
  }

  .service_contents .salon_info {
    padding: 45px;
    margin: 100px auto 50px;
  }
  .service_contents .salon_info .title {
    font-size: 30px;
    font-size: 3rem;
  }
  .service_contents .salon_info .read {
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
    margin-top: 20px;
  }
  .service_contents .salon_info .btn_research {
    width: 50%;
  }
  .service_contents .salon_location {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin: 50px auto;
  }
  .service_contents .salon_location .salon_box {
    display: table-cell;
    vertical-align: top;
    text-align: left;
    padding: 0 15px;
  }
  .service_contents .salon_location .salon_box .place_name {
    font-size: 20px;
    font-size: 2rem;
    padding-right: 10px;
  }
  .service_contents .salon_location .salon_box .salon_info_box {
    padding: 30px 15px;
  }
  .service_contents .salon_location .salon_box .map {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  .service_lineup {
    padding: 15px;
  }
  .service_lineup .service_list_box {
    border-bottom: 1px solid #ddd;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
  .service_lineup .service_list_box:last-child {
    border-bottom: none;
  }
  .service_lineup .service_text .title {
    color: #372B2E;
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
    margin-bottom: 10px;
  }
  .service_lineup .service_text .text {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
  .service_lineup .service_text img {
    width: 100%;
    margin-bottom: 20px;
  }

  .relation_service {
    padding: 30px 0;
  }
  .relation_service .service_heading {
    font-size: 19px;
    font-size: 1.9rem;
    line-height: 1.3;
    margin-bottom: 30px;
  }

  .relation_service_area .option_service {
    text-align: center;
    margin-bottom: 50px;
  }
  .relation_service_area .option_service .title {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .relation_service_area .circle {
    margin: 15px auto;
  }

  .service_contents .salon_info {
    padding: 30px 15px;
    margin-bottom: 30px;
  }
  .service_contents .salon_info .title {
    font-size: 19px;
    font-size: 1.9rem;
    margin-bottom: 10px;
  }
  .service_contents .salon_info .read {
    margin-bottom: 30px;
  }
  .service_contents .salon_info .btn_research {
    width: 90%;
  }
  .service_contents .salon_location .salon_box {
    margin-bottom: 30px;
  }
  .service_contents .salon_location .salon_box .salon_info_box {
    padding: 15px;
  }
  .service_contents .salon_location .salon_box .place_name {
    font-size: 18px;
    font-size: 1.8rem;
    padding-right: 5px;
  }
  .service_contents .salon_location .salon_box .salon_name {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .service_contents .salon_location .salon_box .map iframe {
    height: 150px;
  }
}
/*------------------------------------------------------------------------
 rental_dress_category
 -------------------------------------------------------------------------*/
.visual_title .rental_category {
  color: #fff;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

@media screen and (min-width: 769px) {
  .visual_title .rental_category {
    font-size: 60px;
    font-size: 6rem;
  }
}
@media screen and (max-width: 768px) {
  .visual_title .rental_category {
    font-size: 19px;
    font-size: 1.9rem;
  }
}
.dress_gallery .dress_box {
  display: block;
  float: left;
}
.dress_gallery .dress_box .img_box {
  width: 100%;
  height: 100%;
}
.dress_gallery .dress_box .img_box img {
  width: 100%;
  height: auto;
}
.dress_gallery .dress_box .img_box a:hover img {
  opacity: .7;
}
.dress_gallery .dress_box .link_text {
  font-size: 12px;
  font-size: 1.2rem;
}
.dress_gallery .dress_box .link_text .number {
  font-size: 13px;
  font-size: 1.3rem;
}

.dress_btn_box .btn_photo {
  float: left;
  position: relative;
}
.dress_btn_box .btn_photo .wf-back {
  position: absolute;
}

@media screen and (min-width: 769px) {
  .dress_gallery {
    margin-bottom: 20px;
  }
  .dress_gallery .dress_box {
    width: 24%;
    padding-right: 1.3%;
    margin-top: 50px;
  }
  .dress_gallery .dress_box:nth-child(4n) {
    padding-right: 0;
  }
  .dress_gallery .dress_box .link_text {
    height: 100px;
  }

  .dress_btn_box .btn_photo .wf-back {
    font-size: 18px;
    font-size: 1.8rem;
    left: 15px;
  }

  .dress_category_area .salon_info {
    margin-top: 50px;
  }
}
@media screen and (max-width: 768px) {
  .dress_gallery {
    margin: 30px 0 10px;
  }
  .dress_gallery .dress_box {
    width: 49%;
    padding-right: 2%;
    margin-bottom: 30px;
  }
  .dress_gallery .dress_box:nth-child(2n) {
    padding-right: 0;
  }

  .dress_btn_box {
    margin-bottom: 30px;
  }
  .dress_btn_box .btn_photo {
    font-size: 12px;
    font-size: 1.2rem;
    width: 60%;
  }
  .dress_btn_box .btn_photo .wf-back {
    font-size: 15px;
    font-size: 1.5rem;
    left: 10px;
  }
}
/*------------------------------------------------------------------------
 rental_dress_category menu
 -------------------------------------------------------------------------*/
.rental-menu_area .title {
  color: #ffaabe;
  text-align: center;
}
.rental-menu_area .rental-menu_box {
  background-color: #fff;
  position: relative;
}
.rental-menu_area .rental-menu_box:after {
  content: "\e900";
  color: #ff7ba3;
  font-family: 'emopa';
  position: absolute;
}
.rental-menu_area .rental-menu_box a {
  display: block;
  padding: 8px;
  border: 1px solid #ddd;
}
.rental-menu_area .rental-menu_box a:hover {
  opacity: .7;
}
.rental-menu_area .rental-menu_box a:hover .link_text {
  color: #ffaabe;
}
.rental-menu_area .rental-menu_box a .trimming {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  float: left;
  margin-right: 15px;
}
.rental-menu_area .rental-menu_box a .trimming,
.rental-menu_area .rental-menu_box a .link_text {
  display: table-cell;
  -webkit-transition: .5s;
  transition: .5s;
  vertical-align: middle;
  line-height: 1.5;
}

@media screen and (min-width: 769px) {
  .rental-menu_area {
    margin: 40px auto;
    overflow: hidden;
  }
  .rental-menu_area .title {
    padding-bottom: 15px;
    font-size: 30px;
    font-size: 3rem;
  }
  .rental-menu_area .rental-menu_box {
    float: left;
    width: 49.5%;
    margin-bottom: 8px;
  }
  .rental-menu_area .rental-menu_box:after {
    font-size: 14px;
    font-size: 1.4rem;
    top: 36%;
    right: 12px;
  }
  .rental-menu_area .rental-menu_box:nth-of-type(even) {
    float: right;
  }
  .rental-menu_area .rental-menu_box a {
    padding: 8px 35px 8px 8px;
  }
  .rental-menu_area .rental-menu_box a .trimming {
    width: 60px;
  }
  .rental-menu_area .rental-menu_box a .trimming,
  .rental-menu_area .rental-menu_box a .link_text {
    height: 60px;
    font-size: 17px;
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 768px) {
  .rental-menu_area {
    margin: 30px auto;
    width: 100%;
  }
  .rental-menu_area .title {
    padding-bottom: 8px;
    font-size: 19px;
    font-size: 1.9rem;
  }
  .rental-menu_area .rental-menu_box {
    margin-bottom: 2px;
  }
  .rental-menu_area .rental-menu_box:after {
    font-size: 12px;
    font-size: 1.2rem;
    top: 30%;
    right: 10px;
  }
  .rental-menu_area .rental-menu_box a {
    padding: 6px 25px 6px 6px;
  }
  .rental-menu_area .rental-menu_box .trimming {
    width: 40px;
    margin-right: 8px;
  }
  .rental-menu_area .rental-menu_box .trimming,
  .rental-menu_area .rental-menu_box .link_text {
    height: 40px;
    font-size: 13px;
    font-size: 1.3rem;
  }
}
/*------------------------------------------------------------------------
 prize
 -------------------------------------------------------------------------*/
.relation_service_area .option_service .number {
  color: #372B2E;
  display: inline-block;
  border-bottom: 1px solid #372B2E;
  padding: 0 5px;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}

.prize_service_area .prize_info {
  background-color: #fff;
}
.prize_service_area .prize_info img {
  width: 100%;
}
.prize_service_area .prize_info .prize_box .set_name {
  margin-bottom: 10px;
}
.prize_service_area .prize_info .caption {
  line-height: 1.5;
}
.prize_service_area .btn_pdf .wf-pdf {
  vertical-align: middle;
}

@media screen and (min-width: 769px) {
  .relation_service_area .option_service .number {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.5;
  }

  .prize_service_area .prize_info {
    padding: 45px;
    margin: 50px auto;
  }
  .prize_service_area .prize_info .prize_box {
    float: left;
    width: 47%;
  }
  .prize_service_area .prize_info .prize_box:first-child {
    margin-right: 6%;
  }
  .prize_service_area .prize_info .prize_box .set_name {
    text-align: center;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .prize_info .prize_box .set_info {
    margin: 20px 0;
  }
  .prize_service_area .prize_info .prize_box .set_info .title {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .prize_info .prize_box .set_info p {
    line-height: 2;
  }
  .prize_service_area .prize_info .prize_box .price {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .prize_info .prize_image_box {
    float: left;
    width: 23.5%;
    margin-left: 2%;
  }
  .prize_service_area .prize_info .prize_image_box:first-child {
    margin-left: 0;
  }
  .prize_service_area .prize_info .prize_image_box .step {
    color: #fe78aa;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .prize_info .prize_image_box3 {
    float: left;
    width: 32%;
    margin-left: 2%;
  }
  .prize_service_area .prize_info .prize_image_box3:first-child {
    margin-left: 0;
  }
  .prize_service_area .prize_info .prize_image_box3 .step {
    color: #fe78aa;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .catalog_text {
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
  }
  .prize_service_area .btn_pdf {
    margin: 30px auto 100px;
  }
  .prize_service_area .btn_pdf .wf-pdf {
    font-size: 40px;
    font-size: 4rem;
    margin-left: 15px;
  }
}
@media screen and (max-width: 768px) {
  .relation_service_area .option_service .number {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 10px;
  }

  .prize_service_area .text {
    margin-bottom: 50px;
  }
  .prize_service_area .prize_info {
    padding: 30px 15px;
    margin-bottom: 30px;
  }
  .prize_service_area .prize_info .catch {
    margin-bottom: 50px;
  }
  .prize_service_area .prize_info .prize_box_area {
    margin-top: -30px;
  }
  .prize_service_area .prize_info .prize_box:first-child {
    border-bottom: 1px solid #ffaabe;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
  .prize_service_area .prize_info .prize_box .set_name {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .prize_service_area .prize_info .prize_box .set_info {
    margin: 15px 0;
  }
  .prize_service_area .prize_info .prize_box .set_info .title {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .prize_service_area .prize_info .prize_box .price {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .prize_service_area .prize_info .prize_image_box, .prize_service_area .prize_info .prize_image_box3 {
    padding: 0 15px;
  }
  .prize_service_area .prize_info .prize_image_box .step, .prize_service_area .prize_info .prize_image_box3 .step {
    color: #fe78aa;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .prize_service_area .prize_info .prize_image_box .caption, .prize_service_area .prize_info .prize_image_box3 .caption {
    padding-bottom: 20px;
  }
  .prize_service_area .catalog_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .prize_service_area .btn_pdf {
    margin: 20px auto 50px;
  }
  .prize_service_area .btn_pdf .wf-pdf {
    font-size: 20px;
    font-size: 2rem;
    margin-left: 5px;
  }
}
/*------------------------------------------------------------------------
 other
 -------------------------------------------------------------------------*/
.prize_info .label,
.salon_info .label {
  background-color: #ffaabe;
  color: #fff;
  text-align: center;
  display: inline-block;
}
.prize_info .catch,
.salon_info .catch {
  border-left: 4px solid #ffaabe;
  padding-left: 10px;
  line-height: 1.5;
  text-align: left;
}

.salon_info .info_text {
  line-height: 1.8;
}

.service_contents .other-service_heading {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 50px 0 10px;
}
.service_contents .hair-main_heading,
.service_contents .movie-main_heading,
.service_contents .photo-main_heading,
.service_contents .game-main_heading,
.service_contents .prize-main_heading,
.service_contents .mc-main_heading {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 50px 0 40px;
}
.service_contents .hair-main_heading:after,
.service_contents .movie-main_heading:after,
.service_contents .photo-main_heading:after,
.service_contents .game-main_heading:after,
.service_contents .prize-main_heading:after,
.service_contents .mc-main_heading:after {
  display: block;
  width: 50px;
  height: 1px;
  margin: 30px auto auto;
  background-color: #ffaabe;
  content: "";
}

@media screen and (min-width: 769px) {
  .other_service_area .text {
    margin-bottom: 90px;
  }
  .other_service_area .subtitle {
    margin-bottom: -40px;
  }
  .other_service_area .salon_info {
    margin-bottom: 80px;
  }

  .prize_info .label,
  .salon_info .label {
    font-size: 15px;
    font-size: 1.5rem;
    padding: 2px 20px;
    margin-bottom: 30px;
  }
  .prize_info .catch,
  .salon_info .catch {
    font-size: 20px;
    font-size: 2rem;
    margin-bottom: 30px;
  }

  .salon_info .salon_image_box img {
    float: left;
    width: 50%;
    margin-right: 5%;
  }
  .salon_info .info_text {
    font-size: 16px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .service_contents .other-service_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 30px 0 10px;
  }
  .service_contents .hair-main_heading,
  .service_contents .movie-main_heading,
  .service_contents .photo-main_heading,
  .service_contents .game-main_heading,
  .service_contents .prize-main_heading,
  .service_contents .mc-main_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 40px 10px 10px;
  }
  .service_contents .hair-main_heading:after,
  .service_contents .movie-main_heading:after,
  .service_contents .photo-main_heading:after,
  .service_contents .game-main_heading:after,
  .service_contents .prize-main_heading:after,
  .service_contents .mc-main_heading:after {
    display: block;
    width: 25px;
    margin: 15px auto auto;
  }

  .other_service_area .text {
    text-align: center;
    margin-bottom: 40px;
  }

  .prize_info .label,
  .salon_info .label {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 2px 15px;
    margin-bottom: 20px;
  }
  .prize_info .catch,
  .salon_info .catch {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 20px;
  }

  .salon_info .salon_image_box {
    margin-bottom: 50px;
  }
  .salon_info .salon_image_box img {
    width: 100%;
    margin-bottom: 20px;
  }
  .salon_info .info_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .salon_info .salon_info_box p {
    font-size: 15px;
    font-size: 1.5rem;
  }
}
/*------------------------------------------------------------------------
 app
 -------------------------------------------------------------------------*/
.mb20 {
  margin-bottom: 20px;
}

.emoge_read {
  padding-top: 20px;
  padding-bottom: 0;
  margin-bottom: 0;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
}

.title-app {
  color: #ffaabe;
  text-align: center;
  font-size: 35px;
  font-size: 3.5rem;
}

.recommend {
  width: 100%;
}

.recommend-list {
  font-size: 20px;
  font-size: 2rem;
  margin-top: 10px;
  padding: 10px 0 10px 0;
  ccolor: #ffaabe;
}
.recommend-list li {
  list-style: disc;
  list-style-position: inside;
}
.recommend-list li:hover {
  color: #ffaabe;
  text-decoration: underline;
}

.app-img-wrap {
  display: flex;
  margin-top: 20px;
}
.app-img-wrap box {
  display: block;
  padding-left: 10px;
  padding-right: 10px;
  width: 33.3333%;
  margin-right: 20px;
}
.app-img-wrap box img {
  margin: 0 auto;
}
.app-img-wrap box p {
  padding-right: 10px;
}
.app-img-wrap video {
  width: 98%;
}

.step-point {
  color: #fe78aa;
  font-size: 17px;
  font-size: 1.7rem;
}

.app-btn-area {
  display: flex;
  margin-top: 40px;
  margin-bottom: 60px;
}
.app-btn-area .btn {
  width: 45%;
  font-size: 22px;
  font-size: 2.2rem;
}
.app-btn-area .btn:hover {
  opacity: .8;
}
.app-btn-area img {
  width: 60%;
  padding: 0;
  margin: 0 auto;
}
.app-btn-area .qr_box {
  width: 30%;
  margin: 0 auto;
  text-align: center;
}
.app-btn-area .qr_box p {
  font-size: 20px;
  font-size: 2rem;
}
.app-btn-area .qr_box img {
  width: 40%;
  padding: 0;
  margin: 0 auto;
}

.emoge_logo {
  width: 0 auto;
  width: 250px;
  padding-top: 20px;
}

.caution {
  background-color: #fff;
  padding: 15px;
  margin-bottom: 50px;
  border-radius: 4px;
}
.caution p {
  font-size: 14px;
  font-size: 1.4rem;
}
.caution .ttl {
  color: #464646;
  padding-bottom: 10px;
  font-size: 20px;
  font-size: 2rem;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .emoge_ttl {
    line-height: 1.3;
    padding-top: 20px;
    font-size: 20px;
    font-size: 2rem;
  }

  .emoge_read {
    padding-top: 20px;
    padding-bottom: 0;
    margin-bottom: -20px;
    text-align: center;
    font-size: 14px;
    font-size: 1.4rem;
  }

  .recommend-list {
    font-size: 16px;
    font-size: 1.6rem;
  }

  .app-point {
    margin-bottom: 10px;
  }

  .app-btn-area {
    flex-direction: column;
    margin-top: 30px;
  }
  .app-btn-area .btn {
    width: 100%;
    margin-top: 0px;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .app-btn-area img {
    width: 80%;
  }

  .emoge_logo {
    width: 150px;
    padding-top: 20px;
  }

  .app-img-wrap {
    display: flex;
    margin-top: 20px;
  }
  .app-img-wrap video {
    height: 200px;
  }

  .mb10 {
    padding-bottom: 0;
  }

  .caution p {
    font-size: 12px;
    font-size: 1.2rem;
    text-indent: 0.5rem;
    margin-bottom: 10px;
  }
  .caution .ttl {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
/*------------------------------------------------------------------------
 staff
-------------------------------------------------------------------------*/
.visual_title.staff_title {
  background-image: url(../images/mainvisual_staff.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}
.visual_title.staff_title b {
  line-height: 1;
}

.staff_contents {
  background-color: #f5f0f0;
}
.staff_contents .staff-main_heading {
  font-size: 30px;
  font-size: 3rem;
  padding: 50px 0 10px;
}

.staff_area .staff_area_box {
  text-align: center;
}
.staff_area .staff_area_box li {
  border: 1px solid #a28089;
  color: #a28089;
  cursor: pointer;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.staff_area .staff_area_box li.active, .staff_area .staff_area_box li:hover {
  background-color: #a28089;
  color: #fff;
}
.staff_area .staff_area_box li.active a,
.staff_area .staff_area_box li.active a:hover, .staff_area .staff_area_box li:hover a,
.staff_area .staff_area_box li:hover a:hover {
  color: #fff;
}

.staff_box_area .staff_box {
  float: left;
  position: relative;
}
.staff_box_area .staff_box .charge {
  color: #ffaabe;
  display: inline-block;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  margin-right: 3px;
}
.staff_box_area .staff_box .wf-heart {
  color: #ffaabe;
  margin-right: 3px;
}
.staff_box_area .staff_box .place {
  color: #999999;
  font-size: 12px;
  font-size: 1.2rem;
}
.staff_box_area .staff_box .staff_photo {
  width: 100%;
}
.staff_box_area .staff_box .name {
  color: #735b61;
  display: inline-block;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  margin-right: 10px;
}
.staff_box_area .staff_box .furigana {
  color: #999999;
  display: inline-block;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.staff_box_area .staff_box .self_introduction {
  font-size: 15px;
  font-size: 1.5rem;
}

.staff_box_area .loading, .btns_area .loading {
  display: block;
  margin: auto;
  clear: both;
}

@media screen and (min-width: 769px) {
  .visual_title.staff_title {
    margin-top: 70px;
    padding: 120px 0;
    line-height: 1.5;
  }
  .visual_title.staff_title b {
    display: block;
    font-size: 20px;
    font-size: 2rem;
    vertical-align: middle;
  }

  .staff_area {
    width: 900px;
    margin: auto;
    padding-top: 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .staff_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .staff_area .staff_area_box li {
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    padding: 4px 25px;
    margin: 0 10px;
  }

  .staff_box_area {
    width: 900px;
    margin: auto;
    padding: 80px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .staff_box_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .staff_box_area .staff_box {
    margin-right: 2%;
    margin-bottom: 90px;
    width: 32%;
  }
  .staff_box_area .staff_box:nth-child(3n) {
    margin-right: 0;
  }
  .staff_box_area .staff_box .charge {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .staff_box_area .staff_box .staff_photo {
    margin: 5px 0 20px;
  }
  .staff_box_area .staff_box .name {
    font-size: 20px;
    font-size: 2rem;
  }
  .staff_box_area .staff_box .self_introduction {
    margin-top: 20px;
  }
  .staff_box_area .loading {
    width: 45px;
    height: 45px;
  }
}
@media screen and (max-width: 768px) {
  .visual_title.staff_title {
    margin-top: 60px;
    padding: 20px 0;
  }
  .visual_title.staff_title b {
    font-size: 14px;
    font-size: 1.4rem;
    vertical-align: baseline;
  }

  .staff_contents {
    padding: 0 15px;
  }
  .staff_contents .staff-main_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 30px 0 10px;
  }

  .staff_area {
    padding-top: 30px;
  }
  .staff_area .staff_area_box {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .staff_area .staff_area_box li {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    padding: 4px 0;
    border-right: 0;
  }
  .staff_area .staff_area_box li:last-child {
    border-right: 1px solid #a28089;
  }

  .staff_box_area {
    padding: 30px 0;
  }
  .staff_box_area .staff_box {
    width: 100%;
    margin-bottom: 50px;
  }
  .staff_box_area .staff_box .charge {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .staff_box_area .staff_box .staff_photo {
    margin: 5px 0 10px;
  }
  .staff_box_area .staff_box .name {
    font-size: 19px;
    font-size: 1.9rem;
  }
  .staff_box_area .staff_box .self_introduction {
    margin-top: 15px;
  }
  .staff_box_area .loading {
    width: 20px;
    height: 20px;
  }
}
/*------------------------------------------------------------------------
 guide
-------------------------------------------------------------------------*/
.guide_title {
  background-image: url(../images/mainvisual_guide.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.guide_contents {
  background-color: #f5f0f0;
}
.guide_contents .guide-main_heading {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 50px 0 40px;
}
.guide_contents .guide-main_heading:after {
  display: block;
  width: 50px;
  height: 1px;
  margin: 30px auto auto;
  background-color: #ffaabe;
  content: "";
}

.guide_subcontents {
  background-color: #fff;
}

.guide_area .guide_flow img {
  width: 100%;
}
.guide_area .guide_flow p {
  line-height: 1.8;
  letter-spacing: 0.2px;
}

@media screen and (min-width: 769px) {
  .guide_title {
    margin-top: 70px;
    padding: 150px 0;
  }

  .guide_area {
    width: 640px;
    margin: auto;
    padding: 50px 0;
  }
  .guide_area .read {
    text-align: center;
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 70px;
  }
  .guide_area .guide_heading {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 20px;
  }
  .guide_area .guide_flow img {
    margin-top: 20px;
  }
  .guide_area .guide_flow p {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 30px;
  }

  .guide_contents .btn_box {
    width: 900px;
    margin: auto;
    padding: 50px 0 100px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .guide_contents .btn_box {
    width: 98%;
  }
}

@media screen and (max-width: 768px) {
  .guide_contents .guide-main_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 40px 10px 30px;
  }
  .guide_contents .guide-main_heading:after {
    display: block;
    width: 25px;
    margin: 15px auto auto;
  }

  .guide_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .guide_area {
    padding: 30px 15px;
  }
  .guide_area .read {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 35px;
  }
  .guide_area .guide_heading {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 10px;
  }
  .guide_area .guide_flow .movie_box iframe {
    width: 100%;
    height: auto;
  }
  .guide_area .guide_flow img {
    margin-top: 10px;
  }
  .guide_area .guide_flow p {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 15px;
  }

  .guide_contents .btn_box {
    padding: 0 15px 30px;
  }
}
/*------------------------------------------------------------------------
 Q&A
-------------------------------------------------------------------------*/
.faq_title {
  background-image: url(../images/mainvisual_faq.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.faq_contents {
  background-color: #f5f0f0;
}
.faq_contents .faq-main_heading {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 50px 0 40px;
}
.faq_contents .faq-main_heading:after {
  display: block;
  width: 50px;
  height: 1px;
  margin: 30px auto auto;
  background-color: #ffaabe;
  content: "";
}

.faq_subcontents {
  background-color: #fff;
}

.faq_area .faq_box p {
  position: relative;
  line-height: 1.8;
  letter-spacing: 0.2px;
}
.faq_area .faq_box p:before {
  font-family: 'emopa';
  position: absolute;
  left: 0;
}
.faq_area .faq_box .question:before {
  content: "\e92f";
  color: #8b96ad;
}
.faq_area .faq_box .answer:before {
  content: "\e933";
  color: #ffaabe;
}

@media screen and (min-width: 769px) {
  .faq_title {
    margin-top: 70px;
    padding: 150px 0;
  }

  .faq_area {
    width: 900px;
    margin: auto;
    padding: 60px 0 10px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .faq_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .faq_area .faq_heading {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 60px;
  }
  .faq_area .faq_box {
    margin-bottom: 80px;
  }
  .faq_area .faq_box p {
    font-size: 17px;
    font-size: 1.7rem;
    margin-bottom: 20px;
    padding-left: 40px;
  }
  .faq_area .faq_box p:before {
    font-size: 25px;
    font-size: 2.5rem;
    top: -8px;
  }
  .faq_area .btn_venue_search {
    margin-bottom: 70px;
  }
}
@media screen and (max-width: 768px) {
  .faq_contents .faq-main_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 40px 10px 30px;
  }
  .faq_contents .faq-main_heading:after {
    display: block;
    width: 25px;
    margin: 15px auto auto;
  }

  .faq_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .faq_area {
    padding: 30px 15px;
  }
  .faq_area .faq_heading {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .faq_area .faq_box {
    padding-top: 30px;
  }
  .faq_area .faq_box p {
    font-size: 15px;
    font-size: 1.5rem;
    padding-left: 30px;
    padding-bottom: 15px;
  }
  .faq_area .faq_box p:before {
    font-size: 20px;
    font-size: 2rem;
    top: -5px;
  }
  .faq_area .btn_venue_search {
    margin-top: 30px;
  }
}
/*------------------------------------------------------------------------
 privacy
-------------------------------------------------------------------------*/
.privacy_contents {
  background-color: #f5f0f0;
}

.privacy_area h2 {
  color: #372B2E;
}
.privacy_area p {
  line-height: 1.8;
  letter-spacing: 0.2px;
}
.privacy_area ul {
  line-height: 1.8;
  letter-spacing: 0.2px;
  padding-left: 20px;
}
.privacy_area ul li {
  list-style-type: disc;
}
.privacy_area .enactment:before {
  content: "";
  background-color: #ffaabe;
  display: block;
  height: 1px;
  margin: auto;
  width: 50px;
}

@media screen and (min-width: 769px) {
  .privacy_area {
    width: 900px;
    margin: auto;
    padding: 50px 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .privacy_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .privacy_area .privacy_heading {
    font-size: 30px;
    font-size: 3rem;
  }
  .privacy_area h2 {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 50px;
  }
  .privacy_area p {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 10px;
  }
  .privacy_area ul {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .privacy_area .disclaimer {
    margin-top: 40px;
  }
  .privacy_area .enactment {
    margin-top: 50px;
  }
  .privacy_area .enactment:before {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 768px) {
  .privacy_area {
    padding: 90px 15px 30px;
  }
  .privacy_area .privacy_heading {
    font-size: 19px;
    font-size: 1.9rem;
  }
  .privacy_area h2 {
    font-size: 16px;
    font-size: 1.6rem;
    margin-top: 30px;
  }
  .privacy_area p {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 5px;
  }
  .privacy_area ul {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .privacy_area .disclaimer {
    margin-top: 20px;
  }
  .privacy_area .enactment {
    margin-top: 30px;
  }
  .privacy_area .enactment:before {
    margin-bottom: 30px;
  }
}
/*------------------------------------------------------------------------
 company
-------------------------------------------------------------------------*/
.company_title {
  background-image: url(../images/mainvisual_company.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.company_contents {
  background-color: #f5f0f0;
}

.company_area .subheading {
  font-size: 30px;
  font-size: 3rem;
  padding-bottom: 40px;
}
.company_area .company_heading {
  text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.company_area .company_heading span {
  color: #999999;
  display: block;
  letter-spacing: 0.5px;
}
.company_area .company_heading:after {
  content: "";
  /* background-color: #ffaabe; */
  display: block;
  height: 1px;
  margin: auto;
  width: 50px;
}
.company_area dl {
  line-height: 1.8;
  letter-spacing: 0.2px;
}
.company_area .company_address:after {
  content: "";
  background-color: #ffaabe;
  display: block;
  height: 1px;
  margin: auto;
  width: 50px;
}
.company_area .company_address .map {
  width: auto;
}

@media screen and (min-width: 769px) {
  .company_title {
    padding: 150px 0;
  }

  .company_area {
    width: 900px;
    margin: auto;
    padding: 60px 0 10px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .company_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .company_area .company_heading {
    font-size: 20px;
    font-size: 2rem;
    padding-top: 50px;
    letter-spacing: 1px;
  }
  .company_area .company_heading span {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .company_area .company_heading:after {
    margin-top: 30px;
  }
  .company_area dl {
    width: 100%;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .company_area dt {
    float: left;
    width: 130px;
  }
  .company_area dd {
    margin-bottom: 50px;
  }
  .company_area dd:after {
    clear: both;
  }
  .company_area .company_address {
    margin: 100px auto;
  }
  .company_area .company_address dt {
    height: 80px;
  }
  .company_area .company_address .map {
    margin: 15px 0 80px 130px;
    height: 200px;
  }
  .company_area .company_info {
    padding-bottom: 30px;
  }
  .company_area .company_info .business {
    height: 110px;
  }
}
@media screen and (max-width: 768px) {
  .company_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .company_area {
    padding: 30px 15px 10px;
  }
  .company_area .subheading {
    font-size: 18px;
    font-size: 1.8rem;
    padding-bottom: 50px;
  }
  .company_area .company_heading {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .company_area .company_heading span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .company_area .company_heading:after {
    margin-top: 20px;
  }
  .company_area dl {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 50px;
  }
  .company_area dt {
    margin-bottom: 10px;
  }
  .company_area dd {
    padding-bottom: 40px;
  }
  .company_area .company_address .map {
    margin: 15px auto;
  }
}
/*------------------------------------------------------------------------
 sitemap
-------------------------------------------------------------------------*/
.sitemap_contents {
  background-color: #f5f0f0;
}

.sitemap_area {
  line-height: 1.8;
  letter-spacing: 0.2px;
}
.sitemap_area h2 {
  color: #372B2E;
  border-bottom: 1px solid #ffaabe;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.sitemap_area h2 a:hover {
  border-bottom-color: transparent;
}
.sitemap_area h2 .wf-angle_right {
  padding-left: 10px;
}
.sitemap_area i {
  color: #ffaabe;
}
.sitemap_area a {
  border-bottom: 1px solid transparent;
  -webkit-transition: .5s;
  transition: .5s;
}
.sitemap_area a:hover {
  border-bottom-color: #735b61;
}
.sitemap_area ul li {
  margin-top: 5px;
}
.sitemap_area ul ul {
  margin-top: 0;
}
.sitemap_area .label {
  background-color: #ffaabe;
  color: #fff;
  text-align: center;
  display: inline-block;
  padding: 0 5px;
  margin-bottom: 5px;
}
.sitemap_area .others {
  border-top: 1px solid #ffaabe;
}
.sitemap_area .area_link_box a {
  border: none;
}
.sitemap_area .area_link_box a:after {
  content: "|";
  padding: 0 10px;
}
.sitemap_area .area_link_box a:last-child:after {
  content: "";
}
.sitemap_area .area_link_box span {
  border-bottom: 1px solid transparent;
  -webkit-transition: .5s;
  transition: .5s;
}
.sitemap_area .area_link_box span:hover {
  border-bottom-color: #735b61;
}

@media screen and (min-width: 769px) {
  .sitemap_area {
    width: 900px;
    margin: auto;
    padding: 50px 0 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .sitemap_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .sitemap_area .sitemap_heading {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 50px;
  }
  .sitemap_area section {
    padding-bottom: 100px;
  }
  .sitemap_area h2 {
    font-size: 20px;
    font-size: 2rem;
  }
  .sitemap_area h2 a {
    font-size: 20px;
    font-size: 2rem;
  }
  .sitemap_area h2 .wf-angle_right {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .sitemap_area h3 {
    margin-top: 40px;
  }
  .sitemap_area i {
    font-size: 12px;
    font-size: 1.2rem;
    padding-right: 5px;
  }
  .sitemap_area a {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .sitemap_area ul {
    margin-top: 40px;
  }
  .sitemap_area ul li {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .sitemap_area ul ul {
    padding-left: 40px;
  }
  .sitemap_area ul ul li {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .sitemap_area .label {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .sitemap_area .favo_link {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .sitemap_area {
    padding: 90px 15px 0;
  }
  .sitemap_area .sitemap_heading {
    font-size: 19px;
    font-size: 1.9rem;
    margin-bottom: 30px;
  }
  .sitemap_area section {
    padding-bottom: 50px;
  }
  .sitemap_area h2 {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .sitemap_area h2 a {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .sitemap_area h2 .wf-angle_right {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .sitemap_area h3 {
    margin-top: 30px;
  }
  .sitemap_area i {
    font-size: 10px;
    font-size: 1rem;
    padding-right: 5px;
  }
  .sitemap_area a {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .sitemap_area ul {
    margin-top: 30px;
  }
  .sitemap_area ul li {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .sitemap_area ul ul {
    padding-left: 30px;
  }
  .sitemap_area ul ul li {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .sitemap_area .label {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .sitemap_area .favo_link {
    margin-top: 30px;
  }
}
/*------------------------------------------------------------------------
partner
-------------------------------------------------------------------------*/
.partner_title {
  background-image: url(../images/mainvisual_partner.jpg);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}

.partner_contents {
  background-color: #f5f0f0;
}
.partner_contents .partner_main_heading {
  font-size: 35px;
  font-size: 3.5rem;
  padding: 50px 0 40px;
}
.partner_contents .partner_main_heading:after {
  display: block;
  width: 50px;
  height: 1px;
  margin: 30px auto auto;
  background-color: #ffaabe;
  content: "";
}

.partner_area .partner_heading {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.partner_area .partner_heading span {
  color: #999999;
  display: block;
  letter-spacing: 0.5px;
}
.partner_area .text {
  text-align: center;
}

.partner_list {
  padding: 40px 0 0;
}
.partner_list .partner_list_box {
  border-bottom: 1px solid #ddd;
}
.partner_list .partner_list_box:last-child {
  border-bottom: none;
}
.partner_list .partner_list_box .partner_image {
  text-align: center;
}
.partner_list .partner_list_box .partner_image img {
  width: 90%;
}

@media screen and (min-width: 769px) {
  .partner_title {
    padding: 150px 0;
  }

  .partner_heading {
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: 1px;
  }
  .partner_heading span {
    font-size: 18px;
    font-size: 1.8rem;
  }

  .partner_area {
    width: 900px;
    margin: auto;
  }
  .partner_area .partner_heading {
    padding-top: 50px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .partner_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .partner_area .text {
    padding: 40px 0 50px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .partner_list {
    width: 900px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .partner_list {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .partner_list .partner_list_box {
    display: table;
    width: 100%;
    margin-top: 50px;
    padding-bottom: 50px;
  }
  .partner_list .partner_text,
  .partner_list .partner_image {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .partner_list .partner_text {
    width: 70%;
  }
  .partner_list .partner_text .title {
    color: #372B2E;
    font-size: 20px;
    font-size: 2rem;
  }
  .partner_list .partner_text .number {
    display: inline-block;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
    padding-right: 10px;
  }
  .partner_list .partner_text .text {
    font-size: 17px;
    font-size: 1.7rem;
    width: 90%;
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  .partner_contents .partner_main_heading {
    font-size: 18px;
    font-size: 1.8rem;
    padding: 40px 10px 30px;
  }
  .partner_contents .partner_main_heading:after {
    width: 25px;
    margin: 15px auto auto;
  }

  .partner_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .partner_heading {
    font-size: 19px;
    font-size: 1.9rem;
  }
  .partner_heading span {
    font-size: 14px;
    font-size: 1.4rem;
  }

  .partner_area {
    padding: 30px 15px;
  }
  .partner_area .text {
    padding-top: 20px;
    font-size: 15px;
    font-size: 1.5rem;
  }

  .partner_list {
    padding: 30px 15px;
    background: #fff;
  }
  .partner_list .partner_list_box {
    padding: 20px 0  30px;
    margin-bottom: 30px;
  }
  .partner_list .partner_text .title {
    color: #372B2E;
    font-size: 17px;
    font-size: 1.7rem;
    text-align: center;
    margin-bottom: 10px;
  }
  .partner_list .partner_text .text {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 10px;
  }
  .partner_list .partner_text img {
    margin-bottom: 20px;
  }
}
/*------------------------------------------------------------------------
partner form
-------------------------------------------------------------------------*/
.partner_form_contents .btn_area {
  text-align: center;
}
.partner_form_contents .btn_area .btn_form {
  display: inline-block;
}
.partner_form_contents .btn_area .btn_form_back {
  margin-right: 20px;
}
.partner_form_contents .complete_title {
  text-align: center;
}
.partner_form_contents .complete_text {
  text-align: center;
}
.partner_form_contents .complete_text .mail_customer {
  border-bottom: 1px solid #999;
  display: inline-block;
}
.partner_form_contents .complete_text .text {
  text-align: left;
}
.partner_form_contents .complete_text .text a {
  border-bottom: 1px solid #999;
}

.partner_contact_form .form_list .list_title .required {
  background-color: #735b61;
  padding: 2px;
  margin-left: 5px;
  color: #fff;
}
.partner_contact_form .form_list .list_contents.error input {
  border: 1px solid #222;
}
.partner_contact_form .form_list .list_contents .privacy_box {
  background-color: #fff;
  color: #999999;
  overflow-y: scroll;
}
.partner_contact_form .form_list .list_contents .check_box .check_agree {
  margin: 0 30px 10px 10px;
}
.partner_contact_form .form_list .list_contents .check_box input[type="text"] {
  width: 200px;
  padding: 5px 10px;
  margin-left: -30px;
  vertical-align: middle;
}
.partner_contact_form .form_list .list_contents .check_agree {
  display: inline-block;
  position: relative;
  cursor: pointer;
  margin-left: 10px;
  padding: 10px;
  line-height: 1px;
}
.partner_contact_form .form_list .list_contents .check_agree:before {
  position: absolute;
  content: "";
  left: -10px;
  width: 14px;
  height: 14px;
  margin-top: -8px;
  border: 1px solid #999;
  background-color: #fff;
}
.partner_contact_form .form_list .list_contents .error_text {
  color: #222;
}
.partner_contact_form .form_list .select_box .wf-triangle_down {
  position: relative;
  font-size: 16px;
  color: #999;
}
.partner_contact_form .form_list .select_box .wf-triangle_down:before {
  position: absolute;
  pointer-events: none;
  z-index: 1;
  font-size: 13px;
  font-size: 0px\9;
}
@media all and (-ms-high-contrast: none) {
  .partner_contact_form .form_list .select_box .wf-triangle_down:before {
    font-size: 16px\9;
  }
}
.partner_contact_form .form_list input, .partner_contact_form .form_list textarea {
  width: 100%;
  padding: 10px;
  border-radius: 0;
  border: 1px solid #ddd;
  box-sizing: border-box;
}
.partner_contact_form .form_list input:focus, .partner_contact_form .form_list textarea:focus {
  border: 1px solid #999;
}
.partner_contact_form .form_list input::-webkit-input-placeholder, .partner_contact_form .form_list textarea::-webkit-input-placeholder {
  color: #999999;
  font-size: 11px !important;
}
.partner_contact_form .form_list input:-ms-input-placeholder, .partner_contact_form .form_list textarea:-ms-input-placeholder {
  color: #999999;
  font-size: 11px !important;
}
.partner_contact_form .form_list input::-moz-placeholder, .partner_contact_form .form_list textarea::-moz-placeholder {
  color: #999999;
  font-size: 11px !important;
}
.partner_contact_form .form_list input[type="checkbox"] {
  display: none;
}
.partner_contact_form .form_list input[type="checkbox"]:checked + .check_agree:after {
  position: absolute;
  content: "";
  top: 5px;
  left: -7px;
  width: 10px;
  height: 10px;
  background-color: #ef4f74;
}
.partner_contact_form .form_list textarea {
  height: 100px;
  outline: none;
  overflow: auto;
  resize: vertical;
}
.partner_contact_form .form_list select {
  border: 1px solid #ddd;
  border-radius: 0;
  padding: 10px;
}
.partner_contact_form .form_list select::-ms-expand {
  display: none;
}
.partner_contact_form .form_list select option {
  color: #6E6E6E;
}

@media screen and (min-width: 769px) {
  .partner_form_contents {
    width: 900px;
    margin: auto;
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .partner_form_contents {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .partner_form_contents .read {
    margin: 30px 0 80px;
    text-align: center;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .partner_form_contents .btn_area .btn_form {
    width: 25%;
  }
  .partner_form_contents .complete_title {
    margin: 40px 0;
    font-size: 22px;
    font-size: 2.2rem;
  }
  .partner_form_contents .complete_text {
    font-size: 17px;
    font-size: 1.7rem;
    margin-top: 80px;
  }
  .partner_form_contents .complete_text .mail_customer {
    margin-bottom: 30px;
  }
  .partner_form_contents .complete_text .text {
    margin-bottom: 40px;
  }

  .partner_contact_form .form_list {
    display: table;
    width: 100%;
    margin-bottom: 70px;
  }
  .partner_contact_form .form_list.textarea {
    margin-top: 100px;
  }
  .partner_contact_form .form_list dt, .partner_contact_form .form_list dd {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .partner_contact_form .form_list .list_title {
    width: 30%;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .partner_contact_form .form_list .list_title .required {
    font-size: 11px;
    font-size: 1.1rem;
  }
  .partner_contact_form .form_list .list_contents p {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .partner_contact_form .form_list .list_contents .privacy_box {
    height: 100px;
    padding: 15px;
  }
  .partner_contact_form .form_list .list_contents .agree_btn {
    margin-top: 30px;
  }
  .partner_contact_form .form_list .list_contents .error_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .partner_contact_form .form_list .select_box .wf-triangle_down:before {
    top: 50%;
    left: 46%;
    margin-top: -6px;
  }
  .partner_contact_form .form_list input, .partner_contact_form .form_list textarea, .partner_contact_form .form_list select {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .partner_contact_form .form_list select {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .partner_form_contents {
    padding: 30px 15px 50px;
  }
  .partner_form_contents .read {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 10px 0 30px;
  }
  .partner_form_contents .btn_area .btn_form {
    width: 45%;
  }
  .partner_form_contents .complete_title {
    margin: 20px 0;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .partner_form_contents .complete_text {
    margin-top: 50px;
  }
  .partner_form_contents .complete_text .mail_customer {
    margin-bottom: 20px;
  }
  .partner_form_contents .complete_text .text {
    margin-bottom: 30px;
  }

  .partner_contact_form .form_list {
    margin-bottom: 60px;
  }
  .partner_contact_form .form_list .list_title {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 5px;
  }
  .partner_contact_form .form_list .list_title .required {
    font-size: 10px;
    font-size: 1rem;
  }
  .partner_contact_form .form_list .list_contents input, .partner_contact_form .form_list .list_contents textarea, .partner_contact_form .form_list .list_contents select {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .partner_contact_form .form_list .list_contents select {
    width: 80%;
  }
  .partner_contact_form .form_list .list_contents .privacy_box {
    height: 80px;
    padding: 10px;
  }
  .partner_contact_form .form_list .list_contents .agree_btn {
    margin-top: 10px;
  }
  .partner_contact_form .form_list .select_box .wf-triangle_down:before {
    top: 38%;
    left: 73%;
  }
}
/*------------------------------------------------------------------------
 not found
-------------------------------------------------------------------------*/
.notfound_contents {
  background-color: #f5f0f0;
}

.notfound_area {
  line-height: 1.8;
  letter-spacing: 0.2px;
}
.notfound_area h2 {
  color: #372B2E;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
}
.notfound_area i {
  color: #ffaabe;
  padding-right: 5px;
}
.notfound_area a {
  border-bottom: 1px solid transparent;
  -webkit-transition: .5s;
  transition: .5s;
}
.notfound_area a:hover {
  border-bottom-color: #735b61;
}
.notfound_area ul li {
  margin-top: 5px;
}
.notfound_area ul ul {
  margin-top: 0;
}

@media screen and (min-width: 769px) {
  .notfound_area {
    width: 900px;
    margin: auto;
    padding: 50px 0 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .notfound_area {
    width: 98%;
  }
}
@media screen and (min-width: 769px) {
  .notfound_area .notfound_heading {
    font-size: 30px;
    font-size: 3rem;
    margin-bottom: 50px;
  }
  .notfound_area section {
    padding: 50px 0;
    font-size: 17px;
    font-size: 1.7rem;
  }
  .notfound_area h2 {
    font-size: 20px;
    font-size: 2rem;
  }
  .notfound_area .text {
    padding-top: 40px;
  }
  .notfound_area i {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .notfound_area ul {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  .notfound_area {
    padding: 90px 15px 0;
  }
  .notfound_area .notfound_heading {
    font-size: 19px;
    font-size: 1.9rem;
    margin-bottom: 30px;
  }
  .notfound_area section {
    padding: 20px 0 40px;
    font-size: 15px;
    font-size: 1.5rem;
  }
  .notfound_area h2 {
    font-size: 17px;
    font-size: 1.7rem;
  }
  .notfound_area .text {
    padding-top: 20px;
  }
  .notfound_area i {
    font-size: 10px;
    font-size: 1rem;
  }
  .notfound_area ul {
    margin-top: 30px;
  }
}
/*------------------------------------------------------------------------
service_main visual
-------------------------------------------------------------------------*/
.special_wedding01_title {
  background-image: url(../images/special/wedding01/mainvisual.jpg);
  background-position: center center;
  z-index: 0;
}

/*------------------------------------------------------------------------
special
-------------------------------------------------------------------------*/
.special_title {
  position: relative;
  background-size: cover;
  box-sizing: border-box;
  z-index: 0;
}
.special_title.opacity:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: all .5s ease;
  -webkit-transition: all .5s ease;
  z-index: 0;
  content: "";
}

.special_title + .breadcrumb {
  margin-top: 0;
}

.special_info_content {
  background-color: #fff;
}

.special_catch {
  display: none;
  z-index: 1;
}
.special_catch .english_text {
  font-family: 'Pinyon Script', cursive;
}
.special_catch .english_text, .special_catch h1, .special_catch h2 {
  color: #fff;
  text-shadow: 4px 2px 7px rgba(0, 0, 0, 0.6);
  -moz-text-shadow: 4px 2px 7px rgba(0, 0, 0, 0.6);
  -webkit-text-shadow: 4px 2px 7px rgba(0, 0, 0, 0.6);
}
.special_catch h2 {
  transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -webkit-transform: scale(1, 1);
}

h3 {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
  -moz-transform: scale(1, 1.2);
  -webkit-transform: scale(1, 1.2);
  -ms-transform: scale(1, 1.2);
  transform: scale(1, 1.2);
  color: #fe78aa;
  line-height: 1.6;
  text-align: center;
}

.english_text {
  color: #fe78aa;
  font-family: 'Pinyon Script', cursive;
  letter-spacing: 0.04em;
  text-align: center;
}

.info_content_inner h4 {
  color: #000;
  line-height: 1.7;
}
.info_content_inner img {
  display: inline-block;
}
.info_content_inner .charm_point {
  display: inline-block;
  position: relative;
  color: #fff;
  line-height: 13px;
  background-color: #fe78aa;
  box-sizing: border-box;
}

.special_store_content {
  background: #f5f0f0;
}
.special_store_content .read_text {
  color: #83877e;
  text-align: center;
}

.store_detail_contents.kansai,
.store_detail_contents.toukai {
  display: none;
}

.store_title {
  display: -webkit-flex;
  display: flex;
  color: #151515;
  border-bottom: 2px solid #dddddd;
}

.info_tab {
  position: relative;
  width: 33%;
  text-align: center;
  cursor: pointer;
}
.info_tab:after {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  margin-bottom: -2px;
  background-color: #fe78aa;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  transition: all .2s ease;
  -webkit-transition: all .2s ease;
  content: "";
}
.info_tab:hover:after {
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1);
}
.info_tab.current {
  margin-bottom: -2px;
  color: #fe78aa;
  border-bottom: 4px solid #fe78aa;
}
.info_tab.current:after {
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
}

.store_flex_wrapper {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.store_clum {
  word-break: break-all;
  box-sizing: border-box;
}
.store_clum h4 {
  color: #372b2e;
  line-height: 1.4;
}
.store_clum img {
  display: inline-block;
  width: 100%;
}
.store_clum a img {
  opacity: 1;
  transition: 0.5s all ease;
}
.store_clum a p {
  display: inline-block;
  color: #6E6E6E;
  line-height: 1.6;
}
.store_clum a dt p {
  display: block;
  color: #6E6E6E;
}
.store_clum a:hover img {
  opacity: 0.8;
  transition: 0.5s all ease;
}
.store_clum a:hover h4, .store_clum a:hover p {
  text-decoration: underline;
}
.store_clum a:hover dt p {
  display: block;
  color: #6E6E6E;
}

.cta_contents {
  color: #83877e;
}
.cta_contents .cta_wrap {
  padding: 16px;
  background-color: #fff;
}
.cta_contents .outline_flame {
  padding: 6px;
  border: 1px solid #ffaabe;
}
.cta_contents .cta_flame {
  border: 1px solid #ffaabe;
}
.cta_contents .cta_info {
  text-align: center;
}
.cta_contents .tel .cta_botton {
  position: relative;
}
.cta_contents .form .cta_botton {
  color: #fff;
  background-color: #89c997;
}
.cta_contents .form .cta_botton:hover {
  background-color: #609e6e;
}

.sp_br_480 {
  display: none;
}

.sp_br_375 {
  display: none;
}

@media screen and (min-width: 769px) {
  .special_title {
    margin-top: 70px;
    padding: 128px 0;
    height: 478px;
  }

  .special_contents {
    width: 900px;
    margin: auto;
  }
}
@media screen and (min-width: 769px) and (max-width: 900px) {
  .special_contents {
    width: 98%;
  }
}

@media screen and (min-width: 769px) {
  .special_info_content {
    padding: 100px 0 0;
  }

  .special_catch .english_text {
    margin-bottom: 10px;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 1px;
    line-height: 24px;
  }
  .special_catch h1 {
    margin-bottom: 25px;
    font-size: 54px;
    font-size: 5.4rem;
    letter-spacing: 1px;
    line-height: 1.3;
  }
  .special_catch h2 {
    font-size: 30px;
    font-size: 3rem;
  }

  .special_area {
    padding-top: 100px;
  }

  h3 {
    margin-bottom: 5px;
    font-size: 42px;
    font-size: 4.2rem;
  }

  .english_text {
    margin-bottom: 80px;
    font-size: 24px;
    font-size: 2.4rem;
  }

  .info_content_inner {
    margin-bottom: 120px;
  }
  .info_content_inner h4 {
    margin-bottom: 50px;
    font-size: 28px;
    font-size: 2.8rem;
  }
  .info_content_inner p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.9;
  }
  .info_content_inner img {
    width: 376px;
  }
  .info_content_inner span {
    font-size: 14px;
    font-size: 1.4rem;
  }
  .info_content_inner .float_left_clum {
    float: left;
  }
  .info_content_inner .float_left_clum img {
    margin-right: 40px;
  }
  .info_content_inner .float_right_clum {
    float: right;
  }
  .info_content_inner .float_right_clum img {
    margin-left: 40px;
  }
  .info_content_inner .overflow_clum {
    overflow: hidden;
  }
  .info_content_inner .charm_text_clum {
    display: table;
    margin-bottom: 40px;
  }
  .info_content_inner .charm_text_clum:last-child {
    margin-bottom: 0;
  }
  .info_content_inner .charm_text_clum .charm_table_cell {
    display: table-cell;
    vertical-align: top;
  }
  .info_content_inner .charm_point {
    padding: 5px 20px 0;
    margin: 6px 30px 5px 0;
    width: 80px;
    height: 20px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .info_content_inner .charm_point:after {
    position: absolute;
    top: 0;
    left: 80px;
    width: 0px;
    height: 0px;
    border: 10px solid transparent;
    border-left: 10px solid #fe78aa;
    content: "";
  }

  .special_store_content {
    padding: 120px 0 80px;
    overflow: hidden;
  }
  .special_store_content .english_text {
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 60px;
  }
  .special_store_content .read_text {
    font-size: 20px;
    font-size: 2rem;
  }

  .info_tab {
    padding: 30px 0;
    font-size: 20px;
    font-size: 2rem;
  }

  .store_detail_contents {
    padding-top: 60px;
  }

  .store_flex_wrapper {
    margin-right: -3%;
    margin-bottom: 60px;
  }

  .store_clum {
    width: 30%;
    margin-right: 3%;
    margin-bottom: 60px;
  }
  .store_clum h4 {
    font-size: 16px;
    font-size: 1.6rem;
  }
  .store_clum img {
    margin-bottom: 16px;
  }
  .store_clum p {
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .store_clum a {
    color: #151515;
  }
  .store_clum dt.mb_32_pc {
    margin-bottom: 32px;
  }
  .store_clum dt p {
    margin-bottom: 12px;
    font-size: 12px;
    font-size: 1.2rem;
  }
  .store_clum .description {
    color: #735b61;
    font-size: 16px;
    font-size: 1.6rem;
  }

  .cta_contents h3 {
    margin-bottom: 30px;
  }
  .cta_contents .read_text {
    margin-bottom: 50px;
  }

  .cta_flex_wrapper {
    display: -webkit-flex;
    display: flex;
  }

  .cta_flame {
    padding: 60px 20px;
  }

  .cta_info {
    flex: 1;
  }
  .cta_info .sub_text {
    font-size: 15px;
    font-size: 1.5rem;
  }
  .cta_info .sub_text:first-child {
    margin-bottom: 16px;
  }

  .tel .sub_text:first-child {
    margin-bottom: 0;
  }
  .tel .cta_botton {
    margin-left: 58px;
    font-size: 34px;
    font-size: 3.4rem;
  }
  .tel .cta_botton:before {
    position: absolute;
    top: 7px;
    left: -56px;
    width: 42px;
    height: 26px;
    background: url(../images/free_dial.svg) no-repeat;
    background-size: 42px 26px;
    content: "";
  }

  .form .cta_botton {
    width: 254px;
  }
}
@media screen and (max-width: 768px) {
  .special_title {
    height: 350px;
    margin-top: 60px;
    padding: 80px 20px 100px;
  }

  .special_catch .english_text {
    margin-bottom: 14px;
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 1px;
    line-height: 12px;
  }
  .special_catch h1 {
    margin-bottom: 30px;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 1px;
    line-height: 1.3;
  }
  .special_catch h2 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.9;
    text-align: left;
  }

  .special_info_content {
    padding: 50px 15px 60px;
  }

  h3 {
    margin-bottom: 5px;
    font-size: 22px;
    font-size: 2.2rem;
  }

  .english_text {
    margin-bottom: 25px;
    font-size: 13px;
    font-size: 1.3rem;
  }

  .info_content_inner {
    margin-bottom: 60px;
  }
  .info_content_inner:last-child {
    margin-bottom: 0;
  }
  .info_content_inner h4 {
    margin-bottom: 30px;
    font-size: 16px;
    font-size: 1.6rem;
  }
  .info_content_inner p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.9;
  }
  .info_content_inner img {
    width: 100%;
  }
  .info_content_inner span {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .info_content_inner .float_left_clum {
    float: none;
  }
  .info_content_inner .float_left_clum img {
    margin: 0 0 30px 0;
  }
  .info_content_inner .float_right_clum {
    float: none;
  }
  .info_content_inner .float_right_clum img {
    margin: 0 0 30px 0;
  }
  .info_content_inner .charm_text_clum {
    display: block;
    margin-bottom: 30px;
  }
  .info_content_inner .charm_text_clum:last-child {
    margin-bottom: 0;
  }
  .info_content_inner .charm_text_clum p {
    margin-top: 15px;
  }
  .info_content_inner .charm_point {
    padding: 7px 0 0 2px;
    margin: 6px 30px 5px 0;
    width: 60px;
    height: 22px;
    font-size: 14px;
    font-size: 1.4rem;
  }
  .info_content_inner .charm_point:after {
    position: absolute;
    top: 22px;
    left: 0px;
    width: 0px;
    height: 0px;
    border: 30px solid transparent;
    border-top: 8px solid #fe78aa;
    content: "";
  }

  .special_store_content {
    padding: 60px 15px 0;
  }
  .special_store_content .english_text {
    margin-bottom: 37px;
  }

  .info_tab {
    padding: 15px 0;
    font-size: 14px;
    font-size: 1.4rem;
  }

  .store_detail_contents {
    padding-top: 30px;
  }

  .store_flex_wrapper {
    margin-bottom: 30px;
  }

  .store_clum {
    width: 50%;
    margin-bottom: 30px;
  }
  .store_clum:nth-child(odd) {
    padding-right: 8px;
  }
  .store_clum:nth-child(even) {
    padding-left: 7px;
  }
  .store_clum h4 {
    font-size: 13px;
    font-size: 1.3rem;
  }
  .store_clum img {
    margin-bottom: 10px;
  }
  .store_clum p {
    font-size: 12px;
    font-size: 1.2rem;
  }
  .store_clum dt p {
    margin-bottom: 12px;
    font-size: 11px;
    font-size: 1.1rem;
  }

  .cta_contents h3 {
    margin-bottom: 30px;
  }
  .cta_contents h3 + .read_text {
    text-align: left;
  }
  .cta_contents .read_text {
    margin-bottom: 25px;
  }
  .cta_contents .cta_flame {
    padding: 30px 20px;
  }
  .cta_contents .sub_text:first-child {
    margin-bottom: 10px;
  }
  .cta_contents .tel {
    margin-bottom: 30px;
  }
  .cta_contents .tel a {
    color: #fff;
  }
  .cta_contents .tel a:hover span {
    background-color: #609e6e;
  }
  .cta_contents .tel .cta_botton {
    display: block;
    margin: 0 auto 10px;
    padding: 10px 0 10px 20px;
    color: #fff;
    font-size: 16px;
    font-size: 1.6rem;
    background-color: #89c997;
    border-radius: 5px;
  }
  .cta_contents .tel .cta_botton:before {
    display: block;
    position: absolute;
    top: 16px;
    left: 28px;
    width: 24px;
    height: 15px;
    background: url(../images/free_dial_w.svg) no-repeat;
    background-size: 24px 15px;
    content: "";
  }

  .sub_text {
    font-size: 13px;
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 480px) {
  .store_clum dt.mb_30 {
    margin-bottom: 30px;
  }

  .sp_br_480 {
    display: block;
  }
}
@media screen and (max-width: 375px) {
  .store_clum dt.mb_30_320 {
    margin-bottom: 30px;
  }

  .sp_br_375 {
    display: block;
  }
}
@media screen and (max-width: 320px) {
  .special_catch h1 {
    font-size: 20px;
    font-size: 2rem;
  }

  .store_clum dt.mb_30_320 {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 769px) {
  .sp {
    display: none;
  }

  .emopa_plus {
    padding-top: 70px;
    background: #f5f0f0;
    overflow: hidden;
    color: #000;
  }

  .plus_header {
    background: url(../images/emopaplus/mainvisual_party.jpg);
    background-size: cover;
    padding: 118px 0;
    margin-bottom: 80px;
    position: relative;
  }
  .plus_header:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }
  .plus_header .logo {
    width: 360px;
    margin: 0 auto;
    position: relative;
  }
  .plus_header h1 {
    font-size: 52px;
    text-align: center;
    color: #FFF;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
  }

  .lead {
    margin: 100px 0 120px;
    font-size: 26px;
    line-height: 2.2em;
    text-align: center;
  }

  .plus_contact {
    padding: 80px 0 140px;
    background: #f5f0f0;
  }
  .plus_contact .lead {
    margin: 20px 0 40px 0;
    font-size: 18px;
    text-align: center;
  }

  .cont_tit {
    font-size: 35px;
    text-align: center;
  }

  .plan ul,
  .price {
    width: 980px;
    margin: 40px auto 0;
    overflow: hidden;
    text-align: center;
    position: relative;
    z-index: 1;
  }
  .plan ul li,
  .price li {
    width: 293px;
    float: left;
    border-radius: 5px;
    padding: 40px 10px;
    margin: 0 20px 20px 0;
    background: #FFF;
  }

  .price li {
    width: 285px;
    margin-bottom: 40px;
    background: #ffebef;
    border: solid 4px #ffaabe;
  }
  .price li dt {
    margin-bottom: 5px;
    font-size: 32px;
    font-weight: 500;
    color: #fe78aa;
  }
  .price li dd {
    font-size: 36px;
    font-weight: 500;
  }

  .plan ul li.last,
  .price li:last-child {
    margin-right: 0;
  }

  .plan ul li dt {
    width: 100px;
    margin: 0 auto 15px;
  }

  .plan ul li dd {
    font-size: 18px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-align: center;
    line-height: 1.6em;
  }

  .plan .cont_tit {
    color: #FFF;
  }

  .plus_service {
    width: 100%;
    margin-top: 140px;
    padding: 80px 0 100px;
    position: relative;
    background: url(../images/emopaplus/bg_pick.jpg);
    background-size: cover;
    background-attachment: fixed;
  }
  .plus_service:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .service_list {
    overflow: hidden;
    display: -webkit-flex;
    display: -ms-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    width: 920px;
    padding: 60px 50px 50px 50px;
    border: solid 3px #fe78aa;
    margin: 40px auto 100px;
    border-radius: 5px;
    background: #ffebef;
  }
  .service_list li {
    width: 263px;
    padding: 0 30px 10px 1em;
    font-size: 15px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    text-indent: -0.3em;
    color: #000;
  }
  .service_list li .s_ico {
    display: inline-block;
    padding: 0 5px 0 0;
    width: 50px;
  }
  .service_list li .s_txt {
    display: inline-block;
    width: 200px;
    padding: 0;
    text-align: left;
    font-size: 15px;
    vertical-align: 19px;
  }
  .service_list li:nth-child(3n) {
    padding-right: 0;
  }
  .service_list li span {
    font-size: 10px;
    padding-left: 10px;
  }
  .service_list li i {
    color: #fe78aa;
    font-size: 20px;
  }

  .plus_service_inr,
  .plus_service_inr_plus {
    width: 980px;
    margin: 0 auto;
    position: relative;
  }

  .plus_service_inr .left_top,
  .plus_service_inr_plus .left_top {
    position: absolute;
    top: 10px;
    left: 10px;
  }

  .plus_service_inr .right_top,
  .plus_service_inr_plus .right_top {
    position: absolute;
    top: 10px;
    right: 10px;
  }

  .plus_service_inr .left_bottom,
  .plus_service_inr_plus .left_bottom {
    position: absolute;
    bottom: 10px;
    left: 10px;
  }

  .plus_service_inr .right_bottom,
  .plus_service_inr_plus .right_bottom {
    position: absolute;
    bottom: 10px;
    right: 10px;
  }

  .plan_plus {
    padding: 70px 0 50px 50px;
    margin-top: 30px;
    text-align: center;
    background: #fff3eb;
    border: solid 3px #ff9800;
  }
  .plan_plus li {
    float: none;
    display: inline-block;
    padding-right: 150px;
    position: relative;
  }
  .plan_plus li .ph_plus {
    position: absolute;
    width: 220px;
    right: 0;
    top: -30px;
  }
  .plan_plus li .ph_plus li i {
    color: #ff9800;
  }
  .plan_plus li:last-child {
    padding-right: 0;
  }
  .plan_plus li:last-child .ph_plus {
    right: -130px;
  }

  .plan_tit {
    color: #ff9800;
  }

  .price_area {
    padding: 80px 0 120px;
    background: #FFF;
  }
  .price_area table {
    width: 720px;
    margin: 40px auto 30px;
    border: solid 1px #fe78aa;
  }
  .price_area table th {
    width: 200px;
    padding: 10px 0;
    border-bottom: solid 1px #fe78aa;
    border-right: solid 1px #fe78aa;
    background: #ffebef;
    font-size: 18px;
    text-align: center;
  }
  .price_area table td {
    padding: 10px 60px;
    border-bottom: solid 1px #fe78aa;
    background: #FFF;
    font-size: 40px;
    color: #fe78aa;
  }

  .price_area .caption {
    line-height: 1.2em;
  }
  .price_area .caption li {
    margin-bottom: 0px;
    text-align: center;
  }

  .plus_form {
    width: 780px;
    margin: 40px auto 0;
    padding: 60px 100px;
    border-radius: 10px;
    background: #FFF;
  }
}
@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }

  .emopa_plus {
    padding-top: 60px;
    background: #FFF;
    overflow: hidden;
    color: #000;
  }

  .plus_header {
    background: url(../images/emopaplus/mainvisual_party.jpg);
    background-size: cover;
    padding: 17.5px 0;
    margin-bottom: 6%;
    position: relative;
  }
  .plus_header:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .plus_contact {
    padding: 10% 0 5%;
    background: #f5f0f0;
  }

  .plan .cont_tit {
    color: #FFF;
  }

  .emopa_plus .logo {
    width: 100px;
    margin: 0 auto;
    position: relative;
    line-height: 1.2em;
  }
  .emopa_plus h1 {
    font-size: 19px;
    text-align: center;
    color: #FFF;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    -moz-transform: scale(1, 1.2);
    -webkit-transform: scale(1, 1.2);
    -ms-transform: scale(1, 1.2);
    transform: scale(1, 1.2);
  }

  .lead {
    margin: 0 5% 8%;
    font-size: 14px;
    line-height: 1.8em;
  }

  .plus_contact .lead {
    margin: 3% 0 4% 0;
    text-align: center;
  }

  .cont_tit {
    font-size: 16px;
    text-align: center;
  }

  .plan ul,
  .price {
    width: 90%;
    margin: 6% auto 10%;
    overflow: hidden;
    position: relative;
    z-index: 1;
  }

  .price {
    margin-bottom: 3%;
  }

  .plan ul li,
  .price li {
    border-radius: 10px;
    padding: 6% 3% 8%;
    margin: 0 0 3% 0;
    background: #FFF;
  }

  .price li {
    width: 24%;
    float: left;
    margin-right: 3%;
    background: #ffebef;
    border: solid 2px #ffaabe;
    text-align: center;
  }
  .price li:last-child {
    margin-right: 0;
  }

  .plan ul li dt {
    width: 80px;
    margin: 0 auto 3%;
  }
  .plan ul li dd {
    font-size: 16px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 300;
    text-align: center;
    line-height: 1.6em;
  }

  .plus_service {
    width: 100%;
    margin-top: 10%;
    padding: 10% 0 1%;
    position: relative;
    background: url(../images/emopaplus/bg_pick.jpg);
    background-size: cover;
    background-position: center;
  }
  .plus_service:before {
    content: "";
    position: absolute;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
  }

  .service_list {
    display: -webkit-flex;
    display: -ms-flex;
    display: -moz-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 10% 3% 5% 5%;
    border: solid 3px #fe78aa;
    margin: 6% 0;
    border-radius: 10px;
    background: #ffebef;
  }
  .service_list li {
    padding: 0 3% 3% 0;
    width: 48.5%;
    font-size: 12px;
    color: #000;
    text-align: center;
    line-height: 1.6em;
  }
  .service_list li:nth-child(2n) {
    padding-right: 0;
  }
  .service_list li .s_ico {
    display: table-cell;
    padding: 0;
    width: 22%;
    margin: 0 auto;
    vertical-align: middle;
  }
  .service_list li .s_txt {
    display: table-cell;
    padding: 0;
    text-align: left;
    font-size: 11px;
    width: 75%;
    vertical-align: middle;
    padding-left: 3px;
  }
  .service_list li span {
    display: block;
    font-size: 10px;
    padding-left: 10px;
  }

  .plan_plus {
    padding: 11% 6% 6%;
    margin-top: 4%;
    text-align: center;
    background: #fff3eb;
    border: solid 3px #ff9800;
  }

  .plus_service_inr,
  .plus_service_inr_plus {
    width: 90%;
    margin: 0 auto;
    position: relative;
  }

  .plus_service_inr .left_top,
  .plus_service_inr_plus .left_top {
    width: 40px;
    position: absolute;
    top: 5px;
    left: 5px;
  }

  .plus_service_inr .right_top,
  .plus_service_inr_plus .right_top {
    width: 40px;
    position: absolute;
    top: 5px;
    right: 5px;
  }

  .plus_service_inr .left_bottom,
  .plus_service_inr_plus .left_bottom {
    width: 40px;
    position: absolute;
    bottom: 2px;
    left: 5px;
  }

  .plus_service_inr .right_bottom,
  .plus_service_inr_plus .right_bottom {
    width: 40px;
    position: absolute;
    bottom: 2px;
    right: 5px;
  }

  .plan_plus li {
    float: none;
    display: inline-block;
  }
  .plan_plus li i {
    color: #ff9800;
  }

  .plan_tit {
    color: #ff9800;
  }

  .price_area {
    padding: 10% 0 14%;
  }
  .price_area table {
    width: 90%;
    margin: 5% auto 4%;
    border: solid 1px #fe78aa;
  }
  .price_area table th {
    width: 30%;
    padding: 10px 0;
    border-bottom: solid 1px #fe78aa;
    border-right: solid 1px #fe78aa;
    background: #ffebef;
    font-size: 12px;
    text-align: center;
  }
  .price_area table td {
    padding: 10px 5%;
    border-bottom: solid 1px #fe78aa;
    background: #FFF;
    font-size: 18px;
    color: #fe78aa;
  }
  .price_area .caption {
    line-height: 0.8em;
  }
  .price_area .caption li {
    font-size: 10px;
    margin-bottom: 0px;
    text-align: center;
    color: #666;
  }

  .plus_form {
    width: 80%;
    margin: 6% auto 15%;
    padding: 5% 5% 8%;
    border-radius: 10px;
    background: #FFF;
  }

  .price li dt {
    margin-bottom: 5px;
    font-size: 18px;
    font-weight: 500;
    color: #fe78aa;
  }
  .price li dd {
    font-size: 18px;
    font-weight: 500;
  }
}
.btn_form:disabled {
  background: #999;
}

@media (max-width: 320px) {
  .price li {
    margin-right: 2%;
  }
  .price li dt {
    font-size: 17px;
  }
  .price li dd {
    font-size: 15px;
  }
}
/*------------------------------------------------------------------------
 remote_main visual
 -------------------------------------------------------------------------*/
.remote_index_title {
  background-image: url(../images/remote/mainvisual.jpg);
  z-index: 0;
}

/*------------------------------------------------------------------------
 remote
 -------------------------------------------------------------------------*/
.remote_title {
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  z-index: 0;
}
.remote_title:before {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.5);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.remote_contents {
  width: 960px;
  margin: 0 auto;
}

.remote-visit-button input {
  background-color: #ff9800;
  border-radius: 6px;
  font-size: 1.6rem;
  width: 300px;
  padding: 20px 0;
  color: #fff;
  cursor: pointer;
}

.remote-visit-button input:hover {
  opacity: 0.7;
}

.remote_contents .agree_btn {
  text-align: center;
  margin-bottom: 20px;
  margin-top: 10px !important;
}

.remote_contents .prLink {
  margin: 2rem 0 0 0;
}

a:hover {
  opacity: 0.7;
}

@media screen and (min-width: 769px) {
  .remote_title {
    margin-top: 70px;
    padding: 120px 0;
  }

  .remote_contents p {
    text-align: center;
    margin: 5% 0;
  }
  .remote_contents p img {
    width: 100%;
  }

  .remote_contents .reserve img {
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .remote_title {
    margin-top: 60px;
    padding: 20px 0;
  }

  .remote_contents {
    width: 100%;
    margin: 0 auto;
  }
  .remote_contents p {
    text-align: center;
    margin: 2rem 0;
  }
  .remote_contents p img {
    width: 100%;
  }
  .remote_contents .reserve img {
    width: 90%;
  }
}

/*# sourceMappingURL=common.css.map */
