@charset "UTF-8";
html {
  min-width: 1280px; }

@media screen and (max-width: 600px) {
  html {
    width: 100%;
    min-width: auto; } }

body {
  margin: 0;
  width: 100%;
  font-family: "Helvetica", "Tahoma", "Arial", "Microsoft YaHei", "Hiragino Sans GB", "WenQuanYi Micro Hei", "sans-serif";
  line-height: 30px;
  color: #4d4d4d;
  background-color: #ebebeb;
  font-size: 15.5px;
  overflow-y: scroll;
  cursor: default; }

@media screen and (max-width: 600px) {
  body {
    font-size: 0.8rem; } }

#wrap {
  width: 100%;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  #wrap {
    width: 100%; } }

p {
  line-height: 25px;
  margin: 0; }

.no-margin p,
.no-margin ul {
  margin: 0 !important; }

.en a,
.en p,
.en ul > li {
  word-break: break-word !important;
  word-wrap: break-word; }

a,
a:visited {
  color: #002B69;
  text-decoration: none; }

a:active,
a:hover {
  color: #002B69;
  text-decoration: underline; }

h2 {
  text-align: center;
  line-height: 32px;
  font-size: 20px;
  margin: 0 auto;
  color: #4d4d4d;
  margin-bottom: 30px;
  letter-spacing: .03em;
  min-width: 1240px;
  font-weight: bold; }

@media screen and (max-width: 600px) {
  h2 {
    font-size: 17px;
    margin: 0 auto;
    min-width: auto;
    line-height: 30px;
    padding: 20px; } }

.fs_l {
  font-size: 18px !important; }

@media screen and (max-width: 600px) {
  .fs_l {
    font-size: 12px !important; } }

.fs_mls {
  font-size: 16px !important; }

@media screen and (max-width: 600px) {
  .fs_mls {
    font-size: 0.75rem !important; } }

.fs_ml {
  font-size: 16px; }

@media screen and (max-width: 600px) {
  .fs_ml {
    font-size: 12px; } }

.fs_m {
  font-size: 15.5px; }

@media screen and (max-width: 600px) {
  .fs_m {
    font-size: 0.8rem; } }

.fs_s {
  font-size: 13px; }

@media screen and (max-width: 600px) {
  .fs_s {
    font-size: 0.75rem; } }

.f_stl_sha {
  font-style: oblique; }

.oblique {
  font-style: oblique; }

.bold {
  font-weight: bold; }

.m0 {
  margin: 0 !important; }

.mt0 {
  margin-top: 0 !important; }

.mt5 {
  margin-top: 5px !important; }

.mt10 {
  margin-top: 10px !important; }

.mt20 {
  margin-top: 20px !important; }

.mt30 {
  margin-top: 30px !important; }

@media screen and (max-width: 600px) {
  .mt30 {
    margin-top: 15px !important; } }

.mt30_both {
  margin-top: 30px !important; }

.mt40 {
  margin-top: 40px !important; }

.mt50 {
  margin-top: 50px !important; }

.mt70, h2.noimg, #release .headline h2 {
  margin-top: 70px !important; }

@media screen and (max-width: 600px) {
  .mt_sp0, h2.noimg, #release .headline h2 {
    margin-top: 0 !important; } }

@media screen and (max-width: 600px) {
  .mt_sp30 {
    margin-top: 30px !important; } }

.mb0 {
  margin-bottom: 0 !important; }

.mb10 {
  margin-bottom: 10px !important; }

.mb20 {
  margin-bottom: 20px !important; }

.mb30 {
  margin-bottom: 30px !important; }

@media screen and (max-width: 600px) {
  .mb30 {
    margin-bottom: 15px !important; } }

.mb30_both {
  margin-bottom: 30px !important; }

.mb50 {
  margin-bottom: 50px !important; }

.mtb0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important; }

.mtb20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important; }

.mr10 {
  margin-right: 10px !important; }

.mr15 {
  margin-right: 15px !important; }

.mr20 {
  margin-right: 20px !important; }

.mr200 {
  margin-right: 200px !important; }

@media screen and (max-width: 600px) {
  .mr_sp0 {
    margin-right: 0 !important; } }

.ml10 {
  margin-left: 10px !important; }

.ml20 {
  margin-left: 10px !important; }

.pt0 {
  padding-top: 0 !important; }

.pt10 {
  padding-top: 10px !important; }

@media screen and (max-width: 600px) {
  .pt_sp0 {
    padding-top: 0 !important; } }

.pb0 {
  padding-bottom: 0 !important; }

.ptb0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

.border_box {
  border: solid 3px #fff; }

@media screen and (max-width: 600px) {
  .border_box {
    border: solid 2px #fff; } }

.border_t, .mod-area1_b {
  border-top: solid 2px #fff; }

.border_t_none {
  border-top: none !important; }

.border_b, .mod-area1_b {
  border-bottom: solid 2px #fff; }

@media screen and (max-width: 600px) {
  .border_b, .mod-area1_b {
    border-bottom: none; } }

.border_tb {
  border-top: solid 2px #fff;
  border-bottom: solid 2px #fff; }

@media screen and (max-width: 600px) {
  .border_tb {
    border-top: none;
    border-bottom: none; } }

ul {
  list-style: none;
  padding: 0; }

@media screen and (max-width: 600px) {
  ul {
    padding-left: 0.15em; } }

ul li {
  padding-left: 1rem;
  text-indent: -1.2rem; }

ul li::before {
  content: '・';
  margin-right: 5px; }

.list-style_kome li::before {
  content: '※'; }

.list-style_kome_en {
  text-indent: -0.8em; }

.list-style_kome_en li::before {
  content: '*'; }

.list-style_square li::before {
  content: '■'; }

.list-style_next li {
  margin-bottom: 10px; }

.list-style_next li p {
  text-indent: 0;
  margin-left: 10px; }

.list-style_next li:last-child {
  margin-bottom: 0; }

.list-style_next li a {
  text-decoration: underline; }

.list-style_next li::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/common/next.png"); }

.list-style_none li::before {
  content: ''; }

.list-style_none_2 {
  text-indent: 0;
  padding-left: 0 !important; }

.list-style_none_2 li {
  padding-left: 0;
  text-indent: 0; }

.list-style_none_2 li::before {
  content: '';
  margin-right: 0; }

.list-style_banner {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }

.list-style_banner li {
  width: 25%;
  padding: 0;
  text-align: center; }

.list-style_banner li::before {
  content: ''; }

@media screen and (max-width: 600px) {
  .list-style_banner {
    display: block; }
  .list-style_banner li {
    width: 100%; } }

.cell_sns {
  display: block;
  width: 100%; }

@media screen and (max-width: 600px) {
  .cell_sns {
    display: inline-block;
    line-height: 20px; } }

.cell_sns_1 li {
  margin: 20px 0;
  padding-left: 0.2em;
  text-indent: 0;
  flex-wrap: wrap; }

@media screen and (max-width: 600px) {
  .cell_sns_1 li {
    margin-top: 10px !important; } }

.cell_sns_1 li:first-child {
  margin-top: 0 !important; }

.cell_sns_1 li img {
  width: 20px;
  margin-right: 10px;
  height: 100%;
  padding-left: 0.2em;
  vertical-align: text-bottom; }

.cell_sns_1 li::before {
  display: none; }

.cell_sns_1 li.facebook::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/facebook.png"); }

.cell_sns_1 li.twitter::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/twitter.png"); }

.cell_sns_1 li.instagram::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/instagram.png"); }

.cell_sns_1 li.youtube::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/youtube.png"); }

.cell_sns_2 {
  width: 100%;
  display: flex; }

@media screen and (max-width: 600px) {
  .cell_sns_2 {
    display: block; } }

.cell_sns_2 li {
  margin: 15px 15px 0; }

.cell_sns_2 li:first-child {
  margin-left: 0; }

@media screen and (max-width: 600px) {
  .cell_sns_2 li {
    margin: 15px 0;
    width: 100px; } }

.cell_sns_2 li::before {
  content: ""; }

.cell_sns_2 li img {
  width: 100%; }

.ico_square::before {
  content: "■"; }

.ico_circle::before {
  content: "●"; }

.ico_dot::before {
  content: "・"; }

.right {
  text-align: right; }

.left {
  text-align: left; }

.center {
  text-align: center; }

@media screen and (max-width: 600px) {
  .center_sp {
    text-align: center; } }

.common_width, .mod-area, .mod-area1, .mod-area1_b, .mod-area2, .mod-area3, #release .headline {
  width: 1240px;
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  .common_width, .mod-area, .mod-area1, .mod-area1_b, .mod-area2, .mod-area3, #release .headline {
    width: calc(100% - 30px);
    margin: 0 15px; } }

.common_width_2 {
  width: 1240px;
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  .common_width_2 {
    width: 100%; } }

.common_txt-area {
  padding: 30px; }

@media screen and (max-width: 600px) {
  .common_txt-area {
    padding: 15px; } }

.common_txt-area_2 {
  padding: 30px; }

@media screen and (max-width: 600px) {
  .common_txt-area_2 {
    padding: 0; } }

.common_txt-area_3 {
  padding: 30px;
  padding-left: 0; }

@media screen and (max-width: 600px) {
  .common_txt-area_3 {
    padding: 0; } }

.common_txt-area_4 {
  padding: 15px; }

.mod, .mod_pb, .mod_w60, .mod1, .mod1_pb, .mod1_pt, .mod2, .mod3 {
  padding: 30px; }

.mod-area, .mod-area1, .mod-area1_b, .mod-area2, .mod-area3 {
  box-sizing: border-box;
  padding: 30px; }

@media screen and (max-width: 600px) {
  .mod-area, .mod-area1, .mod-area1_b, .mod-area2, .mod-area3 {
    padding: 15px; } }

.mod-area1, .mod-area1_b {
  padding: 30px 0; }

@media screen and (max-width: 600px) {
  .mod-area1, .mod-area1_b {
    padding: 15px 0; } }

.mod-area2 {
  padding: 0 30px; }

.mod-area3 {
  padding: 0; }

.mod img, .mod_pb img, .mod_w60 img, .mod1 img, .mod1_pb img, .mod1_pt img, .mod2 img, .mod3 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  .mod, .mod_pb, .mod_w60, .mod1, .mod1_pb, .mod1_pt, .mod2, .mod3 {
    padding: 15px 0 0; } }

.mod_pb {
  padding-top: 0; }

@media screen and (max-width: 600px) {
  .mod_pb {
    padding: 15px 0 0; } }

.mod_w60 {
  width: 60%;
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  .mod_w60 {
    width: 100%; } }

.mod1, .mod1_pb, .mod1_pt {
  padding: 30px 0; }

@media screen and (max-width: 600px) {
  .mod1, .mod1_pb, .mod1_pt {
    padding: 15px 0 0; } }

.mod1_pb {
  padding-top: 0; }

@media screen and (max-width: 600px) {
  .mod1_pb {
    padding: 15px 0 0; } }

.mod1_pt {
  padding-bottom: 0; }

@media screen and (max-width: 600px) {
  .mod1_pt {
    padding: 15px 0 0; } }

.mod2 {
  padding: 0 30px; }

@media screen and (max-width: 600px) {
  .mod2 {
    padding: 15px 0 0; } }

.mod3 {
  padding: 0; }

@media screen and (max-width: 600px) {
  .mod3 {
    padding: 15px 0 0; } }

.mod_col2_1, .mod_col2_2, .mod_col2_2-pl, .mod_col2_2-pr, .mod_col2_3, .mod_col3_1, .mod_col4_1 {
  display: flex;
  padding: 30px 0;
  width: 100%;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .mod_col2_1, .mod_col2_2, .mod_col2_2-pl, .mod_col2_2-pr, .mod_col2_3, .mod_col3_1, .mod_col4_1 {
    display: block;
    padding: 15px 10px 0; } }

.mod_col2_2, .mod_col2_2-pl, .mod_col2_2-pr {
  padding: 0 30px; }

@media screen and (max-width: 600px) {
  .mod_col2_2, .mod_col2_2-pl, .mod_col2_2-pr {
    padding: 15px 0 0; } }

.mod_col2_2-pl {
  padding-right: 0; }

@media screen and (max-width: 600px) {
  .mod_col2_2-pl {
    padding: 15px 0 0; } }

.mod_col2_2-pr {
  padding-left: 0; }

@media screen and (max-width: 600px) {
  .mod_col2_2-pr {
    padding: 15px 0 0; } }

.mod_col2_3 {
  padding: 0; }

@media screen and (max-width: 600px) {
  .mod_col2_3 {
    padding: 15px 0 0; } }

.mod_col3_1, .mod_col4_1 {
  flex-wrap: wrap; }

@media screen and (max-width: 600px) {
  .mod_col3_1, .mod_col4_1 {
    display: block;
    padding: 15px 0 0; } }

@media screen and (max-width: 600px) {
  .mod_col4_1 {
    display: flex; } }

[class^=mod_col2] .mod_l_1 {
  width: 10%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_1 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_1 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_1 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_2 {
  width: 20%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_2 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_2 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_2 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_3 {
  width: 30%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_3 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_3 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_3 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_4 {
  width: 40%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_4 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_4 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_4 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_5 {
  width: 50%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_5 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_5 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_5 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_6 {
  width: 60%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_6 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_6 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_6 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_7 {
  width: 70%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_7 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_7 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_7 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_8 {
  width: 80%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_8 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_8 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_8 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_l_9 {
  width: 90%;
  box-sizing: border-box;
  padding: 0 15px 0 0; }

[class^=mod_col2] .mod_l_9 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_l_9 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_l_9 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

[class^=mod_col2] .mod_r_1 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 10%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_1 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_1 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_1 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_1 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_2 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 20%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_2 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_2 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_2 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_2 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_3 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 30%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_3 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_3 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_3 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_3 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_4 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 40%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_4 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_4 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_4 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_4 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_5 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 50%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_5 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_5 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_5 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_5 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_6 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 60%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_6 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_6 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_6 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_6 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_7 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 70%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_7 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_7 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_7 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_7 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_8 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 80%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_8 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_8 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_8 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_8 {
    margin: 15px 0 0; } }

[class^=mod_col2] .mod_r_9 {
  width: "width";
  box-sizing: border-box;
  padding: 0 15px 0 0;
  width: 90%;
  padding: 0 0 0 15px; }

[class^=mod_col2] .mod_r_9 h3 {
  margin-top: 0 !important; }

[class^=mod_col2] .mod_r_9 img {
  width: 100%; }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_9 {
    width: 100%;
    padding: 0;
    margin: 0 0 15px; } }

@media screen and (max-width: 600px) {
  [class^=mod_col2] .mod_r_9 {
    margin: 15px 0 0; } }

[class^=mod_col2].re {
  flex-direction: row-reverse; }

[class^=mod_col2] dl dt {
  margin: 0; }

[class^=mod_col2] dl dd {
  margin: 0; }

[class^=mod_col2] dl dd ul {
  margin-top: 0;
  padding: 0; }

.mod_w60 .mod_col2_3 [class^=mod_r] {
  padding: 0 0 0 5px; }

.mod_w60 .mod_col2_3 [class^=mod_l] {
  padding: 0 5px 0 0; }

[class^=mod_col3] .cell {
  width: calc((100% - 40px)/3);
  margin: 10px 10px 0; }

[class^=mod_col3] .cell:first-child, [class^=mod_col3] .cell:nth-child(3n+1) {
  margin-left: 0; }

[class^=mod_col3] .cell:nth-child(3n) {
  margin-right: 0; }

@media screen and (max-width: 600px) {
  [class^=mod_col3] .cell {
    width: 100%;
    margin: 0 0 0; } }

[class^=mod_col4] .cell {
  width: calc((100% - 60px)/4);
  margin: 10px 10px 0; }

[class^=mod_col4] .cell:first-child, [class^=mod_col4] .cell:nth-child(4n+1) {
  margin-left: 0; }

[class^=mod_col4] .cell:nth-child(4n) {
  margin-right: 0; }

@media screen and (max-width: 600px) {
  [class^=mod_col4] .cell {
    width: calc((100% - 10px)/2);
    margin: 0 5px; }
  [class^=mod_col4] .cell:nth-child(odd) {
    margin-left: 0; }
  [class^=mod_col4] .cell:nth-child(even) {
    margin-right: 0; } }

@media screen and (max-width: 600px) {
  [class^=mod] h4 {
    margin: 15px 0; } }

@media screen and (max-width: 600px) {
  .mod1 [class^=mod_col2], .mod1_pb [class^=mod_col2], .mod1_pt [class^=mod_col2] {
    padding: 0; } }

.column_1_img {
  width: 100%;
  height: 700px;
  margin-bottom: 20px; }

@media screen and (max-width: 600px) {
  .column_1_img {
    height: auto;
    margin-bottom: 10px; } }

.column_1_img img {
  width: 100%;
  display: block;
  height: 100%; }

.column_1_inf_img {
  width: 100%;
  margin-bottom: 20px;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .column_1_inf_img {
    height: auto;
    margin-bottom: 10px; } }

.column_1_inf_img img {
  width: 100%;
  display: block;
  height: auto; }

.column_2, .column_2_1 {
  display: flex;
  flex-wrap: wrap; }

.column_2_img {
  width: 610px;
  height: 400px; }

@media screen and (max-width: 600px) {
  .column_2_img {
    width: calc(50% - 5px);
    height: auto;
    overflow: hidden; } }

.column_2_img img {
  width: 100%;
  display: block; }

.column_2_img:first-child {
  margin-right: 20px; }

@media screen and (max-width: 600px) {
  .column_2_img:first-child {
    margin-right: 10px; } }

@media screen and (max-width: 600px) {
  .column_2_1 {
    display: block; }
  .column_2_1 .column_2_img {
    width: 100%; }
  .column_2_1 .column_2_img:not(:first-child) {
    margin-top: 15px; } }

.main_visual {
  width: 1240px;
  height: 300px;
  position: relative;
  overflow: hidden;
  margin: 0 auto 70px; }

@media screen and (max-width: 600px) {
  .main_visual {
    width: 100%;
    height: 100%;
    margin-bottom: 0; } }

.main_visual img {
  width: 100%; }

.main_visual_2 {
  width: 1240px;
  position: relative;
  overflow: hidden;
  margin: 0 auto 70px; }

@media screen and (max-width: 600px) {
  .main_visual_2 {
    width: 100%;
    height: 100%;
    margin-bottom: 0; } }

.main_visual_2 img {
  width: 100%; }

.panel_container {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  width: 1260px; }

@media screen and (max-width: 600px) {
  .panel_container {
    width: calc(100% - 30px);
    margin: 0 15px; } }

.panel_bg {
  width: 400px;
  height: 400px;
  position: relative;
  overflow: hidden;
  margin: 10px; }

@media screen and (max-width: 600px) {
  .panel_bg {
    height: auto;
    margin: 10px 0;
    width: 100%; }
  .panel_bg:first-child {
    margin-top: 0; }
  .panel_bg a h2,
  .panel_bg a h3 {
    text-decoration: underline; } }

.panel_bg:hover, .panel_bg:focus {
  box-shadow: 1px 10px 10px gray; }

@media screen and (max-width: 600px) {
  .panel_bg:hover, .panel_bg:focus {
    box-shadow: none; } }

.panel_bg:hover.no-link, .panel_bg:focus.no-link {
  box-shadow: none; }

.panel_whole-area {
  display: inline-flex;
  flex-direction: column-reverse; }

@media screen and (max-width: 600px) {
  .panel_whole-area {
    width: 100%; }
  .panel_whole-area:hover, .panel_whole-area:focus {
    text-decoration: none; } }

.panel_img-area {
  border: solid 3px #fff;
  border-bottom: none;
  box-sizing: border-box;
  height: 225px;
  width: 400px;
  background-color: #fff;
  overflow: hidden;
  text-align: center;
  position: relative; }

@media screen and (max-width: 600px) {
  .panel_img-area {
    vertical-align: top;
    width: 100%;
    width: -webkit-fill-available;
    border: solid 2px #fff;
    border-bottom: none;
    height: auto; } }

.panel_img-area img {
  width: 100%;
  display: block; }

.panel_img-area-2 {
  border: solid 3px #fff;
  border-bottom: none;
  box-sizing: border-box;
  height: 400px;
  width: 400px;
  background-color: #fff;
  overflow: hidden;
  text-align: center;
  position: relative; }

@media screen and (max-width: 600px) {
  .panel_img-area-2 {
    vertical-align: top;
    width: 100%;
    width: -webkit-fill-available;
    border: solid 2px #fff;
    border-bottom: none;
    height: auto; } }

.panel_img-area-2 img {
  width: 100%;
  display: block; }


.panel_txt-area {
  border: solid 3px #fff;
  border-top: none;
  box-sizing: border-box;
  background-color: #ebebeb;
  width: 400px;
  height: 175px;
  font-size: 13px;
  padding: 10px 15px;
  position: relative; }

@media screen and (max-width: 600px) {
  .panel_txt-area {
    border: solid 2px #fff;
    border-top: none;
    width: 100%;
    width: -webkit-fill-available;
    height: auto;
    min-height: 100px; } }

.panel_txt-area h2,
.panel_txt-area h3 {
  line-height: 1.65;
  letter-spacing: 0;
  font-size: 18px;
  margin: 0;
  color: #002B69;
  text-align: left;
  min-width: auto;
  word-wrap: break-word; }

@media screen and (max-width: 600px) {
  .panel_txt-area h2,
  .panel_txt-area h3 {
    font-size: 17px;
    padding: 0; } }

.panel_txt-area .panel_txt {
  padding: 10px 0;
  line-height: 1.75;
  position: absolute;
  top: 64px;
  width: 364px; }

.panel_txt-area .panel_txt p {
  line-height: 1.75; }

@media screen and (max-width: 600px) {
  .panel_txt-area .panel_txt {
    position: static;
    width: 100%;
    font-size: 0.8rem;
    padding: 10px 0; } }

.panel_txt-area [class^='info_'] {
  position: absolute;
  font-size: 12.6px;
  line-height: 15px; }

@media screen and (max-width: 600px) {
  .panel_txt-area [class^='info_'] {
    font-size: 0.75rem; } }

.panel_txt-area .info_map-num {
  bottom: 10px;
  right: 15px; }

.panel_txt-area .info_txt {
  bottom: 10px;
  left: 15px;
  line-height: 17px; }

@media screen and (max-width: 600px) {
  .panel_txt-area .info_txt {
    position: static; } }

.panel_txt-area .info_txt p {
  line-height: 18px; }

.panel_txt-area .info_date {
  top: 10px;
  left: 15px; }

.panel_none {
  background-color: #F5F5F5;
  background-image: url(/img/common/comingSoon.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 50%; }

.panel_none:hover, .panel_none:focus {
  box-shadow: none; }

.panel_none a {
  display: none; }

.panel_none .panel_txt-area {
  display: noen; }

.panel_bg_2 {
  border: solid 3px #fff;
  box-sizing: border-box;
  width: 400px;
  height: 400px;
  position: relative;
  overflow: hidden;
  margin: 10px; }

@media screen and (max-width: 600px) {
  .panel_bg_2 {
    border: solid 2px #fff;
    width: calc((100% - 10px) / 2) !important;
    height: auto;
    margin: 5px 0px; }
  .panel_bg_2:nth-child(odd) {
    margin-right: 10px; } }

.panel_bg_2.clickable:hover, .panel_bg_2.clickable:focus {
  box-shadow: 1px 10px 10px gray; }

@media screen and (max-width: 600px) {
  .panel_bg_2.clickable:hover, .panel_bg_2.clickable:focus {
    box-shadow: none; } }

.panel_bg_2 img {
  width: calc(100% + 6px);
  margin-left: -3px;
  margin-top: -3px;
  display: block; }

@media screen and (max-width: 600px) {
  .panel_bg_2 img {
    width: calc(100% + 4px);
    margin-left: -2px;
    margin-top: -2px; } }

@media screen and (max-width: 600px) {
  .panel_bg_2_ti {
    width: calc((100% - 10px) / 2) !important;
    height: auto;
    margin: 5px 0px; }
  .panel_bg_2_ti .panel_bg_2 {
    width: 100% !important; }
  .panel_bg_2_ti:nth-child(odd) {
    margin-right: 10px; } }

.panel_bg_2_ti p {
  max-width: 400px; }

@media screen and (max-width: 600px) {
  .panel_bg_2_ti.sp1col {
    width: 100% !important;
    margin: 0; } }

.panel_bg_2.oblong {
  height: auto; }

.panel_caption {
  padding: 0 10px; }

.reverse {
  display: inline-flex;
  flex-direction: column-reverse; }

.reverse2 {
  display: inline-flex;
  flex-direction: column-reverse;
  width: 100%; }

.en .panel_bg {
  height: 450px; }

@media screen and (max-width: 600px) {
  .en .panel_bg {
    height: auto; } }

.en .panel_txt-area {
  height: 225px; }

@media screen and (max-width: 600px) {
  .en .panel_txt-area {
    height: 100%; } }

.en .panel_txt-area .panel_txt {
  line-height: 1.2; }

.en .panel_txt-area .panel_txt p {
  line-height: 1.5; }

.new {
  position: absolute;
  top: -50px;
  right: -50px;
  transform: rotate(-45deg);
  width: 100px;
  height: 100px;
  z-index: 5;
  background-color: #fff; }

.new_txt {
  transform: rotate(45deg);
  position: absolute;
  left: 4px;
  bottom: 42px;
  font-size: 13px;
  font-weight: bold; }

.button_box {
  width: 400px;
  margin: 50px auto 20px;
  z-index: 5; }

@media screen and (max-width: 600px) {
  .button_box {
    width: 300px; } }

@media screen and (max-width: 600px) {
  .button {
    display: block;
    background: #fff;
    color: #002B69;
    font-weight: bold;
    width: 300px;
    height: 20px;
    text-align: center;
    width: 300px;
    text-align: center;
    padding: 15px 0.5em;
    text-decoration: none;
    border-radius: 38px;
    margin: 0 auto;
    cursor: pointer; }
  .button_area {
    width: 100%;
    text-align: center;
    margin: 30px auto; } }

.button_link {
  text-decoration: none; }

.button2 {
  font-weight: bold;
  border: solid 3px #fff;
  padding: 10px;
  text-align: center;
  box-sizing: border-box;
  width: 100%; }

.button2:hover, .button2:focus {
  background-color: #002B69;
  border: solid 3px #002B69;
  color: #F5F5F5; }

.line_table, .line_table_2 {
  border-collapse: collapse;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 50px 0;
  line-height: 30px; }

@media screen and (max-width: 600px) {
  .line_table, .line_table_2 {
    margin: 20px 0;
    line-height: 20px; } }

.line_table tr, .line_table_2 tr {
  margin: 10px;
  border-bottom: solid 2px #fff; }

.line_table tr:first-child, .line_table_2 tr:first-child {
  border-top: solid 2px #fff; }

.line_table th, .line_table_2 th {
  width: 200px;
  text-align: left;
  padding: 20px 0 20px 25px;
  vertical-align: top; }

@media screen and (max-width: 600px) {
  .line_table th, .line_table_2 th {
    width: 85px;
    padding-left: 15px;
    min-width: 85px; } }

.line_table td, .line_table_2 td {
  padding: 20px 0;
  vertical-align: middle; }

@media screen and (max-width: 600px) {
  .line_table td, .line_table_2 td {
    display: block;
    width: 100%;
    padding-right: 15px;
    box-sizing: border-box; } }

.line_table td a, .line_table_2 td a {
  text-decoration: underline; }

@media screen and (max-width: 600px) {
  .line_table td a, .line_table_2 td a,
  .line_table td p,
  .line_table_2 td p,
  .line_table td ul > li,
  .line_table_2 td ul > li {
    margin: 0;
    width: 100%;
    word-break: break-all;
    word-wrap: break-word;
    box-sizing: border-box; } }

@media screen and (max-width: 600px) {
  .line_table td p,
  .line_table_2 td p,
  .line_table td ul > li,
  .line_table_2 td ul > li {
    display: block; } }

.line_table td p,
.line_table_2 td p {
  margin-bottom: 0 !important; }

.line_table td ul, .line_table_2 td ul {
  padding: 0;
  padding-left: 0.15em;
  margin: 0;
  list-style-type: none; }

.line_table td ol, .line_table_2 td ol {
  padding-left: 1.2rem; }

@media screen and (max-width: 600px) {
  .line_table_2 tr {
    width: 100%; } }

@media screen and (max-width: 600px) {
  .line_table_2 th {
    display: block;
    margin: 10px 15px 5px;
    padding: 0;
    width: 100%; } }

@media screen and (max-width: 600px) {
  .line_table_2 td {
    padding: 0 15px 10px; }
  .line_table_2 td .cell_sns_2 li {
    width: 50%;
    padding-left: 0.65em;
    margin-top: 10px; } }

@media screen and (max-width: 600px) {
  .line_table_2 td a,
  .line_table_2 td p,
  .line_table_2 td ul > li {
    line-height: 20px; } }

@media screen and (max-width: 600px) {
  .line_table_2 td p,
  .line_table_2 td ul > li,
  .line_table_2 td ol {
    margin: 0; } }

@media screen and (max-width: 600px) {
  .line_table_2 td ul > li {
    margin-bottom: 5px; }
  .line_table_2 td ul > li:last-child {
    margin-bottom: 0; } }

.block_table_3col, .block_table_8col {
  border-collapse: collapse;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  margin: 50px 0;
  line-height: 30px; }

@media screen and (max-width: 600px) {
  .block_table_3col, .block_table_8col {
    margin: 30px 0;
    width: 100%; } }

.block_table_3col tr, .block_table_8col tr {
  margin: 10px;
  border: solid 2px #fff; }

.block_table_3col tr:first-child, .block_table_8col tr:first-child {
  border-top: solid 2px #fff; }

.block_table_3col th, .block_table_8col th {
  width: calc(100% / 3);
  text-align: center;
  padding: 20px 0;
  vertical-align: top;
  border: solid 2px #fff; }

.block_table_3col td, .block_table_8col td {
  padding: 15px 15px 7px;
  vertical-align: middle;
  border: solid 2px #fff; }

@media screen and (max-width: 600px) {
  .block_table_3col td, .block_table_8col td {
    box-sizing: border-box; } }

.block_table_3col td a, .block_table_8col td a {
  text-decoration: underline; }

@media screen and (max-width: 600px) {
  .block_table_3col td a, .block_table_8col td a,
  .block_table_3col td p,
  .block_table_8col td p,
  .block_table_3col td ul > li,
  .block_table_8col td ul > li {
    margin: 0;
    width: 100%;
    word-break: break-all;
    word-wrap: break-word;
    box-sizing: border-box; } }

@media screen and (max-width: 600px) {
  .block_table_3col td p,
  .block_table_8col td p,
  .block_table_3col td ul > li,
  .block_table_8col td ul > li {
    display: block; } }

.block_table_3col td p,
.block_table_8col td p {
  margin-bottom: 0 !important; }

.block_table_3col td ul, .block_table_8col td ul {
  padding: 0;
  padding-left: 0.15em;
  margin: 0;
  list-style-type: none; }

.block_table_3col td img, .block_table_8col td img {
  width: 100%; }

.block_table_8col {
  margin-top: 0; }

.block_table_8col th {
  width: calc((100% - 150px) / 7); }

.block_table_8col th:first-child {
  width: 150px; }

@media screen and (max-width: 600px) {
  .block_table_8col th,
  .block_table_8col td {
    display: block; } }

.pseudo_table {
  border: solid 1px #fff;
  border-top: none;
  border-bottom: none; }

.pseudo_table h4 {
  text-align: center;
  margin: 0;
  padding: 10px;
  border: none;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
  height: 80px; }

@media screen and (max-width: 600px) {
  .pseudo_table h4 {
    border: 2px solid #fff;
    margin-top: 15px;
    position: relative; } }

.pseudo_table-area {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  border: solid 2px #fff; }

@media screen and (max-width: 600px) {
  .pseudo_table-area {
    border: none;
    display: block; } }

.pseudo_table-area div {
  width: calc((100% - (210px + 16px)) / 8); }

@media screen and (max-width: 600px) {
  .pseudo_table-area div {
    width: 100%; } }

.pseudo_table-area div:first-child {
  width: 210px; }

@media screen and (max-width: 600px) {
  .pseudo_table-area div:first-child {
    width: 100%; } }

.pseudo_table_time ul {
  margin: 0; }

@media screen and (max-width: 600px) {
  .pseudo_table_time ul {
    display: none; } }

.pseudo_table_time li {
  border: none;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding: 10px;
  text-indent: 0;
  box-sizing: border-box; }

.pseudo_table_time li[class^=time_] {
  word-break: unset !important;
  word-wrap: unset !important; }

.pseudo_table_time li[class^=time_]::before {
  content: "";
  margin: 0;
  line-height: 40px;
  font-size: 13px;
  font-weight: bold; }

.pseudo_table_time li.time_emp {
  box-sizing: border-box;
  border-top: none;
  height: 80px;
  padding: 0; }

.pseudo_table_time li.time_11::before {
  content: "Ginza Sony Park"; }

.pseudo_table_time li.time_13::before {
  content: "アヲ GINZA TOKYO"; }

.pseudo_table_time li.time_15::before {
  content: "[Pop-up Store]トラヤカフェ・あんスタンド"; }

.pseudo_table_time li.time_17::before {
  content: "THE CONVENI"; }

.pseudo_table_time li.time_19::before {
  content: "MIMOSA GINZA"; }

.pseudo_table_time li.time_20::before {
  content: "トラヤカフェ・あんスタンド"; }

.pseudo_table_time li.time_21 {
  border-bottom: none; }

.pseudo_table_time li.time_21::before {
  content: '"BEER TO GO" by SPRING VALLEY BREWERY'; }

.pseudo_table ul {
  padding: 0;
  margin: 0;
  display: block; }

@media screen and (max-width: 600px) {
  .pseudo_table ul {
    border: 2px solid #fff;
    border-top: 0;
    display: none; } }

.pseudo_table ul.active_list {
  display: block !important; }

.pseudo_table ul.pc_active {
  display: block !important; }

.pseudo_table li {
  border: none;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  margin: 0;
  padding: 20px 10px;
  font-size: 13px;
  line-height: 20px;
  vertical-align: middle;
  box-sizing: border-box;
  text-indent: 0; }

@media screen and (max-width: 600px) {
  .pseudo_table li {
    border-top: none;
    border-bottom: 2px solid #fff;
    border-left: none;
    padding: 20px; } }

.pseudo_table li.l2 {
  padding: 10px 15px; }

@media screen and (max-width: 600px) {
  .pseudo_table li.l2 {
    padding: 20px; } }

.pseudo_table li.l3 {
  padding: 8px 10px; }

@media screen and (max-width: 600px) {
  .pseudo_table li.l3 {
    padding: 20px; } }

.pseudo_table li.l4 {
  padding: 5px 10px;
  line-height: 17px; }

@media screen and (max-width: 600px) {
  .pseudo_table li.l4 {
    padding: 20px;
    line-height: 15px; } }

.pseudo_table li:nth-child(odd) {
  visibility: hidden;
  height: 0;
  margin: 0;
  border: 0;
  padding: 0; }

@media screen and (max-width: 600px) {
  .pseudo_table li:nth-child(odd) {
    visibility: visible;
    display: inline-flex;
    padding: 0 20px; } }

.pseudo_table li:last-child {
  border-bottom: none; }

.pseudo_table li::before {
  content: "";
  margin: 0; }

.pseudo_table .open-area {
  cursor: default; }

@media screen and (max-width: 600px) {
  .pseudo_table .open-area {
    cursor: pointer; } }

.pseudo_table .toggleIcon {
  display: none; }

@media screen and (max-width: 600px) {
  .pseudo_table .toggleIcon {
    cursor: pointer;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  .pseudo_table .toggleIcon img {
    position: absolute;
    width: 50px;
    height: 50px;
    right: 15px;
    top: 15px; } }

.pseudo_table.next_month h4 {
  color: #A6A6A6; }

@media screen and (max-width: 600px) {
  .pseudo_table.next_month {
    display: none; } }

.pseudo_calendar .caption {
  margin: 0 0 10px; }

.pseudo_calendar ul {
  margin: 0;
  list-style: none; }

.pseudo_calendar ul li:before {
  content: ""; }

.pseudo_calendar .week, .pseudo_calendar .week_en {
  display: flex;
  border-collapse: collapse; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .week, .pseudo_calendar .week_en {
    display: none; } }

.pseudo_calendar .week li, .pseudo_calendar .week_en li {
  position: relative;
  box-sizing: border-box;
  border: 2px solid #fff;
  border-right: none;
  width: calc(100%/7);
  height: 50px; }

.pseudo_calendar .week li::before, .pseudo_calendar .week_en li::before {
  font-weight: bold;
  position: absolute;
  right: 67px;
  top: 8px; }

.pseudo_calendar .week li:last-child, .pseudo_calendar .week_en li:last-child {
  border-right: 2px solid #fff; }

.pseudo_calendar .week .mon:before, .pseudo_calendar .week_en .mon:before {
  content: "月"; }

.pseudo_calendar .week .tue:before, .pseudo_calendar .week_en .tue:before {
  content: "火"; }

.pseudo_calendar .week .wed:before, .pseudo_calendar .week_en .wed:before {
  content: "水"; }

.pseudo_calendar .week .tsu:before, .pseudo_calendar .week_en .tsu:before {
  content: "木"; }

.pseudo_calendar .week .fri:before, .pseudo_calendar .week_en .fri:before {
  content: "金"; }

.pseudo_calendar .week .sat:before, .pseudo_calendar .week_en .sat:before {
  content: "土"; }

.pseudo_calendar .week .sun:before, .pseudo_calendar .week_en .sun:before {
  content: "日"; }

.pseudo_calendar .week_en .mon:before {
  content: "mon"; }

.pseudo_calendar .week_en .tue:before {
  content: "tue"; }

.pseudo_calendar .week_en .wed:before {
  content: "wed"; }

.pseudo_calendar .week_en .tsu:before {
  content: "tsu"; }

.pseudo_calendar .week_en .fri:before {
  content: "fri"; }

.pseudo_calendar .week_en .sat:before {
  content: "sat"; }

.pseudo_calendar .week_en .sun:before {
  content: "sun"; }

.pseudo_calendar .date {
  display: flex;
  flex-wrap: wrap;
  width: 100%; }

.pseudo_calendar .date-area {
  position: absolute;
  width: 100px;
  top: 0;
  left: 0;
  padding: 0;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date-area {
    padding: 20px 0;
    height: 100%; } }

.pseudo_calendar .date li {
  text-indent: 0;
  border: 2px solid #fff;
  border-right: none;
  border-top: none;
  box-sizing: border-box;
  width: calc(100%/7);
  padding: 40px 10px 30px;
  position: relative; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date li {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    width: 100%;
    padding: 30px 10px;
    margin: 5px 0; } }

.pseudo_calendar .date li:nth-child(7n) {
  border-right: 2px solid #fff; }

.pseudo_calendar .date li:before {
  display: none; }

.pseudo_calendar .date li p.day {
  font-weight: bold;
  position: absolute;
  top: 5px;
  left: 10px;
  font-size: 18px; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date li p.day {
    position: static;
    text-align: center;
    top: 20px;
    font-size: 20px; } }

.pseudo_calendar .date li p.day_week {
  visibility: hidden;
  height: 0;
  position: static; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date li p.day_week {
    visibility: visible;
    text-align: center;
    height: unset;
    font-size: 18px; } }

.pseudo_calendar .date li.emp {
  display: block; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date li.emp {
    display: none; } }

.pseudo_calendar .date .bgc_1 {
  background-color: #bebebf; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date .bgc_1 {
    background-color: unset; } }

.pseudo_calendar .date .bgc_2 {
  background-color: #d8d9da; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date .bgc_2 {
    background-color: unset; } }

.pseudo_calendar .date .cancel {
  width: 3px;
  height: 100%;
  background: #fff;
  margin: 0 auto;
  text-align: center;
  transform: skew(60deg);
  position: absolute;
  top: 0;
  right: 82px; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .date .cancel {
    transform: skew(57deg);
    margin: 0;
    left: calc(100vw - 100%); } }

.pseudo_calendar .event-area {
  margin: 0;
  width: 100%; }

@media screen and (max-width: 600px) {
  .pseudo_calendar .event-area {
    width: calc(100% - 100px);
    margin-left: 100px; } }

.toggleIcon {
  display: none; }

.toggleIcon-area {
  position: relative;
  border: none; }

@media screen and (max-width: 600px) {
  .toggleIcon-area {
    margin-top: 20px;
    border: 2px solid #fff;
    padding: 10px; } }

@media screen and (max-width: 600px) {
  .toggleIcon {
    display: block;
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    position: absolute; }
  .toggleIcon img {
    width: 40px;
    position: absolute;
    top: 0;
    right: 2%; } }

.toggleIcon_list {
  display: block; }

@media screen and (max-width: 600px) {
  .toggleIcon_list {
    padding-top: 0;
    display: none; } }

.toggleIcon_list.pc_active {
  display: block !important; }

.cell_sns {
  display: block; }

@media screen and (max-width: 600px) {
  .cell_sns {
    display: inline-block; } }

.cell_sns_1 {
  padding-left: 0 !important; }

.cell_sns_1 li {
  margin: 20px 0;
  padding-left: 0;
  text-indent: 0; }

.cell_sns_1 li:first-child {
  margin-top: 0; }

.cell_sns_1 li a {
  text-decoration: underline; }

@media screen and (max-width: 600px) {
  .cell_sns_1 li {
    display: inline-flex; } }

.cell_sns_1 li::before {
  width: 25px !important; }

.cell_sns_1 li.facebook::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/facebook.png"); }

.cell_sns_1 li.twitter::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/twitter.png"); }

.cell_sns_1 li.instagram::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/instagram.png"); }

.cell_sns_1 li.youtube::before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/shop/common/youtube.png"); }

.cell_sns_2 {
  width: 100%;
  padding-left: 0 !important;
  display: flex; }

@media screen and (max-width: 600px) {
  .cell_sns_2 {
    display: block; } }

.cell_sns_2 li {
  margin: 15px 15px 0; }

.cell_sns_2 li:first-child {
  margin-left: 0; }

@media screen and (max-width: 600px) {
  .cell_sns_2 li {
    margin: 15px 0;
    width: 100px; } }

.cell_sns_2 li::before {
  content: ""; }

.cell_sns_2 li img {
  width: 100%; }

.article {
  margin: 20px 0; }

.article ul {
  padding-left: 1em;
  list-style: none; }

@media screen and (max-width: 600px) {
  .article ul li {
    padding-left: 0; } }

.article ul li::before {
  content: ""; }

.block {
  display: block; }

.block_sp {
  display: inline-block; }

@media screen and (max-width: 600px) {
  .block_sp {
    display: block; } }

.block_pc {
  display: block; }

@media screen and (max-width: 600px) {
  .block_pc {
    display: inline-block; } }

.note {
  font-size: 13px; }

.description, .description_3, .description_4 {
  border-top: 2px solid #fff;
  padding-top: 30px;
  display: flex;
  position: relative; }

.description p, .description_3 p, .description_4 p {
  line-height: 30px; }

@media screen and (max-width: 600px) {
  .description p, .description_3 p, .description_4 p {
    line-height: 20px; } }

@media screen and (max-width: 600px) {
  .description, .description_3, .description_4 {
    display: block;
    padding-top: 15px; } }

.description_img-area {
  width: 610px;
  height: 400px;
  box-sizing: border-box;
  overflow: hidden; }

@media screen and (max-width: 600px) {
  .description_img-area {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_img-area img {
  display: block;
  height: 100%; }

@media screen and (max-width: 600px) {
  .description_img-area img {
    height: auto;
    width: 100%; } }

.description_img-area_inf {
  width: 610px;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden; }

@media screen and (max-width: 600px) {
  .description_img-area_inf {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_img-area_inf img {
  display: block;
  width: 100%; }

@media screen and (max-width: 600px) {
  .description_img-area_inf img {
    height: auto;
    width: 100%; } }

.description_txt-area {
  width: 630px;
  padding-top: 0;
  padding-bottom: 0;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .description_txt-area {
    width: 100%;
    padding-top: 10px; } }

.description_2 {
  width: 550px;
  border-top: 2px solid #fff;
  padding-top: 30px;
  display: flex;
  position: relative; }

.description_2:nth-child(odd) {
  margin-right: 10px; }

.description_2:nth-child(even) {
  margin-left: 10px; }

.description_2 p {
  line-height: 30px; }

@media screen and (max-width: 600px) {
  .description_2 {
    display: block;
    padding-top: 15px; } }

.description_2 .description_img-area {
  width: 200px;
  height: 200px;
  box-sizing: border-box;
  overflow: hidden; }

@media screen and (max-width: 600px) {
  .description_2 .description_img-area {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_2 .description_img-area img {
  display: block;
  height: 100%; }

@media screen and (max-width: 600px) {
  .description_2 .description_img-area img {
    height: auto;
    width: 100%; } }

.description_2 .description_img-area_inf {
  width: 610px;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden; }

@media screen and (max-width: 600px) {
  .description_2 .description_img-area_inf {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_2 .description_img-area_inf img {
  display: block;
  width: 100%; }

@media screen and (max-width: 600px) {
  .description_2 .description_img-area_inf img {
    height: auto;
    width: 100%; } }

.description_2 .description_txt-area {
  width: 350px;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 30px;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .description_2 .description_txt-area {
    width: 100%;
    padding-top: 10px; } }

.description_2 .description_txt-area h3 {
  margin: 5px 0; }

.description_3 .description_img-area, .description_4 .description_img-area {
  width: 330px; }

@media screen and (max-width: 600px) {
  .description_3 .description_img-area, .description_4 .description_img-area {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_3 .description_img-area img, .description_4 .description_img-area img {
  display: block;
  height: 100%; }

@media screen and (max-width: 600px) {
  .description_3 .description_img-area img, .description_4 .description_img-area img {
    height: auto;
    width: 100%; } }

.description_3 .description_img-area_inf, .description_4 .description_img-area_inf {
  width: 410px;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden; }

@media screen and (max-width: 600px) {
  .description_3 .description_img-area_inf, .description_4 .description_img-area_inf {
    width: 100%;
    height: auto;
    margin-bottom: 15px; } }

.description_3 .description_txt-area, .description_4 .description_txt-area {
  width: 830px;
  padding-right: 30px; }

@media screen and (max-width: 600px) {
  .description_3 .description_txt-area, .description_4 .description_txt-area {
    width: 100%;
    height: auto;
    margin-bottom: 15px;
    padding: 0; } }

.description_4 {
  border: none; }

.description_4 .description_img-area {
  width: 400px;
  height: 400px; }

@media screen and (max-width: 600px) {
  .description_4 .description_img-area {
    width: 100%;
    height: 100%; } }

.description_4 .description_img-area img {
  display: block;
  width: 100%; }

.description_4 .description_txt-area {
  position: relative; }

@media screen and (max-width: 600px) {
  .description_4 .description_txt-area {
    padding: 15px; } }

.description_4 .description_txt-area .prof {
  position: absolute;
  right: 30px;
  top: 0; }

@media screen and (max-width: 600px) {
  .description_4 .description_txt-area .prof {
    position: static; } }

.image_jp, .shop .image_03, .shop .image_03_en,
.image_en {
  position: absolute;
  top: 425px;
  width: 90px;
  left: 0;
  font-size: 13px; }

@media screen and (max-width: 600px) {
  .image_jp, .shop .image_03, .shop .image_03_en,
  .image_en {
    position: relative;
    font-size: 8px;
    top: -15px; } }

.image_jp_2,
.image_en_2 {
  margin-top: -20px;
  width: 90px;
  font-size: 13px; }

@media screen and (max-width: 600px) {
  .image_jp_2,
  .image_en_2 {
    font-size: 8px;
    margin-top: -10px; } }

[class^=image_jp]::before {
  content: "* イメージ"; }

[class^=image_en]::before {
  content: "* image"; }

.anchor {
  text-decoration: underline; }

.no-anchor {
  text-decoration: none !important; }

.half_indent {
  text-indent: -.8rem; }

@media screen and (max-width: 600px) {
  .half_indent {
    text-indent: -1.2rem; } }

[id^=jump_] {
  margin-top: -150px !important;
  padding-top: 150px !important;
  z-index: 0; }

#program_detail [id^=jump_] {
  margin-top: -50px !important;
  padding-top: 100px !important; }

.attention {
  font-weight: bold;
  color: #9b2121 !important; }

.info {
  width: 1240px;
  margin: 0 auto 40px;
  padding: 0 20px;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  .info {
    width: calc(100% - 30px);
    padding: 0;
    margin: 0 15px 30px; } }

.info a {
  text-decoration: underline; }

.info dl {
  display: flex;
  font-size: 13px;
  line-height: 20px; }

.info dl dt {
  font-weight: bold;
  padding-right: 20px; }

.info dl dd {
  margin-left: 20px; }

.info dl dd a {
  display: block; }

@media screen and (max-width: 600px) {
  .info dl {
    display: block;
    padding: 10px 0;
    margin: 0;
    line-height: 20px;
    border-top: solid 1px #555; }
  .info dl:first-child {
    border-top: none; }
  .info dl dt {
    border: none; }
  .info dl dd {
    margin-left: 0; } }

.ti {
  position: relative;
  top: 19px;
  width: 95% !important;
  margin: 0 auto; }

.header {
  width: 100%; }

.header_global {
  width: 100%;
  min-width: 1280px;
  height: 65px;
  background-color: #000;
  position: relative; }

@media screen and (max-width: 600px) {
  .header_global {
    min-width: auto;
    z-index: 9999; } }

.header_global_logo {
  width: 120px;
  padding: 20px 25px; }

@media screen and (max-width: 600px) {
  .header_global_logo {
    margin: 0 auto;
    width: 85px;
    padding: 25px 25px; } }

.header_global_logo img {
  width: 100%;
  display: block; }

.header_local {
  height: 130px; }

@media screen and (max-width: 600px) {
  .header_local {
    height: 100px; } }

.header_local_logo {
  width: 100%;
  background-color: #ebebeb; }

@media screen and (max-width: 600px) {
  .header_local_logo {
    position: relative;
    top: 0;
    z-index: 9999; } }

.header_local_logo h1 {
  width: 300px;
  margin: 0 auto;
  padding: 35px 0 5px; }

@media screen and (max-width: 600px) {
  .header_local_logo h1 {
    width: 175px;
    padding: 41px;
    z-index: 9999; } }

.header_local_logo h1 img {
  width: 100%;
  display: block; }

.header_local .nav_open {
  display: none; }

@media screen and (max-width: 600px) {
  .header_local .nav_open {
    display: block;
    position: absolute;
    right: 20px;
    top: 95px;
    width: 30px;
    height: 30px;
    z-index: 9999;
    cursor: pointer;
    text-align: center; }
  .header_local .nav_open .span-area {
    height: 100%; }
  .header_local .nav_open span {
    display: block;
    position: absolute;
    border-radius: 1px;
    width: 30px;
    border-bottom: solid 3px #002B69;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    right: 0; }
  .header_local .nav_open span:nth-child(1) {
    top: 9px; }
  .header_local .nav_open span:nth-child(2) {
    top: 18px; }
  .header_local .nav_open span:nth-child(3) {
    top: 27px; } }

.header_local .active_nav span:nth-child(1) {
  top: 18px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg); }

.header_local .active_nav span:nth-child(2), .header_local .active_nav span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg); }

.header_local nav {
  position: relative;
  z-index: 999;
  line-height: 15.5px; }

@media screen and (max-width: 600px) {
  .header_local nav {
    z-index: -10;
    background-color: #ebebeb;
    position: fixed;
    height: fit-content;
    padding: 150px 0 30px;
    transform: translateY(-130%);
    transition: all 0.6s;
    width: 100%; }
  .header_local nav.active_nav {
    border-top: solid 1px #B3B3B3;
    transform: translateY(-140px);
    transition: all 300ms ease-out;
    width: 100%;
    height: 100vh;
    z-index: 999; } }

.header_local nav ul {
  display: inline-flex;
  list-style: none;
  padding: 0; }

@media screen and (max-width: 600px) {
  .header_local nav ul {
    width: 100%;
    display: block;
    margin: 0; } }

.header_local nav ul li {
  margin: 0 10px;
  font-size: 15.5px;
  padding-left: 0;
  text-indent: 0; }

@media screen and (max-width: 600px) {
  .header_local nav ul li {
    font-size: 17px;
    padding: 15px; } }

.header_local nav ul li:before {
  display: none; }

.header_local nav ul.gNav a {
  text-decoration: none;
  position: relative;
  display: inline-block;
  padding: 0;
  margin-right: 10px;
  text-decoration: none; }

.header_local nav ul.gNav a::after {
  content: '';
  position: absolute;
  bottom: -9px;
  left: 0;
  width: 100%;
  height: 3px;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  background-color: #002B69;
  transition: all .3s ease; }

@media screen and (max-width: 600px) {
  .header_local nav ul.gNav a {
    margin: 0;
    z-index: 0; } }

.header_local nav ul.gNav a:hover::after {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
  visibility: visible;
  height: 3px; }

@media screen and (max-width: 600px) {
  .header_local nav ul.gNav a:hover::after {
    visibility: hidden; } }

.header_local nav ul.gNav a.active_tab {
  border-bottom: solid 3px #002B69;
  padding-bottom: 6px; }

.header_local nav ul.gNav a.active_tab::after {
  visibility: hidden; }

@media screen and (max-width: 600px) {
  .header_local nav ul.gNav a.active_tab {
    border-bottom: none;
    padding-bottom: 0; } }

.header_local nav ul.lang_list {
  margin: 0 10px; }

@media screen and (max-width: 600px) {
  .header_local nav ul.lang_list {
    font-size: 17px;
    padding: 15px;
    background-color: #ebebeb;
    display: inline-flex;
    width: 110px;
    margin: 0 auto; } }

.header_local nav ul.lang_list li {
  margin: 0 14px;
  line-height: 15px; }

@media screen and (max-width: 600px) {
  .header_local nav ul.lang_list li {
    margin: 0;
    padding: 0; } }

.header_local nav ul.lang_list li:before {
  display: none; }

.header_local nav ul.lang_list .delimiter {
  border-right: 1px solid #002B69;
  margin: 0;
  padding-right: 10px; }

@media screen and (max-width: 600px) {
  .header_local nav ul.lang_list .delimiter {
    padding: 0 10px 0 13px;
    border-right: 2px solid #002B69; } }

.header_local .sns_list {
  position: relative;
  right: 0;
  margin: 10px 0;
  vertical-align: top; }

@media screen and (max-width: 600px) {
  .header_local .sns_list {
    position: static;
    margin: 25px auto;
    display: flex;
    width: 170px; } }

.header_local .sns_list img {
  width: 100%;
  vertical-align: -webkit-baseline-middle; }

.header_local .sns_list li {
  margin: 0 0 0 25px;
  width: 25px; }

@media screen and (max-width: 600px) {
  .header_local .sns_list li {
    padding: 0;
    margin: 0 0 0 35px; }
  .header_local .sns_list li:first-child {
    margin: 0 0 0 6px; } }

.header_local .sns_list a {
  display: block; }

.header_local .sns_list a:hover {
  opacity: 0.5; }

.header_pc.header_local_logo {
  position: relative; }

.header_sp {
  position: relative; }

.header_sp.header_local_logo {
  border-bottom: none;
  z-index: 9997; }

.header_sp.nav_open {
  position: absolute;
  top: 94px;
  z-index: 9998; }

.header_sp.gNav-area {
  position: relative;
  top: -2px;
  height: 100vh; }

.header_sp_scroll.header_local_logo {
  position: fixed;
  border-bottom: solid 1px #B3B3B3;
  z-index: 9997; }

.header_sp_scroll.nav_open {
  position: fixed;
  top: 30px;
  z-index: 9998; }

.header_sp_scroll.gNav-area {
  position: fixed;
  top: 100px;
  height: calc(100vh - 65px); }

@media screen and (max-width: 600px) {
  .en .header_local .sns_list {
    display: block;
    width: 35px; }
  .en .header_local .sns_list li {
    margin: 0; } }

.js-fixed {
  height: 100%;
  overflow: hidden; }

.share_list {
  list-style-type: none;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  width: 300px;
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  .share_list {
    width: 220px; } }

.share_list li {
  width: 150px;
  padding: 0;
  text-align: center; }

@media screen and (max-width: 600px) {
  .share_list li {
    width: 110px; } }

.share_list li:before {
  content: ""; }

.share_list a {
  color: #fff;
  text-decoration: none;
  font-weight: bold; }

.share_list span {
  vertical-align: middle;
  margin-left: 15px; }

@media screen and (max-width: 600px) {
  .share_list span {
    margin-left: 10px; } }

.share_wx {
  background-color: #2CA33B;
  margin-right: 5px;
  padding: 10px 0; }

@media screen and (max-width: 600px) {
  .share_wx {
    padding: 5px 0; } }

.share_wx img {
  vertical-align: middle;
  height: 25px;
  margin-left: 20px; }

@media screen and (max-width: 600px) {
  .share_wx img {
    height: 20px;
    margin-left: 18px; } }

.share_wb {
  background-color: #DC261B;
  margin-left: 5px;
  padding: 10px 0; }

@media screen and (max-width: 600px) {
  .share_wb {
    padding: 5px 0; } }

.share_wb img {
  vertical-align: middle;
  height: 25px;
  margin-left: 20px; }

@media screen and (max-width: 600px) {
  .share_wb img {
    height: 20px; } }

footer {
  height: 100%;
  margin-top: 40px;
  background-color: #ebebeb;
  padding: 0; }

@media screen and (max-width: 600px) {
  footer {
    margin: 0;
    height: auto; } }

footer .arrow {
  position: static;
  border: solid 3px #fff;
  position: absolute;
  margin: 0 auto;
  height: 46px;
  width: 46px;
  right: 0;
  text-align: right; }

footer .arrow_area {
  position: relative;
  height: 50px;
  margin: 15px auto 20px; }

@media screen and (max-width: 600px) {
  footer .arrow {
    border: solid 2px #fff; } }

footer .arrow img {
  position: absolute;
  left: 9px;
  top: 9px; }

footer .arrow a {
  display: block;
  cursor: pointer; }

footer .footer_contents {
  padding: 25px;
  box-sizing: border-box;
  font-size: 13px;
  background-color: #fff; }

@media screen and (max-width: 600px) {
  footer .footer_contents {
    padding: 0; } }

footer .footer_area {
  height: 100%; }

@media screen and (max-width: 600px) {
  footer .footer_area {
    height: auto;
    background-color: #fff; } }

footer .footer_nav {
  list-style: none;
  padding: 0;
  text-align: center; }

footer .footer_nav-area {
  display: inline-flex;
  position: relative; }

@media screen and (max-width: 600px) {
  footer .footer_nav-area {
    width: 100%;
    box-sizing: border-box;
    padding: 0; } }

@media screen and (max-width: 600px) {
  footer .footer_nav {
    display: block;
    text-align: left;
    margin: 40px 0 10px; }
  footer .footer_nav:first-child {
    width: 30%; }
  footer .footer_nav:nth-child(2) {
    width: 70%; }
  footer .footer_nav:last-child {
    width: 100%;
    position: absolute;
    bottom: -40px;
    left: 0; } }

footer .footer_nav li {
  display: inline-flex;
  padding-left: 0;
  text-indent: 0;
  margin: 0 15px; }

footer .footer_nav li::before {
  content: ""; }

@media screen and (max-width: 600px) {
  footer .footer_nav li {
    margin: 0;
    display: block;
    font-size: 0.8rem;
    padding-left: 0.8rem;
    text-indent: -0.8rem; } }

footer .gsp {
  margin: 45px auto 0;
  color: #4d4d4d; }

@media screen and (max-width: 600px) {
  footer .gsp {
    display: block;
    font-size: 0.8rem; } }

footer .copy {
  color: #4d4d4d; }

@media screen and (max-width: 600px) {
  footer .copy {
    font-size: 0.75rem;
    padding-bottom: 20px; } }

footer .grouplink {
  width: 120px;
  vertical-align: middle; }

@media screen and (max-width: 600px) {
  footer .grouplink {
    width: 25%;
    min-width: 80px;
    max-width: 100px;
    height: 30px;
    padding: 0; } }

footer .grouplink img {
  width: 100%;
  display: block; }

footer .grouplink:before {
  display: none; }

.menu_text_cn {
  border: none;
  transition: none !important;
  opacity: 0; }

.menu_text_en {
  border: none;
  transition: none !important;
  opacity: 0; }

#top .main_visual {
  height: 500px;
  margin-bottom: 30px; }

#top .main_visual:hover, #top .main_visual:focus {
  box-shadow: 1px 5px 5px gray; }

@media screen and (max-width: 600px) {
  #top .main_visual:hover, #top .main_visual:focus {
    box-shadow: none; } }

#top .main_visual a {
  width: 100%;
  cursor: pointer; }

@media screen and (max-width: 600px) {
  #top .main_visual {
    width: 100%;
    height: 100%;
    margin-bottom: 0; } }

#top .main_visual_img {
  width: 1240px;
  height: 500px;
  position: relative;
  overflow: hidden;
  margin: 0 auto 40px; }

@media screen and (max-width: 600px) {
  #top .main_visual_img {
    width: 100%;
    height: auto;
    margin-bottom: 70px; } }

#top .main_visual .weather-bg {
  position: absolute;
  bottom: -150px;
  right: -150px;
  transform: rotate(45deg);
  width: 300px;
  height: 300px;
  z-index: 99;
  background-color: #ebebeb; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather-bg {
    transform: rotate(0);
    height: 70px;
    width: 100%;
    bottom: -27px;
    right: 0;
    z-index: 1;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    display: flex; } }

@media screen and (max-width: 600px) and (max-width: 600px) {
  #top .main_visual .weather-bg {
    bottom: 0; } }

#top .main_visual .weather_whole-area {
  transform: rotate(-45deg);
  position: absolute;
  bottom: 88px;
  left: 6px; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather_whole-area {
    transform: rotate(0);
    position: static;
    display: flex;
    width: calc(100% - 30px);
    margin: 0 auto;
    justify-content: center;
    align-items: center; } }

#top .main_visual .weather_img {
  width: 35px;
  margin: 5px auto; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather_img {
    vertical-align: middle;
    margin: 0; } }

#top .main_visual .weather_img img {
  width: 100%;
  display: block; }

#top .main_visual .weather_icon_no-data {
  width: 55px !important;
  margin-left: -9px; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather_icon_no-data {
    width: 40px !important;
    margin-left: 0; } }

#top .main_visual .weather_txt {
  text-align: center;
  color: #002B69; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather_txt {
    padding: 6px 0;
    margin-left: 15px;
    align-items: center;
    display: flex; } }

#top .main_visual .weather_temp {
  font-size: 15.5px;
  font-weight: bold; }

#top .main_visual .weather_time {
  font-size: 13px;
  line-height: 16px !important;
  margin-top: 10px; }

@media screen and (max-width: 600px) {
  #top .main_visual .weather_time {
    font-size: 0.75rem;
    padding: 1px 0;
    margin: 4px 0px 4px 10px; } }

@media screen and (max-width: 600px) {
  #top .info dl {
    border-top: solid 1px #555; } }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_container {
    column-count: 2;
    margin: 20px auto; } }

#top .sec2 .panel_bg {
  height: 300px;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_bg {
    height: auto;
    margin: 0 0 15px;
    display: inline-block;
    width: calc(50% - (15px/2)); }
  #top .sec2 .panel_bg:nth-child(odd) {
    margin-right: 15px; } }

#top .sec2 .panel_whole-area {
  display: inline-flex;
  flex-direction: column-reverse; }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_whole-area {
    display: block; } }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_img-area {
    border: solid 2px #fff;
    border-bottom: none;
    width: auto;
    height: auto; } }

#top .sec2 .panel_txt-area {
  height: 75px;
  padding: 10px 15px; }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_txt-area {
    border: solid 2px #fff;
    border-top: none;
    min-height: 75px;
    height: auto;
    width: auto;
    display: block;
    padding: 5px; }
  #top .sec2 .panel_txt-area .info_txt {
    left: 5px; }
  #top .sec2 .panel_txt-area div {
    line-height: 15.5px !important; } }

@media screen and (max-width: 600px) {
  #top .sec2 .panel_txt-area h2 {
    font-size: 12px; } }

#top .sec2 .panel .panel_bg:hover, #top .sec2 .panel .panel_bg:focus {
  box-shadow: 1px 5px 5px gray; }

#map a {
  text-decoration: underline; }

#map .sec1 h3 {
  margin: 0;
  position: absolute;
  height: 50px;
  left: 60px;
  top: 37px;
  width: auto;
  margin-top: -150px;
  padding-top: 150px; }

@media screen and (max-width: 600px) {
  #map .sec1 h3 {
    height: 25px;
    left: 10px;
    top: 1px;
    position: relative;
    order: -2;
    margin-top: -200px;
    padding-top: 200px;
    width: 12vw; } }

#map .sec1 h3 img {
  height: 50px;
  width: auto; }

@media screen and (max-width: 600px) {
  #map .sec1 h3 img {
    width: 100%;
    height: auto; } }

#map .sec1 .map-area {
  display: flex;
  flex-direction: column;
  position: relative; }

#map .sec1 .map_container {
  margin: 0 auto; }

#map .sec1 .map_bg {
  width: 100%;
  box-sizing: border-box;
  margin: 20px 0; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_bg {
    margin-top: 0; } }

#map .sec1 .map_txt {
  width: 100%;
  margin-bottom: 30px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt {
    margin-bottom: 0; } }

#map .sec1 .map_txt-area {
  display: inline-flex;
  vertical-align: top;
  position: relative;
  padding-left: 100px;
  box-sizing: border-box;
  height: 100px;
  width: calc(100% - 60px);
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area {
    display: block;
    padding: 0;
    width: 100%;
    margin: 30px 0 0;
    height: fit-content; } }

#map .sec1 .map_txt-area ul {
  width: fit-content;
  display: inline-block;
  vertical-align: top;
  margin: 0 10px 30px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul {
    display: block;
    margin: 0; } }

#map .sec1 .map_txt-area ul.cl1 {
  column-count: 1; }

#map .sec1 .map_txt-area ul.cl2 {
  column-count: 2; }

#map .sec1 .map_txt-area ul.cl3 {
  column-count: 3; }

#map .sec1 .map_txt-area ul li {
  padding-left: 2rem;
  max-width: 500px;
  width: 100%;
  color: #4d4d4d; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul li {
    padding-left: 1rem;
    width: 100%;
    line-height: 25px;
    font-size: 0.75rem; } }

#map .sec1 .map_txt-area ul li a {
  color: #005383; }

#map .sec1 .map_txt-area ul.shop_list {
  padding: 0; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.shop_list.cl2 {
    column-count: unset;
    display: inline-block; } }

#map .sec1 .map_txt-area ul.shop_list img {
  width: 20px;
  vertical-align: text-bottom;
  margin-right: 10px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.shop_list img {
    width: 15px;
    margin-left: -5px; } }

#map .sec1 .map_txt-area ul.pict_list {
  position: absolute;
  right: 0;
  margin: 0;
  padding: 0; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list {
    position: static;
    margin-top: 10px;
    width: 100%;
    column-count: 2; } }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 {
  position: absolute;
  right: -60px;
  margin: 0; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list.pict_b1 {
    width: 100%;
    position: static;
    margin-top: 10px;
    height: 100%; } }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li {
  max-width: 250px;
  position: relative;
  width: fit-content; }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li:before {
  height: 25px;
  width: 25px;
  background-size: 25px;
  margin-right: 5px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list.pict_b1 li:before {
    height: 15px;
    width: 15px;
    background-size: 15px; } }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li a {
  vertical-align: middle; }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_info, #map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_elevator {
  right: 398px; }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_toilet, #map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_multi {
  right: 175px;
  top: -64px; }

#map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_lift, #map .sec1 .map_txt-area ul.pict_list.pict_b1 li.pict_list_aed {
  right: 0;
  top: -128px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list.pict_b1 li {
    position: static; } }

#map .sec1 .map_txt-area ul.pict_list.pict_b1.en li.pict_list_info, #map .sec1 .map_txt-area ul.pict_list.pict_b1.en li.pict_list_elevator {
  right: 330px; }

#map .sec1 .map_txt-area ul.pict_list.pict_b1.en li.pict_list_lift, #map .sec1 .map_txt-area ul.pict_list.pict_b1.en li.pict_list_aed {
  left: 74px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list.cl1 {
    display: inline-flex; } }

#map .sec1 .map_txt-area ul.pict_list li[class^=pict_list] {
  padding-left: 1.5em; }

#map .sec1 .map_txt-area ul.pict_list li[class^=pict_list]:before {
  height: 25px;
  width: 25px;
  background-size: 25px;
  margin-right: 5px; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_txt-area ul.pict_list li[class^=pict_list]:before {
    height: 15px;
    width: 15px;
    background-size: 15px; } }

#map .sec1 .map_txt-area ul.pict_list li[class^=pict_list] a {
  vertical-align: middle; }

#map .sec1 .map_img-area {
  width: calc(100% - 100px);
  margin-left: 100px;
  padding: 30px;
  box-sizing: border-box;
  height: 100%; }

@media screen and (max-width: 600px) {
  #map .sec1 .map_img-area {
    width: 100%;
    margin: 0;
    padding: 0;
    order: -1;
    margin-top: 20px; } }

#map .sec1 .map_img-area img {
  width: 100%;
  display: block; }

#map .sec2 {
  margin: 50px auto; }

#map .pict_list_aed:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/aed.png"); }

#map .pict_list_elevator:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/elevator.png"); }

#map .pict_list_info:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/information.png"); }

#map .pict_list_lift:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/stairlift.png"); }

#map .pict_list_multi:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/multipurpose.png"); }

#map .pict_list_baby:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/baby_care_room.png"); }

#map .pict_list_toilet:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/toilet.png"); }

#map .pict_list_wifi:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/wifi.png"); }

#map .sec3 .description, #map .sec3 .description_3, #map .sec3 .description_4 {
  margin-bottom: 50px; }

#map .sec3 .pict_list_info:before, #map .sec3 .pict_list_wifi:before, #map .sec3 .pict_list_aed:before {
  display: inline-block;
  height: 30px;
  width: 30px;
  background-size: 30px; }

@media screen and (max-width: 600px) {
  #map .sec3 .pict_list_info:before, #map .sec3 .pict_list_wifi:before, #map .sec3 .pict_list_aed:before {
    height: 25px;
    width: 25px;
    background-size: 25px; } }

#map .sec3 .pict_list_t_b:before {
  display: inline-block;
  height: 20px;
  width: 20px;
  margin-right: 10px;
  background-size: 20px;
  background-position: center;
  background-repeat: no-repeat;
  vertical-align: middle;
  content: '';
  background-image: url("/img/map/pict/tb.png");
  width: 61.5px;
  background-size: 61px;
  height: 30px; }

@media screen and (max-width: 600px) {
  #map .sec3 .pict_list_t_b:before {
    height: 25px;
    width: 52px;
    background-size: 51px; } }

.en #shop .panel_bg {
  height: 400px !important; }

@media screen and (max-width: 600px) {
  .en #shop .panel_bg {
    height: auto !important; } }

.en #shop .panel_txt-area {
  height: 175px; }

@media screen and (max-width: 600px) {
  .en #shop .panel_txt-area {
    height: 100%; } }

@media screen and (max-width: 600px) {
  .en #shop .panel_txt {
    line-height: 1.5; } }

#shop.shop_detail a {
  text-decoration: underline !important; }

#shop.shop_detail .sec3 {
  margin: 50px auto; }

.shop .shop_detail a {
  text-decoration: underline !important; }

.shop .image_03, .shop .image_03_en {
  width: 200px; }

.shop .image_03::before, .shop .image_03_en::before {
  content: "※夏のポップアップストアの様子"; }

.shop .image_03_en {
  width: 300px; }

.shop .image_03_en::before {
  content: "*Summer's pop-up store image"; }

#program .clickable:hover, #program .clickable:focus {
  box-shadow: 1px 10px 10px gray; }

@media screen and (max-width: 600px) {
  #program .clickable:hover, #program .clickable:focus {
    box-shadow: none; } }

#program_detail h3 {
  margin: 20px 0 10px; }

@media screen and (max-width: 600px) {
  #program_detail h3 {
    margin-top: 0; } }

#program_detail p {
  margin-bottom: 30px; }

@media screen and (max-width: 600px) {
  #program_detail p {
    margin-bottom: 10px; } }

#program_detail .profile {
  display: flex; }

@media screen and (max-width: 600px) {
  #program_detail .profile {
    display: inline-grid;
    display: -ms-inline-grid; } }

#program_detail .profile_txt-area {
  box-sizing: border-box;
  width: 800px;
  position: relative; }

@media screen and (max-width: 600px) {
  #program_detail .profile_txt-area {
    width: 100%;
    margin: 0 auto;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2; }
  #program_detail .profile_txt-area p {
    margin-bottom: 0; } }

#program_detail .profile_txt-area a {
  position: absolute;
  bottom: 23px;
  text-decoration: underline; }

@media screen and (max-width: 600px) {
  #program_detail .profile_txt-area a {
    position: static;
    bottom: 0; } }

#program_detail .profile_img-area {
  width: 200px;
  height: 200px;
  padding: 30px 0;
  margin-left: 240px; }

@media screen and (max-width: 600px) {
  #program_detail .profile_img-area {
    width: 200px;
    padding-bottom: 10px;
    margin: 0 auto;
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1; } }

#program_detail .profile_img-area img {
  width: 100%;
  display: block; }

#program_detail a {
  text-decoration: underline !important; }

#program_detail .button_box a {
  text-decoration: none !important; }

#program_detail .pseudo_table {
  border: solid 1px #fff;
  border-top: none;
  border-bottom: none; }

#program_detail .pseudo_table h4 {
  text-align: center;
  margin: 0;
  padding: 10px;
  border: none;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
  height: 80px; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table h4 {
    border: 2px solid #fff;
    margin-top: 15px;
    position: relative; } }

#program_detail .pseudo_table-area {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  border: solid 2px #fff; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table-area {
    border: none;
    display: block; } }

#program_detail .pseudo_table-area div {
  width: calc((100% - (70px + 14px)) / 7); }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table-area div {
    width: 100%; } }

#program_detail .pseudo_table-area div:first-child {
  width: 70px; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table-area div:first-child {
    width: 100%; } }

#program_detail .pseudo_table_time ul {
  margin: 0; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table_time ul {
    display: none; } }

#program_detail .pseudo_table_time li {
  border: none;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  padding: 10px 17px;
  text-indent: 0;
  box-sizing: border-box; }

#program_detail .pseudo_table_time li[class^=time_] {
  word-break: unset !important;
  word-wrap: unset !important; }

#program_detail .pseudo_table_time li[class^=time_]::before {
  content: "";
  margin: 0;
  line-height: 40px;
  font-size: 13px;
  font-weight: bold; }

#program_detail .pseudo_table_time li.time_emp {
  box-sizing: border-box;
  border-top: none;
  height: 80px;
  padding: 0; }

#program_detail .pseudo_table_time li.time_11::before {
  content: "11:00"; }

#program_detail .pseudo_table_time li.time_13::before {
  content: "13:00"; }

#program_detail .pseudo_table_time li.time_15::before {
  content: "15:00"; }

#program_detail .pseudo_table_time li.time_17::before {
  content: "17:00"; }

#program_detail .pseudo_table_time li.time_19::before {
  content: "19:00"; }

#program_detail .pseudo_table_time li.time_21 {
  border-bottom: none; }

#program_detail .pseudo_table_time li.time_21::before {
  content: "21:00"; }

#program_detail .pseudo_table ul {
  padding: 0;
  margin: 0;
  display: block; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table ul {
    border: 2px solid #fff;
    border-top: 0;
    display: none; } }

#program_detail .pseudo_table ul.active_list {
  display: block !important; }

#program_detail .pseudo_table ul.pc_active {
  display: block !important; }

#program_detail .pseudo_table li {
  border: none;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  margin: 0;
  padding: 20px 15px;
  font-size: 13px;
  line-height: 20px;
  vertical-align: middle;
  text-indent: 0; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table li {
    border-top: none;
    border-bottom: 2px solid #fff;
    border-left: none; } }

#program_detail .pseudo_table li.l2 {
  padding: 10px 15px; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table li.l2 {
    padding: 20px; } }

#program_detail .pseudo_table li:nth-child(odd) {
  visibility: hidden;
  height: 0;
  margin: 0;
  border: 0;
  padding: 0; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table li:nth-child(odd) {
    visibility: visible;
    display: inline-flex;
    padding: 0 20px; } }

#program_detail .pseudo_table li:last-child {
  border-bottom: none; }

#program_detail .pseudo_table li::before {
  content: "";
  margin: 0; }

#program_detail .pseudo_table .open-area {
  cursor: default; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table .open-area {
    cursor: pointer; } }

#program_detail .pseudo_table .toggleIcon {
  display: none; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table .toggleIcon {
    cursor: pointer;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0; }
  #program_detail .pseudo_table .toggleIcon img {
    position: absolute;
    width: 50px;
    height: 50px;
    right: 15px;
    top: 15px; } }

#program_detail .pseudo_table.next_month h4 {
  color: #A6A6A6; }

@media screen and (max-width: 600px) {
  #program_detail .pseudo_table.next_month {
    display: none; } }

#program_detail .toggleIcon {
  display: none; }

#program_detail .toggleIcon-area {
  position: relative;
  border: none; }

@media screen and (max-width: 600px) {
  #program_detail .toggleIcon-area {
    margin-top: 20px;
    border: 2px solid #fff;
    padding: 10px; } }

@media screen and (max-width: 600px) {
  #program_detail .toggleIcon {
    display: block;
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    position: absolute; }
  #program_detail .toggleIcon img {
    width: 40px;
    position: absolute;
    top: 0;
    right: 2%; } }

#program_detail .toggleIcon_list {
  display: block; }

@media screen and (max-width: 600px) {
  #program_detail .toggleIcon_list {
    padding-top: 0;
    display: none; } }

#program_detail .toggleIcon_list.pc_active {
  display: block !important; }

#about p {
  font-size: 15.5px; }

#about .sec1 {
  margin-bottom: 50px; }

@media screen and (max-width: 600px) {
  #about .sec1 {
    margin-bottom: 0; } }

@media screen and (max-width: 600px) {
  #about .sec1 .common_txt-area {
    margin-bottom: 0; } }

#about .sec2 {
  margin-bottom: 70px; }

#about .sec2 h3 {
  margin: 10px 0; }

#about .sec2 h3 img {
  width: auto;
  height: auto; }

@media screen and (max-width: 600px) {
  #about .sec2 h3 img {
    height: 6vw; } }

#about .sec2 .contents_box {
  width: 610px;
  margin: 0 10px;
  box-sizing: border-box; }

@media screen and (max-width: 600px) {
  #about .sec2 .contents_box {
    width: 100%;
    margin: 10px 0; } }

#about .sec2 .txt-area {
	border-bottom: none;
	border: solid 3px #fff;
	border-bottom: none;
	height: 400px;
}

#about .sec2 .txt-area.en {
  height: 340px; }

@media screen and (max-width: 600px) {
  #about .sec2 .txt-area.en {
    height: auto; } }

@media screen and (max-width: 600px) {
  #about .sec2 .txt-area {
    border: solid 2px #fff;
    border-bottom: none;
    height: auto; } }

#about .sec2 .img-area {
  width: 100%;
  height: fit-content;
  border-top: none;
  overflow: hidden;
  box-sizing: border-box;
  background-color: #fff;
  border: solid 3px #fff;
  border-top: none; }

@media screen and (max-width: 600px) {
  #about .sec2 .img-area {
    border: solid 2px #fff;
    border-top: none;
    width: 100%; } }

#about .sec2 .img-area img {
  width: 100%;
  display: block; }

#about .panel_bg {
  height: 450px; }

#about .panel_bg:hover {
  box-shadow: none; }

@media screen and (max-width: 600px) {
  #about .panel_bg {
    height: auto; } }

#about .panel_bg.clickable:hover {
  box-shadow: 1px 10px 10px gray; }

@media screen and (max-width: 600px) {
  #about .panel_bg.clickable:hover {
    box-shadow: none; } }

#about .panel_txt {
  top: 79px;
  font-size: 16px;
  line-height: 23px; }

@media screen and (max-width: 600px) {
  #about .panel_txt {
    margin-bottom: 20px;
    font-size: 0.8rem; } }

#about .panel_txt-area {
  height: 225px; }

@media screen and (max-width: 600px) {
  #about .panel_txt-area {
    height: auto; } }

#about .panel_txt-area h3 {
  margin: 15px auto 0;
  color: #4d4d4d;
  line-height: 26px; }

#about .panel_txt-area h3.panel_link {
  color: #002B69; }

@media screen and (max-width: 600px) {
  #about .panel_txt-area h3 {
    margin: 15px 0 0;
    text-decoration: none; } }

#about .panel_txt-area h4 {
  font-size: 15.5px;
  color: #4d4d4d;
  margin: 0  auto 15px; }

@media screen and (max-width: 600px) {
  #about .panel_txt-area h4 {
    font-size: 13px;
    margin: 0; } }

#about .panel_txt-area .panel_txt {
  color: #4d4d4d; }

#about .panel_txt-area .info_date {
  color: #4d4d4d; }

#about .panel_txt-area .info_txt {
  text-decoration: underline; }

.en #about .panel_bg {
  height: 515px; }

@media screen and (max-width: 600px) {
  .en #about .panel_bg {
    height: auto; } }

.en #about .panel_txt-area {
  height: 290px; }

@media screen and (max-width: 600px) {
  .en #about .panel_txt-area {
    height: auto; } }

#about_article p {
  margin: 30px 0; }

@media screen and (max-width: 600px) {
  #about_article p {
    margin: 15px 0; } }

#about_article h3 {
  margin-top: 40px; }

@media screen and (max-width: 600px) {
  #about_article h3 {
    margin-top: 30px;
    margin-bottom: -10px; } }

#about_article .signature {
  width: 165px; }

@media screen and (max-width: 600px) {
  #about_article .signature {
    width: 100px; } }

#mailnews .sec2 {
  padding-top: 10px; }

#mailnews .sec2 ul li a {
  text-decoration: underline; }

#confirm a {
  text-decoration: underline; }

#confirm .terms {
  margin: 50px 0 0; }

@media screen and (max-width: 600px) {
  #confirm .terms {
    margin: 30px 0 0; } }

#confirm .terms-area {
  overflow-y: scroll;
  height: 400px; }

#confirm .terms-area h5 {
  margin: 0; }

#confirm .terms-area p,
#confirm .terms-area ul, #confirm .terms-area ol, #confirm .terms-area li,
#confirm .terms-area dl, #confirm .terms-area dt, #confirm .terms-area dd {
  margin: 0;
  font-size: 13px; }

#confirm .terms ul li::before {
  content: ""; }

@media screen and (max-width: 600px) {
  #confirm .sec2 .center {
    text-align: left; } }

#confirm .column_2, #confirm .column_2_1 {
  width: 80%;
  margin: 0 auto; }

@media screen and (max-width: 600px) {
  #confirm .column_2, #confirm .column_2_1 {
    width: 100%;
    display: block; } }

#confirm .button_box {
  width: 400px;
  margin: 30px auto; }

@media screen and (max-width: 600px) {
  #confirm .button_box {
    width: 100%; } }

#confirm .button_box a {
  text-decoration: none; }

#access p {
  margin: 0; }

#access .map {
  margin: 30px 0 0;
  box-sizing: border-box;
  width: calc(1240px - 6px);
  height: calc(600px - 6px); }

@media screen and (max-width: 600px) {
  #access .map {
    margin: 0;
    width: calc(100% - 4px);
    height: 80vw; } }

#access .map iframe {
  border: solid 3px #fff;
  width: 100%;
  height: 100%; }

@media screen and (max-width: 600px) {
  #access .map iframe {
    border: solid 2px #fff; } }

#access .sec2 ul {
  margin: 5px 0 0; }

#release .date-area {
  text-align: right; }

#release .headline {
  border-bottom: 2px solid #fff; }

#release .headline h2.sec {
  margin-top: 0 !important; }

#release .headline p {
  text-align: center;
  margin-bottom: 0; }

#release .headline p.first {
  margin-top: 70px; }

@media screen and (max-width: 600px) {
  #release .headline p.first {
    margin: 0; } }

#release .headline p:last-child {
  margin-bottom: 30px; }

#release .line_table_2 {
  margin-top: 0;
  margin-bottom: 0; }

#release a {
  text-decoration: underline;
  word-wrap: break-word;
  word-break: break-all; }

@media screen and (max-width: 600px) {
  #release h3,
  #release h4 {
    margin: 0; } }

#release h5 {
  margin: 0;
  font-size: 15.5px; }

@media screen and (max-width: 600px) {
  #release h5 {
    font-size: 0.8rem; } }

#date_181203 .pseudo_table {
  border: solid 1px #fff;
  border-top: none;
  border-bottom: none; }

#date_181203 .pseudo_table h4 {
  text-align: center;
  margin: 0;
  padding: 10px;
  border: none;
  border-bottom: 1px solid #fff;
  box-sizing: border-box;
  height: 80px; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table h4 {
    border: 2px solid #fff;
    margin-top: 15px;
    position: relative; } }

#date_181203 .pseudo_table-area {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  border: solid 2px #fff; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table-area {
    border: none;
    display: block; } }

#date_181203 .pseudo_table-area div {
  width: calc((100% - (210px + 66px)) / 8); }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table-area div {
    width: 100%; } }

#date_181203 .pseudo_table-area div:first-child {
  width: 210px; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table-area div:first-child {
    width: 100%; } }

#date_181203 .pseudo_table_time ul {
  margin: 0; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table_time ul {
    display: none; } }

#date_181203 .pseudo_table_time:nth-child(2) {
  width: 50px; }

#date_181203 .pseudo_table_time:nth-child(2) ul li {
  border: solid 1px #fff;
  padding: 25px 17px !important; }

#date_181203 .pseudo_table_time:nth-child(2) ul li:first-child {
  border: 0;
  border-bottom: solid 1px #fff;
  border-right: solid 1px #fff; }

#date_181203 .pseudo_table_time:nth-child(2) ul li:nth-child(2) {
  border-left: 0;
  border-top: solid 1px #fff; }

#date_181203 .pseudo_table_time:nth-child(2) ul li:last-child {
  border-bottom: 0; }

#date_181203 .pseudo_table_time li {
  padding: 24px 10px;
  height: 80px; }

#date_181203 .pseudo_table_time li[class^=shop_] {
  word-break: unset !important;
  word-wrap: unset !important; }

#date_181203 .pseudo_table_time li[class^=shop_]::before {
  content: "";
  margin: 0;
  line-height: 15px;
  font-size: 13px;
  font-weight: bold; }

#date_181203 .pseudo_table_time li.shop_emp {
  box-sizing: border-box;
  border-top: none;
  height: 80px;
  padding: 0; }

#date_181203 .pseudo_table_time li.shop_00::before {
  content: "Ginza Sony Park"; }

#date_181203 .pseudo_table_time li.shop_02::before {
  content: "アヲ GINZA TOKYO"; }

#date_181203 .pseudo_table_time li.shop_02_e::before {
  content: "AWO GINZA TOKYO"; }

#date_181203 .pseudo_table_time li.shop_03 {
  padding: 8px 10px; }

#date_181203 .pseudo_table_time li.shop_03::before {
  content: "[Pop-up Store]トラヤカフェ・あんスタンド"; }

#date_181203 .pseudo_table_time li.shop_03_e {
  padding: 8px 10px; }

#date_181203 .pseudo_table_time li.shop_03_e::before {
  content: "[Pop-up Store] TORAYA CAFÉ・AN STAND"; }

#date_181203 .pseudo_table_time li.shop_05::before {
  content: "THE CONVENI"; }

#date_181203 .pseudo_table_time li.shop_06::before {
  content: "MIMOSA GINZA"; }

#date_181203 .pseudo_table_time li.shop_09::before {
  content: "トラヤカフェ・あんスタンド"; }

#date_181203 .pseudo_table_time li.shop_09_e::before {
  content: "TORAYA CAFÉ・AN STAND"; }

#date_181203 .pseudo_table_time li.shop_11 {
  border-bottom: none;
  padding: 8px 10px; }

#date_181203 .pseudo_table_time li.shop_11::before {
  content: '"BEER TO GO" by SPRING VALLEY BREWERY'; }

#date_181203 .pseudo_table_time li.floor_gl::before {
  content: "GL"; }

#date_181203 .pseudo_table_time li.floor_b1::before {
  content: "B1"; }

#date_181203 .pseudo_table_time li.floor_b2::before {
  content: "B2"; }

#date_181203 .pseudo_table_time li.floor_b3::before {
  content: "B3"; }

#date_181203 .pseudo_table_time li.floor_b4::before {
  content: "B4"; }

#date_181203 .pseudo_table_time li[class^=floor] {
  font-size: 13px;
  padding: 15px 18px; }

#date_181203 .pseudo_table li {
  height: 80px;
  text-align: center;
  line-height: 20px;
  padding: 30px 10px; }

#date_181203 .pseudo_table li.l2 {
  padding: 20px 10px; }

#date_181203 .pseudo_table li.l3 {
  padding: 10px; }

#date_181203 .pseudo_table li.l4 {
  line-height: 15px;
  padding: 10px; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table li {
    line-height: 15px;
    text-align: left; } }

#date_181203 .pseudo_table li:nth-child(odd) {
  visibility: hidden;
  height: 0;
  margin: 0;
  border: 0;
  padding: 0; }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table li:nth-child(odd) {
    visibility: visible;
    display: inline-flex;
    padding: 20px 30px 10px;
    width: 100%;
    height: 100%;
    position: relative; }
  #date_181203 .pseudo_table li:nth-child(odd) p:last-child {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 0.75rem;
    width: 25px;
    text-align: center;
    background: #fff; } }

@media screen and (max-width: 600px) {
  #date_181203 .pseudo_table li:nth-child(even) {
    height: 100%;
    padding: 0 30px 20px; } }
