@charset "UTF-8";

/* CSS Document */

@import url('http://fonts.googleapis.com/earlyaccess/notosansjp.css');

body#page_access {}

.sp {
  display: none;
}

body#page_access main {
  display: block;
  width: 100%;
  height: auto;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

#box_selector_maps {
  padding: 48px 0 0px 0;
}

#box_selector_maps ul {
  width: 1024px;
  height: auto;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
}

#box_selector_maps ul a {
  text-decoration: none;
  color: #111;
  display: block;
  position: relative;
}

div.goods_cafe p.photo span,
div.sub_header p.photo,
#box_selector_maps ul p.photo {
  width: 120px;
  height: 120px;
  overflow: hidden;
  position: relative;
  z-index: 0;
  border-radius: 60px;
  margin: 0;
  padding: 0;
  position: relative;
  z-index: 100;
}

#box_selector_maps #office_fanclub p.photo {
  /*margin-left: 23%;*/
}

div.goods_cafe p.photo {
  width: 360px;
  overflow: visible;
}

div.goods_cafe p.photo span {
  display: block;
  width: 360px;
  height: auto;
  position: relative;
}

div.goods_cafe p.photo:before {
  content: '';
  display: block;
  width: 223px;
  height: 50px;
  background-image: url(/access/page_parts/thumb_goods_cafe_badge.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 9999;
  right: 15px;
  bottom: -18px;
}

div.goods_cafe .sub_header p.photo img {
  width: 360px !important;
  height: auto !important;
  left: 0;
}

.sub_header p.photo img,
#box_selector_maps ul p.photo img {
  height: 100% !important;
  width: auto !important;
  /* position: relative; */
  /* left: -12%; */
}

.sub_header p.photo img[src$="thumb_fro-cafe.jpg"],
.sub_header p.photo img[src$="thumb_goods_shop.jpg"],
#box_selector_maps ul p.photo img[src$="thumb_fro-cafe.jpg"],
#box_selector_maps ul p.photo img[src$="thumb_goods_shop.jpg"] {
  left: 0;
}

#box_selector_maps ul li:nth-child(6) h3 {
  margin-bottom: 0;
}

#box_selector_maps li p.note {
  font-size: 1.1rem;
  background-color: #fb4444;
  display: inline-block;
  color: #fff;
  padding: 0.4em 0.6em;
  border-radius: 0.4em;
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}


/**/

#box_selector_maps ul h4 {
  font-size: 1.2rem;
  font-weight: bold;
  color: #23b7fe;
  margin-bottom: 0.3em;
}

#box_selector_maps ul h3 {
  font-size: 1.8rem;
  line-height: 1.3;
  margin-bottom: 0.5em;
  font-weight: bold;
}

#box_selector_maps #office_fanclub h3 {
  font-size: 1.7rem;
}

#box_selector_maps ul h3 span {
  font-size: 0.9em;
}

#box_selector_maps ul li#mizonokuchi h3 span,
#box_selector_maps ul li:nth-of-type(9) h3 span {
  font-size: 0.8em;
}

#box_selector_maps ul li {
  margin: 0 0 64px 8px;
  width: 24%;
  vertical-align: top;
  position: relative;
  z-index: 0;
}

#box_selector_maps ul li:last-child {
  width: 35%;
}

#box_selector_maps ul li a:hover img {
  transition: 0.6s;
  transform: scale3d(1.4, 1.4, 1.4);
  transform-origin: 50% 50% 0;
}

#box_selector_maps ul p.arrow_detail {
  display: inline-block;
  text-align: left;
  position: absolute;
  font-size: 1.4rem;
  left: 73px;
  bottom: 38px;
  z-index: 0;
  padding: 1em 24px 0.9em 0.5em;
  line-height: 1;
  z-index: 50;
}

#box_selector_maps #office_fanclub p.arrow_detail {
  /*margin-left: 23%;*/
}

#box_selector_maps ul p.arrow_detail:after {
  content: "";
  height: 38px;
  width: 18px;
  position: absolute;
  right: -2px;
  top: 0;
  display: block;
  background-image: url(/common_2017/svg/icon_arrow_lr_3c.svg);
  background-repeat: no-repeat;
  background-position: -69px 50%;
  background-size: auto 28px;
  opacity: 1;
}

#box_selector_maps ul a:hover p.arrow_detail {
  transition: 0.5s;
  left: 128px;
  opacity: 1.0;
}

/*#box_selector_maps ul #office_fanclub,*/
#box_selector_maps ul #goods_cafe {
  width: 48%;
}

#box_selector_maps ul #office_fanclub a,
#box_selector_maps ul #goods_cafe a {
  display: flex;
  justify-content: flex-start;
  flex-direction: row;
  flex-wrap: wrap;
  position: relative;
  overflow: visible;
}

/*#office_fanclub .inner:first-child,*/
#goods_cafe .inner:first-child {
  margin-right: 3em;
}

/*div#box_selector_maps ul #office_fanclub p.photo,*/
div#box_selector_maps ul #goods_cafe p.photo {
  width: 376px;
}

/* #goods_cafe a:before {
  content: '';
  display: block;
  width: 242px;
  height: 54px;
  background-image: url(/access/page_parts/thumb_goods_cafe_badge.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 9999;
  right: 136px;
  bottom: -18px;
} */

/*#box_selector_maps ul #office_fanclub p.photo img,*/
#box_selector_maps ul #goods_cafe p.photo img {
  width: 376px !important;
  height: auto !important;
  left: 0;
}

/*#box_selector_maps ul #office_fanclub p.arrow_detail,*/
#box_selector_maps ul #goods_cafe p.arrow_detail {
  /*left: 73px;*/
  left: auto;
  right: 88px;
}

/*#box_selector_maps ul #office_fanclub a:hover p.arrow_detail,*/
#box_selector_maps ul #goods_cafe a:hover p.arrow_detail {
  /*transition: 0.5s;*/
  /*left: 128px;*/
  /*opacity: 1.0;	*/
  left: auto;
  right: 30px;
}


/*  */

#box_map.full {
  width: 100%;
  min-width: 1024px;
}

#wrapper_gmap .inner iframe {
  width: 100%;
  height: 600px;
  vertical-align: bottom;
  margin: 0;
  padding: 0;
}

#wrapper_gmap .inner:not(.current) {
  display: none;
}

#box_map div.sub_header {
  width: 1024px;
  height: auto;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 36px;
  position: relative;
  padding-top: 16px;
}

#box_map.full .inner {
  width: 100%;
  min-width: 1024px;
}

#box_map div.sub_header h2 {
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 0.3em;
  font-family: "Hiragino";
  font-family: "roboto";
  font-weight: 500;
}

#box_map.goods_cafe div.sub_header h2 {
  font-size: 2.4rem;
  text-align: center;
}

#box_map div.sub_header p.copy {
  font-size: 1.2rem;
  color: #777;
}

#box_map div.sub_header .web_link {
  text-align: center;
  padding: 0;
  font-size: 1.3rem;
  margin-right: 0.5em;
}

#box_map div.sub_header .web_link a {
  display: inline-block;
  border: 3px solid #a1dcf8;
  color: #fff;
  background-color: #23b7fe;
  border-radius: 1.5em;
  line-height: 2;
  padding: 0.12em 2.5em 0 1em;
  position: relative;
}

#box_map div.sub_header .web_link a:hover {
  transition: 0.5s;
  opacity: 0.7;
}

#box_map div.sub_header .web_link a:before {
  content: '';
  display: block;
  width: 10px;
  height: 7px;
  border: 1px solid #fff;
  position: absolute;
  right: 10px;
  top: 7px;
  z-index: 2;
  background-color: #23b7fe;
}

#box_map div.sub_header .web_link a:after {
  content: '';
  display: block;
  width: 10px;
  height: 7px;
  background-color: #fff;
  position: absolute;
  right: 16px;
  top: 12px;
  z-index: 1;
  border: none;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

#box_sub_access_nav {
  /* position: absolute; */
  bottom: 0;
  left: 0;
  z-index: 0;
}

#box_sub_access_nav a {
  color: #222;
}

#box_sub_access_nav ul {
  text-align: left;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 42px;
  /* width: 380px; */
}

#box_sub_access_nav ul li {
  display: inline-block;
}

#box_sub_access_nav ul li a {
  display: block;
  height: 42px;
  padding-top: 11px;
  font-size: 1.6rem;
  color: #333;
  position: relative;
}

body.home li.btn_back_home a {
  color: #666 !important;
}

#box_sub_access_nav ul li a:hover {
  transition: 0.2s;
  opacity: 0.7;
}

#box_sub_access_nav li:nth-of-type(1) {}

#box_sub_access_nav li:nth-of-type(1) a {
  background-color: #23b7fe;
  color: #fff;
  /* width: 120px; */
  text-align: center;
  padding-left: 1.2em;
  padding-right: 1.2em;
}

#box_sub_access_nav div.display_qr_code {
  position: absolute;
  z-index: 100;
  display: none;
}

#box_sub_access_nav li:nth-of-type(2) a {
  padding-left: 40px;
}

#box_sub_access_nav li:nth-of-type(2) a:after {
  position: absolute;
  left: 12px;
  top: 6px;
  content: "";
  display: block;
  width: 24px;
  height: 28px;
  background-image: url(/common/svg/icon_set_sns.svg);
  background-repeat: no-repeat;
  background-position: 3px -31px;
  background-size: 230px 56px;
}

body#page_access.home #box_sub_access_nav li:nth-of-type(1) a:link,
body#page_access.home #box_sub_access_nav li:nth-of-type(1) a:hover,
body#page_access.home #box_sub_access_nav li:nth-of-type(1) a:visited {
  background-color: #fff;
  color: #222;
  cursor: default;
  opacity: 1;
}

#nav_selector_maps {
  /*width: 86%;*/
  width: auto;
  max-width: 1040px;
  margin: 0 auto;
  text-align: center;
  padding: 18px 0 32px 0;
}

#nav_selector_maps li {
  display: inline-block;
  border-right: 1px solid #bbb;
  margin-bottom: 0.5em;
  font-size: 1.4rem;
}

#nav_selector_maps li:nth-of-type(4),
#nav_selector_maps li:last-child {
  border-right: none;
}

#nav_selector_maps li a {
  color: #222;
  display: block;
  padding: 0.3em 0.8em 0.3em 0.8em;
}

#nav_selector_maps li a:hover,
#nav_selector_maps li.current a {
  color: #23b7fe;
  /*cursor: default;*/
}

#nav_selector_maps li.current a {
  font-weight: bold;
}

div.sub_header p.photo {
  margin: 24px auto 36px auto;
}

div.sub_header p.btn_detail {
  display: inline-block;
  position: absolute;
  left: 50%;
  margin-left: 75px;
  z-index: 300;
  top: 140px;
}

div.goods_cafe div.sub_header p.btn_detail {
  /*left: 50%;*/
  left: auto;
  right: 25%;
  top: 110px;
}

div.sub_header p.btn_detail a {
  color: #fff;
  text-decoration: none;
  display: block;
  width: 54px;
  height: 54px;
  border-radius: 27px;
  background-color: #555;
  padding-top: 12px;
  position: relative;
  font-size: 1.3rem;
}

div.sub_header p.btn_detail:hover {
  transition: 0.2s;
  top: 146px;
  opacity: 0.8;
}

div.sub_header p.btn_detail a:before {
  content: "";
  display: block;
  width: 24px;
  height: 14px;
  position: absolute;
  z-index: 200;
  left: 50%;
  margin-left: -10px;
  bottom: 9px;
  background-image: url(/common_2017/svg/icon_arrow_updown_3c.svg);
  background-repeat: no-repeat;
  background-position: 1px -105px;
  background-size: 18px 150px;
}

div.sub_header p.expl {
  font-size: 1.6rem;
  line-height: 2;
}

div.sub_header p.expl strong {
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 400;
  font-size: 2.4rem;
}


/* 200702 */

div.sub_header div.box_wrap_expl {
  margin-top: 44px;
  padding-bottom: 24px;
}

div.sub_header div.box_wrap_expl h5 {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 2.8rem;
  margin-bottom: 0.5em;
  line-height: 1.1;
}

div.sub_header div.box_wrap_expl span.en {
  display: block;
  text-align: center;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-size: 2.8rem;
}


/**/

div.sub_header .expl.reserve {
  display: inline-block;
  line-height: 1;
  margin-top: 0;
  margin-left: 0.5em;
}

div.sub_header .expl.reserve a {
  color: #fff;
  display: block;
  padding: 1em 1.2em 1em 2.6em;
  background-color: #f88f5d;
  position: relative;
  font-size: 1.2rem;
}

div.sub_header .expl.reserve:hover {
  opacity: 0.8;
}

div.sub_header .expl.reserve a:after {
  content: '';
  width: 8px;
  height: 8px;
  border: 0px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 1.5em;
  margin-top: -0.3em;
}

div.sub_header p.expl span {
  font-size: 1.2rem;
  display: block;
}

div.sub_header p.expl small {
  font-size: 1.2rem;
  line-height: 2;
}


/*  */

#box_link {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
  margin-top: 1em;
}


/**/

div.sub_header div.bottom {
  min-width: 1024px;
  position: relative;
  text-align: center;
  padding-top: 1.5em;
  /* 内部要素を天地中央に */
  display: flex;
  justify-content: center;
  align-items: center;
}

div.sub_header div.bottom div.sns_share_btns {
  text-align: center;
  display: inline-block;
  padding-top: 0.3em;
}

.sns_share_btns h6,
.sns_share_btns p {
  display: inline-block;
  position: relative;
}

.sns_share_btns p {
  margin-right: 0.5em;
}

.sns_share_btns p {
  font-size: 1.6rem;
  font-family: "Roboto", sans-serif;
}

.sns_share_btns p a {
  padding-bottom: 0.1em;
  color: #555;
  position: relative;
  padding: 0 0.1em 0.2em 0.1em;
}

.sns_share_btns p a img {
  position: relative;
  margin-right: 0.2em;
}

.sns_share_btns p.btn_tw a {
  /* color: #2fbed6; */
}

.sns_share_btns h6 {
  color: #777;
}

.sns_share_btns h6:after {
  content: ":";
  margin-right: 0.2em;
  padding-left: 0.2em;
}

.sns_share_btns p a {
  border-bottom: 1px solid #333;
}

.sns_share_btns p.btn_tw a img {
  /* top: 2px; */
  width: 1.2em;
  height: auto;
  margin-bottom: 2px;
}

.sns_share_btns p.btn_fb a img {
  top: 1px;
  margin-right: 0.35em;
}

/* .sns_share_btns p.btn_tw a {
  color: #2fbed6;
  border-bottom-color: #2fbed6;
} */

/* .sns_share_btns p.btn_fb a {
  color: #3a5898;
  border-bottom-color: #3a5898;
} */

p.btn_shuttle_bus {
  display: inline-block;
  padding-left: 32px;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.3;
}

p.btn_shuttle_bus a {
  display: block;
  background-color: #f5f5f5;
  border: 1px solid #23b7fe;
  color: #222;
  border-radius: 2.5em;
  padding: 0.7em 1.2em 0.5em 4em;
  position: relative;
}

p.btn_shuttle_bus a:hover {
  transition: 0.2s;
  opacity: 0.7;
}

p.btn_shuttle_bus a:before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  left: 18px;
  top: 10px;
  background-image: url(/common_2017/svg/icon_set_access.svg);
  background-repeat: no-repeat;
  background-position: -210px 2px;
  background-size: 357px 78px;
}


/**/

div#map_selector {
  position: relative;
  background-color: #111;
  text-align: center;
  z-index: 0;
  overflow: hidden;
  border-bottom: 1px solid #fff;
}

div#map_selector ul {
  display: inline-block;
}

div#map_selector li {
  font-size: 1.6rem;
  display: inline-block;
}

div#map_selector a {
  color: #fff;
  display: block;
  padding: 0.9em 1.7em 0.9em 1.7em;
}

div#map_selector a:hover {
  transition: 0.2s;
  background-color: #333;
}

div.todoroki_kosugi div#map_selector li a.current {
  background-color: #23b7fe;
  cursor: default;
}

div#map_selector div.box_qr {
  position: absolute;
  bottom: -100px;
  left: 50%;
  background-color: #fff;
  z-index: 400;
  width: 100px;
  height: 100px;
  margin-left: -50px;
}

div#box_map div#map_selector:last-child {
  position: relative;
  top: -4px;
}


/**/

div#box_access_list {
  padding-top: 28px;
  padding-bottom: 42px;
  width: 1024px;
  height: auto;
  margin: 0 auto;
}

div#box_access_list .box_header {
  padding-bottom: 2em;
}

div#box_access_list h3 {
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.5;
  margin-bottom: 0.5em;
  padding-bottom: 0.7em;
  color: #23b7fe;
  border-bottom: 1px solid #23b7fe;
}

.azzurro_nero div#box_access_list h3 {
  font-size: 2.4rem;
}

p.notice {
  color: #777;
  font-size: 1em;
  line-height: 1.4;
}

.fanclub p.expl+p.notice {
  color: red;
  font-weight: bold;
}

div#box_selector_station {
  width: 1024px;
  height: auto;
}

div#box_selector_station ul {
  width: 1024px;
  border-bottom: 3px solid #23b7fe;
  display: table;
}

div#box_selector_station ul li {
  font-size: 1.5rem;
  width: 19%;
  line-height: 1.3;
  display: table-cell;
}


/* 等々力のタブ4番目 */

div#box_selector_station.todoroki li:nth-of-type(4) {
  width: 25%;
}

div#box_selector_station ul li a {
  width: auto;
  display: block;
  background-color: #fff;
  color: #222;
  text-align: center;
  border: 1px solid #ccc;
  padding: 1em;
  padding-top: 1.3em;
  border-right: none;
  box-sizing: border-box;
}

div#box_selector_station ul li:last-child a {
  border-right: 1px solid #ccc;
}

div#box_selector_station ul li a:hover {
  background-color: #eef7fb;
}

div.block_one_access {
  margin-top: 28px;
  box-sizing: border-box;
}

div.block_one_access h4 {
  font-size: 2.2rem;
  padding: 1em 1em 0.5em 48px;
  position: relative;
  z-index: 0;
}

div.block_one_access h4:before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 40px;
  position: absolute;
  z-index: 200;
  top: 50%;
  left: 0;
  margin-top: -12px;
  margin-right: 0.4em;
  background-image: url(/common_2017/svg/icon_set_access.svg);
  background-repeat: no-repeat;
  background-position: -80px 0;
  background-size: 330px 80px;
}

div.block_one_access#access_parking h4:before {
  background-position: -226px 0;
  width: 30px;
  margin-left: 4px;
  margin-right: 0.35em;
}

div.block_one_access h4:after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 30px;
  position: relative;
  z-index: 200;
  left: 5px;
  top: 5px;
  margin-right: 0.6em;
  background-image: url(/common_2017/svg/bg_sttl_slant_blue.svg);
  background-repeat: no-repeat;
  background-position: 0 1px;
  background-size: 28px 28px;
}

div.block_one_access table {
  width: 98.5%;
  margin-bottom: 1em;
  margin-top: 16px;
}

div.block_one_access table,
div.block_one_access table th,
div.block_one_access table td {
  border: 1px solid #ccc;
  text-align: center;
}

div.block_one_access table th,
div.block_one_access table td {
  padding: 0.5em;
  padding-top: 0.7em;
}

div.block_one_access dl,
div.block_one_access div.no_means {
  border: 1px solid #ccc;
  padding: 24px;
  border-radius: 6px;
  padding-top: 12px;
  padding-bottom: 28px;
}

div.block_one_access div.no_means {
  padding-top: 2.2em;
}

div.block_one_access table th {
  background-color: #d2f3ff;
  font-weight: bold;
  font-size: 1em;
  line-height: 1.4;
}

div.block_one_access table tbody tr:nth-of-type(even) {
  background-color: #f8f9f7;
}

div.block_one_access dl {
  font-size: 1.6rem;
  line-height: 1.7;
}

div.block_one_access dl dt,
div.block_one_access dl dd {
  position: relative;
}

div.block_one_access dl dt {
  font-weight: bold;
  margin-top: 1.2em;
  padding-left: 2.2em;
  display: inline-block;
}

div.block_one_access dl dt:after {
  content: ":";
  padding-left: 0.25em;
}

div.block_one_access dl dd {
  margin-top: -1.7em;
}

div.block_one_access dl dd small {
  font-size: 0.8em;
}

div.block_one_access dl dd.table {
  padding-left: 0;
  margin-top: -0.2em;
  padding-top: 0px;
  padding-bottom: 0.7em;
}

div.block_one_access dl dt.bus+dd:not(.table) {
  padding-left: 6.6em;
}

div.block_one_access dl dt:before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 40px;
  position: absolute;
  left: 0;
  top: -5px;
  background-image: url(/common_2017/svg/icon_set_access.svg);
  background-repeat: no-repeat;
  background-position: -135px -10px;
  background-size: 300px 66px;
}

div.block_one_access dl dt.walk:before {
  width: 24px;
  left: 5px;
  background-position: -109px -3px;
}

div.block_one_access dl dt.walk+dd {
  padding-left: 6.6em;
}

div.block_one_access dl dt.taxi:before {
  background-position: -140px -3px;
}

div.block_one_access dl dt.taxi+dd {
  padding-left: 8.7em;
}

div.block_one_access dl dt.bus:before {
  width: 32px;
  background-position: -176px 2px;
}

/* div.block_one_access dl dt.bus+dd {
  padding-left: 7.7em;
} */

div.block_one_access dl dt.parking_car:before,
div.block_one_access dl dt.car:before {
  background-position: -272px -3px;
}

div.block_one_access dl dt.parking_car+dd {
  padding-left: 6.6em;
}

div.block_one_access dl dt.car+dd {
  padding-left: 5.4em;
}

div.block_one_access dl dt.parking_bike:before {
  width: 32px;
  background-position: -236px -3px;
}

div.block_one_access dl dt.parking_bike+dd {
  padding-left: 6.6em;
}


/**/

div.block_one_access dl dd span:not(.btn_inline) {
  color: #fff;
  position: relative;
  top: -0.15em;
  display: inline-block;
  background-color: #b4a76d;
  padding: 0 0.6em 0 0.6em;
  margin: 0 0.4em 0.2em 0.2em;
  border-radius: 0.2em;
  vertical-align: baseline;
}

div.block_one_access dl dd span.btn_inline {
  display: inline-block;
  position: relative;
  top: -0.15em;
}

div.block_one_access dl dd span.btn_inline a {
  display: block;
  color: #fff;
  font-size: 1.2rem;
  background-color: #23b7fe;
  border-radius: 1.2em;
  padding: 0.27em 0.8em 0.2em 1em;
}


/* asao */

ul#asao_options {
  display: inline-block;
  padding-left: 14px;
}

ul#asao_options li {
  display: inline-block;
  margin-left: 8px;
}

ul#asao_options li a {
  display: block;
  border: 1px solid #23b7fe;
  color: #222;
  border-radius: 2.5em;
  padding: 0.7em 2.5em 0.5em 2em;
  position: relative;
  background-color: #f5f5f5;
}

ul#asao_options li.btn_asao_caution a {
  color: #f00;
  border: 1px solid #f00;
}

ul#asao_options li a small {
  font-size: 0.8em;
}

ul#asao_options li a:before {
  content: '';
  display: block;
  width: 10px;
  height: 7px;
  border: 1px solid #23b7fe;
  position: absolute;
  right: 16px;
  top: 20px;
  z-index: 2;
  background-color: #fff;
}

ul#asao_options li a:after {
  content: '';
  display: block;
  width: 10px;
  height: 7px;
  background-color: #23b7fe;
  position: absolute;
  right: 22px;
  top: 25px;
  z-index: 1;
  border: none;
  -webkit-transform: rotate(0);
  transform: rotate(0);
}

ul#asao_options li.btn_asao_caution a:before {
  border: 1px solid #f00;
}

ul#asao_options li.btn_asao_caution a:after {
  background-color: #f00;
}


/* ルート説明 */

div.inner.route {
  padding-top: 1em;
}

div.inner.route h5 {
  font-weight: bold;
  display: inline-block;
  border-bottom: 1px solid #23b7fe;
  margin-bottom: 0.6em;
}

div.inner.route ul {
  display: flex;
  padding-top: 1.5em;
}

div.inner.route ul li {
  background-color: #f5f5f5;
  line-height: 1.6;
  margin-right: 1.9em;
  position: relative;
  z-index: 0;
  width: 17%;
  /*padding: 2%;*/
  padding: 1.2em;
  font-size: 1.4rem;
  border-radius: 0.4em;
}

div.inner.route ul {
  counter-reset: route_num;
}

div.inner.route ul li:before {
  counter-increment: route_num;
  content: counter(route_num);
  box-sizing: border-box;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  position: absolute;
  top: -1.2em;
  left: 0.5em;
  color: #fff;
  height: 2em;
  width: 2em;
  line-height: 2.1;
  display: block;
  text-align: center;
  background-color: #333;
  border-radius: 1em;
}

div.inner.route ul li:after {
  content: " ";
  width: 32px;
  height: 32px;
  display: block;
  position: absolute;
  z-index: 500;
  right: -32px;
  top: 50%;
  margin-top: -17px;
  background-image: url('/common_2017/svg/icon_arrow_lr_3c.svg');
  background-size: 144px 40px;
  background-position: -70px 50%;
}

div.inner.route ul li:last-child:after {
  display: none;
}


/* 全体マップ */

#inner {
  width: 100%;
  height: 500px;
}

#page_access.home #inner>div {
  pointer-events: auto;
}

.box_info {
  width: auto !important;
  min-width: 9em;
  height: 4.5em;
  /*入れないと崩れる*/
}

.box_info>div {}

.box_info .infobox {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

.box_info .box_asao {
  width: 11em;
  top: -65px;
  left: -30px;
}

.box_info .box_office {
  width: 14em;
  top: -36px;
  left: 40px;
}

.box_info .box_frontown {
  width: 10em;
  top: -96px;
  left: -70px;
}

.box_info .box_mizonokuchi {
  width: 11em;
  top: auto;
  bottom: -60px;
  left: -110px;
}

.box_info .box_nakahara {
  width: 11em;
  top: auto;
  bottom: -60px;
  left: -55px;
}

.box_info .box_todoroki {
  width: 12em;
  top: -30px;
  left: -35px;
}

.box_info .box_goods_cafe {
  width: 11em;
  top: 48px;
  left: 10px;
}

.box_info .box_fanclub {
  width: 14em;
  top: 10px;
}

.box_info .box_kyujo {
  width: 15em;
  top: -50px;
  left: -76px;
}

.box_info .box_ikuta {
  width: 16em;
  top: -30px;
  left: 10px;
}

.box_info .box_asao:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 12px;
}

.box_info .box_frontown:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 58px;
}

.box_info .box_office:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 88px;
}

.box_info .box_todoroki:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 38px;
}

.box_info .box_mizonokuchi:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_b.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 14px;
  height: 18px;
  position: absolute;
  top: -17px;
  left: 78px;
}

.box_info .box_nakahara:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_b.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 14px;
  height: 18px;
  position: absolute;
  top: -17px;
  left: 28px;
}

.box_info .box_goods_cafe:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_d.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 15px;
  height: 19px;
  position: absolute;
  top: -18px;
  left: 10px;
}

.box_info .box_fanclub:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_c.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 19px;
  height: 14px;
  position: absolute;
  top: 22px;
  left: -18px;
}

.box_info .box_mizonokuchi:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_b.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 14px;
  height: 18px;
  position: absolute;
  top: -17px;
  left: 78px;
}

.box_info .box_kyujo:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 34px;
}

.box_info .box_ikuta:after {
  content: '';
  display: block;
  background-image: url(/access/page_parts/arrow_a.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  width: 13px;
  height: 18px;
  position: absolute;
  bottom: -17px;
  left: 10px;
}

.box_info p {
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3;
}

.box_info p a {
  /*	color: #0287c6;
	font-weight: bold;
	display: inline-block;
    padding: 0.5em 0.7em 0.4em 0.7em;
    background-color: #fff;
    border-radius: 0.4em;
    box-shadow: 7.1px 7.1px 7px rgba(0, 0, 0, 0.2);*/
  display: block;
  box-shadow: 0px 15px 20px 0px rgba(0, 0, 0, 0.15);
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: rgba(5, 5, 5, 0.4);
  color: #050505;
  text-align: left;
  padding: 1em;
  font-size: 1.3rem;
  border-radius: 0.6em;
  position: relative;
}


/*a:hover {
	transition: all 0.15s ease-in;
	opacity: 0.8;
}*/

.box_info p a:hover {
  color: #0b73af;
  transition: all 0.15s ease-in;
  /*background-color: #65c2f7;*/
}

.box_info img {
  display: none !important;
}

#main_todoroki {
  width: 100%;
  height: 100%;

  margin-top: 48px;
  margin-left: -148px;

  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 40px;
  position: relative;
}

#main_todoroki::after,
#main_todoroki::before {
  content: '';
  display: block;
  width: 930px;
  height: 396px;
  /* 0.4258064516129032 */
  border-radius: 20px;
  background-color: #def4ff;
  flex-shrink: 0;
}

#main_todoroki .inner {
  width: 1320px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;

}

#main_todoroki figure {
  width: 930px;
  height: 396px;
  overflow: hidden;
  border-radius: 20px;
  flex-shrink: 0;
}

#main_todoroki figure img {
  width: 100%;
  height: 100%;
}

#main_todoroki div.wrap {
  margin-left: 2em;
  padding-top: 6em;
}

#main_todoroki h3 {
  font-size: 2.8rem;
}

#main_todoroki p {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-top: 1em;
}

#wrapper main p.btn {
  margin-top: 1.2em;
  line-height: 1;
}

main p.btn a {
  font-size: 1.5rem;
  display: inline-block;
  background-color: #23b7fe;
  color: #fff;
  padding: 0.8em 2.4em;
  border-radius: 1.6em;
  line-height: 1;
  border: #23b7fe 2px solid;
  transition: .5s;
}

main p.btn a:hover {
  background: #fff;
  color: #23b7fe;
  opacity: 0.8;
}

#main_todoroki h3:hover,
#main_todoroki figure:hover,
#li_access li figure:hover,
#li_access li h3:hover {
  cursor: pointer;
  transition: .5s;
  opacity: 0.8;
}

#li_access li.hovered {
  transition: 0.8s;
  transform: scale3d(1.1, 1.1, 1.1);
  transform: translate(0, -4px);
}



/*  */

#box_office {
  margin-left: -130px;
  margin-bottom: 30px;
}

#box_asao {
  margin-left: 15px;
  padding-top: 30px;
}

#box_frontown {
  margin-bottom: -30px;
  margin-left: 10px;
}

#box_shimonoge {
  margin-bottom: 38px;
}

#box_fanclub {
  margin-left: 35px;
  margin-bottom: 10px;
}

#box_azzurro_nero {
  margin-bottom: -45px;
  margin-left: -90px;
}

#box_fro-cafe {}

#box_kyujo {
  margin-left: 40px;
}

.overlay {
  background-image: url(../page_parts/pin_map.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  /*	background-size:68px 94px;
	-webkit-background-size: 68px 94px;*/
  /*	width: 100%;
	height: 100%;*/
  width: 126px;
  height: 94px;
  margin-top: 5px;
}


/*  */

p.btn_app {
  display: none;
}


/* share */

#box_share {
  width: 100%;
  display: block;
  /*background-color: #23b6fd;*/
  background-color: #f1f3ef;
  text-align: center;
  border-top: 1px solid #91dbff;
  padding-top: 15px;
  display: none;
  /*font-weight: bold;*/
}

div#box_share div.inner_share {
  width: 1024px;
  margin: 0 auto;
  color: #222;
}

#box_share a {
  display: block;
  text-align: center;
  color: #222;
}

#box_share ul {
  width: auto;
  position: static;
  padding: 10px 0;
}

#box_share ul li {
  display: inline-block;
  font-size: 1.6rem;
  position: relative;
  height: auto;
  vertical-align: middle;
  border-right: 1px solid #91dbff;
  padding: 18px 15px 15px;
}

#box_share ul li:last-child {
  padding-top: 0;
  padding-bottom: 0;
  border-right: none;
}

#box_share ul li:after {
  /*	content: '';
	height: 75px;
	width: 1px;
	background-color: #91dbff;
	position: absolute;
	right: 0;
	top: 0;*/
}

#box_share ul li input,
#box_share ul li p {
  display: inline-block;
}

#box_share ul li input {
  width: 320px;
  color: #5d5d5d;
}

li#img_qr img {
  width: 60px;
  height: auto;
  vertical-align: middle;
  border: 5px solid #fff;
}

#box_share .btn_line a {
  padding-top: 1px;
  height: 24px;
  background-image: url(/common_2017/svg/icon_set_sns.svg);
  background-repeat: no-repeat;
  background-position: -202px 0px;
  background-size: 227px 56px;
  padding-left: 32px;
}


/*  */

body#page_access {
  position: relative;
}

@keyframes RightToLeft {
  0% {
    opacity: 0;
    /* 透明 */
    transform: translateX(50px);
    /* X軸方向に50px */
  }

  100% {
    opacity: 1;
    /* 不透明 */
    transform: translateX(0);
    /* X軸方向に0px */
  }
}

#bnr_cafe {
  width: 242px;
  height: auto;
  position: fixed;
  top: 310px;
  right: -45px;
  opacity: 0;
}

#bnr_cafe.delay {
  opacity: 1;
  animation-name: RightToLeft;
  animation-duration: 1s;
}

#bnr_cafe img {
  width: 242px;
}

#bnr_cafe a:hover {
  -webkit-transition: all 0.15s ease-in;
  transition: all 0.15s ease-in;
  opacity: 0.8;
}


/* 2019.5.1 asao */

div.sub_header div.box_note {
  border: 2px solid #fc2121;
  padding: 1.4em 2em;
  margin-top: 2em;
  background-color: #feeeee;
  display: inline-block;
  width: auto;
}

div.sub_header div.box_note p {
  font-size: 1.6rem;
  line-height: 1.6;
  color: #fc2121;
  /*color: #fff;*/
  font-weight: bold;
}

/* 2023 */

#wrapper main p.map {
  text-align: center;
  margin-top: 2.6em;
}

#li_access {
  width: 1140px;
  margin: 46px auto 0;

  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

#li_access li {
  width: 350px;
  padding-bottom: 50px;
  position: relative;

  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
}

#li_access #goods_cafe {
  width: 747px;
}

#goods_cafe figure p span,
#li_access figure {
  display: block;
  max-width: 350px;
  overflow: hidden;
  border-radius: 18px;
}

#goods_cafe figure p img,
#li_access figure img {
  width: 100%;
  height: auto;
}

#li_access li h3 {
  font-size: 1.8rem;
  margin-top: 1em;
}

#li_access li h3+p {
  font-size: 1.4rem;
  margin-top: 0.8em;
}

#goods_cafe figure {
  max-width: initial;
  width: 100%;
  display: flex;
  justify-content: space-between;
  border-radius: 0;
  overflow: visible;
}

#goods_cafe figure p {
  max-width: 350px;
  position: relative;
  overflow: visible;
}

#goods_cafe figure p::after {
  content: '';
  display: block;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 99;
  bottom: -8px;
  right: 18px;
}

#goods_cafe figure p:nth-child(1)::after {
  width: 90px;
  height: 78px;
  background-image: url(/access/page_parts/icon_azzurro-nero.png);
}

#goods_cafe figure p:nth-child(2)::after {
  width: 86px;
  height: 86px;
  background-image: url(/access/page_parts/icon_frocafe.png);
  bottom: -12px;
}

/* #goods_cafe a:before {
  content: '';
  display: block;
  width: 242px;
  height: 54px;
  background-image: url(/access/page_parts/thumb_goods_cafe_badge.png);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 100% auto;
  position: absolute;
  z-index: 9999;
  right: 136px;
  bottom: -18px;
} */

/* 240528 */

div.block_one_access dl dd.table {

  border: 4px solid #bccf6e;
  margin-top: 1em;
  padding-bottom: 0;

  dl {
    display: flex;
    flex-wrap: wrap;
    border: none;
    padding: 0;
    box-sizing: border-box;
    font-size: 1.6rem;
  }

  dt::after,
  dt:before {
    display: none;
  }

  dt,
  dd {
    box-sizing: border-box;
    font-size: 1.6rem;
    border-bottom: 1px solid #bccf6e;
  }

  dt {
    width: 30%;
    padding: 1em;
    font-weight: bold;
    border-right: 1px solid #bccf6e;
    font-size: 2.2rem;
    margin-top: 0;
    display: block;
  }

  dd {
    width: 70%;
    display: flex;
    align-items: center;
    margin-top: 0;
  }

  dt small {
    display: block;
    padding-top: 0.4em;
    font-size: 1.4rem;
    font-weight: normal;
  }

  a {
    color: #111;
  }

  dd dl {
    align-items: center;
  }

  dd dl dt {
    width: 5em;
    border-right: 1px solid #bccf6e;
    font-size: 1.6rem;
    font-weight: 400;
    padding: 1em 0.6em 1em 0.6em;
  }

  dd dl dd {
    width: calc(100% - 5em);
    padding: 1em 0.6em 1em 0.6em;
  }

  /*  */

}

div.block_one_access dl dt.bus:after {
  display: none;
}


/* ========= responsive ========= */

@media screen and (max-width: 768px) {

  /* mq start */
  .sp {
    display: block;
  }

  #box_selector_maps {
    padding-top: 0;
    margin-top: 64px;
  }

  #box_selector_maps ul {
    width: 100%;
    box-sizing: border-box;
    padding-left: 5vw;
    padding-right: 5vw;
  }

  #box_selector_maps ul li {
    margin-left: 0;
    box-sizing: border-box;
    width: 50%;
    border-right: 1px solid #fff;
  }

  #box_selector_maps ul p.photo {
    width: 120px;
    height: 120px;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -60px;
  }

  #box_selector_maps ul h3 {
    line-height: 1.3;
    font-size: 3.8vw;
  }

  #box_selector_maps ul li:nth-child(4) h3,
  #box_selector_maps ul li:nth-child(7) h3 {
    font-size: 3.7vw;
  }

  #box_selector_maps ul {
    padding-top: 40px;
  }

  #box_selector_maps ul li {
    width: 50% !important;
    text-align: center;
  }

  #box_selector_maps ul li {
    margin: 0 0 54px 0;
    position: relative;
    z-index: 0;
    height: auto !important;
  }

  #box_selector_maps ul li a {
    padding-left: 2vw;
    padding-right: 2vw;
    width: 100%;
    height: calc(4.3em + 156px);
  }

  #box_selector_maps ul li:nth-of-type(1),
  #box_selector_maps ul li:nth-of-type(2),
  #box_selector_maps ul li:nth-last-of-type(1) a,
  #box_selector_maps ul li:nth-last-of-type(2) a {
    height: calc(4.3em + 146px);
  }

  #box_selector_maps ul li:nth-of-type(6) a {
    height: calc(6.3em + 156px);
  }

  #box_selector_maps ul li h3>small {
    font-size: 1.2rem;
  }

  #box_selector_maps ul h4 {
    height: auto !important;
    /*font-size: 3.32vw;*/
    font-size: 3.125vw;
    /* 10px */
    line-height: 1.4;
    margin-bottom: 0.6em;
  }

  #box_selector_maps ul p.arrow_detail {
    display: none;
  }

  /* goods cafe */
  #box_selector_maps ul #office_fanclub,
  #box_selector_maps ul #goods_cafe {
    width: 100% !important;
    height: auto !important;
  }

  /*div#box_selector_maps ul #office_fanclub p.photo,*/
  div#box_selector_maps ul #goods_cafe p.photo {
    width: 280px;
    margin-left: -140px;
    height: 120px !important;
  }

  /*div#box_selector_maps ul #office_fanclub p.photo img,*/
  div#box_selector_maps ul #goods_cafe p.photo img {
    height: 100% !important;
    width: 280px !important;
  }

  div#box_selector_maps ul #office_fanclub .inner,
  div#box_selector_maps ul #goods_cafe .inner {
    width: 50%;
    margin: 0;
  }

  #office_fanclub a:before,
  #goods_cafe a:before {
    width: 100%;
    height: calc(100% * 0.24);
    background-position: 100% 0;
    background-size: 70% auto;
    right: 0;
    bottom: -10px;
  }

  /*#box_selector_maps ul #office_fanclub p.photo img,*/
  #box_selector_maps ul #goods_cafe p.photo img {
    width: 100% !important;
    height: calc(100% * 0.37) !important;
  }

  #box_map.full {
    min-width: initial;
  }

  #wrapper_gmap .inner iframe {
    height: 400px !important;
  }

  #box_map div.sub_header {
    width: 100%;
    box-sizing: border-box;
    padding-left: 3vw;
    padding-right: 3vw;
  }

  #box_map.full .inner {
    min-width: initial;
  }

  #box_map div.sub_header h2 {
    font-size: 6.5625vw;
    /* 21px */
    margin-bottom: 0.2em;
  }

  #box_map.goods_cafe div.sub_header h2 {
    font-size: 5vw;
    /* 16px */
  }

  #box_ttl {
    overflow: visible;
  }

  #box_ttl div.inner {
    width: 100%;
  }

  #topicpath {
    width: 96%;
    margin: 0 auto;
  }

  #box_sub_access_nav {
    width: 100%;
    bottom: -42px;
    z-index: 1000;
    text-align: center;
    background-color: #fff;
  }

  #box_sub_access_nav ul {
    width: 100%;
    position: static;
    text-align: center;
  }

  #box_sub_access_nav ul li a {
    font-size: 4vw;
  }

  #box_sub_access_nav li:nth-of-type(1) a {
    width: auto;
    padding-left: 15px;
    padding-right: 15px;
  }

  #box_sub_access_nav li:nth-of-type(2) a {
    padding-left: 27px;
  }

  #box_sub_access_nav li:nth-of-type(2) a:after {
    left: 0px;
  }

  #nav_maps {
    width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    position: relative;
    margin-top: 60px;
  }

  #nav_maps.active {
    margin-top: 20px;
    position: relative;
    background-color: #fff;
    z-index: 10000;
  }

  /*	#nav_maps:after {
		content: '';
		display: block;
		width: 10%;
		height: 100%;
		background-color: #000;
		position: absolute;
		top: 0;
		left: 90%;
	}*/
  #nav_selector_maps {
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
    width: auto;
    min-width: initial;
    display: flex;
    display: -webkit-flex;
  }

  #nav_selector_maps li {
    /*display: block;
		float: left;*/
    white-space: nowrap;
    -webkit-flex-grow: 1;
    flex-grow: 1;
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
  }

  #nav_selector_maps li:nth-of-type(4),
  #nav_selector_maps li:nth-of-type(6) {
    border-right: 1px solid #bbb;
  }

  div.sub_header p.expl strong {
    font-size: 6.25vw;
    /* 20px */
    display: inline-block;
    margin-bottom: 0.4em;
  }

  div.sub_header p.expl {
    width: 96%;
    margin: 0 auto;
    font-size: 3.75vw;
    line-height: 1.4;
  }

  div.sub_header p.expl small {
    font-size: 3.125vw;
  }

  div.sub_header p.expl.reserve {
    width: auto;
  }

  #box_link {
    flex-wrap: wrap;
    margin-top: 2em;
  }

  #box_map div.sub_header #box_link li {
    margin: 0;
  }

  #box_map div.sub_header #box_link .web_link {
    margin-bottom: 1.4em;
  }

  #box_map div.sub_header #box_link a {
    font-size: 4.0625vw;
    /* 13px */
  }

  #box_map div.sub_header #box_link .expl.reserve a {
    font-size: 3.75vw;
    /* 12px */
  }

  div.sub_header div.bottom {
    width: 100%;
    min-width: initial;
    display: block;
  }

  div.sub_header div.bottom div.sns_share_btns {
    width: 100%;
    display: block;
    margin-bottom: 8vw;
  }

  .sns_share_btns p {
    font-size: 3.75vw;
    /* 12px */
  }

  p.btn_shuttle_bus {
    width: auto;
    padding-left: 0;
    margin: 0 auto;
    /*display: block;*/
  }

  p.btn_shuttle_bus a {
    padding-left: 60px;
  }

  div#map_selector ul {
    display: -webkit-box;
    /*--- Androidブラウザ用 ---*/
    display: -webkit-flex;
    /*--- safari（PC）用 ---*/
    display: flex;
  }

  div#map_selector li {
    -webkit-flex-grow: 1;
    flex-grow: 1;
    font-size: 3.75vw;
    line-height: 1.3;
  }

  div#map_selector a {
    padding: 7% 5%;
  }

  div#box_access_list {
    width: 92vw;
    margin: 0 auto;
    padding-top: 12px;
  }

  div#box_access_list .box_header {
    padding-bottom: 1em;
  }

  div#box_access_list h3 {
    /*font-size: 8.125vw;*/
    font-size: 4.375vw;
    /* 14px */
    line-height: 1.3;
  }

  p.notice {
    width: 96%;
    margin: 0 auto;
  }

  .fanclub p.expl+p.notice {
    font-size: 3.125vw;
    /* 10px */
    margin-top: 0.6em;
  }

  div#box_selector_station {
    width: 100%;
  }

  div#box_selector_station ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  div#box_selector_station ul:after {
    content: '.';
    visibility: hidden;
    height: 0;
    clear: both;
    display: block;
  }

  div#box_selector_station ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }

  div#box_selector_station ul:after {
    content: '.';
    visibility: hidden;
    height: 0;
    clear: both;
    display: block;
  }

  div#box_selector_station.todoroki li:nth-of-type(4),
  div#box_selector_station ul li {
    box-sizing: border-box;
    /*display: block;*/
    width: 50%;
    /*font-size: 4.6875vw;*/
    /* 15px */
    /*font-size: 4.0625vw;*/
    /* 13px */
    font-size: 3.4375vw;
    /* 11px */
    /*		-webkit-flex-grow:1;
			flex-grow:1;*/
    display: -webkit-box;
    display: flex;
    align-items: stretch;
    align-items: center;
  }

  div#box_selector_station.todoroki li:nth-of-type(4) {
    width: 100%;
    -webkit-box-ordinal-group: 5;
    -webkit-order: 5;
    order: 5;
  }

  div#box_selector_station.asao li:nth-of-type(2),
  div#box_selector_station.office li:nth-of-type(2) {
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 3;
    order: 3;
  }

  div#box_selector_station ul li:last-child {
    border-right: none;
  }

  div#box_selector_station.shimonoge li:nth-of-type(3) {
    font-size: 4.375vw;
  }

  div#box_selector_station ul li a {
    /*height: 50px;*/
    width: 100%;
    height: 100%;
    padding: 0.4em;
    border-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  div#box_selector_station.shimonoge li:nth-of-type(3) a {
    /*padding: 0.8rem;*/
  }

  div.block_one_access {
    width: 96%;
    margin: 0 auto;
  }

  div.block_one_access h4 {
    font-size: 5vw;
    line-height: 1.2;
  }

  div.block_one_access h4:after {
    height: 26px;
  }

  div.block_one_access table th,
  div.block_one_access table td {
    font-size: 3.125vw;
  }

  div.block_one_access dl {
    padding: 0 10px 10px;
  }

  div.block_one_access dl dt,
  div.block_one_access dl dd {
    font-size: 4.0625vw;
  }

  div.block_one_access dl dt {
    margin-bottom: 6px;
  }

  div.block_one_access dl dd {
    margin-top: 0;
    padding-left: 0 !important;
  }

  div.block_one_access dl dd small {
    display: block;
    font-size: 2.5vw;
  }

  /* div.block_one_access dl dt.bus+dd {
    margin-top: 4px;
  } */

  div.block_one_access dl dd span:not(.btn_inline) {
    line-height: 1.4;
    padding: 0.4em 0.6em;
  }

  ul#asao_options {
    margin: 30px auto 0;
    width: 96%;
    padding-left: 0;
    display: flex;
  }

  ul#asao_options li {
    width: 50%;
    margin-left: 0;
    margin-bottom: 15px;
    font-size: 3.75vw;
    /* 12px */
  }

  ul#asao_options li a {
    padding: 10px 0px;
    margin: 0 4px;
  }

  ul#asao_options li a:before {
    right: 8px;
  }

  ul#asao_options li a:after {
    right: 11px;
  }

  div.inner.route ul {
    display: block;
  }

  div.inner.route ul li {
    width: 100%;
    margin-bottom: 40px;
    padding-top: 1em;
  }

  div.inner.route ul li:before {
    left: 0;
  }

  div.inner.route ul li:after {
    left: 50%;
    top: auto;
    bottom: -34px;
    right: auto;
    transform: rotate(90deg);
    margin-left: -16px;
  }

  #inner>div,
  #wrapper_gmap iframe {
    pointer-events: none;
  }

  #box_kyujo {
    width: 100px !important;
  }

  p.btn_app {
    display: block;
    /*font-size: 5.625vw;*/
    font-size: 20px;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 30px;
    font-weight: bold;
  }

  p.btn_app a {
    color: #23b7fe;
    position: relative;
    padding-left: 27px;
  }

  p.btn_app a:before {
    content: '';
    display: block;
    width: 24px;
    height: 34px;
    background-image: url(/common_2017/svg/icon_set_access.svg);
    background-repeat: no-repeat;
    background-position: -56px 0;
    background-size: 320px 70px;
    position: absolute;
    top: -4px;
    left: 0;
  }

  #box_share {
    margin-top: 42px;
    border-bottom: 1px solid #91dbff;
  }

  div#box_share div.inner_share {
    width: 100%;
  }

  #box_share ul {
    padding-top: 0;
  }

  #box_share ul li {
    font-size: 4.375vw;
    padding: 10px;
  }

  #box_share ul li:first-child {
    width: 100%;
    border: none;
  }

  #box_share ul li input {
    width: auto;
  }

  @keyframes LeftToRight {
    0% {
      opacity: 0;
      /* 透明 */
      transform: translateX(-50px);
      /* X軸方向に50px */
    }

    100% {
      opacity: 1;
      /* 不透明 */
      transform: translateX(0);
      /* X軸方向に0px */
    }
  }

  #bnr_cafe {
    top: auto;
    bottom: -10vw;
    right: auto;
    left: -3vw;
    animation-name: LeftToRight;
  }

  #bnr_cafe.delay {
    animation-name: LeftToRight;
  }

  #bnr_cafe img {
    width: 70vw;
  }

  /*  */
  #box_selector_maps ul h3 span {
    font-size: 3.125vw;
    /* 10px */
  }

  /* 200702 goods-cafe  */
  div.goods_cafe p.photo {
    width: 100%;
    max-width: 320px;
    margin-bottom: 0;
  }

  div.goods_cafe p.photo span {
    width: 100%;
    height: auto;
    position: relative;
  }

  div.goods_cafe p.photo:before {
    right: auto;
    left: 50%;
    margin-left: -106px;
    bottom: 0;
  }

  div.goods_cafe .sub_header p.photo img {
    width: 100% !important;
  }

  div.sub_header div.box_wrap_expl {
    margin-top: 20px;
    padding-bottom: 24px;
  }

  div.sub_header div.box_wrap_expl p.expl {
    line-height: 1.5;
  }

  div.goods_cafe div.sub_header p.btn_detail {
    position: static;
    left: auto;
    right: auto;
    top: auto;
    margin: 0;
  }

  /* 2024 */

  #box_sub_access_nav {
    display: none;
  }

  #main_todoroki {
    margin-top: 0;
    margin-left: 0;
    display: block;
  }

  #main_todoroki::after,
  #main_todoroki::before {
    display: none;
  }

  #main_todoroki .inner {
    width: 100%;
    display: block;
  }

  #main_todoroki figure {
    width: 100vw;
    /* height: calc(100vw * 0.43); */
    height: calc(100vw * 0.7);

    border-radius: 0;
  }

  #main_todoroki figure img {
    width: auto;
    height: 100%;
    margin-left: -40vw;
    margin-top: -12vw;
  }

  #main_todoroki div.wrap {
    margin: -8vw auto 0;
    padding-top: 2vw;
    width: 88vw;
  }

  #main_todoroki h3 {
    font-size: 5.625vw;
    /* 18px */
    text-align: center;
  }

  #main_todoroki p br,
  #main_todoroki h3 br {
    display: none;
  }

  #main_todoroki p {
    font-size: 4.0625vw;
    /* 13px */
    text-align: center;
  }

  main #main_todoroki p.btn,
  main p.btn {
    margin-top: 1.8em;
  }

  main p.map {
    margin-top: 8vw;
    padding-top: 8vw;
    position: relative;
  }

  main p.btn a {
    font-size: 4.375vw;
    /* 14px */
    font-size: 4.0625vw;
    /* 13px */
  }

  main p.map::before {
    content: '';
    display: block;
    width: 90%;
    height: 1px;
    background-color: #c6c6c6;
    position: absolute;
    top: 0;
    left: 5%;
  }

  /*  */

  #li_access {
    width: 100vw;
    margin-top: 12vw;
    justify-content: center;
  }

  #li_access li {
    width: 88vw;
    padding-bottom: 16vw;
  }

  #li_access li h3 {
    font-size: 5vw;
    /* 16px */
  }

  #li_access li h3+p {
    font-size: 3.75vw;
    /* 12px */
  }

  main #li_access p.btn {
    text-align: center;
  }

  #li_access #goods_cafe {
    width: 88vw;
  }

  #goods_cafe figure {
    flex-direction: column;
    gap: 4vw 0;
  }

  #goods_cafe figure p {
    max-width: initial;
  }

  #goods_cafe figure p::after {
    bottom: -2vw;
    right: 4vw;
  }

  #goods_cafe figure p:nth-child(1)::after {
    width: 20vw;
    height: calc(20vw * 0.8666666666666667);
  }

  #goods_cafe figure p:nth-child(2)::after {
    width: 20vw;
    height: 20vw;
    bottom: -3vw;
  }

  /* 240528 */

  div.block_one_access dl dd.table {

    box-sizing: border-box;

    dd,
    dt {
      width: 100%;
      border-right: 0;
    }

    dl dt {
      font-size: 5vw;
      /* 16px */
      padding: 0.6em 0.8em;
    }

    dt small {
      display: inline-block;
      margin-left: 1em;
      font-size: 0.6em;
    }

    dd dl {
      width: 100%;
      align-items: flex-start;
    }

    dl dt,
    dl dd {
      /* border-top: 1px solid #bccf6e; */
      margin-bottom: 0;
    }

    dl dt:nth-of-type(1),
    dl dd:nth-of-type(1) {
      border-top: none;
    }

    dd dl dt {
      /* border-top: 1px solid #bccf6e; */
      border-right: none;
      /* border-bottom: none; */
    }

    dd dl dt,
    dd dl dd {
      font-size: 3.75vw;
      /* 12px */
      padding: 1em 0.6em 1em 0.6em !important;
      border-bottom: none;
      border-top: 1px solid #bccf6e;
    }

    dd dl dd {
      border-left: 1px solid #bccf6e;
    }


























    /*  */
  }

  /* mq end */
}