@charset "UTF-8";
/* COMPASS
 * ----------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

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

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

a img {
  border: none;
}

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

/* BASE
 * ----------------------------------------------- */
/* MEDIA QUERIES
 * ----------------------------------------------- */
/* ADDITIONAL RESET
 * ----------------------------------------------- */
*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body * {
  max-height: 99999em;
  word-break: break-word;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  word-break: normal;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  -webkit-appearance: none;
  font: inherit;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

/* Make webkit render the search input like a normal text field */
input[type=search] {
  -webkit-appearance: textfield;
}

/* Turn off the recent search for webkit. It adds about 15px padding on the left */
::-webkit-search-decoration {
  display: none;
}

/* Turn off scroll bars in IE unless needed */
textarea {
  overflow: auto;
  white-space: pre-line;
  resize: none;
}

/* PRINTING
 * ----------------------------------------------- */
@media print {
  body {
    -webkit-print-color-adjust: exact;
  }

  html,
  body {
    margin: 0;
  }

  @page {
    margin: 0;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}
/* GENERAL
 * ----------------------------------------------- */
body {
  color: #000;
  background: #edf0f2;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-weight: 400;
  line-height: 1.4;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  margin: 0 auto;
}

.font-serif {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Times New Roman", "游明朝", YuMincho, "メイリオ", Meiryo, Georgia, serif;
}

.FontArial {
  font-family: Arial, sans-serif;
}

.FontGaramond {
  font-family: "EB Garamond", serif;
}

.FontRoboto {
  font-family: "Roboto", sans-serif;
}

.FontMincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Sawarabi Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.FontYugo {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
}

/* HELPERS
 * ----------------------------------------------- */
a {
  color: #000;
  text-decoration: none;
}

.Hidden {
  display: none;
}

.Invisible {
  visibility: hidden;
}

.TextLeft {
  text-align: left;
}

.TextCenter {
  text-align: center;
}

.TextRight {
  text-align: right;
}

.TextJustify {
  text-align: justify;
}

.TextNowrap {
  white-space: nowrap;
}

.TextLowercase {
  text-transform: lowercase;
}

.TextUppercase {
  text-transform: uppercase;
}

.TextCapitalize {
  text-transform: capitalize;
}

.TextLink {
  color: #147bff;
  font-weight: bold;
  text-decoration: revert;
}

main {
  overflow: hidden;
  background: #edf0f2;
}

/* RESPONSIVE
 * ----------------------------------------------- */
@media print, (min-width: 768px) {
  body {
    font-size: 14px;
    position: static !important;
    top: auto !important;
    width: 100% !important;
  }

  .Wrapper {
    max-width: 1520px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 80px;
    padding-right: 80px;
  }

  .Sm {
    display: none !important;
  }

  .Trans {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    -moz-transition: opacity 0.26s ease;
    -o-transition: opacity 0.26s ease;
    -webkit-transition: opacity 0.26s ease;
    transition: opacity 0.26s ease;
  }
  .Trans:hover {
    opacity: 0.8 !important;
  }
}
@media only screen and (max-width: 767px) {
  .Md {
    display: none !important;
  }

  html {
    font-size: calc(100vw / 3.9);
  }

  body {
    font-size: 0.28rem;
  }

  .Container {
    min-width: 320px;
  }

  .Wrapper {
    width: 100%;
    padding-left: 0.3rem;
    padding-right: 0.3rem;
  }
  .Wrapper.guideWr {
    padding-left: 0;
    padding-right: 0;
  }
}
/* PARTS
 * ----------------------------------------------- */
header {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 99;
  opacity: 1;
  visibility: visible;
  transition: all 0.3s;
  pointer-events: none;
}
header a,
header li,
header .ButtonMenu,
header .HeaderNavigation {
  pointer-events: visible;
}
header:not(.IsSticky) ~ .ListItems {
  display: none;
}
header.IsSubpage ~ .ListItems {
  display: block;
}
header.IsSticky:not(.IsShow), header.IsSubpage:not(.IsShow) {
  position: fixed;
  padding: 38px 0 0;
  opacity: 0;
  transform: translateY(-100%);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
header.IsSticky:not(.IsShow) .LogoImage:not(.IsFixed), header.IsSubpage:not(.IsShow) .LogoImage:not(.IsFixed) {
  display: none;
}
header.IsSticky:not(.IsShow) .LogoImage.IsFixed, header.IsSubpage:not(.IsShow) .LogoImage.IsFixed {
  transition: all 0.3s;
}
header.IsSticky:not(.IsShow) .HeaderInner, header.IsSubpage:not(.IsShow) .HeaderInner {
  padding-left: 0;
  align-items: flex-start;
}
header.IsSticky:not(.IsShow) .HeaderNavigation .NavigationLink, header.IsSubpage:not(.IsShow) .HeaderNavigation .NavigationLink {
  color: #dcdad9;
}
header.IsSticky:not(.IsShow) .NavigationItem.IsMypage .NavigationLink, header.IsSubpage:not(.IsShow) .NavigationItem.IsMypage .NavigationLink {
  background-image: url("../images/common/ico_user_gray.png");
}
header.IsSticky:not(.IsShow) .NavigationLink.IsDropdown, header.IsSubpage:not(.IsShow) .NavigationLink.IsDropdown {
  background-image: url("../images/common/ico_dropdown_gray.png");
}
header.IsSubpage:not(.IsShow), header.IsFixed:not(.IsShow) {
  opacity: 1;
  transform: translateY(0);
  padding-top: 32px;
  position: fixed;
  mix-blend-mode: difference;
}
header.IsSubpage:not(.IsShow)::before, header.IsFixed:not(.IsShow)::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
header.IsSubpage:not(.IsShow) .LogoImage.IsFixed, header.IsFixed:not(.IsShow) .LogoImage.IsFixed {
  opacity: 1;
  visibility: visible;
  top: 6px;
  left: 0;
  padding: 0;
}
header.IsSubpage:not(.IsShow) .ListItems, header.IsFixed:not(.IsShow) .ListItems {
  display: none;
}
header.IsHidden {
  opacity: 0;
  visibility: hidden;
}
header .HeaderInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  position: relative;
}
header .LogoImage {
  display: block;
}
header .LogoImage img {
  width: 100%;
}
header .LogoImage.IsFixed {
  opacity: 0;
  visibility: hidden;
  width: 100px;
}

.HeaderNavigation .NavigationLink {
  display: flex;
  align-items: center;
  color: #232526;
  letter-spacing: 0.024em;
}
.HeaderNavigation li {
  font-weight: bold;
  position: relative;
}
.HeaderNavigation .NavigationItem.IsMypage {
  margin-left: 54px;
}
.HeaderNavigation .NavigationItem.IsMypage .NavigationLink {
  padding-right: 50px;
  background: url("../images/common/ico_user.png") right 1px center/36px auto no-repeat;
}
.HeaderNavigation .NavigationLink.IsDropdown {
  padding-right: 16px;
  background: url("../images/common/ico_dropdown.svg") right center/11px auto no-repeat;
}

@media print, (min-width: 768px) {
  header {
    padding: 56px 0 31px;
  }
  header.IsSticky:not(.IsShow) .HeaderInner {
    margin-left: 40px;
  }
  header.IsSubpage:not(.IsShow) .HeaderInner {
    margin-left: 40px;
  }
  header.IsSticky:not(.IsShow) .HeaderNavigation, header.IsSubpage:not(.IsShow) .HeaderNavigation {
    padding-top: 1px;
  }
  header .HeaderInner {
    width: calc(100% - 80px);
    margin: 0 40px;
  }
  header .LogoImage {
    position: absolute;
    top: 0;
    left: 0;
    width: 320px;
  }
  header.IsSticky:not(.IsShow) .NavigationLink.IsHover {
    color: #675d4a;
    background-image: url("../images/common/ico_dropdown_gray_active.svg");
  }
  header .HeaderNavigation {
    display: block;
  }

  .HeaderNavigation {
    display: none;
    padding-top: 8px;
  }
  .HeaderNavigation .NavigationLink:hover + .ListItems,
  .HeaderNavigation .ListItems:hover {
    opacity: 1;
    visibility: visible;
    transition: all 0.3s;
  }
  .HeaderNavigation .ListNavigation {
    display: flex;
  }
  .HeaderNavigation .ListItems {
    position: absolute;
    width: 180px;
    background: #fff;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.16);
    padding: 18px 26px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    mix-blend-mode: unset;
    border-radius: 6px;
    right: 0;
  }
  .HeaderNavigation .ListItems a {
    display: block;
    padding: 6px 0;
    color: #000;
  }
  .HeaderNavigation .ListItems span {
    display: block;
    color: #a8a8a8;
    font-size: 10px;
    transform: scale(0.9);
    transform-origin: left center;
    line-height: 1.6;
  }
  .HeaderNavigation li {
    font-size: 14px;
  }
  .HeaderNavigation .NavigationItem {
    margin-left: 32px;
  }
  .HeaderNavigation .NavigationLink {
    min-height: 36px;
    padding: 16px 0;
  }
  .HeaderNavigation .NavigationLink.IsDropdown:hover,
  .HeaderNavigation .NavigationItem:hover .NavigationLink.IsDropdown {
    color: #98a2b5;
    background-image: url("../images/common/ico_dropdown_active.svg");
  }
  .HeaderNavigation .NavigationItem:hover .NavigationLink.IsDropdown,
  .HeaderNavigation .NavigationLink.IsDropdown:hover {
    color: #675d4a;
    background-image: url("../images/common/ico_dropdown_gray_active.svg");
  }

  .Container > .ListItems {
    position: fixed;
    width: 180px;
    background: #fff;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.16);
    padding: 18px 26px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
    mix-blend-mode: unset;
    border-radius: 6px;
    z-index: 51;
    right: 40px;
    margin-left: -60px;
  }
  .Container > .ListItems a {
    display: block;
    padding: 6px 0;
    color: #000;
    font-weight: bold;
  }
  .Container > .ListItems span {
    display: block;
    color: #a8a8a8;
    font-size: 10px;
    transform: scale(0.9);
    transform-origin: left center;
    line-height: 1.6;
  }
  .Container > .ListItems.IsShow {
    opacity: 1;
    visibility: visible;
  }
}
@media screen and (min-width: 751px) and (max-width: 1700px) {
  header .LogoImage {
    width: 320px;
  }

  .IsIphone header .LogoImage {
    width: 100px;
    padding: 40px;
  }
}
@media screen and (min-width: 751px) and (max-width: 1520px) {
  header .HeaderInner {
    margin: 0 40px;
  }
  header.IsSticky:not(.IsShow) .HeaderInner {
    margin-left: 40px;
  }
}
@media screen and (min-width: 751px) and (max-width: 1025px) {
  header .LogoImage {
    width: 220px;
  }

  .HeaderNavigation {
    padding-top: 0;
  }
  .HeaderNavigation li {
    font-size: 12px;
  }
  .HeaderNavigation .NavigationItem {
    margin-left: 15px;
  }
  .HeaderNavigation .NavigationItem.IsMypage {
    margin-left: 20px;
  }
}
@media print, (min-width: 1920px) {
  header.IsFixed .HeaderInner,
  header.IsSubpage .HeaderInner {
    margin: 0 auto !important;
  }
}
@media only screen and (max-width: 767px) {
  .Container {
    position: relative;
  }

  header {
    padding: 0.2rem 0.2rem;
  }
  header .HeaderNavigation {
    display: none;
  }
  header.IsSubpage {
    mix-blend-mode: difference;
  }
  header.IsSticky .LogoImage, header.IsSubpage .LogoImage {
    width: 0.83rem;
  }
  header .LogoImage.MenuLogo {
    top: 0.29rem;
    left: 0.3rem;
    width: 0.83rem;
  }
  header .HeaderInner {
    align-items: flex-start;
  }
  header .LogoImage {
    display: block;
    width: 1.64rem;
    position: absolute;
    left: 0;
    top: 0.1rem;
    z-index: 11;
    transition: opacity 0.3s ease, visibility 0.3s ease;
  }
  header li {
    font-size: 0.12rem;
  }
  header.IsSticky:not(.IsShow), header.IsSubpage:not(.IsShow) {
    padding: 0.2rem 0.2rem 0;
  }
  header.IsSticky:not(.IsShow) .LogoImage.IsFixed, header.IsSubpage:not(.IsShow) .LogoImage.IsFixed {
    width: 0.64rem;
    top: 0.1rem;
  }
  header.IsSticky:not(.IsShow) .ButtonMenu.IsShow, header.IsSubpage:not(.IsShow) .ButtonMenu.IsShow {
    background-image: url(../images/common/btn_menu_close.svg);
  }
  header.IsSticky:not(.IsShow) .ButtonMenu, header.IsSubpage:not(.IsShow) .ButtonMenu {
    background-image: url(../images/common/btn_menu_invert.svg);
  }

  .ButtonMenu {
    display: block;
    width: 0.5rem;
    height: 0.5rem;
    background: url(../images/common/btn_menu.svg) center/cover no-repeat;
    margin-top: 0.09rem;
    position: relative;
    z-index: 21;
  }
  .ButtonMenu span {
    position: absolute;
    font-size: 0.08rem;
    font-weight: bold;
    letter-spacing: 0.28em;
    left: 50%;
    bottom: -0.17rem;
    white-space: nowrap;
    transform: translateX(-50%);
    color: #232526;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
  }

  .ButtonMenu.IsShow {
    background-image: url(../images/common/btn_menu_close.svg);
  }
  .ButtonMenu.IsShow span {
    opacity: 1;
    visibility: visible;
  }

  .HeaderNavigation {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    overflow: auto;
    padding: 2.08rem 0 1.5rem;
    background: #fff;
    z-index: 11;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.6s ease, visibility 0.6s ease;
  }
  .HeaderNavigation.IsShow {
    opacity: 1;
    visibility: visible;
  }
  .HeaderNavigation .LogoImage {
    width: 0.83rem;
    position: absolute;
    left: 0;
    top: 0.1rem;
  }
  .HeaderNavigation .NavigationInner {
    padding: 0 0.31rem 0 0.54rem;
  }
  .HeaderNavigation .NavigationItem {
    margin: 0;
  }
  .HeaderNavigation .NavigationItem.IsMypage {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    right: 1.11rem;
    top: 0.38rem;
    transition: all 0.3s;
  }
  .HeaderNavigation .NavigationItem.IsMypage .NavigationLink {
    letter-spacing: 0.01em;
    padding-right: 0.36rem;
    font-size: 0.12rem;
    font-weight: bold;
    background-size: 0.26rem;
  }
  .HeaderNavigation .NavigationLink {
    font-size: 0.18rem;
    padding: 0.09rem 0;
  }
  .HeaderNavigation .NavigationLink.IsDropdown {
    background: none !important;
  }
  .HeaderNavigation .ListItems {
    margin: 0.07rem 0 0 0.21rem;
  }
  .HeaderNavigation .ListItems li {
    margin-bottom: 0.12rem;
    font-size: 0.12rem;
  }
  .HeaderNavigation .ListItems li:last-child {
    margin-bottom: 0.09rem;
  }
  .HeaderNavigation .ListItems a {
    font-size: 0.12rem;
    position: relative;
  }
  .HeaderNavigation .ListItems a::before {
    content: "-";
    position: absolute;
    left: -0.08rem;
    top: -0.03rem;
  }
  .HeaderNavigation .ListItems span {
    display: block;
    font-size: 0.09rem;
    color: #a8a8a8;
    margin-top: 0.03rem;
  }
  .HeaderNavigation .HeaderSocial {
    text-align: right;
    margin-top: 0.62rem;
  }
  .HeaderNavigation .SocialLink {
    font-size: 0.12rem;
    font-weight: bold;
    padding-right: 0.2rem;
    position: relative;
    color: #000;
  }
  .HeaderNavigation .SocialLink::before {
    content: "";
    display: block;
    width: 0.13rem;
    height: 0.13rem;
    background: url("../images/common/ico_blank.svg") center/contain no-repeat;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
  .HeaderNavigation .SocialList {
    display: flex;
    justify-content: flex-end;
    margin: 0.23rem 0;
  }
  .HeaderNavigation .SocialList li {
    width: 0.4rem;
    margin-left: 0.11rem;
  }

  .HeaderNavigation.NavbarSp {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 101;
  }
  .HeaderNavigation.NavbarSp .NavigationItem.IsMypage {
    opacity: 1;
    visibility: visible;
  }
  .HeaderNavigation.NavbarSp .ButtonMenu {
    margin: 0;
    top: 0.29rem;
    right: 0.2rem;
    position: fixed;
  }
  .HeaderNavigation.NavbarSp .LogoImage {
    width: 0.83rem;
    top: 0.3rem;
    left: 0.2rem;
    position: absolute;
  }

  .Container > .ListItems {
    display: none !important;
  }

  .IsIphone .HeaderNavigation .SocialLink::before {
    top: 58%;
  }
  .IsIphone .HeaderNavigation .ListItems a::before {
    top: -0.02rem;
  }
  .IsIphone footer .SocialLink::before {
    top: 56%;
  }

  .IsIphone .SectionTopKeyvisual .KeyvisualText span {
    display: inline-block;
    line-height: 1;
    padding: 0.04rem 0.05rem;
  }
}
@media screen and (min-width: 320px) and (max-width: 767px) and (orientation: landscape) {
  header {
    padding: 20px 30px 0 30px;
  }
  header.IsSticky:not(.IsShow), header.IsSubpage:not(.IsShow) {
    padding: 20px 30px 0 30px;
  }
  header.IsSticky:not(.IsShow) .LogoImage.IsFixed, header.IsSubpage:not(.IsShow) .LogoImage.IsFixed {
    width: 83px;
    top: 10px;
  }
  header.IsShow .LogoImage {
    width: 83px;
    top: 10px;
  }

  .HeaderNavigation {
    height: 100vh;
    padding: 208px 0 150px;
    top: 0;
  }
  .HeaderNavigation .NavigationInner {
    padding: 0 31px 0 54px;
  }
  .HeaderNavigation .NavigationItem.IsMypage {
    right: 111px;
    top: 38px;
  }
  .HeaderNavigation .NavigationItem.IsMypage .NavigationLink {
    padding-right: 36px;
    font-size: 12px;
    background-size: 26px;
  }
  .HeaderNavigation li {
    margin-bottom: 12px;
    font-size: 12px;
  }
  .HeaderNavigation .ListItems {
    margin: 7px 0 0 21px;
  }
  .HeaderNavigation .ListItems li {
    margin-bottom: 12px;
  }
  .HeaderNavigation .ListItems a {
    font-size: 12px;
  }
  .HeaderNavigation .ListItems span {
    font-size: 9px;
    margin-top: 3px;
  }
  .HeaderNavigation .NavigationLink {
    padding: 9px 0;
    font-size: 18px;
  }
  .HeaderNavigation .HeaderSocial {
    margin-top: 62px;
  }
  .HeaderNavigation .SocialLink {
    font-size: 12px;
    padding-right: 20px;
  }
  .HeaderNavigation .SocialLink::before {
    width: 13px;
    height: 13px;
  }
  .HeaderNavigation .SocialList li {
    width: 40px;
    margin-left: 11px;
  }

  .HeaderNavigation.NavbarSp .ButtonMenu {
    top: 29px;
    right: 30px;
  }
  .HeaderNavigation.NavbarSp .LogoImage {
    width: 83px;
    top: 30px;
    left: 30px;
  }

  .ButtonMenu {
    width: 50px;
    height: 50px;
    margin-top: 9px;
  }
  .ButtonMenu span {
    bottom: -17px;
    font-size: 8px;
  }
}
footer .FooterLogo {
  display: block;
}
footer .FooterSocial {
  text-align: right;
}
footer .FooterCopyright {
  display: block;
  text-align: right;
  font-weight: 400;
}
footer .SocialLink {
  font-weight: bold;
  line-height: 2;
  position: relative;
  color: #000;
}
footer .SocialLink::before {
  content: "";
  display: block;
  background: url("../images/common/ico_blank.svg") center/contain no-repeat;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
footer .SocialList {
  display: flex;
  justify-content: flex-end;
}
footer .FooterInfo {
  position: relative;
}
footer .ButtonToTop {
  display: block;
  align-items: center;
  justify-content: center;
  background: transparent url("../images/common/btn_top_bg.svg") center/contain no-repeat;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
  border-radius: 50%;
  font-weight: bold;
  color: #fff;
  padding-top: 30px;
  text-align: center;
  letter-spacing: 0.16em;
  cursor: pointer;
  position: fixed;
  right: calc(50% - 740px);
  z-index: 11;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
footer .ButtonToTop.IsStop {
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}
footer .ButtonToTop.IsShow {
  opacity: 1;
  visibility: visible;
}

@media print, (min-width: 768px) {
  footer .FooterInfo {
    padding: 117px 0 72px;
  }
  footer .FooterLogo {
    width: 320px;
  }
  footer .FooterCopyright {
    font-size: 11px;
  }
  footer .FooterSocial {
    margin-top: -96px;
  }
  footer .SocialLink {
    font-size: 16px;
    padding-right: 20px;
  }
  footer .SocialLink::before {
    width: 18px;
    height: 18px;
    top: 54%;
  }
  footer .SocialList {
    margin: 19px 0 78px;
  }
  footer .SocialList li {
    margin-left: 15px;
  }
  footer .ButtonToTop {
    width: 100px;
    height: 100px;
    padding-top: 52px;
    bottom: 100px;
    right: calc(50% - 740px);
    font-size: 19px;
  }
}
@media screen and (min-width: 751px) and (max-width: 1520px) {
  footer .ButtonToTop {
    right: 20px;
  }

  .IsIphone footer .ButtonToTop {
    width: 50px;
    height: 50px;
    padding-top: 26px;
    right: 30px;
    font-size: 9px;
    background: #000 url(../images/common/btn_top_bg.svg) center -1px/100% auto no-repeat;
  }
}
@media only screen and (max-width: 767px) {
  footer .FooterInfo {
    padding: 0.71rem 0 0.4rem;
  }
  footer .FooterLogo {
    width: 1.34rem;
  }
  footer .FooterSocial {
    margin-top: 0.4rem;
  }
  footer .FooterCopyright {
    font-size: 0.1rem;
  }
  footer .SocialLink {
    font-size: 0.12rem;
    padding-right: 0.2rem;
  }
  footer .SocialLink::before {
    width: 0.135rem;
    height: 0.135rem;
  }
  footer .SocialList {
    margin: 0.21rem 0 0.27rem;
  }
  footer .SocialList li {
    width: 0.4rem;
    margin-left: 0.1rem;
  }
  footer .ButtonToTop {
    width: 0.5rem;
    height: 0.5rem;
    padding-top: 0.26rem;
    bottom: 50px;
    right: 0.2rem;
    font-size: 0.09rem;
    box-shadow: 0 0 0.14rem rgba(0, 0, 0, 0.25);
    background: #000 url(../images/common/btn_top_bg.svg) center -0.01rem/100% auto no-repeat;
  }
}
@media screen and (min-width: 320px) and (max-width: 767px) and (orientation: landscape) {
  footer .ButtonToTop {
    width: 50px;
    height: 50px;
    padding-top: 26px;
    right: 30px;
    font-size: 9px;
    background-position: center -1px;
  }
}
@media screen and (min-width: 320px) and (max-width: 568px) and (orientation: landscape) {
  footer .ButtonToTop {
    bottom: 10px;
  }
}
/* MODULES
 * ----------------------------------------------- */
.CommonTitle {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  font-weight: bold;
  color: #232526;
  letter-spacing: 0.16em;
  line-height: 1;
}
.CommonTitle span {
  color: #232526;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  letter-spacing: 0;
  line-height: 1.6;
}

@media print, (min-width: 768px) {
  .CommonTitle {
    font-size: 61px;
  }
  .CommonTitle span {
    font-size: 23px;
    margin-left: 26px;
  }
}
@media only screen and (max-width: 767px) {
  .CommonTitle {
    font-size: 0.28rem;
  }
  .CommonTitle span {
    display: block;
    width: 100%;
    font-size: 0.13rem;
    margin-top: 0.06rem;
  }
}
.CommonBlock {
  position: relative;
}
.CommonBlock:before {
  content: "";
  display: block;
  background: #fff;
  mix-blend-mode: difference;
  position: absolute;
  left: 0;
  top: 0;
}
.CommonBlock.blCamp:before {
  mix-blend-mode: unset;
}
.CommonBlock .BlockHeading.comingsoon {
  background: url("../images/top/bg_comingsoon.svg") no-repeat left bottom -0.5vw;
  background-size: 100% auto;
}
.CommonBlock .BlockTitle {
  font-weight: bold;
  color: #eaeaea;
  letter-spacing: 0.02rem;
  mix-blend-mode: difference;
}
.CommonBlock .BlockTitle.blCamp {
  mix-blend-mode: unset;
}
.CommonBlock .BlockLabel {
  font-weight: bold;
  color: #7f8288;
  line-height: 1.7;
  letter-spacing: 0.08rem;
}
.CommonBlock .BlockLabel.blCamp {
  color: #fff;
}
.CommonBlock .BlockText {
  font-weight: bold;
  color: #232526;
  line-height: 1.9;
}
.CommonBlock .BlockCaption {
  font-weight: bold;
  color: #7f8288;
  line-height: 1.75;
}
.CommonBlock .BlockCaption span {
  color: #bd0000;
}
.CommonBlock.IsWhite:before {
  background: #fff;
}
.CommonBlock.IsWhite .BlockTitle,
.CommonBlock.IsWhite .BlockText {
  color: #fff;
}
.CommonBlock .BlockBigTitle {
  font-weight: bold;
  color: #232526;
}
.CommonBlock .BlockSubTitle {
  font-weight: bold;
  color: #232526;
}

@media print, (min-width: 768px) {
  .CommonBlock + .CommonBlock {
    margin-top: 145px;
  }
  .CommonBlock.paddingBottom {
    padding-bottom: 150px;
  }
  .CommonBlock:before {
    width: 50%;
    height: 5px;
  }
  .CommonBlock .BlockHeading {
    padding: 30px 0 56px;
  }
  .CommonBlock .BlockHeading.comingsoon {
    padding: 30px 0 150px;
  }
  .CommonBlock .BlockTitle {
    font-size: 36px;
  }
  .CommonBlock .BlockLabel {
    font-size: 20px;
  }
  .CommonBlock .BlockText {
    font-size: 17px;
    max-width: 60%;
    margin-top: 20px;
  }
  .CommonBlock .BlockCaption {
    font-size: 14px;
    max-width: 60%;
    margin-top: 16px;
  }
  .CommonBlock .BlockComingsoon {
    position: absolute;
    bottom: -0.4em;
    font-family: "EB Garamond", serif;
    letter-spacing: 0.16em;
    font-size: 6rem;
    color: #edf0f2;
  }
  .CommonBlock .BlockBigTitle {
    font-size: 60px;
    margin-top: 0.2em;
  }
  .CommonBlock .BlockSubTitle {
    font-size: 28px;
  }
}
@media only screen and (max-width: 767px) {
  .CommonBlock + .CommonBlock {
    margin-top: 0.64rem;
  }
  .CommonBlock.paddingBottom {
    padding-bottom: 80px;
  }
  .CommonBlock:before {
    width: 100%;
    height: 0.04rem;
  }
  .CommonBlock .BlockHeading {
    padding: 0.18rem 0 0.39rem;
  }
  .CommonBlock .BlockHeading.comingsoon {
    padding: 30px 0 50px;
    background-position: left bottom -0.5vw;
  }
  .CommonBlock .BlockTitle {
    font-size: 0.22rem;
    letter-spacing: 0.01rem;
  }
  .CommonBlock .BlockLabel {
    font-size: 0.11rem;
    letter-spacing: 0.01rem;
  }
  .CommonBlock .BlockText {
    font-size: 0.14rem;
    margin-top: 0.19rem;
  }
  .CommonBlock .BlockCaption {
    font-size: 0.12rem;
    margin-top: 0.08rem;
  }
  .CommonBlock .BlockBigTitle {
    font-size: 32px;
    margin-top: 0.2em;
  }
  .CommonBlock .BlockSubTitle {
    font-size: 21px;
    margin-top: 2em;
  }
}
.AnimationText {
  display: block;
  font-family: "EB Garamond", serif;
  white-space: nowrap;
  line-height: 1;
  color: #e2e7ea;
  position: absolute;
  left: 0;
  top: 0;
  letter-spacing: 0.16em;
  font-weight: normal;
  animation: loop 1600s linear infinite;
}
.AnimationText.bgWh {
  color: #edf0f2;
}

@media print, (min-width: 768px) {
  .AnimationText {
    font-size: 392px;
  }
}
@media only screen and (max-width: 767px) {
  .AnimationText {
    font-size: 0.99rem;
  }
}
/* slider
 * ----------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
}

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before {
  display: table;
  content: "";
}
.slick-track:after {
  display: table;
  content: "";
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.message .overlay {
  display: none;
  width: 100%;
  height: auto;
  background: rgba(255, 255, 255, 0.98);
  -moz-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  position: fixed;
  z-index: 10000;
}
.message .btn_area {
  width: 100%;
  height: 100%;
  z-index: 10001;
}
.message .btn_area .brandMessage {
  overflow-y: auto;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin: auto;
}
.message .btn_area .brandMessage .txtArea {
  height: auto;
  margin: auto;
  color: #bd0000;
}
.message .btn_area .brandMessage .txtArea p.messageTitle {
  font-weight: bold;
  line-height: 1.8;
}
.message .btn_area .brandMessage .txtArea p.messageTxt {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-weight: normal;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
.message .btn_area .brandMessage::-webkit-scrollbar {
  display: none;
}
.message .btn_area button {
  display: block;
  text-align: left;
  border-bottom: solid 1px #bd0000;
  padding-bottom: 0.2em;
  display: table;
  color: #bd0000;
  font-weight: bold;
  opacity: 1;
  transition: opacity 0.3s linear;
}
.message button:hover {
  opacity: 0.6;
  transition: opacity 0.3s linear;
}

.caution {
  font-size: 1.2rem;
  line-height: 2rem;
  color: red;
}

@media print, (min-width: 768px) {
  .overlay {
    max-width: 480px;
    left: 50px;
    bottom: 50px;
  }

  .brandMessage {
    width: 100%;
    height: 100%;
    padding: 3em;
  }

  p.messageTitle {
    font-size: 18px;
    letter-spacing: 0.06rem;
    margin-bottom: 10px;
  }

  p.messageTxt {
    font-size: 13px;
    margin-bottom: 10px;
  }

  .btn_area button {
    font-size: 14px;
  }

  .closeButton {
    padding: 1.2em 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .overlay {
    max-width: 100%;
    left: 0;
    bottom: 0;
  }

  .brandMessage {
    padding: 25px 25px 40px 25px;
    height: 100%;
  }

  p.messageTitle {
    font-size: 14px;
    margin-bottom: 10px;
    letter-spacing: 0;
  }

  p.messageTxt {
    font-size: 11px;
    margin-bottom: 10px;
  }

  .btn_area button {
    font-size: 12px;
  }

  .closeButton {
    padding: 0.2em 0 0;
  }
}
.NoScroll {
  position: fixed;
  width: 100%;
  height: 100%;
  padding-right: 17px;
}

.LightBox {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
  background: #000;
  transition: background 0.3s ease;
}
.LightBox.IsLoaded {
  background: rgba(0, 0, 0, 0.8);
}
.LightBox .Wrapper {
  width: 100%;
  height: 100%;
  padding: 0;
}
.LightBox .PopupLightBox {
  width: 100%;
  height: 100%;
}
.LightBox .PopupLightBoxCell {
  top: 50%;
  left: 50%;
  position: fixed;
  transform: translate(-50%, -50%);
  width: 100%;
}
.LightBox .LightBoxWindow {
  margin: auto;
  background: #fff;
  box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.75);
  position: relative;
}
.LightBox .LightBoxInner {
  overflow: auto;
}
.LightBox .PopupIconClose {
  display: flex;
  align-items: center;
  min-height: 30px;
  font-size: 11px;
  font-weight: bold;
  color: #fff;
  position: absolute;
  cursor: pointer;
  background: url("../images/common/ico_close.svg") right center/20px auto no-repeat;
}
.LightBox .SliderInner {
  opacity: 0;
  visibility: hidden;
}
.LightBox .SliderInner.slick-initialized {
  opacity: 1;
  visibility: visible;
}

.LightBox.GuestLightBox .LightBoxWindow {
  width: 900px;
}
.LightBox.GuestLightBox .LightBoxInner {
  display: flex;
  align-items: center;
}
.LightBox.GuestLightBox .GuestImage {
  width: 420px;
}
.LightBox.GuestLightBox .GuestDetail {
  flex: 1;
  padding: 24px 48px 20px;
  background: #fff;
  color: #232526;
}
.LightBox.GuestLightBox .GuestTitle span {
  display: block;
}
.LightBox.GuestLightBox .TextEnglish {
  font-size: 13px;
  letter-spacing: 0.1em;
  font-weight: 500;
}
.LightBox.GuestLightBox .TextJapan {
  font-size: 33px;
  letter-spacing: 0.08em;
  font-weight: 600;
}
.LightBox.GuestLightBox .GuestPosition {
  font-size: 13px;
  font-weight: bold;
  margin: 10px 0 32px;
}
.LightBox.GuestLightBox .GuestText {
  font-size: 13px;
  font-weight: bold;
  line-height: 2;
}

.LightBox.LightBoxFull {
  color: #fff;
}
.LightBox.LightBoxFull .PopupLightBoxCell {
  height: 100%;
  overflow: auto;
  top: 0;
  transform: translateX(-50%);
}
.LightBox.LightBoxFull .LightBoxWindow {
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  background: transparent;
  box-shadow: none;
}
.LightBox.LightBoxFull .LightBoxInner {
  max-height: 100%;
}
.LightBox.LightBoxFull .LightBoxHeading {
  text-align: center;
  font-weight: bold;
}
.LightBox.LightBoxFull .LightBoxTitle {
  letter-spacing: 0.16em;
}
.LightBox.LightBoxFull .LightBoxTitle span {
  display: block;
  letter-spacing: 0;
  line-height: 1.13;
}
.LightBox.LightBoxFull .LightBoxRev {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  color: #fff;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  line-height: 1.2;
}
.LightBox.LightBoxFull .LightBoxText {
  line-height: 1.615;
}
.LightBox.LightBoxFull .LightBoxBackground {
  background: center/cover no-repeat;
}
.LightBox.LightBoxFull .LightBoxBackground.IsWear {
  background-image: url("../images/top/modal_wear_bg.jpg");
}
.LightBox.LightBoxFull .LightBoxBackground.IsFood {
  background-image: url("../images/top/modal_food_bg.jpg");
}
.LightBox.LightBoxFull .LightBoxBackground.IsLife {
  background-image: url("../images/top/modal_life_bg.jpg");
}
.LightBox.LightBoxFull .LightBoxBackground.IsWork {
  background-image: url("../images/top/modal_work_bg.jpg");
}
.LightBox.LightBoxFull .LightBoxBackground.IsCamp {
  background-image: url("../images/top/modal_camp_bg.jpg");
}
.LightBox.LightBoxFull .LinkWrapper {
  margin: 0 auto;
  position: relative;
}
.LightBox.LightBoxFull .LightBoxLink {
  display: block;
  border: 2px solid #fff;
  color: #fff;
  font-weight: bold;
  position: relative;
  transition: border-color 0.3s ease;
}
.LightBox.LightBoxFull .LightBoxLink::before, .LightBox.LightBoxFull .LightBoxLink:after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  transition: background 0.3s ease, visibility 0.3s ease;
  pointer-events: none;
}
.LightBox.LightBoxFull .LightBoxLink:hover {
  border-color: transparent;
}
.LightBox.LightBoxFull .LightBoxLink:hover::before {
  background: rgba(0, 0, 0, 0.8);
  visibility: visible;
}
.LightBox.LightBoxFull .LightBoxLink:hover::after {
  background: rgba(31, 41, 60, 0.4);
  visibility: visible;
}
.LightBox.LightBoxFull .LinkInner {
  position: relative;
  z-index: 1;
}
.LightBox.LightBoxFull .LinkLabel {
  letter-spacing: 0.16em;
}
.LightBox.LightBoxFull .LinkTitle {
  line-height: 1.42;
}
.LightBox.LightBoxFull .LinkText {
  line-height: 2.285;
  letter-spacing: 0.16em;
  text-align: right;
  position: relative;
}
.LightBox.LightBoxFull .LinkText::before {
  content: "";
  display: block;
  background: url("../images/common/ico_arrow_circle_next.svg") center/contain no-repeat;
  position: absolute;
  transform: translateY(-50%);
}
.LightBox.LightBoxFull .LightBoxContent {
  position: relative;
}
.LightBox.LightBoxFull .LightBoxContent .PopupIconClose {
  position: static;
  margin: 0 auto;
}
.LightBox.LightBoxFull .LightBoxContent .PopupIconClose.IsTop {
  position: absolute;
  right: 0;
}
.LightBox.LightBoxFull .LightBoxBlock {
  font-weight: Bold;
  color: #fff;
}
.LightBox.LightBoxFull .BlockDescription {
  line-height: 2;
}
.LightBox.LightBoxFull .BlockSlider {
  position: relative;
}
.LightBox.LightBoxFull .SliderProgress {
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
  z-index: 5;
}
.LightBox.LightBoxFull .Progress {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  background: #fff;
}
.LightBox.LightBoxFull .slick-arrow {
  position: absolute;
  background: center/8px auto no-repeat;
  text-indent: -999999px;
  overflow: hidden;
  z-index: 11;
}
.LightBox.LightBoxFull .slick-prev {
  background-image: url(../images/common/ico_arrow_prev.png);
}
.LightBox.LightBoxFull .slick-next {
  background-image: url(../images/common/ico_arrow_next.png);
}

.Container.LightBoxOpen header {
  display: none;
}
.Container.LightBoxOpen footer, .Container.LightBoxOpen > .ListItems,
.Container.LightBoxOpen .SectionContact,
.Container.LightBoxOpen main > *:not(.LightBox) {
  filter: blur(24px) brightness(90%);
}

@media print, (min-width: 768px) {
  .LightBox.LightBoxFull .LightBoxHeading {
    padding-top: 102px;
    margin-bottom: 87px;
  }
  .LightBox.LightBoxFull .LightBoxTitle {
    font-size: 38px;
  }
  .LightBox.LightBoxFull .LightBoxTitle span {
    font-size: 190px;
  }
  .LightBox.LightBoxFull .LightBoxRev {
    font-size: 96px;
    margin-left: 0.2em;
  }
  .LightBox.LightBoxFull .LightBoxRev span {
    font-size: 190px;
  }
  .LightBox.LightBoxFull .LightBoxText {
    font-size: 26px;
    margin-top: 11px;
  }
  .LightBox.LightBoxFull .LightBoxBackground {
    min-height: 540px;
  }
  .LightBox.LightBoxFull .LinkWrapper {
    max-width: 770px;
    padding-top: 66px;
  }
  .LightBox.LightBoxFull .LightBoxLink {
    padding: 60px 53px 21px;
  }
  .LightBox.LightBoxFull .LightBoxLink:hover {
    border-color: transparent;
  }
  .LightBox.LightBoxFull .LightBoxLink:hover::before, .LightBox.LightBoxFull .LightBoxLink:hover::after {
    opacity: 1;
    visibility: visible;
  }
  .LightBox.LightBoxFull .LinkLabel {
    font-size: 15px;
  }
  .LightBox.LightBoxFull .LinkTitle {
    font-size: 34px;
    margin: 34px 0 0 -4px;
  }
  .LightBox.LightBoxFull .LinkText {
    font-size: 14px;
    margin-top: 96px;
    padding-right: 3px;
  }
  .LightBox.LightBoxFull .LinkText::before {
    width: 18px;
    height: 18px;
    right: -20px;
    top: 48%;
    transform: translateY(-50%);
  }
  .LightBox.LightBoxFull .LightBoxContent {
    max-width: 770px;
    margin: 85px auto;
  }
  .LightBox.LightBoxFull .LightBoxContent.IsProducts {
    margin-top: 231px;
  }
  .LightBox.LightBoxFull .LightBoxContent .PopupIconClose.IsTop {
    top: -137px;
  }
  .LightBox.LightBoxFull .LightBoxBlock {
    margin-bottom: 90px;
  }
  .LightBox.LightBoxFull .BlockTitle {
    font-size: 30px;
    padding-bottom: 7px;
  }
  .LightBox.LightBoxFull .BlockSubTitle {
    font-size: 23px;
    margin: 40px 0 8px;
  }
  .LightBox.LightBoxFull .BlockText {
    font-size: 13px;
  }
  .LightBox.LightBoxFull .BlockDescription {
    font-size: 15px;
  }
  .LightBox.LightBoxFull .BlockDescription p {
    margin-bottom: 31px;
  }
  .LightBox.LightBoxFull .BlockSlider {
    margin: 33px -95px 70px;
    width: calc(100% + 190px);
  }
  .LightBox.LightBoxFull .SliderProgress {
    width: 96px;
    height: 2px;
    left: 41.3%;
    bottom: -30px;
  }
  .LightBox.LightBoxFull .Progress {
    height: 2px;
  }
  .LightBox.LightBoxFull .slick-arrow {
    width: 30px;
    height: 30px;
    bottom: -44px;
    cursor: pointer;
    transition: all 0.3s;
  }
  .LightBox.LightBoxFull .slick-arrow:hover {
    opacity: 0.8;
    transition: all 0.3s;
  }
  .LightBox.LightBoxFull .slick-prev {
    left: 53.5%;
  }
  .LightBox.LightBoxFull .slick-next {
    left: 56.9%;
  }
}
@media only screen and (max-width: 767px) {
  .LightBox.LightBoxFull .LightBoxHeading {
    padding-top: 0.88rem;
    margin-bottom: 0.72rem;
  }
  .LightBox.LightBoxFull .LightBoxTitle {
    font-size: 0.24rem;
  }
  .LightBox.LightBoxFull .LightBoxTitle span {
    font-size: 1.24rem;
  }
  .LightBox.LightBoxFull .LightBoxRev {
    font-size: 0.56rem;
  }
  .LightBox.LightBoxFull .LightBoxText {
    font-size: 0.16rem;
    margin-top: 0.08rem;
  }
  .LightBox.LightBoxFull .LightBoxBackground {
    min-height: 4.8rem;
  }
  .LightBox.LightBoxFull .LightBoxBackground.IsWear {
    background-image: url("../images/top/sp/modal_wear_bg.jpg");
  }
  .LightBox.LightBoxFull .LightBoxBackground.IsFood {
    background-image: url("../images/top/sp/modal_food_bg.jpg");
  }
  .LightBox.LightBoxFull .LightBoxBackground.IsLife {
    background-image: url("../images/top/sp/modal_life_bg.jpg");
  }
  .LightBox.LightBoxFull .LightBoxBackground.IsWork {
    background-image: url("../images/top/sp/modal_work_bg.jpg");
  }
  .LightBox.LightBoxFull .LightBoxBackground.IsCamp {
    background-image: url("../images/top/sp/modal_camp_bg.jpg");
  }
  .LightBox.LightBoxFull .LinkWrapper {
    max-width: 100%;
    padding: 1.14rem 0.3rem 0;
  }
  .LightBox.LightBoxFull .LightBoxLink {
    padding: 0.37rem 0.26rem 0.11rem;
  }
  .LightBox.LightBoxFull .LightBoxLink:hover {
    border-color: transparent;
  }
  .LightBox.LightBoxFull .LightBoxLink:hover::before, .LightBox.LightBoxFull .LightBoxLink:hover::after {
    opacity: 1;
    visibility: visible;
  }
  .LightBox.LightBoxFull .LinkLabel {
    font-size: 0.12rem;
  }
  .LightBox.LightBoxFull .LinkTitle {
    font-size: 0.22rem;
    margin-top: 0.24rem;
  }
  .LightBox.LightBoxFull .LinkText {
    font-size: 0.1rem;
    margin-top: 0.45rem;
    padding-right: 0.07rem;
  }
  .LightBox.LightBoxFull .LinkText::before {
    width: 0.13rem;
    height: 0.13rem;
    right: -0.09rem;
    top: 46%;
    transform: translateY(-50%);
  }
  .LightBox.LightBoxFull .PopupIconClose {
    top: -0.43rem;
    right: 0.3rem;
    font-size: 0.09rem;
    padding-right: 0.23rem;
    letter-spacing: 0.16em;
    background-size: 0.14rem auto;
  }
  .LightBox.LightBoxFull .LightBoxContent {
    margin: 0.44rem auto;
    padding: 0 0.3rem;
    text-align: center;
  }
  .LightBox.LightBoxFull .LightBoxContent.IsProducts {
    margin-top: 2.31rem;
  }
  .LightBox.LightBoxFull .LightBoxContent .PopupIconClose.IsTop {
    top: -1.37rem;
  }
  .LightBox.LightBoxFull .LightBoxBlock {
    margin-bottom: 0.7rem;
    text-align: left;
  }
  .LightBox.LightBoxFull .LightBoxBlock:last-of-type {
    margin-bottom: 0;
  }
  .LightBox.LightBoxFull .LightBoxBlock + .PopupIconClose {
    display: inline-block;
    min-height: unset;
    line-height: 2;
    margin-top: 0.36rem;
  }
  .LightBox.LightBoxFull .BlockTitle {
    font-size: 0.22rem;
    padding-bottom: 0.06rem;
  }
  .LightBox.LightBoxFull .BlockSubTitle {
    font-size: 0.17rem;
    margin: 0.23rem 0 0.05rem;
  }
  .LightBox.LightBoxFull .BlockText {
    font-size: 0.11rem;
  }
  .LightBox.LightBoxFull .BlockDescription {
    font-size: 0.13rem;
  }
  .LightBox.LightBoxFull .BlockDescription p + p {
    margin-top: 0.26rem;
  }
  .LightBox.LightBoxFull .BlockSlider {
    margin: 0.22rem -0.3rem 0.75rem;
    width: calc(100% + .6rem);
  }
  .LightBox.LightBoxFull .SliderProgress {
    width: 0.96rem;
    height: 0.02rem;
    left: 28.6%;
    bottom: -0.32rem;
  }
  .LightBox.LightBoxFull .Progress {
    height: 0.02rem;
  }
  .LightBox.LightBoxFull .slick-arrow {
    width: 0.3rem;
    height: 0.3rem;
    bottom: -0.46rem;
    cursor: pointer;
    transition: all 0.3s;
  }
  .LightBox.LightBoxFull .slick-arrow:hover {
    opacity: 0.8;
    transition: all 0.3s;
  }
  .LightBox.LightBoxFull .slick-prev {
    left: 58.7%;
  }
  .LightBox.LightBoxFull .slick-next {
    left: 66.9%;
  }

  .LightBox.LightBoxFull .LightBoxContent.IsProducts {
    margin-top: 1.2rem;
  }
  .LightBox.LightBoxFull .LightBoxContent .PopupIconClose.IsTop {
    right: 0.3rem;
    top: -0.77rem;
  }

  .LightBox.GuestLightBox .PopupLightBoxCell {
    height: 100%;
    overflow: auto;
    top: 0;
    transform: translateX(-50%);
  }
  .LightBox.GuestLightBox .LightBoxWindow {
    padding-top: 0.4rem;
    margin: 2em auto;
    width: 3.3rem;
    background: transparent;
    box-shadow: none;
  }
  .LightBox.GuestLightBox .LightBoxInner {
    display: block;
  }
  .LightBox.GuestLightBox .GuestImage {
    width: 100%;
  }
  .LightBox.GuestLightBox .GuestImage img {
    width: 100%;
  }
  .LightBox.GuestLightBox .GuestDetail {
    padding: 0.36rem 0.23rem;
  }
  .LightBox.GuestLightBox .TextEnglish {
    font-size: 0.09rem;
  }
  .LightBox.GuestLightBox .TextJapan {
    font-size: 0.26rem;
    line-height: 1.5;
  }
  .LightBox.GuestLightBox .GuestPosition {
    font-size: 0.1rem;
    margin: 0.07rem 0 0.2rem;
  }
  .LightBox.GuestLightBox .GuestText {
    font-size: 0.12rem;
    line-height: 1.85;
  }
  .LightBox.GuestLightBox .PopupIconClose {
    font-size: 0.09rem;
    padding-right: 0.23rem;
    letter-spacing: 0.16em;
    background-size: 0.14rem auto;
    right: 0;
    top: 0;
  }

  .IsIphone .LightBox.LightBoxFull .LinkText::before {
    top: 52%;
  }
}
@media print, (min-width: 768px) {
  .LightBox .LightBoxWindow {
    width: 972px;
    max-width: 80%;
  }
  .LightBox .PopupIconClose {
    width: 47px;
    height: 47px;
    right: 0;
    top: -54px;
    padding-right: 79px;
    padding-top: 2px;
    white-space: nowrap;
    letter-spacing: 0.16em;
  }
}
@media screen and (min-width: 751px) and (max-width: 1025px) {
  .LightBox.GuestLightBox .GuestImage {
    max-width: 40%;
  }
  .LightBox.GuestLightBox .GuestDetail {
    padding: 64px 48px;
  }

  .LightBox.LightBoxFull .LightBoxBackground,
  .LightBox.LightBoxFull .LightBoxContent {
    padding: 0 30px;
  }
  .LightBox.LightBoxFull .BlockSlider {
    margin-left: -30px;
    margin-right: -30px;
    width: calc(100% + 60px);
  }
  .LightBox.LightBoxFull .LightBoxContent .PopupIconClose.IsTop {
    right: 30px;
  }
}
@media screen and (min-width: 320px) and (max-width: 767px) and (orientation: landscape) {
  .LightBox .LightBoxInner {
    max-height: 50vh;
  }
}
.message .overlay {
  display: none;
  width: 100%;
  height: auto;
  background: rgba(255, 255, 255, 0.98);
  -moz-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  position: fixed;
  z-index: 10000;
}
.message .btn_area {
  width: 100%;
  height: 100%;
  z-index: 10001;
}
.message .btn_area .brandMessage {
  overflow-y: auto;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin: auto;
}
.message .btn_area .brandMessage .txtArea {
  height: auto;
  margin: auto;
  color: #bd0000;
}
.message .btn_area .brandMessage .txtArea p.messageTitle {
  font-weight: bold;
  line-height: 1.8;
}
.message .btn_area .brandMessage .txtArea p.messageTxt {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-weight: normal;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
.message .btn_area .brandMessage::-webkit-scrollbar {
  display: none;
}
.message .btn_area button {
  display: block;
  text-align: left;
  border-bottom: solid 1px #bd0000;
  padding-bottom: 0.2em;
  display: table;
  color: #bd0000;
  font-weight: bold;
  opacity: 1;
  transition: opacity 0.3s linear;
}
.message button:hover {
  opacity: 0.6;
  transition: opacity 0.3s linear;
}
.message .caution {
  font-size: 1.2rem;
  line-height: 2rem;
  color: red;
}
@media print, (min-width: 768px) {
  .message .overlay {
    max-width: 480px;
    left: 50px;
    bottom: 50px;
  }
  .message .brandMessage {
    width: 100%;
    height: 100%;
    padding: 3em;
  }
  .message p.messageTitle {
    font-size: 18px;
    letter-spacing: 0.06rem;
    margin-bottom: 10px;
  }
  .message p.messageTxt {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .message .btn_area button {
    font-size: 14px;
  }
  .message .closeButton {
    padding: 1.2em 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .message .overlay {
    max-width: 100%;
    left: 0;
    bottom: 0;
  }
  .message .brandMessage {
    padding: 25px 25px 40px 25px;
    height: 100%;
  }
  .message p.messageTitle {
    font-size: 14px;
    margin-bottom: 10px;
    letter-spacing: 0;
  }
  .message p.messageTxt {
    font-size: 11px;
    margin-bottom: 10px;
  }
  .message .btn_area button {
    font-size: 12px;
  }
  .message .closeButton {
    padding: 0.2em 0 0;
  }
}

.message2nd .overlay2nd {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(64, 64, 64, 0.9);
  -moz-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  position: fixed;
  z-index: 20000;
}
.message2nd .btn_box {
  width: 100%;
  height: 100%;
  z-index: 20001;
}
.message2nd .btn_box .brandMessage {
  overflow-y: auto;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  display: flex;
  align-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
  margin: auto;
}
.message2nd .btn_box .brandMessage .txtArea {
  height: auto;
  margin: auto;
  color: #232526;
  background-color: #fff;
}
.message2nd .btn_box .brandMessage .txtArea figure {
  width: 100%;
}
.message2nd .btn_box .brandMessage .txtArea img {
  width: 100%;
  max-width: 360px;
  margin: 0 auto;
}
.message2nd .btn_box .brandMessage .txtArea p.messageTitle {
  font-weight: bold;
  line-height: 1.8;
}
.message2nd .btn_box .brandMessage .txtArea p.messageTxt {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-weight: normal;
  line-height: 1.8;
  letter-spacing: 0.01em;
}
.message2nd .btn_box .brandMessage .txtArea p.DetailEvent {
  font-weight: bold;
}
.message2nd .btn_box .brandMessage .txtArea p.DetailEvent.Time2nd:before {
  content: "";
  display: block;
  background: #232526;
  left: 0;
  top: 0;
}
.message2nd .btn_box .brandMessage .txtArea .DetailTitle {
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.2rem;
}
.message2nd .btn_box .brandMessage .txtArea .DetailText {
  font-weight: bold;
  line-height: 1.8;
  text-align: center;
}
.message2nd .btn_box .brandMessage .txtArea .DetailSupp {
  font-weight: bold;
  text-align: center;
  color: #b40000;
}
.message2nd .btn_box .brandMessage .txtArea .DetailEvent {
  font-weight: bold;
}
.message2nd .btn_box .brandMessage .txtArea .EventTime {
  line-height: 1.4;
  text-align: center;
}
.message2nd .btn_box .brandMessage .txtArea .EventTime span {
  display: block;
  line-height: 1.3;
}
.message2nd .btn_box .brandMessage .txtArea .EventTextlink {
  margin-top: 20px;
  text-align: center;
}
.message2nd .btn_box .brandMessage .txtArea .EventTextlink a {
  color: black;
  font-weight: bold;
  font-size: 20px;
  border-bottom: solid 2px;
  padding: 0 1em 2px 0;
  background: url("../images/common/ico_arrow_next_black.svg") no-repeat right center;
}
.message2nd .btn_box .brandMessage .txtArea .TimeHour {
  display: flex;
  align-items: flex-end;
  line-height: 1.6;
}
.message2nd .btn_box .brandMessage .txtArea .TimeSche2nd {
  line-height: 1.6;
  font-feature-settings: "palt";
  text-align: center;
}
.message2nd .btn_box .brandMessage .txtArea .StartTime {
  position: relative;
}
.message2nd .btn_box .brandMessage .txtArea .StartTime::before {
  content: "";
  display: block;
  background: #000;
  position: absolute;
  top: 50%;
  transform: translateX(-50%);
}
.message2nd .btn_box .brandMessage .txtArea .TimeLabel {
  color: #000;
  line-height: 2.5;
}
.message2nd .btn_box .brandMessage .txtArea .TimeLabelTalk {
  color: #000;
  line-height: 2.5;
}
.message2nd .btn_box .brandMessage .txtArea .TimeNote {
  color: #bd0000;
  line-height: 1.75;
  text-align: center;
}
.message2nd .btn_box .brandMessage .txtArea .TimeNote.note2nd {
  color: #232526;
  margin: 24px 0;
}
.message2nd .btn_box .brandMessage .txtArea .dLine {
  background-color: #EDF0F2;
  display: table;
  padding: 8px 10px;
}
.message2nd .btn_box .brandMessage .txtArea .dLine.dEnd {
  background-color: #bdbdbd;
  color: #868686;
}
.message2nd .btn_box .brandMessage .txtArea .ListItems li {
  display: flex;
  align-items: center;
}
.message2nd .btn_box .brandMessage .txtArea .ItemLabel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.08em;
  background: #000;
}
.message2nd .btn_box .brandMessage .txtArea .ItemText {
  font-weight: bold;
  color: #0a0b0b;
}
.message2nd .btn_box .brandMessage .txtArea .ItemText.IsSmall {
  color: #000;
}
.message2nd .btn_box .brandMessage .txtArea .InformationImage {
  flex: 1;
}
.message2nd .btn_box .brandMessage::-webkit-scrollbar {
  display: none;
}
.message2nd .btn_box button {
  display: block;
  margin: auto;
  text-align: center;
  padding: 0.8rem 2.6rem;
  background-color: #232526;
  color: #ffffff;
  border-radius: 25px;
  font-weight: bold;
  opacity: 1;
  transition: opacity 0.3s linear;
  -moz-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -webkit-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  -ms-box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 5px 36px 5px rgba(0, 0, 0, 0.1);
  cursor: pointer;
}
.message2nd button:hover {
  opacity: 0.6;
  transition: opacity 0.3s linear;
}
.message2nd .caution {
  font-size: 1.2rem;
  line-height: 2rem;
  color: red;
}
@media print, (min-width: 768px) {
  .message2nd .overlay {
    max-width: 480px;
    left: 50px;
    bottom: 50px;
  }
  .message2nd .brandMessage {
    width: 100%;
    height: 100%;
    padding: 3em;
  }
  .message2nd .brandMessage .txtArea {
    max-width: 480px;
    padding: 48px;
  }
  .message2nd figure {
    margin-bottom: 48px;
  }
  .message2nd p.messageTitle {
    font-size: 18px;
    letter-spacing: 0.06rem;
    margin-bottom: 10px;
  }
  .message2nd p.messageTxt {
    font-size: 13px;
    margin-bottom: 10px;
  }
  .message2nd .DetailTitle {
    font-size: 42px;
  }
  .message2nd .DetailText {
    font-size: 15px;
    margin: 16px 0 0;
    max-width: 650px;
  }
  .message2nd .DetailSupp {
    font-size: 13px;
    margin: 10px 0 0;
    max-width: 650px;
  }
  .message2nd .DetailEvent {
    margin-top: 32px;
    max-width: 650px;
  }
  .message2nd .DetailEvent.Time2nd {
    margin-top: 0;
  }
  .message2nd .DetailEvent.Time2nd:before {
    width: 100%;
    height: 5px;
  }
  .message2nd .EventTitle {
    font-size: 48px;
    line-height: 3.4rem;
  }
  .message2nd .EventTime {
    font-size: 32px;
  }
  .message2nd .EventTime.app2ndTtl {
    font-size: 24px;
  }
  .message2nd .EventTime span {
    font-size: 25px;
    margin: 0 16px 0 3px;
  }
  .message2nd .StartTime {
    font-size: 22px;
    margin-right: 20px;
  }
  .message2nd .StartTime::before {
    width: 7px;
    height: 2px;
    right: -17px;
  }
  .message2nd .EndTime {
    font-size: 22px;
  }
  .message2nd .EndTimeTalk {
    font-size: 22px;
    margin-right: 3px;
  }
  .message2nd .TimeLabel {
    font-size: 12px;
    margin: 0 5px 0 17px;
  }
  .message2nd .TimeLabelTalk {
    font-size: 12px;
    margin: 0 5px 0 0;
  }
  .message2nd .TimeNote {
    font-size: 14px;
    margin-top: 10px;
  }
  .message2nd .TimeSche2nd {
    font-size: 18px;
    letter-spacing: 0.04rem;
  }
  .message2nd .dLine.d2nd {
    font-size: 17px;
    margin: 18px auto 10px;
    display: inline-block;
  }
  .message2nd .ListItems {
    margin-top: 18px;
  }
  .message2nd .ListItems li {
    margin-bottom: 11px;
  }
  .message2nd .ItemLabel {
    width: 73px;
    height: 21px;
    font-size: 14px;
    padding: 2px 9px 0;
    margin-right: 12px;
  }
  .message2nd .ItemText {
    font-size: 16px;
  }
  .message2nd .ItemText.IsSmall {
    font-size: 16px;
  }
  .message2nd .InformationImage {
    padding-top: 8px;
    padding-left: 30px;
  }
  .message2nd .InformationImage .access-map {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
  }
  .message2nd .InformationImage .access-map iframe {
    width: 100%;
    height: 800px;
  }
  .message2nd .closeButton {
    padding: 24px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .message2nd .overlay {
    max-width: 100%;
    left: 0;
    bottom: 0;
  }
  .message2nd .brandMessage {
    padding: 25px 25px 40px 25px;
    height: 100%;
  }
  .message2nd .brandMessage .txtArea {
    max-width: 100%;
    padding: 0.42rem 0.3rem;
  }
  .message2nd figure {
    margin-bottom: 28px;
  }
  .message2nd p.messageTitle {
    font-size: 14px;
    margin-bottom: 10px;
    letter-spacing: 0;
  }
  .message2nd p.messageTxt {
    font-size: 11px;
    margin-bottom: 10px;
  }
  .message2nd .DetailTitle {
    font-size: 0.24rem;
    letter-spacing: 0.03rem;
  }
  .message2nd .DetailText {
    font-size: 0.14rem;
    margin: 0.11rem 0 0;
    line-height: 1.75;
  }
  .message2nd .DetailSupp {
    font-size: 0.12rem;
    margin: 0.05rem 0 0;
    line-height: 1.75;
  }
  .message2nd .DetailEvent.Time2nd:before {
    width: 100%;
    height: 5px;
  }
  .message2nd .EventTitle {
    font-size: 0.4rem;
  }
  .message2nd .EventTime {
    font-size: 0.28rem;
    margin: 0 0 0.06rem;
  }
  .message2nd .EventTime.app2ndTtl {
    font-size: 0.22rem;
    margin: 0;
  }
  .message2nd .EventTime span {
    font-size: 0.16rem;
    margin: 0 0.1rem 0 0.03rem;
  }
  .message2nd .StartTime {
    font-size: 0.18rem;
    margin-right: 0.12rem;
    line-height: 1.3;
  }
  .message2nd .StartTime::before {
    width: 0.05rem;
    height: 0.02rem;
    right: -0.12rem;
    top: 45%;
  }
  .message2nd .EndTime {
    font-size: 0.19rem;
    line-height: 1.3;
    margin-right: 0.14rem;
  }
  .message2nd .EndTimeTalk {
    font-size: 0.19rem;
    line-height: 1.3;
    margin-right: 0.02rem;
  }
  .message2nd .TimeLabel {
    font-size: 0.1rem;
    margin: 0 0.05rem 0 0;
    line-height: 2.2;
  }
  .message2nd .TimeLabelTalk {
    font-size: 0.1rem;
    margin: 0 0.05rem 0 0;
    line-height: 2.2;
  }
  .message2nd .TimeNote {
    font-size: 0.12rem;
    margin-top: 0.08rem;
  }
  .message2nd .TimeSche2nd {
    font-size: 0.15rem;
    letter-spacing: 0;
  }
  .message2nd .dLine {
    font-size: 0.15rem;
    margin-top: 0;
  }
  .message2nd .dLine.d2nd {
    margin: 0.18rem auto 0.1rem;
    display: inline-block;
  }
  .message2nd .ListItems {
    margin-top: 0.15rem;
  }
  .message2nd .ListItems li {
    margin-bottom: 0.06rem;
  }
  .message2nd .ItemLabel {
    width: 0.53rem;
    height: 0.14rem;
    font-size: 0.09rem;
    padding: 0 0.09rem;
    margin-right: 0.08rem;
  }
  .message2nd .ItemText {
    font-size: 0.14rem;
    line-height: 1.5;
  }
  .message2nd .ItemText.IsSmall {
    font-size: 0.14rem;
  }
  .message2nd .InformationImage {
    margin: 0.4rem -0.3rem;
    width: calc(100% + .6rem);
  }
  .message2nd .InformationImage .access-map {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
  }
  .message2nd .InformationImage .access-map iframe {
    width: 100%;
    height: 100vw;
  }
  .message2nd .btn_box button {
    font-size: 12px;
    padding: 0.1rem 0.3rem;
  }
  .message2nd .closeButton {
    padding: 0.6em 0 0;
  }
}

.SectionContact .ContactApply {
  background: #fff;
}
.SectionContact .ApplyTitle {
  font-weight: bold;
}
.SectionContact .ApplyText {
  color: #232526;
  font-weight: bold;
  line-height: 1.75;
}
.SectionContact .periodData {
  margin-bottom: 1em;
  font-weight: bold;
}
.SectionContact .periodData dt {
  color: white;
  padding: 0.1em 0.3em;
  margin: 0.6em 0 0.3em;
}
.SectionContact .periodData dt span {
  font-size: 125%;
  margin-right: 0.2em;
}
.SectionContact .periodData dt.stay {
  background: #cc25d5;
}
.SectionContact .periodData dt.atnd {
  background: #1882d3;
}
.SectionContact .periodData dt.end {
  background: #999;
}
.SectionContact .periodData dd.end {
  color: #999;
}
.SectionContact .dLine {
  color: #232526;
  font-weight: bold;
  line-height: 1.75;
}
.SectionContact .dLine span {
  background: #edf0f2;
}
.SectionContact .dLine span.dEnd {
  background-color: #bdbdbd;
  color: #868686;
}
.SectionContact .ApplyLink {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #fff;
  background: #232526 url("../images/common/ico_arrow_next_white.svg") right 34px center/8px auto no-repeat;
}
.SectionContact .ContactBlock {
  color: #fff;
  background: #282b33;
  text-align: center;
}
.SectionContact .ContactBlock.IsMedia {
  background: url("../images/common/contact_bg.jpg") center/cover no-repeat;
  position: relative;
}
.SectionContact .ContactBlock.IsMedia::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(92, 49, 0, 0.5);
  position: absolute;
  left: 0;
  top: 0;
  mix-blend-mode: multiply;
}
.SectionContact .ContactBlock.IsMedia .ContactLink {
  background: rgba(255, 255, 255, 0.75) url("../images/common/ico_arrow_next_black.svg") right 19px center/7px auto no-repeat;
  color: #232526;
  border: none;
}
.SectionContact .ContactInner {
  position: relative;
}
.SectionContact .ContactTitle {
  font-weight: bold;
}
.SectionContact .ContactSubTitle {
  font-weight: bold;
  line-height: 1.65;
}
.SectionContact .ContactText {
  font-weight: bold;
  line-height: 1.875;
  margin: 0 auto;
}
.SectionContact .ContactLink {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  border: 2px solid #fff;
  font-weight: bold;
}

@media print, (min-width: 768px) {
  .SectionContact .ContactApply {
    padding: 108px 0 74px;
    text-align: center;
  }
  .SectionContact .ApplyTitle {
    font-size: 32px;
  }
  .SectionContact .ApplyText {
    max-width: 710px;
    font-size: 17px;
    margin: 22px auto;
  }
  .SectionContact .periodData {
    margin-bottom: 2em;
  }
  .SectionContact .periodData dt {
    font-size: 16px;
    display: inline-block;
    margin-right: 0.5em;
  }
  .SectionContact .periodData dd {
    font-size: 20px;
    display: inline-block;
  }
  .SectionContact .periodData dd small {
    font-size: 14px;
  }
  .SectionContact .dLine {
    font-size: 20px;
    margin: 12px auto 20px;
  }
  .SectionContact .dLine span {
    padding: 10px 16px;
  }
  .SectionContact .ApplyLink {
    width: 560px;
    height: 80px;
    margin: 52px auto;
    font-size: 18px;
  }
  .SectionContact .ContactDetail {
    display: flex;
  }
  .SectionContact .ContactBlock {
    padding: 88px 0 60px;
    width: 50%;
  }
  .SectionContact .ContactBlock.IsMedia .ContactImage {
    max-width: 70%;
    min-height: 32px;
    width: 640px;
    margin: 44px auto 42px;
  }
  .SectionContact .ContactBlock.IsMedia .ContactLink {
    width: 211px;
    font-size: 15px;
    padding-top: 2px;
  }
  .SectionContact .ContactTitle {
    font-size: 27px;
    letter-spacing: 0.16em;
  }
  .SectionContact .ContactImage {
    width: 126px;
    margin: 20px auto;
    min-height: 73px;
  }
  .SectionContact .ContactSubTitle {
    font-size: 24px;
    margin: 26px 0 12px;
  }
  .SectionContact .ContactText {
    font-size: 14px;
    min-width: 300px;
  }
  .SectionContact .ContactLink {
    width: 292px;
    height: 44px;
    border: 2px solid #fff;
    font-size: 15px;
    margin: 40px auto;
  }
}
@media only screen and (max-width: 767px) {
  .SectionContact .ContactApply {
    text-align: left;
    padding: 0.52rem 0.3rem;
  }
  .SectionContact .ApplyTitle {
    font-size: 0.2rem;
  }
  .SectionContact .ApplyText {
    font-size: 0.13rem;
    margin: 0.14rem auto;
    line-height: 1.85;
  }
  .SectionContact .periodData dt {
    font-size: 14px;
    display: inline-block;
  }
  .SectionContact .periodData dd {
    font-size: 16px;
    display: block;
  }
  .SectionContact .periodData dd small {
    font-size: 13px;
  }
  .SectionContact .dLine {
    font-size: 0.16rem;
    margin: 0 auto 0.14rem;
    line-height: 1.85;
  }
  .SectionContact .dLine span {
    font-size: 0.15rem;
    padding: 8px 10px;
  }
  .SectionContact .ApplyLink {
    width: 100%;
    height: 0.6rem;
    margin: 0.18rem auto 0.05rem;
    font-size: 0.17rem;
  }
  .SectionContact .ContactBlock {
    padding: 0.48rem 0 0.27rem;
  }
  .SectionContact .ContactBlock.IsMedia {
    background-image: url(../images/common/sp/contact_bg.jpg);
  }
  .SectionContact .ContactBlock.IsMedia .ContactImage {
    width: 3.3rem;
    margin: 0.22rem auto 0.34rem;
  }
  .SectionContact .ContactTitle {
    font-size: 0.28rem;
    letter-spacing: 0.16em;
  }
  .SectionContact .ContactImage {
    width: 99px;
    margin: 15px auto 0;
  }
  .SectionContact .ContactSubTitle {
    font-size: 0.17rem;
    margin: 0.23rem 0 0.09rem;
    line-height: 1.55;
  }
  .SectionContact .ContactText {
    font-size: 0.12rem;
    max-width: 85%;
    line-height: 2;
  }
  .SectionContact .ContactLink {
    margin: 0.31rem auto;
    max-width: 3.3rem;
    height: 0.5rem;
    border: 2px solid #fff;
    font-size: 0.14rem;
  }
}
.applyCheck {
  max-width: 1180px;
  margin: auto;
}

@media print, (min-width: 768px) {
  .applyCheck {
    margin: 0 auto 56px;
    padding: 0 80px;
  }
}
@media only screen and (max-width: 767px) {
  .applyCheck {
    margin: 1em auto 0;
  }
}
.un_cfr-checklist-title {
  border: solid 3px #009944;
  text-align: center;
  color: #009944;
}
.un_cfr-checklist-title .un_cfr-checklist-head {
  font-weight: bold;
  line-height: 1.6em;
}
.un_cfr-checklist-title .un_cfr-checklist-supp {
  font-weight: bold;
  line-height: 1.6em;
  margin-top: 0.5em;
}

@media print, (min-width: 768px) {
  .un_cfr-checklist-title {
    border-radius: 12px;
    padding: 35px;
  }
  .un_cfr-checklist-title .un_cfr-checklist-head {
    font-size: 26px;
  }
  .un_cfr-checklist-title .un_cfr-checklist-supp {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .un_cfr-checklist-title {
    border-radius: 6px;
    padding: 15px;
  }

  .un_cfr-checklist-head {
    font-size: 0.18rem;
  }

  .un_cfr-checklist-supp {
    font-size: 0.12rem;
  }
}
.un_cfr-checkitems {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.un_cfr-checkitems .un_cfr-checkitems-item {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  width: calc(100% / 2 - 4px);
  margin-top: 8px;
  border: solid 3px #009944;
  color: #009944;
}
.un_cfr-checkitems .un_cfr-checkitems-item:hover {
  opacity: 0.75;
}
.un_cfr-checkitems .un_cfr-checkitems-item p {
  font-weight: bold;
  margin-bottom: 10px;
  text-align: left;
}
.un_cfr-checkitems .un_cfr-checkitems-item p span {
  display: inline-block;
  line-height: 1.4;
  font-weight: normal;
}
.un_cfr-checkitems .un_cfr-checkitems-item figure {
  margin: auto auto 0 auto;
}
.un_cfr-checkitems .un_cfr-checkitems-item figure img {
  width: 100%;
  height: auto;
  mix-blend-mode: multiply;
}
.un_cfr-checkitems .un_cfr-checkitems-item div {
  margin-top: 15px;
  text-align: center;
  color: black;
  font-weight: bold;
}
.un_cfr-checkitems .un_cfr-checkitems-item div i {
  margin-left: 5px;
  font-size: 40px;
  color: gainsboro;
  vertical-align: middle;
}
.un_cfr-checkitems .un_cfr-checkitems-item.checked {
  background: #E4F4EB;
}
.un_cfr-checkitems .un_cfr-checkitems-item.checked div i {
  color: #009944;
}

@media print, (min-width: 768px) {
  .un_cfr-checkitems-item {
    position: relative;
    padding: 25px;
    border-radius: 12px;
  }
  .un_cfr-checkitems-item:nth-child(5), .un_cfr-checkitems-item:nth-child(6) {
    width: 100%;
  }
  .un_cfr-checkitems-item:nth-child(5) figure, .un_cfr-checkitems-item:nth-child(6) figure {
    width: 80%;
  }
  .un_cfr-checkitems-item p {
    font-size: 21px;
    line-height: 1.6em;
  }
  .un_cfr-checkitems-item p span {
    font-size: 14px;
  }
  .un_cfr-checkitems-item figure {
    width: 80%;
    max-width: 360px;
  }
  .un_cfr-checkitems-item div {
    width: auto;
    position: absolute;
    right: 25px;
    bottom: 25px;
    font-size: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .un_cfr-checkitems-item {
    padding: 15px;
    border-radius: 6px;
  }
  .un_cfr-checkitems-item:nth-child(5), .un_cfr-checkitems-item:nth-child(6) {
    width: 100%;
  }
  .un_cfr-checkitems-item:nth-child(5) figure, .un_cfr-checkitems-item:nth-child(6) figure {
    width: 50%;
  }
  .un_cfr-checkitems-item p {
    font-size: 0.16rem;
  }
  .un_cfr-checkitems-item p span {
    font-size: 0.12rem;
  }
  .un_cfr-checkitems-item figure {
    width: 100%;
  }
  .un_cfr-checkitems-item div {
    width: 100%;
    font-size: 0.15rem;
  }
}
.un_cfr-button-head {
  font-weight: bold;
  margin-top: 1.5em;
  margin-bottom: 0.8em;
  text-align: center;
}

@media print, (min-width: 768px) {
  .un_cfr-button-head {
    font-size: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .un_cfr-button-head {
    font-size: 18px;
  }
}
.un_cfr-button-reservation {
  line-height: 1.4em;
  font-weight: bold;
  margin-top: 8px;
  display: block;
  background: #009944;
  border-radius: 9px;
  color: white;
  text-align: center;
  text-decoration: none;
  padding: 1em 0.6em;
}
.un_cfr-button-reservation:hover {
  opacity: 0.75;
}
.un_cfr-button-reservation.disable {
  background: #aaa;
  pointer-events: none;
}
.un_cfr-button-reservation small {
  font-size: 50%;
}

@media print, (min-width: 768px) {
  .un_cfr-button-reservation {
    font-size: 24px;
    border-radius: 12px;
    transition: opacity 0.25s linear;
  }
}
@media only screen and (max-width: 767px) {
  .un_cfr-button-reservation {
    font-size: 0.18rem;
    border-radius: 6px;
  }
}
.smallBtn {
  display: inline-block;
  background: #ebebeb;
  border-radius: 16px;
  padding: 0.5em 1em;
  font-weight: bold;
  font-size: 12px;
}
.smallBtn i {
  opacity: 0.5;
  margin-left: 0.3em;
}
.smallBtn__bgWhite {
  background: white;
}
.smallBtn.marginTop {
  margin-top: 1em;
}

@media screen and (min-width: 751px) and (max-width: 1025px) {
  .un_cfr-checkitems-item figure {
    width: 100%;
  }
  .un_cfr-checkitems-item div {
    width: 100%;
    position: unset;
  }
}
/* COMPASS
 * ----------------------------------------------- */
/* BASE
 * ----------------------------------------------- */
/* MEDIA QUERIES
 * ----------------------------------------------- */
/* MODULES
 * ----------------------------------------------- */
.wow {
  visibility: hidden;
}

@media print {
  .wow {
    visibility: visible !important;
  }
}
.animated {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes fade-in-up {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50px);
    -ms-transform: translateY(50px);
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}
.fade-in-up {
  -webkit-animation-name: fade-in-up;
  animation-name: fade-in-up;
}

@-webkit-keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fade-in {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fade-in {
  -webkit-animation-name: fade-in;
  animation-name: fade-in;
}

/* Wow
 * ----------------------------------------------- */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

/*# sourceMappingURL=Wow.css.map */
/* PAGE
 * ----------------------------------------------- */
@-webkit-keyframes loop {
  0%;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  to;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}
.ButtonEntry {
  display: flex;
  background: rgba(35, 37, 38, 0.8);
  color: #fff;
  box-shadow: 0 0 32px rgba(0, 0, 0, 0.15);
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 102;
  font-weight: bold;
  justify-content: center;
}
.ButtonEntry span {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.ButtonEntry .TextEnglish {
  color: #7f8288;
  line-height: 1;
  letter-spacing: 0.16em;
}
.ButtonEntry .TextJapan {
  line-height: 1.3;
  letter-spacing: 0.05em;
}

@media print, (min-width: 768px) {
  .ButtonEntry {
    width: 76px;
    height: 190px;
    padding-top: 32px;
    padding-right: 4px;
  }
  .ButtonEntry .TextEnglish {
    font-size: 13px;
  }
  .ButtonEntry .TextJapan {
    font-size: 18px;
    margin-top: -2px;
  }

  .IsIphone .ButtonEntry {
    width: 55px;
    height: 147px;
    padding-top: 21px;
  }
  .IsIphone .ButtonEntry .TextJapan {
    font-size: 12px;
    margin-top: -2px;
  }
  .IsIphone .ButtonEntry .TextEnglish {
    font-size: 9px;
  }

  .IsAndroid11 .ButtonEntry .TextJapan {
    transform: translateY(-14px);
  }
}
@media only screen and (max-width: 767px) {
  .ButtonEntry {
    width: 0.55rem;
    height: 1.28rem;
    padding-top: 0.21rem;
  }
  .ButtonEntry .TextEnglish {
    font-size: 0.09rem;
    line-height: 1.7;
  }
  .ButtonEntry .TextJapan {
    font-size: 0.12rem;
    margin-top: -0.02rem;
    letter-spacing: 0.09em;
  }

  .IsAndroid11 .ButtonEntry .TextJapan {
    transform: translateY(-0.1rem);
  }
}
.SectionTopKeyvisual {
  position: relative;
  z-index: 11;
}
.SectionTopKeyvisual .KeyvisualInner {
  display: flex;
}
.SectionTopKeyvisual .KeyvisualText {
  line-height: 2.2;
  font-weight: bold;
  color: #edf0f2;
  margin: 20px 0 0 40px;
}
.SectionTopKeyvisual .KeyvisualText span {
  line-height: 1.9;
  background: #232526;
}
.SectionTopKeyvisual .KeyvisualEventTime {
  color: #232526;
  font-weight: bold;
  line-height: 1;
}
.SectionTopKeyvisual .KeyvisualEventTime span {
  font-size: 60%;
  margin: 0 0.3em;
}
.SectionTopKeyvisual .KeyvisualInduction a {
  color: black;
  font-weight: bold;
  border-bottom: solid 1px;
  padding: 0 1em 2px 0;
  background: url("../images/common/ico_arrow_next_black.svg") no-repeat right center;
}
.SectionTopKeyvisual .KeyvisualButton {
  display: block;
  position: relative;
  z-index: 11;
}
.SectionTopKeyvisual .KeyvisualButton a {
  display: inline-block;
  font-weight: bold;
  background: url(../images/common/ico_dropdown.svg) right center/14px auto no-repeat;
  border-bottom: 2px solid #000;
}
.SectionTopKeyvisual .KeyvisualSlider {
  position: relative;
}
.SectionTopKeyvisual .SliderProgress {
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
  z-index: 5;
}
.SectionTopKeyvisual .Progress {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 0;
  background: #fff;
}
.SectionTopKeyvisual .slick-arrow {
  position: absolute;
  background: center/8px auto no-repeat;
  text-indent: -999999px;
  overflow: hidden;
  z-index: 11;
  cursor: pointer;
  transition: all 0.3s;
}
.SectionTopKeyvisual .slick-arrow:hover {
  opacity: 0.8;
  transition: all 0.3s;
}
.SectionTopKeyvisual .slick-prev {
  background-image: url(../images/common/ico_arrow_prev.png);
}
.SectionTopKeyvisual .slick-next {
  background-image: url(../images/common/ico_arrow_next.png);
}
.SectionTopKeyvisual .SliderItem {
  width: 100%;
  height: 100%;
  background: center/cover no-repeat;
  color: #fff;
  position: relative;
  outline: none;
}
.SectionTopKeyvisual .SliderItem.IsFirst {
  background-image: url("../images/top/keyvisual_img_01.jpg");
}
.SectionTopKeyvisual .SliderItem.IsSecond {
  background-image: url("../images/top/keyvisual_img_02.jpg");
}
.SectionTopKeyvisual .SliderItem.IsThird {
  background-image: url("../images/top/keyvisual_img_03.jpg");
}
.SectionTopKeyvisual .SliderItem.IsFourth {
  background-image: url("../images/top/keyvisual_img_04.jpg");
}
.SectionTopKeyvisual .SliderItem.IsFifth {
  background-image: url("../images/top/keyvisual_img_05.jpg");
}
.SectionTopKeyvisual .SliderItem.IsSix {
  background-image: url("../images/top/keyvisual_img_06.jpg");
}
.SectionTopKeyvisual .SliderItem.IsSeven {
  background-image: url("../images/top/keyvisual_img_07.jpg");
}
.SectionTopKeyvisual a {
  color: #fff;
}
.SectionTopKeyvisual .SliderContent {
  position: absolute;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.4);
}
.SectionTopKeyvisual .SliderTitle {
  font-weight: bold;
}
.SectionTopKeyvisual .SliderTitle strike {
  opacity: 0.5;
}
.SectionTopKeyvisual .SliderText {
  font-weight: bold;
  letter-spacing: 0.16rem;
}
.SectionTopKeyvisual .SliderGuest {
  list-style: none;
}
.SectionTopKeyvisual .SliderGuest .SliderGuestItem {
  font-feature-settings: "palt";
  font-weight: bold;
}
.SectionTopKeyvisual .SliderNews {
  background: #000;
  color: #fff;
  font-weight: bold;
  width: 100%;
  position: absolute;
  left: 0;
  bottom: 0;
}
.SectionTopKeyvisual .TimeLink {
  display: block;
  color: #fff;
  flex: 1;
}
.SectionTopKeyvisual .NewsLink {
  display: block;
  background: url("../images/common/ico_dots.png") center/contain no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.SectionTopKeyvisual .NewsLabel {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #bd0000;
}
.SectionTopKeyvisual .NewsTime {
  display: flex;
  align-items: center;
  font-weight: bold;
}
.SectionTopKeyvisual .NewsText {
  display: flex;
  align-items: center;
  font-weight: bold;
}
.SectionTopKeyvisual .SliderInner,
.SectionTopKeyvisual .slick-slider .slick-track,
.SectionTopKeyvisual .slick-slider .slick-list {
  height: 100%;
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.05);
  transition: background-color 0.2s;
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn_icon,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn_icon,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn_icon {
  display: block;
  width: 110px;
  height: 110px;
  background: url(../images/top/btn_mv_play.svg) no-repeat center;
  background-size: 100%;
  margin: 42px 0 20px;
  transition: opacity 0.2s;
  opacity: 0.7;
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn_text,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn_text,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn_text {
  display: block;
  font-size: 16px;
  font-weight: bold;
  transition: opacity 0.2s;
  opacity: 0;
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn:hover,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn:hover,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn:hover {
  background-color: rgba(0, 0, 0, 0.5);
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn:hover .fullPlayBtn_icon,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn:hover .fullPlayBtn_icon,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn:hover .fullPlayBtn_icon {
  opacity: 1;
}
.SectionTopKeyvisual .SliderInner .fullPlayBtn:hover .fullPlayBtn_text,
.SectionTopKeyvisual .slick-slider .slick-track .fullPlayBtn:hover .fullPlayBtn_text,
.SectionTopKeyvisual .slick-slider .slick-list .fullPlayBtn:hover .fullPlayBtn_text {
  opacity: 1;
}
.SectionTopKeyvisual .covidDetail {
  margin: 20px 10px 0 40px;
}
.SectionTopKeyvisual .covidDetail a {
  display: inline-block;
  border: solid 2px #0C8B32;
  background: white;
  color: #0C8B32;
  font-size: 12px;
  font-weight: bold;
  padding: 0.5em 1em;
}
.SectionTopKeyvisual .covidDetail a i {
  margin-left: 0.5em;
}

@media print, (min-width: 768px) {
  .SectionTopKeyvisual {
    margin-top: 137px;
  }
  .SectionTopKeyvisual .KeyvisualContent {
    width: 366px;
    padding-top: 372px;
  }
  .SectionTopKeyvisual .KeyvisualTitle {
    width: 287px;
    margin-bottom: 47px;
  }
  .SectionTopKeyvisual .KeyvisualText {
    font-size: 29.4px;
  }
  .SectionTopKeyvisual .KeyvisualText span {
    padding: 6px;
  }
  .SectionTopKeyvisual .KeyvisualEventTime {
    font-size: 36px;
    margin: 30px 0 0 40px;
  }
  .SectionTopKeyvisual .KeyvisualInduction {
    margin: 20px 0 0 40px;
  }
  .SectionTopKeyvisual .KeyvisualInduction a {
    font-size: 15px;
  }
  .SectionTopKeyvisual .TimeLink {
    display: inline-flex;
    max-width: calc(100% - 117px);
    align-items: center;
  }
  .SectionTopKeyvisual .KeyvisualButton a {
    font-size: 16px;
    padding-right: 21px;
    margin-top: 59px;
  }
  .SectionTopKeyvisual .KeyvisualSlider {
    width: calc(100% - 318px);
    height: calc( calc( 100vw - 318px ) / 16 * 8.666 ) !important;
  }
  .SectionTopKeyvisual .SliderProgress {
    width: 96px;
    height: 2px;
    right: 130px;
    top: 48px;
  }
  .SectionTopKeyvisual .Progress {
    height: 2px;
  }
  .SectionTopKeyvisual .slick-arrow {
    width: 30px;
    height: 30px;
    top: 34px;
    cursor: pointer;
    transition: all 0.3s;
  }
  .SectionTopKeyvisual .slick-arrow:hover {
    opacity: 0.8;
    transition: all 0.3s;
  }
  .SectionTopKeyvisual .slick-prev {
    right: 80px;
  }
  .SectionTopKeyvisual .slick-next {
    right: 48px;
  }
  .SectionTopKeyvisual .SliderContent {
    bottom: 50px;
    left: calc(100% - 700px);
  }
  .SectionTopKeyvisual .SliderContent.SliderContent__report {
    left: calc(100% - 500px);
  }
  .SectionTopKeyvisual .SliderTitle {
    font-size: 59px;
    margin-bottom: 22px;
    line-height: 1.3;
  }
  .SectionTopKeyvisual .SliderText {
    font-size: 17px;
    padding-left: 4px;
    margin-bottom: 8px;
  }
  .SectionTopKeyvisual .SliderVideoPlayBtn {
    display: inline-block;
    border-radius: 4px;
    color: white;
    font-size: 15px;
    font-weight: bold;
    background: url(../images/top/btn_mv_play.svg) no-repeat left center;
    background-size: 28px 100%;
    margin-top: 30px;
    line-height: 1.8em;
    text-shadow: none;
    padding-left: 34px;
  }
  .SectionTopKeyvisual .SliderGuest {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem {
    width: calc(100% / 3 - 10px);
    font-size: 30px;
    line-height: 1.5;
  }
  .SectionTopKeyvisual p.sCap {
    font-size: 11px;
    padding-top: 8px;
    line-height: 1.5;
  }
  .SectionTopKeyvisual .SliderNews {
    display: flex;
    min-height: 60px;
    padding-right: 120px;
  }
  .SectionTopKeyvisual .NewsLink {
    width: 18px;
    height: 18px;
    right: 60px;
  }
  .SectionTopKeyvisual .NewsLabel {
    width: 117px;
  }
  .SectionTopKeyvisual .NewsTime {
    font-size: 12px;
    margin: 0 18px 0 24px;
  }
  .SectionTopKeyvisual .NewsText {
    display: block;
    width: 100%;
    font-size: 12px;
    flex: 1;
    max-width: 100%;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsi;
  }
  .SectionTopKeyvisual .SliderItem {
    width: 100%;
    padding-top: 56.25%;
  }
  .SectionTopKeyvisual .SliderInner {
    height: auto;
  }
  .SectionTopKeyvisual #ytVideo {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
    pointer-events: none;
  }

  .IsTablet .SectionTopKeyvisual .KeyvisualText span {
    display: inline-block;
    line-height: 1;
    padding-bottom: 2px;
    padding-top: 1px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopKeyvisual {
    margin-top: 2.6rem;
    margin-bottom: 1.1rem;
  }
  .SectionTopKeyvisual .KeyvisualInner {
    display: block;
  }
  .SectionTopKeyvisual .KeyvisualContent {
    padding: 0 0.2rem;
    margin-bottom: 0.21rem;
  }
  .SectionTopKeyvisual .KeyvisualTitle {
    width: 1.47rem;
    margin: 0.09rem 0 0.18rem;
  }
  .SectionTopKeyvisual .KeyvisualText {
    background: transparent;
    display: inline-block;
    font-size: 0.237rem;
    line-height: 1.85;
    margin: 15px 0 0 0;
  }
  .SectionTopKeyvisual .KeyvisualText span {
    background: #000;
    padding: 0.04rem 0.05rem;
  }
  .SectionTopKeyvisual .KeyvisualEventTime {
    font-size: 28px;
    padding-top: 20px;
  }
  .SectionTopKeyvisual .KeyvisualInduction {
    margin: 20px 0 0 0;
  }
  .SectionTopKeyvisual .KeyvisualInduction a {
    font-size: 15px;
  }
  .SectionTopKeyvisual .KeyvisualButton a {
    font-size: 0.12rem;
    background-size: 0.11rem auto;
    padding-right: 0.18rem;
    margin-top: 0.34rem;
  }
  .SectionTopKeyvisual .KeyvisualSlider,
  .SectionTopKeyvisual .SliderInner {
    height: 100vw !important;
    min-height: unset;
    width: 100%;
  }
  .SectionTopKeyvisual .KeyvisualSlider .fullPlayBtn,
  .SectionTopKeyvisual .SliderInner .fullPlayBtn {
    background-color: rgba(0, 0, 0, 0.25);
  }
  .SectionTopKeyvisual .KeyvisualSlider .fullPlayBtn .fullPlayBtn_icon,
  .SectionTopKeyvisual .SliderInner .fullPlayBtn .fullPlayBtn_icon {
    opacity: 1;
  }
  .SectionTopKeyvisual .KeyvisualSlider .fullPlayBtn .fullPlayBtn_text,
  .SectionTopKeyvisual .SliderInner .fullPlayBtn .fullPlayBtn_text {
    opacity: 1;
  }
  .SectionTopKeyvisual .SliderNews {
    position: static;
  }
  .SectionTopKeyvisual .SliderProgress {
    width: 0.96rem;
    height: 0.02rem;
    right: 1.01rem;
    bottom: 0.21rem;
  }
  .SectionTopKeyvisual .Progress {
    height: 0.02rem;
  }
  .SectionTopKeyvisual .slick-arrow {
    width: 0.3rem;
    height: 0.3rem;
    bottom: 0.07rem;
  }
  .SectionTopKeyvisual .slick-prev {
    right: 0.5rem;
  }
  .SectionTopKeyvisual .slick-next {
    right: 0.18rem;
  }
  .SectionTopKeyvisual .SliderContent {
    min-width: 280px;
    bottom: 0.26rem;
    left: 0.2rem;
    text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.6);
  }
  .SectionTopKeyvisual .SliderTitle {
    font-size: 0.32rem;
    margin-bottom: 0.06rem;
  }
  .SectionTopKeyvisual .SliderText {
    font-size: 0.11rem;
    letter-spacing: 0.04rem;
  }
  .SectionTopKeyvisual .SliderVideoPlayBtn {
    font-size: 15px;
    font-weight: bold;
    background: url(../images/common/ico_videoplay.svg) no-repeat left center;
    background-size: auto 100%;
    margin-top: 12px;
    line-height: 1.8em;
    padding-left: 2.4em;
  }
  .SectionTopKeyvisual .SliderGuest {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem {
    width: calc(100% / 3 - 4px);
    font-size: 0.16rem;
    line-height: 1.5;
  }
  .SectionTopKeyvisual p.sCap {
    font-size: 0.08rem;
    padding-top: 8px;
    line-height: 1.5;
  }
  .SectionTopKeyvisual .SliderNews {
    position: relative;
  }
  .SectionTopKeyvisual .NewsLink {
    width: 0.18rem;
    height: 0.18rem;
    right: 0.18rem;
    top: 0.2rem;
  }
  .SectionTopKeyvisual .NewsLabel {
    font-size: 0.14rem;
    justify-content: flex-start;
    padding: 0.12rem 0.18rem 0.1rem;
  }
  .SectionTopKeyvisual .NewsTime {
    font-size: 0.12rem;
    padding: 0.12rem 0.18rem 0.05rem;
  }
  .SectionTopKeyvisual .NewsText {
    font-size: 0.12rem;
    padding: 0 0.18rem 0.18rem;
  }
  .SectionTopKeyvisual #ytVideo {
    width: 177.777vw;
    height: 100%;
    margin-left: calc(-77.777vw / 2);
    pointer-events: none;
  }
  .SectionTopKeyvisual .covidDetail {
    margin: 10px 0 0 0;
  }
}
.SectionTopConcept {
  font-weight: bold;
  position: relative;
  overflow: hidden;
}
.SectionTopConcept .Wrapper {
  position: relative;
}
.SectionTopConcept .ConceptLabel {
  letter-spacing: 0.16em;
}
.SectionTopConcept .ConceptTitle {
  line-height: 1.3;
}
.SectionTopConcept .ConceptTitle strike {
  color: #aaa;
}
.SectionTopConcept .ConceptText {
  line-height: 2;
}
.SectionTopConcept .ConceptBackground {
  position: absolute;
  mix-blend-mode: multiply;
}
.SectionTopConcept .ConceptBackground img {
  width: 100%;
}
.SectionTopConcept .AuthorName {
  font-size: 16px;
}
.SectionTopConcept .AuthorName span {
  font-size: 12px;
}

@media print, (min-width: 768px) {
  .SectionTopConcept {
    margin-top: 1px;
    padding-top: 354px;
    padding-bottom: 166px;
  }
  .SectionTopConcept .AnimationText {
    top: 38px;
  }
  .SectionTopConcept .ConceptLabel {
    font-size: 18px;
  }
  .SectionTopConcept .ConceptTitle {
    font-size: 54px;
    margin: 43px 0 48px -5px;
  }
  .SectionTopConcept .ConceptText {
    font-size: 18px;
    margin-bottom: 36px;
    max-width: 716px;
  }
  .SectionTopConcept .ConceptBackground {
    width: 1176px;
    right: 0;
    top: 52.8%;
    transform: translateY(-50%);
  }
  .SectionTopConcept .AuthorName {
    font-size: 19px;
  }
  .SectionTopConcept .AuthorName span {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopConcept {
    padding-top: 3.37rem;
    padding-bottom: 0.83rem;
  }
  .SectionTopConcept .ConceptLabel {
    font-size: 0.12rem;
  }
  .SectionTopConcept .ConceptTitle {
    font-size: 0.26rem;
    margin: 0.27rem -0.2rem 0.42rem 0;
  }
  .SectionTopConcept .ConceptText {
    font-size: 0.15rem;
    margin-bottom: 0.28rem;
  }
  .SectionTopConcept .ConceptBackground {
    width: 100%;
    left: 0;
    top: -0.02rem;
  }
  .SectionTopConcept .AnimationText {
    top: 2.91rem;
  }
}
.SectionTopMessage {
  background: #fff;
  position: relative;
}
.SectionTopMessage .MessageInner {
  width: 100%;
}
.SectionTopMessage .MessageVideo {
  position: relative;
  pointer-events: none;
}
.SectionTopMessage .MessageVideo .MessageVideoInner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.SectionTopMessage .MessageVideo .MessageVideoInner iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.SectionTopMessage .MessageContent {
  flex: 1;
  position: relative;
}
.SectionTopMessage .MessageLabel {
  font-weight: bold;
  letter-spacing: 0.16em;
}
.SectionTopMessage .MessageTitle {
  font-weight: bold;
  line-height: 1.6;
  color: #232526;
}
.SectionTopMessage .MessageText {
  color: #232526;
  line-height: 2;
  font-weight: bold;
  letter-spacing: -0.01em;
}
.SectionTopMessage .MessagePresident {
  display: flex;
  flex-wrap: wrap;
  font-weight: bold;
  color: #232526;
}
.SectionTopMessage .PresidentText {
  width: 100%;
  letter-spacing: 0.15em;
}
.SectionTopMessage .PresidentName {
  letter-spacing: 0.15em;
}
.SectionTopMessage .PresidentSignature {
  mix-blend-mode: multiply;
  position: relative;
}
.SectionTopMessage .ContentImage {
  position: absolute;
  bottom: 0;
}

@media print, (min-width: 768px) {
  .SectionTopMessage {
    padding-bottom: 263px;
  }
  .SectionTopMessage .AnimationText {
    top: 368px;
  }
  .SectionTopMessage .MessageInner {
    display: flex;
    align-items: flex-start;
    padding-right: calc(50% - 680px);
  }
  .SectionTopMessage .MessageVideo {
    width: 100%;
    margin-top: -88px;
  }
  .SectionTopMessage .MessageVideo iframe {
    height: 557px;
  }
  .SectionTopMessage .PresidentSignature {
    width: 122px;
  }
  .SectionTopMessage .MessageContent {
    padding: 12.7% 0 113px 7%;
    min-width: 700px;
  }
  .SectionTopMessage .MessageLabel {
    font-size: 18px;
    margin-left: 4px;
  }
  .SectionTopMessage .MessageTitle {
    font-size: 38px;
    margin: 49px 0 44px;
  }
  .SectionTopMessage .MessageText {
    font-size: 18px;
    margin-bottom: 36px;
  }
  .SectionTopMessage .MessagePresident {
    display: flex;
    margin-top: 66px;
  }
  .SectionTopMessage .PresidentText {
    font-size: 14px;
    margin-bottom: 17px;
  }
  .SectionTopMessage .PresidentName {
    font-size: 21px;
    margin-right: 13px;
  }
  .SectionTopMessage .PresidentSignature {
    top: -6px;
  }
  .SectionTopMessage .ContentImage {
    width: 482px;
    right: calc(100% + 82px);
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopMessage {
    padding-bottom: 1.81rem;
    background: transparent;
    position: relative;
  }
  .SectionTopMessage:before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - .4rem);
    position: absolute;
    top: 0.4rem;
    left: 0;
    background: #fff;
  }
  .SectionTopMessage .AnimationText {
    top: 1.69rem;
    z-index: 11;
  }
  .SectionTopMessage .MessageVideo {
    width: 3.6rem;
    margin-top: -0.4rem;
    position: relative;
    z-index: 12;
  }
  .SectionTopMessage .PresidentSignature {
    width: 1.22rem;
  }
  .SectionTopMessage .MessageContent {
    padding: 0.72rem 0.3rem 0 0.26rem;
  }
  .SectionTopMessage .MessageLabel {
    font-size: 0.12rem;
    margin-left: 0.04rem;
  }
  .SectionTopMessage .MessageTitle {
    font-size: 0.22rem;
    margin: 0.28rem 0.04rem 0.34rem;
    line-height: 1.75;
  }
  .SectionTopMessage .MessageText {
    font-size: 0.15rem;
    margin: 0 0.04rem 0.28rem;
  }
  .SectionTopMessage .MessagePresident {
    display: flex;
    margin-top: 0.55rem;
    margin-left: 0.04rem;
  }
  .SectionTopMessage .PresidentText {
    font-size: 0.1rem;
    margin-bottom: 0.15rem;
  }
  .SectionTopMessage .PresidentName {
    font-size: 0.18rem;
    margin-right: 0.11rem;
  }
  .SectionTopMessage .PresidentSignature {
    width: 1.05rem;
    top: -0.11rem;
  }
  .SectionTopMessage .ContentImage {
    position: static;
    width: 100%;
    margin-top: 0.22rem;
    padding-left: 0.04rem;
  }
}
.SectionTopNature {
  background: #fff;
  position: relative;
  z-index: 5;
}
.SectionTopNature .NatureHeading {
  color: #232526;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  mix-blend-mode: difference;
  transition: all 0.1s;
  z-index: 98;
}
.SectionTopNature .NatureHeading.IsFixed {
  position: fixed;
}
.SectionTopNature .NatureHeading.IsBottom {
  opacity: 0;
  visibility: hidden;
}
.SectionTopNature .NatureTitle {
  font-weight: bold;
  line-height: 1.3;
  color: #fff;
  min-width: max-content;
}
.SectionTopNature .NatureTitle strike {
  color: #555;
}
.SectionTopNature .NatureText {
  font-weight: bold;
  line-height: 1.45;
  color: #fff;
}
.SectionTopNature .IsFirst {
  margin: 0 auto;
}

@media print, (min-width: 768px) {
  .SectionTopNature {
    padding-top: 226px;
    padding-bottom: 53px;
  }
  .SectionTopNature .NatureHeading {
    padding-left: 60px;
  }
  .SectionTopNature .NatureTitle {
    font-size: 98px;
  }
  .SectionTopNature .NatureText {
    font-size: 30px;
    margin: 14px 0 0 6px;
  }
  .SectionTopNature .IsFirst {
    width: 700px;
    max-width: 35%;
  }
  .SectionTopNature .IsSecond {
    width: 284px;
    margin: -6.75% 15.45% 0 auto;
    max-width: 15%;
  }
  .SectionTopNature .IsThird {
    width: 727px;
    margin-top: -7.9%;
    max-width: 38%;
  }
  .SectionTopNature .IsFourth {
    width: 819px;
    margin: -10.9% 3.1% 0 auto;
    max-width: 42.8%;
  }
  .SectionTopNature .IsFifth {
    width: 636px;
    margin: -8.1% 0 0 15.3%;
    max-width: 33.5%;
  }
  .SectionTopNature .IsSixth {
    width: 547px;
    margin: 9% auto 173px;
    max-width: 29%;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopNature {
    padding-top: 0.53rem;
    padding-bottom: 0.53rem;
  }
  .SectionTopNature .NatureHeading {
    padding-left: 0.3rem;
    width: 100%;
  }
  .SectionTopNature .NatureTitle {
    font-size: 0.45rem;
  }
  .SectionTopNature .NatureText {
    font-size: 0.14rem;
    margin: 0.07rem 0 0 0;
  }
  .SectionTopNature .IsFirst {
    width: 2.2rem;
  }
  .SectionTopNature .IsSecond {
    width: 1.42rem;
    margin: 0.73rem 0rem 0 2.18rem;
  }
  .SectionTopNature .IsThird {
    width: 2.65rem;
    margin-top: 0.52rem;
  }
  .SectionTopNature .IsFourth {
    width: 1.95rem;
    margin: 0.54rem 0 0 auto;
  }
  .SectionTopNature .IsFifth {
    width: 2.26rem;
    margin: 0.54rem 0 0 0.18rem;
  }
  .SectionTopNature .IsSixth {
    width: 2.3rem;
    margin: 0.54rem auto 0.67rem;
  }

  .IsIphone .SectionTopNature .NatureTitle {
    letter-spacing: -0.01em;
  }
}
.SectionTopSocial {
  position: relative;
  z-index: 9;
}
.SectionTopSocial .SocialList {
  display: flex;
  margin-left: auto;
  background: url("../images/top/social_bg.jpg") center/100% 100% no-repeat;
}
.SectionTopSocial .SocialList li {
  width: 20%;
}
.SectionTopSocial .ItemTitle {
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.16em;
  text-align: center;
}
.SectionTopSocial .ItemTitle span {
  display: block;
  font-weight: bold;
  letter-spacing: 0.11em;
  line-height: 1.1;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
}
.SectionTopSocial .SocialContent {
  position: relative;
}
.SectionTopSocial .SocialDetail {
  position: absolute;
  color: #fff;
}
.SectionTopSocial .SocialTitle {
  font-weight: bold;
  letter-spacing: 0.16em;
  line-height: 1.6;
}
.SectionTopSocial .SocialText {
  font-weight: bold;
  line-height: 1.85;
}
.SectionTopSocial .SocialLink {
  display: flex;
  font-weight: bold;
  align-items: center;
  justify-content: center;
  color: #fff;
  border: 1px solid #fff;
  background: url("../images/common/ico_arrow_next_white.svg") right 27px center/7px auto no-repeat;
}

@media print, (min-width: 768px) {
  .SectionTopSocial {
    padding-bottom: 250px;
  }
  .SectionTopSocial .SocialList {
    width: auto;
    height: 860px;
    margin-top: -76px;
    margin-left: calc(50% - 680px);
  }
  .SectionTopSocial .ItemTitle {
    font-size: 26px;
    margin-top: 66px;
  }
  .SectionTopSocial .ItemTitle span {
    font-size: 136px;
  }
  .SectionTopSocial .SocialDetail {
    top: 40.3%;
    left: calc(50% - 600px);
  }
  .SectionTopSocial .SocialTitle {
    font-size: 56px;
  }
  .SectionTopSocial .SocialText {
    font-size: 26px;
    margin-top: 7px;
    margin-bottom: 29px;
  }
  .SectionTopSocial .SocialLink {
    width: 211px;
    height: 50px;
    font-size: 17px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopSocial {
    padding-bottom: 0.76rem;
  }
  .SectionTopSocial .SocialList {
    width: 3.54rem;
    height: 4.3rem;
    margin: -0.45rem auto 0;
    background-image: url("../images/top/sp/social_bg.jpg");
    background-size: cover;
  }
  .SectionTopSocial .SocialImage img {
    width: 100%;
  }
  .SectionTopSocial .ItemTitle {
    font-size: 0.11rem;
    margin-top: 0.16rem;
  }
  .SectionTopSocial .ItemTitle span {
    font-size: 0.37rem;
    line-height: 1.18;
  }
  .SectionTopSocial .SocialDetail {
    bottom: 0.42rem;
    left: 0.6rem;
  }
  .SectionTopSocial .SocialTitle {
    font-size: 0.28rem;
  }
  .SectionTopSocial .SocialText {
    font-size: 0.14rem;
    margin-top: 0.03rem;
    margin-bottom: 0.2rem;
  }
  .SectionTopSocial .SocialLink {
    width: 2.7rem;
    height: 0.44rem;
    font-size: 0.14rem;
    background-position: right 0.24rem center;
    background-size: 0.05rem auto;
  }
}
.SectionTopNews {
  position: relative;
  z-index: 1;
}
.SectionTopNews:before {
  content: "";
  display: block;
  position: absolute;
  background: #fff;
  top: 0;
  left: 0;
}
.SectionTopNews .NewsInner {
  position: relative;
  z-index: 1;
}
.SectionTopNews .NewsTitle {
  display: flex;
  align-items: flex-end;
  font-weight: bold;
  color: #232526;
  letter-spacing: 0.16em;
  line-height: 1;
  pointer-events: none;
}
.SectionTopNews .NewsTitle span {
  color: #232526;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  letter-spacing: 0;
  line-height: 1.6;
}
.SectionTopNews .NewsSlider {
  display: flex;
}
.SectionTopNews .SliderItem {
  outline: none;
}
.SectionTopNews .slick-arrow {
  text-indent: -99999px;
  overflow: hidden;
  position: absolute;
  background: center/100% auto no-repeat;
  cursor: pointer;
}
.SectionTopNews .slick-prev {
  background-image: url("../images/common/ico_slider_prev.svg");
}
.SectionTopNews .slick-prev.slick-disabled {
  background-image: url("../images/common/ico_slider_prev_gray.svg");
  cursor: unset;
}
.SectionTopNews .slick-next {
  background-image: url("../images/common/ico_slider_next.svg");
}
.SectionTopNews .slick-next.slick-disabled {
  background-image: url("../images/common/ico_slider_next_gray.svg");
  cursor: unset;
}
.SectionTopNews .ItemLabel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: bold;
  background: #bd0000;
  position: relative;
}
.SectionTopNews .ItemTitle {
  font-weight: bold;
  line-height: 1.625;
}
.SectionTopNews .ItemTime {
  display: block;
  font-weight: 500;
  color: #7f8288;
}

@media print, (min-width: 768px) {
  .SectionTopNews {
    margin-top: 144px;
    padding-bottom: 184px;
  }
  .SectionTopNews:before {
    max-width: 1440px;
    width: 88%;
    height: 830px;
  }
  .SectionTopNews .NewsInner {
    margin-left: calc(50% - 680px);
    padding-top: 193px;
  }
  .SectionTopNews .NewsTitle {
    font-size: 56px;
  }
  .SectionTopNews .NewsTitle span {
    font-size: 23px;
    margin-left: 26px;
  }
  .SectionTopNews .NewsSlider {
    padding: 20px 0 0 20px;
    margin-top: 37px;
  }
  .SectionTopNews .slick-list {
    margin: 0 -20px;
  }
  .SectionTopNews .slick-slide {
    margin: 0 20px;
  }
  .SectionTopNews .SliderItem {
    width: 340px;
  }
  .SectionTopNews .slick-arrow {
    width: 63px;
    height: 25px;
    right: calc(50% - 680px);
    top: -64px;
  }
  .SectionTopNews .slick-arrow:hover {
    opacity: 0.8;
  }
  .SectionTopNews .slick-prev {
    right: calc(50% - 525px);
  }
  .SectionTopNews .slick-next {
    right: calc(50% - 632px);
  }
  .SectionTopNews .ItemLabel {
    height: 28px;
    font-size: 12px;
    top: -14px;
    padding: 0 15.5px;
    margin-bottom: -1px;
  }
  .SectionTopNews .ItemTitle {
    font-size: 16px;
  }
  .SectionTopNews .ItemTime {
    font-size: 13px;
    margin-top: 9px;
    text-indent: 2px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopNews {
    position: relative;
    z-index: 1;
  }
  .SectionTopNews:before {
    width: 3.24rem;
    height: 3.84rem;
    top: 0.68rem;
  }
  .SectionTopNews .NewsInner {
    padding: 0 0 0 0.3rem;
  }
  .SectionTopNews .NewsTitle {
    font-size: 0.28rem;
  }
  .SectionTopNews .NewsTitle span {
    font-size: 0.12rem;
  }
  .SectionTopNews .NewsSlider {
    padding: 0.2rem 0 0 0.12rem;
    margin-top: 0.3rem;
  }
  .SectionTopNews .slick-list {
    margin: 0 -0.12rem;
  }
  .SectionTopNews .slick-slide {
    margin: 0 0.12rem;
  }
  .SectionTopNews .SliderItem {
    width: 2.48rem;
  }
  .SectionTopNews .slick-arrow {
    width: 0.48rem;
    height: 0.25rem;
    bottom: -0.59rem;
  }
  .SectionTopNews .slick-prev {
    right: 1.09rem;
  }
  .SectionTopNews .slick-next {
    right: 0.28rem;
  }
  .SectionTopNews .ItemLabel {
    height: 0.21rem;
    font-size: 0.09rem;
    top: -0.22rem;
    padding: 0 0.12rem;
  }
  .SectionTopNews .ItemTitle {
    font-size: 0.15rem;
    margin-top: -0.16rem;
    line-height: 1.55;
  }
  .SectionTopNews .ItemTime {
    font-size: 0.09rem;
    margin-top: 0.05rem;
  }
}
.SectionTopExpo {
  position: relative;
}
.SectionTopExpo .Wrapper {
  position: relative;
}
.SectionTopExpo .AnimationText {
  top: 0;
}
.SectionTopExpo .ExpoText {
  font-weight: bold;
  line-height: 1.9;
}
.SectionTopExpo .ExpoText.HasIcon {
  position: relative;
}
.SectionTopExpo .ExpoText.HasIcon:before {
  content: "";
  display: block;
  background: url("../images/top/ico_message.png") center/contain no-repeat;
  position: absolute;
  left: 0;
  transform: translateY(-50%);
}
.SectionTopExpo .ExpoNote {
  font-weight: bold;
  color: #7f8288;
  line-height: 1.75;
}
.SectionTopExpo .ExpoNote span {
  color: #bd0000;
}

@media print, (min-width: 768px) {
  .SectionTopExpo {
    padding-top: 206px;
    padding-bottom: 140px;
  }
  .SectionTopExpo .AnimationText {
    top: -102px;
  }
  .SectionTopExpo .CommonTitle {
    margin-bottom: 36px;
  }
  .SectionTopExpo .ExpoText {
    font-size: 21px;
  }
  .SectionTopExpo .ExpoText.HasIcon {
    padding-left: 39px;
    margin-top: 1px;
  }
  .SectionTopExpo .ExpoText.HasIcon:before {
    width: 32px;
    height: 30px;
    top: 54%;
  }
  .SectionTopExpo .ExpoNote {
    font-size: 14px;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopExpo {
    padding-top: 0.71rem;
    padding-bottom: 1.84rem;
    top: 1.01rem;
  }
  .SectionTopExpo .AnimationText {
    top: -0.32rem;
  }
  .SectionTopExpo .CommonTitle {
    margin-bottom: 0.28rem;
  }
  .SectionTopExpo .ExpoText {
    font-size: 0.16rem;
    line-height: 1.8;
  }
  .SectionTopExpo .ExpoText.HasIcon {
    text-indent: 0.29rem;
  }
  .SectionTopExpo .ExpoText.HasIcon:before {
    width: 0.24rem;
    height: 0.22rem;
    top: 0.16rem;
    left: 0.02rem;
  }
  .SectionTopExpo .ExpoNote {
    font-size: 0.11rem;
    margin-top: 0.11rem;
  }
}
.SectionTopFuture {
  background: #fff;
}
.SectionTopFuture .FutureInner {
  position: relative;
}
.SectionTopFuture .FutureTitle {
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.16rem;
  position: relative;
  z-index: 1;
}
.SectionTopFuture .FutureImage {
  position: absolute;
}
.SectionTopFuture .SpeakerTitle {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  letter-spacing: 0.16em;
}
.SectionTopFuture .SpeakerList {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.SectionTopFuture .SpeakerItem {
  width: 100%;
  cursor: pointer;
}
.SectionTopFuture .SpeakerDetail {
  color: #000;
  position: relative;
}
.SectionTopFuture .SpeakerName {
  font-weight: 500;
  letter-spacing: 0.1em;
}
.SectionTopFuture .SpeakerName span {
  display: block;
  font-weight: 600;
  font-feature-settings: "palt";
}
.SectionTopFuture .SpeakerPosition {
  font-weight: bold;
}
.SectionTopFuture .SpeakerIcon {
  position: absolute;
  background-color: #fff;
  border-radius: 100%;
}
.SectionTopFuture .FutureTime.IsActive .TimeTitle:not(.TimeClose) {
  color: #232526;
  background-color: #fff;
  background: url("../images/common/ico_arrow_circle_up_black.png") right 45px center/42px auto no-repeat;
}
.SectionTopFuture .TimeHeading {
  cursor: pointer;
}
.SectionTopFuture .TimeContent {
  display: none;
}
.SectionTopFuture .TimeTitle {
  display: flex;
  align-items: center;
  font-weight: bold;
  color: #fff;
  background: #232526 url("../images/common/ico_arrow_circle_down.png") right 45px center/42px auto no-repeat;
  letter-spacing: 0.16em;
  box-shadow: 0 0 26px rgba(12, 15, 18, 0.05);
  transition: all 0.3s;
}
.SectionTopFuture .TimeTitle span {
  font-weight: bold;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  letter-spacing: -0.01em;
}
.SectionTopFuture .TimeClose {
  background-color: #ededed;
  background: #ececec url("../images/common/ico_arrow_circle_up_black.png") right 45px center/42px auto no-repeat;
  color: #232526;
  box-shadow: none;
  cursor: pointer;
  font-family: Arial, sans-serif;
}
.SectionTopFuture .ListDetail {
  display: flex;
  justify-content: space-between;
}
.SectionTopFuture .DetailLabel {
  font-weight: bold;
  letter-spacing: 0.04em;
  text-align: right;
}
.SectionTopFuture .DetailTitle {
  display: flex;
  align-items: flex-end;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
}
.SectionTopFuture .DetailTitle span {
  letter-spacing: 0;
  line-height: 1.1;
}
.SectionTopFuture .PresentationTitle {
  font-weight: bold;
  letter-spacing: 0em;
}
.SectionTopFuture .ItemPresentation {
  display: flex;
  align-items: flex-start;
}
.SectionTopFuture .PresentationTime {
  display: block;
  color: #d0d0d0;
  font-weight: bold;
}
.SectionTopFuture .PresentationTime span {
  display: inline-block;
  line-height: 1;
}
.SectionTopFuture .StartTime {
  position: relative;
}
.SectionTopFuture .StartTime::after {
  content: "";
  display: block;
  background: #d0d0d0;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.SectionTopFuture .PresentationDetail {
  flex: 1;
}
.SectionTopFuture .PresentationDetail .Item {
  display: flex;
  align-items: center;
}
.SectionTopFuture .PresentationDetail .ItemName {
  display: flex;
  align-items: center;
  flex: 1;
  font-weight: 600;
}
.SectionTopFuture .PresentationDetail .ItemName span {
  letter-spacing: 0.1em;
  font-weight: 400;
}
.SectionTopFuture .PresentationDetailTitle {
  font-weight: 600;
  line-height: 1.58;
}
.SectionTopFuture .PresentationDetailText {
  font-weight: bold;
  color: #7f8288;
  line-height: 1.75;
}
.SectionTopFuture .PresentationSpeaker {
  font-weight: bold;
  letter-spacing: 0.16em;
  border-bottom: 1px solid #c7c7c7;
}

@media print, (min-width: 768px) {
  .SectionTopFuture {
    padding: 110px 0 0;
  }
  .SectionTopFuture.noTopPadding {
    padding-top: 0;
  }
  .SectionTopFuture .FutureInner {
    margin-left: calc(50% - 680px);
  }
  .SectionTopFuture .FutureTitle {
    font-size: 118px;
    margin-left: -5px;
    margin-bottom: 84px;
    color: #fff;
    mix-blend-mode: difference;
  }
  .SectionTopFuture .FutureImage {
    right: 0;
    top: -208px;
    max-width: 993px;
    width: 90%;
    margin-left: 120px;
  }
  .SectionTopFuture .FutureImage.instagram {
    top: -150px;
  }
  .SectionTopFuture .SpeakerTitle {
    height: 61px;
    font-size: 18px;
    padding-top: 2px;
  }
  .SectionTopFuture .SpeakerList li {
    width: calc(100% / 4 - 2%);
    display: flex;
  }
  .SectionTopFuture .SpeakerItem {
    margin: 40px 0 0;
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.09);
  }
  .SectionTopFuture .SpeakerImage {
    width: 100%;
    height: auto;
  }
  .SectionTopFuture .SpeakerDetail {
    margin: 0 25px;
    padding: 29px 0;
  }
  .SectionTopFuture .SpeakerName {
    font-size: 11px;
  }
  .SectionTopFuture .SpeakerName span {
    font-size: 26px;
  }
  .SectionTopFuture .SpeakerPosition {
    margin-top: 5px;
    font-size: 11px;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels {
    display: block;
    margin-top: 9px;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels span.labelDate {
    display: inline-block;
    margin-top: 3px;
    margin-right: 3px;
    padding: 2px 8px;
    background: #e6e6e6;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels span.label {
    display: inline-block;
    margin-top: 3px;
    background: #d88c00;
    color: white;
    padding: 2px 8px;
  }
  .SectionTopFuture .SpeakerIcon {
    width: 52px;
    height: 52px;
    top: -26px;
    right: -10px;
    background: #fff url(../images/top/ico_message.png) center/24px auto no-repeat;
    z-index: 1;
    box-shadow: 0 0 18px rgba(0, 0, 0, 0.09);
  }
  .SectionTopFuture .FutureTime.IsActive .TimeTitle:not(.TimeClose) {
    box-shadow: 0 0 46px rgba(12, 15, 18, 0.11);
  }
  .SectionTopFuture .TimeTitle {
    height: 124px;
    font-size: 38px;
    padding: 0 49px;
    box-shadow: 0 0 26px rgba(12, 15, 18, 0.05);
  }
  .SectionTopFuture .TimeTitle span {
    font-size: 18px;
    margin-left: 27px;
  }
  .SectionTopFuture .TimeClose span {
    margin-left: 34px;
  }
  .SectionTopFuture .ListDetail {
    margin-top: 66px;
  }
  .SectionTopFuture .ListDetail.noMarginTop {
    margin-top: 0;
  }
  .SectionTopFuture .DetailItem {
    width: 30.7%;
    max-width: 454px;
  }
  .SectionTopFuture .DetailItem.one {
    width: 100%;
    max-width: none;
  }
  .SectionTopFuture .DetailItem.two {
    width: 48.025%;
    max-width: none;
  }
  .SectionTopFuture .DetailLabel {
    font-size: 20px;
    letter-spacing: 0.04em;
  }
  .SectionTopFuture .DetailTitle {
    font-size: 56px;
    border-top: 5px solid #000;
    margin-top: 7px;
    margin-bottom: 56px;
    padding-top: 12px;
  }
  .SectionTopFuture .DetailTitle.noMarginBottom {
    margin-bottom: 0;
  }
  .SectionTopFuture .DetailTitle span {
    font-size: 34px;
    margin: 0;
  }
  .SectionTopFuture .PresentationBlock {
    margin-bottom: 72px;
  }
  .SectionTopFuture .PresentationTitle {
    font-size: 18px;
    border-bottom: 3px solid #000;
    padding-bottom: 8px;
  }
  .SectionTopFuture .ItemPresentation {
    padding-top: 16px;
    border-bottom: 1px solid #c7c7c7;
  }
  .SectionTopFuture .ItemPresentation + .ItemPresentation {
    margin-top: 4px;
  }
  .SectionTopFuture .PresentationTime {
    font-size: 30px;
    width: 110px;
  }
  .SectionTopFuture .PresentationTime span {
    margin-bottom: 26px;
  }
  .SectionTopFuture .StartTime::after {
    width: 3px;
    height: 20px;
    top: calc(100% + 5px);
  }
  .SectionTopFuture .PresentationDetail .ListItems {
    margin-top: 16px;
  }
  .SectionTopFuture .PresentationDetail .Item {
    margin-bottom: 17px;
  }
  .SectionTopFuture .PresentationDetail .ItemImage {
    width: 36px;
  }
  .SectionTopFuture .PresentationDetail .ItemName {
    font-size: 16px;
    margin-left: 10px;
    padding-top: 3px;
  }
  .SectionTopFuture .PresentationDetail .ItemName span {
    margin-left: 14px;
    font-size: 11px;
  }
  .SectionTopFuture .PresentationDetail .ItemName span.label {
    background: #d88c00;
    color: white;
    padding: 0.2em 0.8em;
    font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
    font-weight: bold;
    margin-left: 8px;
  }
  .SectionTopFuture .PresentationDetailTitle {
    font-size: 20px;
    margin-top: 4px;
    margin-bottom: 32px;
  }
  .SectionTopFuture .PresentationDetailTitle.plusCap {
    margin-bottom: 10px;
  }
  .SectionTopFuture .PresentationDetailText {
    font-size: 13px;
    margin: 0 0 32px;
  }
  .SectionTopFuture .PresentationSpeaker {
    font-size: 12px;
    padding-bottom: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopFuture .FutureInner {
    margin-left: 0.3rem;
    padding-top: 1rem;
  }
  .SectionTopFuture .FutureTitle {
    font-size: 0.41rem;
    margin-bottom: 0.26rem;
    letter-spacing: 0.04rem;
  }
  .SectionTopFuture .FutureImage {
    right: 0;
    width: 2.77rem;
    top: -0.33rem;
  }
  .SectionTopFuture .SpeakerTitle {
    height: 0.45rem;
    font-size: 0.13rem;
    letter-spacing: 0.16em;
    padding-top: 0.02rem;
  }
  .SectionTopFuture .SpeakerList li {
    width: calc(100% / 2 - 0.1rem);
    display: flex;
  }
  .SectionTopFuture .SpeakerItem {
    margin: 0.2rem 0 0;
    box-shadow: 0 0 14px rgba(0, 0, 0, 0.09);
  }
  .SectionTopFuture .SpeakerImage {
    width: 100%;
    height: auto;
  }
  .SectionTopFuture .SpeakerDetail {
    margin: 0 0.12rem;
    padding: 0.22rem 0 0.16rem;
  }
  .SectionTopFuture .SpeakerName {
    font-size: 0.08rem;
  }
  .SectionTopFuture .SpeakerName span {
    font-size: 0.19rem;
  }
  .SectionTopFuture .SpeakerPosition {
    margin-top: 0.05rem;
    font-size: 0.11rem;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels {
    display: block;
    margin-top: 5px;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels span.labelDate {
    display: inline-block;
    margin-top: 3px;
    margin-right: 3px;
    padding: 2px 8px;
    background: #e6e6e6;
  }
  .SectionTopFuture .SpeakerPosition span.bl_labels span.label {
    display: inline-block;
    margin-top: 3px;
    background: #d88c00;
    color: white;
    padding: 2px 8px;
  }
  .SectionTopFuture .SpeakerIcon {
    width: 32px;
    height: 32px;
    top: -16px;
    right: -4px;
    background: #fff url(../images/top/ico_message.png) center/16px auto no-repeat;
    z-index: 1;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.09);
  }
  .SectionTopFuture .FutureTime {
    padding-bottom: 0.71rem;
  }
  .SectionTopFuture .FutureTime.IsActive .TimeTitle:not(.TimeClose) {
    box-shadow: 0 0 0.46rem rgba(12, 15, 18, 0.11);
    background-image: url(../images/common/ico_arrow_circle_up.svg);
    background-position: center bottom 0.19rem;
    background-size: 0.17rem auto;
  }
  .SectionTopFuture .TimeTitle {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    font-size: 0.17rem;
    padding: 0.21rem 0.2rem 0.46rem;
    box-shadow: 0 0 0.26rem rgba(12, 15, 18, 0.05);
    background-position: center bottom 0.19rem;
    background-size: 0.17rem auto;
  }
  .SectionTopFuture .TimeTitle span {
    display: block;
    text-align: center;
    width: 100%;
    font-size: 0.13rem;
    line-height: 1.7;
  }
  .SectionTopFuture .TimeClose {
    margin-top: -0.2rem;
    background-image: url(../images/common/ico_arrow_circle_up.svg);
  }
  .SectionTopFuture .ListDetail {
    display: block;
    margin-top: 0.44rem;
  }
  .SectionTopFuture .ListDetail.noMarginTop {
    margin-top: 0;
  }
  .SectionTopFuture .DetailItem {
    width: 100%;
    margin-bottom: 0.5rem;
  }
  .SectionTopFuture .DetailItem:last-child {
    margin-bottom: 0;
  }
  .SectionTopFuture .DetailLabel {
    font-size: 0.14rem;
    letter-spacing: 0.04em;
    padding-right: 0.02rem;
  }
  .SectionTopFuture .DetailTitle {
    font-size: 0.43rem;
    border-top: 4px solid #000;
    margin-top: 0.05rem;
    margin-bottom: 0.3rem;
    padding-top: 0.08rem;
  }
  .SectionTopFuture .DetailTitle span {
    font-size: 0.28rem;
    margin-left: 0.07rem;
  }
  .SectionTopFuture .PresentationBlock {
    margin-bottom: 0;
  }
  .SectionTopFuture .PresentationTitle {
    font-size: 0.14rem;
    border-bottom: 0.02rem solid #000;
    padding-bottom: 0.06rem;
  }
  .SectionTopFuture .PresentationTitle.spBlock {
    padding-top: 0.4rem;
  }
  .SectionTopFuture .ItemPresentation {
    padding-top: 21px;
    border-bottom: 1px solid #c7c7c7;
  }
  .SectionTopFuture .PresentationTime {
    font-size: 0.23rem;
    width: 0.82rem;
  }
  .SectionTopFuture .PresentationTime span {
    margin-bottom: 0.21rem;
  }
  .SectionTopFuture .StartTime::after {
    width: 0.02rem;
    height: 0.14rem;
    top: calc(100% + 0.05rem);
  }
  .SectionTopFuture .PresentationDetail .ListItems {
    margin: 0.04rem 0 0.2rem 0.01rem;
  }
  .SectionTopFuture .PresentationDetail .Item {
    margin-bottom: 0.11rem;
  }
  .SectionTopFuture .PresentationDetail .ItemImage {
    width: 0.26rem;
    height: 0.27rem;
  }
  .SectionTopFuture .PresentationDetail .ItemName {
    font-size: 0.13rem;
    margin-left: 0.06rem;
    line-height: 1;
    padding-top: 0.14rem;
    transform: translateY(2px);
  }
  .SectionTopFuture .PresentationDetail .ItemName span {
    margin-left: 0.12rem;
    font-size: 0.08rem;
  }
  .SectionTopFuture .PresentationDetail .ItemName span.label {
    background: #d88c00;
    color: white;
    padding: 0.3em 0.6em;
    font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
    font-weight: bold;
    margin-left: 8px;
  }
  .SectionTopFuture .PresentationDetail .PresentationDetailTitle {
    font-size: 0.19rem;
    line-height: 1.5;
  }
  .SectionTopFuture .PresentationDetail.plusCap {
    margin-bottom: 0;
  }
  .SectionTopFuture .PresentationDetailText {
    font-size: 0.13rem;
    margin: 0.08rem 0 0.17rem;
    line-height: 1.65;
  }
  .SectionTopFuture .PresentationSpeaker {
    font-size: 0.1rem;
    padding-bottom: 0.07rem;
  }
}
.SectionTopNewproducts {
  background: white;
}
.SectionTopNewproducts .CommonBlock + .CommonBlock {
  margin-top: 145px;
}
.SectionTopNewproducts .CommonBlock:before {
  width: 50%;
  height: 5px;
}
.SectionTopNewproducts .CommonBlock .BlockHeading {
  padding: 30px 0 150px;
  background: url("../images/top/bg_comingsoon.svg") no-repeat left bottom -3%;
  background-size: 100% auto;
}

.VideoContainer.disabled {
  pointer-events: none;
  filter: grayscale(1);
  opacity: 0.75;
}
.VideoContainer.disabled .VideoThumb span {
  display: none;
}

.VideoBlock {
  padding-bottom: 50px;
}
.VideoBlock .VideoThumb {
  position: relative;
  cursor: pointer;
}
.VideoBlock .VideoThumb::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url("../images/common/ico_videoplay.svg") center no-repeat;
  background-size: 60px 60px;
  opacity: 0.75;
}
.VideoBlock .VideoThumb.disabled {
  pointer-events: none;
  filter: grayscale(1);
  opacity: 0.75;
}
.VideoBlock .VideoThumb.ended {
  pointer-events: none;
}
.VideoBlock .VideoThumb.ended p {
  background: rgba(0, 0, 0, 0.75);
}
.VideoBlock .VideoThumb.ended::after {
  background: none;
}
.VideoBlock .VideoThumb span {
  display: inline-block;
  position: absolute;
  right: 7px;
  bottom: 7px;
  font-size: 12px;
  font-family: Arial, sans-serif;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.8);
  border-radius: 3px;
  color: white;
  padding: 2px 6px;
  letter-spacing: 0.05em;
}
.VideoBlock .VideoThumb p {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
  font-size: 14px;
  font-weight: bold;
  color: white;
  background: rgba(200, 0, 0, 0.9);
  padding: 4px 6px;
}
.VideoBlock .VideoLabel {
  font-size: 11px;
  font-family: Arial, sans-serif;
  font-weight: bold;
  background: black;
  letter-spacing: 0.16em;
  padding: 3px 6px;
  color: white;
}
.VideoBlock .VideoLabel.future {
  background: #165200;
}
.VideoBlock .VideoTitle {
  margin: 12px 0 15px;
  font-size: 17px;
  font-weight: 600;
}
.VideoBlock .VideoSpeakers {
  border-bottom: 1px solid #c7c7c7;
}
.VideoBlock .VideoSpeakers ul {
  padding-bottom: 14px;
}
.VideoBlock .VideoSpeakers ul li {
  display: flex;
  margin-top: 14px;
  cursor: pointer;
}
.VideoBlock .VideoSpeakers ul li figure {
  width: 60px;
}
.VideoBlock .VideoSpeakers ul li div {
  flex: 1;
}
.VideoBlock .VideoSpeakers ul li div .VideoSpeakerName {
  font-size: 17px;
  font-weight: 600;
  margin-top: 0.2em;
}
.VideoBlock .VideoSpeakers ul li div .VideoSpeakerName span.label {
  font-size: 11px;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  display: inline-block;
  background: #d88c00;
  color: white;
  padding: 1px 6px;
  margin-left: 5px;
  vertical-align: text-bottom;
}
.VideoBlock .VideoSpeakers ul li div .VideoSpeakerName::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 16px;
  background: url("../images/top/ico_message.png") center no-repeat;
  background-size: contain;
  vertical-align: text-bottom;
  margin-left: 5px;
}
.VideoBlock .VideoSpeakers ul li div .VideoSpeakerProf {
  font-size: 12px;
  font-weight: bold;
  margin-top: 0.2em;
}
.VideoBlock .VideoSpeakers ul li.disabled {
  pointer-events: none;
}
.VideoBlock .VideoSpeakers ul li.disabled .VideoSpeakerName::after {
  background: none;
}

@media print, (min-width: 768px) {
  .VideoContainer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-bottom: 70px;
  }
  .VideoContainer::after {
    content: "";
    display: block;
    width: 30.7%;
  }
  .VideoContainer .VideoBlock {
    width: 30.7%;
  }
}
.SectionTopExhibition {
  background: white;
}
.SectionTopExhibition .ExhibitionSlider {
  position: relative;
}
.SectionTopExhibition .SliderItem {
  display: flex;
  outline: none;
  position: relative;
  cursor: pointer;
}
.SectionTopExhibition .SliderItem::before {
  content: "";
  display: block;
  background: url("../images/top/ico_message_white.png") center/contain no-repeat;
  position: absolute;
  z-index: 1;
}
.SectionTopExhibition .SliderHeading {
  background: #fff;
  text-align: center;
}
.SectionTopExhibition .SliderTitle {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.16em;
}
.SectionTopExhibition .SliderTitle span {
  display: block;
  line-height: 1.1;
  font-weight: bold;
  color: #232526;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  letter-spacing: 0;
}
.SectionTopExhibition .SliderTitleRev {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
  color: #232526;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  line-height: 1.2;
}
.SectionTopExhibition .SliderText {
  font-weight: bold;
  line-height: 1.5;
}
.SectionTopExhibition .SliderDetail {
  flex: 1;
  position: relative;
  align-items: center;
  display: flex;
}
.SectionTopExhibition .SliderDetail::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.45);
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}
.SectionTopExhibition .SliderDetail.IsWear {
  background: url("../images/top/exhibition_bg_01.jpg") center/cover no-repeat;
}
.SectionTopExhibition .SliderDetail.IsFood {
  background: url("../images/top/exhibition_bg_02.jpg") center/cover no-repeat;
}
.SectionTopExhibition .SliderDetail.IsLife {
  background: url("../images/top/exhibition_bg_03.jpg") center/cover no-repeat;
}
.SectionTopExhibition .SliderDetail.IsWork {
  background: url("../images/top/exhibition_bg_04.jpg") center/cover no-repeat;
}
.SectionTopExhibition .SliderDetail.IsCamp {
  background: url("../images/top/exhibition_bg_05.jpg") center/cover no-repeat;
}
.SectionTopExhibition .SliderDetail.IsRev {
  background: url("../images/top/exhibition_bg_06.jpg") center/cover no-repeat;
}
.SectionTopExhibition .slick-arrow {
  text-indent: -99999px;
  overflow: hidden;
  position: absolute;
  background: center/100% auto no-repeat;
  cursor: pointer;
  z-index: 11;
}
.SectionTopExhibition .slick-prev {
  background-image: url("../images/common/ico_slider_prev.svg");
}
.SectionTopExhibition .slick-prev.slick-disabled {
  background-image: url("../images/common/ico_slider_prev_gray.svg");
}
.SectionTopExhibition .slick-next {
  background-image: url("../images/common/ico_slider_next.svg");
}
.SectionTopExhibition .slick-next.slick-disabled {
  background-image: url("../images/common/ico_slider_next_gray.svg");
}
.SectionTopExhibition .slick-dots {
  display: flex;
  position: absolute;
}
.SectionTopExhibition .slick-dots li:first-child button:before {
  content: "衣";
}
.SectionTopExhibition .slick-dots li:nth-child(2) button:before {
  content: "食";
}
.SectionTopExhibition .slick-dots li:nth-child(3) button:before {
  content: "住";
}
.SectionTopExhibition .slick-dots li:nth-child(4) button:before {
  content: "働";
}
.SectionTopExhibition .slick-dots li:nth-child(5) button:before {
  content: "遊";
}
.SectionTopExhibition .slick-dots li.slick-active button:before {
  color: #232526;
}
.SectionTopExhibition .slick-dots button {
  text-indent: -999999px;
  overflow: hidden;
  position: relative;
  cursor: pointer;
}
.SectionTopExhibition .slick-dots button:hover:before {
  color: #232526;
}
.SectionTopExhibition .slick-dots button::before {
  font-size: 23px;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-indent: 0;
  color: #7f8288;
}
.SectionTopExhibition .DetailList {
  width: 100%;
  color: #fff;
  position: relative;
  z-index: 1;
}
.SectionTopExhibition .DetailList .ItemTitle {
  font-weight: bold;
}
.SectionTopExhibition .DetailList .ItemText {
  font-weight: bold;
}
.SectionTopExhibition .DetailList span {
  display: block;
}
.SectionTopExhibition .ExhibitionProDucts li {
  position: relative;
  content: "";
  display: block;
  background: url("../images/top/ico_message.png") center/contain no-repeat;
  position: absolute;
  z-index: 1;
}
.SectionTopExhibition .ExhibitionProDucts li.IconWhite:before {
  background-image: url("../images/top/ico_message_white.png");
}
.SectionTopExhibition .ExhibitionMuseum li {
  position: relative;
  cursor: pointer;
}
.SectionTopExhibition .ExhibitionMuseum li::before {
  content: "";
  display: block;
  background: url("../images/top/ico_message.png") center/contain no-repeat;
  position: absolute;
  z-index: 1;
}
.SectionTopExhibition .ExhibitionMuseum li.IconWhite:before {
  background-image: url("../images/top/ico_message_white.png");
}
.SectionTopExhibition .ExhibitionCards {
  display: flex;
  justify-content: space-between;
}
.SectionTopExhibition .ExhibitionCards li {
  cursor: pointer;
}
.SectionTopExhibition .CardTitle {
  font-weight: bold;
  color: #232526;
}
.SectionTopExhibition .CardTitle span {
  display: block;
}

@media print, (min-width: 768px) {
  .SectionTopExhibition .CommonBlock .BlockHeading {
    padding-bottom: 0;
  }
  .SectionTopExhibition .slick-list {
    padding-top: 60px;
    padding-bottom: 168px;
    padding-left: calc(50% - 680px);
  }
  .SectionTopExhibition .SliderItem {
    width: 1000px;
    min-height: 600px;
    box-shadow: 0 3px 50px rgba(0, 0, 0, 0.2);
    margin-right: 60px;
  }
  .SectionTopExhibition .SliderItem::before {
    width: 40px;
    height: 37px;
    top: 27px;
    right: 29px;
  }
  .SectionTopExhibition .SliderHeading {
    width: 400px;
    padding-top: 121px;
    padding-bottom: 115px;
  }
  .SectionTopExhibition .SliderHeading.Rev {
    padding-top: 144px;
  }
  .SectionTopExhibition .SliderTitle {
    font-size: 38px;
  }
  .SectionTopExhibition .SliderTitle span {
    font-size: 190px;
  }
  .SectionTopExhibition .SliderTitleRev {
    font-size: 96px;
    margin-left: 0.16em;
  }
  .SectionTopExhibition .SliderTitleRev span {
    font-size: 190px;
  }
  .SectionTopExhibition .SliderText {
    font-size: 24px;
    margin-top: 13px;
  }
  .SectionTopExhibition .SliderDetail {
    padding: 46px 34px 0;
  }
  .SectionTopExhibition .slick-arrow {
    width: 63px;
    height: 25px;
    right: calc(50% - 680px);
    top: -56px;
  }
  .SectionTopExhibition .slick-arrow:hover {
    opacity: 0.8;
  }
  .SectionTopExhibition .slick-prev {
    right: calc(50% - 633px);
  }
  .SectionTopExhibition .slick-next {
    right: calc(50% - 742px);
  }
  .SectionTopExhibition .slick-dots {
    right: calc(50% - 515px);
    top: -52px;
  }
  .SectionTopExhibition .slick-dots button {
    width: 38px;
    margin-left: 2px;
    overflow: unset;
  }
  .SectionTopExhibition .slick-dots button::before {
    font-size: 23px;
  }
  .SectionTopExhibition .DetailList .ItemTitle {
    font-size: 23px;
    border-bottom: 1px solid #fff;
    padding-bottom: 5px;
    margin-bottom: 19px;
  }
  .SectionTopExhibition .DetailList .ItemText {
    font-size: 21px;
  }
  .SectionTopExhibition .DetailList span {
    font-size: 12px;
    margin: 6px 0 22px;
  }
  .SectionTopExhibition .ExhibitionProDucts {
    margin: 66px 0 164px;
  }
  .SectionTopExhibition .ExhibitionProDucts li {
    margin-bottom: 50px;
  }
  .SectionTopExhibition .ExhibitionProDucts li::before {
    width: 40px;
    height: 36px;
    top: 31px;
    right: 31px;
  }
  .SectionTopExhibition .ExhibitionMuseum {
    margin: 66px 0 164px;
  }
  .SectionTopExhibition .ExhibitionMuseum li {
    margin-bottom: 50px;
  }
  .SectionTopExhibition .ExhibitionMuseum li::before {
    width: 40px;
    height: 36px;
    top: 31px;
    right: 31px;
  }
  .SectionTopExhibition .ExhibitionCards {
    margin-top: 50px;
    margin-bottom: 158px;
  }
  .SectionTopExhibition .ExhibitionCards li {
    width: 48%;
  }
  .SectionTopExhibition .CardHeading {
    background: #fff url("../images/top/ico_message.png") right 41px top 54%/40px auto no-repeat;
    padding: 39px 40px 31px;
  }
  .SectionTopExhibition .CardTitle {
    font-size: 21px;
  }
  .SectionTopExhibition .CardTitle span {
    font-size: 12px;
    margin-top: 4px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopExhibition {
    padding-top: 0.68rem;
  }
  .SectionTopExhibition .CommonBlock .BlockHeading {
    padding-bottom: 0;
  }
  .SectionTopExhibition .slick-list {
    margin: 0 -0.075rem;
  }
  .SectionTopExhibition .slick-slide {
    margin: 0 0.075rem;
  }
  .SectionTopExhibition .ExhibitionSlider {
    padding-top: 0.62rem;
    margin-bottom: 0.64rem;
  }
  .SectionTopExhibition .SliderItem {
    display: block;
    width: 3.3rem;
    margin-top: 0.23rem;
    box-shadow: 0 0.03rem 0.35rem rgba(0, 0, 0, 0.2);
  }
  .SectionTopExhibition .SliderItem::before {
    width: 0.28rem;
    height: 0.37rem;
    top: 0.22rem;
    right: 0.29rem;
    background: url(../images/top/ico_message.png) center/contain no-repeat;
  }
  .SectionTopExhibition .SliderHeading {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.23rem 0.08rem 0.18rem;
  }
  .SectionTopExhibition .SliderTitle {
    width: 1rem;
    font-size: 0.12rem;
  }
  .SectionTopExhibition .SliderTitle span {
    font-size: 0.66rem;
  }
  .SectionTopExhibition .SliderTitleRev {
    width: 1rem;
    font-size: 0.37rem;
  }
  .SectionTopExhibition .SliderText {
    flex: 1;
    font-size: 0.17rem;
    text-align: left;
    margin-left: 0.05rem;
    padding-bottom: 0.04rem;
  }
  .SectionTopExhibition .SliderDetail {
    padding: 0.26rem 0.19rem 0;
    min-height: 3.3rem;
  }
  .SectionTopExhibition .slick-arrow {
    width: 0.49rem;
    height: 0.25rem;
    top: 0.3rem;
  }
  .SectionTopExhibition .slick-prev {
    right: 1rem;
  }
  .SectionTopExhibition .slick-next {
    right: 0.27rem;
  }
  .SectionTopExhibition .slick-dots {
    left: 0.21rem;
    top: 0.22rem;
  }
  .SectionTopExhibition .slick-dots button {
    width: 0.3rem;
  }
  .SectionTopExhibition .slick-dots button::before {
    font-size: 0.19rem;
  }
  .SectionTopExhibition .DetailList .ItemTitle {
    font-size: 0.14rem;
    border-bottom: 1px solid #fff;
    padding-bottom: 0.03rem;
    margin-bottom: 0.1rem;
  }
  .SectionTopExhibition .DetailList .ItemText {
    font-size: 0.15rem;
  }
  .SectionTopExhibition .DetailList span {
    font-size: 0.1rem;
    margin: 0.01rem 0 0.25rem;
  }
  .SectionTopExhibition .ExhibitionProDucts {
    margin: 0.27rem 0 0.64rem;
  }
  .SectionTopExhibition .ExhibitionProDucts li {
    margin-bottom: 0.32rem;
  }
  .SectionTopExhibition .ExhibitionProDucts li::before {
    width: 0.22rem;
    height: 0.36rem;
    top: 0.08rem;
    right: 0.16rem;
  }
  .SectionTopExhibition .ExhibitionProDucts img {
    width: 100%;
  }
  .SectionTopExhibition .ExhibitionMuseum {
    margin: 0.27rem 0 0.64rem;
  }
  .SectionTopExhibition .ExhibitionMuseum li {
    margin-bottom: 0.32rem;
  }
  .SectionTopExhibition .ExhibitionMuseum li::before {
    width: 0.22rem;
    height: 0.36rem;
    top: 0.08rem;
    right: 0.16rem;
  }
  .SectionTopExhibition .ExhibitionMuseum img {
    width: 100%;
  }
  .SectionTopExhibition .ExhibitionCards {
    display: block;
    margin-top: 0.24rem;
    margin-bottom: 0.58rem;
  }
  .SectionTopExhibition .ExhibitionCards li {
    width: 100%;
    margin-bottom: 0.32rem;
  }
  .SectionTopExhibition .CardHeading {
    background: #fff url("../images/top/ico_message.png") right 0.16rem top 56%/0.22rem auto no-repeat;
    padding: 0.14rem 0.15rem 0.12rem;
  }
  .SectionTopExhibition .CardTitle {
    font-size: 0.13rem;
  }
  .SectionTopExhibition .CardTitle span {
    font-size: 0.1rem;
    margin-top: 0.02rem;
  }
}
.SectionTopTalk .TalkInfo {
  background: url("../images/top/talk_bg.jpg") right 25% center/cover no-repeat;
}
.SectionTopTalk .TalkContent {
  display: flex;
  align-items: flex-start;
  background: #232526;
}
.SectionTopTalk .TalkGuide {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.SectionTopTalk .GuideImage {
  box-shadow: -3px -3px 16px rgba(85, 89, 90, 0.2), 3px 3px 20px rgba(36, 65, 93, 0.3);
}
.SectionTopTalk .GuideDetail {
  flex: 1;
  color: #fff;
}
.SectionTopTalk .GuideLabel {
  font-weight: bold;
  line-height: 1.1;
}
.SectionTopTalk .GuideTitle {
  font-weight: bold;
  line-height: 1.65;
}
.SectionTopTalk .GuideText {
  width: 100%;
  line-height: 1.85;
  font-weight: bold;
  color: #fff;
}
.SectionTopTalk .GuideLinks {
  display: flex;
}
.SectionTopTalk .LinkWrapper {
  display: flex;
  color: #fff;
  border: 2px solid #fff;
  border-radius: 8px;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
}
.SectionTopTalk .LinkText {
  font-weight: bold;
  line-height: 1.333;
}
.SectionTopTalk .LinkTitle {
  font-weight: bold;
}
.SectionTopTalk .AppStoreLink {
  display: block;
}
.SectionTopTalk .GooglePlayLink {
  display: block;
}
.SectionTopTalk .TalkPhone {
  display: flex;
  align-items: flex-start;
  flex: 1;
}
.SectionTopTalk .PhoneDetail {
  margin-left: auto;
}
.SectionTopTalk .DetailText {
  color: #fff;
  font-weight: bold;
  line-height: 1.68;
}

@media print, (min-width: 768px) {
  .SectionTopTalk .TalkInfo {
    min-height: 700px;
    padding-top: 260px;
  }
  .SectionTopTalk .TalkInfo .BlockText {
    margin-top: 23px;
  }
  .SectionTopTalk .TalkContent {
    margin-top: 157px;
    padding: 108px 50px 100px 65px;
  }
  .SectionTopTalk .TalkGuide {
    width: 42%;
  }
  .SectionTopTalk .GuideImage {
    width: 159px;
    border-radius: 20px;
  }
  .SectionTopTalk .GuideDetail {
    margin-left: 36px;
  }
  .SectionTopTalk .GuideLabel {
    font-size: 16px;
    text-indent: 2px;
  }
  .SectionTopTalk .GuideTitle {
    font-size: 28px;
    margin-top: 13px;
  }
  .SectionTopTalk .GuideText {
    font-size: 18px;
    margin-top: 26px;
  }
  .SectionTopTalk .GuideLinks {
    margin-top: 27px;
  }
  .SectionTopTalk .LinkWrapper {
    border: 2px solid #fff;
    border-radius: 8px;
    width: 177px;
    padding: 0 10px;
  }
  .SectionTopTalk .LinkText {
    font-size: 12px;
  }
  .SectionTopTalk .LinkTitle {
    font-size: 31px;
  }
  .SectionTopTalk .AppStoreLink {
    width: 169px;
  }
  .SectionTopTalk .GooglePlayLink {
    width: 190px;
    margin: 0 14px;
  }
  .SectionTopTalk .TalkPhone {
    padding: 0 0 0 80px;
  }
  .SectionTopTalk .PhoneImage {
    width: 308px;
  }
  .SectionTopTalk .PhoneDetail {
    width: 360px;
  }
  .SectionTopTalk .DetailText {
    font-size: 18px;
    margin-top: 32px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopTalk {
    margin-top: 0.64rem;
  }
  .SectionTopTalk .TalkInfo {
    min-height: 5.39rem;
    padding-top: 0.61rem;
    background: url("../images/top/sp/talk_bg.jpg") center/cover no-repeat;
  }
  .SectionTopTalk .TalkInfo .BlockText {
    margin-top: 0.25rem;
  }
  .SectionTopTalk .Wrapper {
    padding: 0;
  }
  .SectionTopTalk .CommonBlock {
    margin: 0 0.3rem;
    width: calc(100% - .6rem);
  }
  .SectionTopTalk .TalkContent {
    display: block;
    margin-top: 0.64rem;
    padding: 0.48rem 0.3rem 0.4rem;
  }
  .SectionTopTalk .TalkGuide {
    width: 100%;
    margin-bottom: 0.43rem;
  }
  .SectionTopTalk .GuideImage {
    width: 0.9rem;
    border-radius: 0.2rem;
    overflow: hidden;
    box-shadow: -0.03rem -0.03rem 0.16rem rgba(85, 89, 90, 0.2), 0.03rem 0.03rem 0.2rem rgba(36, 65, 93, 0.3);
  }
  .SectionTopTalk .GuideDetail {
    margin-left: 0.21rem;
  }
  .SectionTopTalk .GuideLabel {
    font-size: 0.12rem;
    margin-right: -0.1rem;
  }
  .SectionTopTalk .GuideTitle {
    font-size: 0.21rem;
    margin-top: 0.06rem;
  }
  .SectionTopTalk .GuideText {
    font-size: 0.14rem;
    margin-top: 0.16rem;
    line-height: 1.75;
  }
  .SectionTopTalk .GuideLinks {
    margin-top: 0.21rem;
    width: 100%;
    align-items: flex-start;
  }
  .SectionTopTalk .LinkWrapper {
    border: 0.02rem solid #fff;
    border-radius: 0.08rem;
    width: auto;
    flex: 1;
    margin-top: 0.06rem;
    padding: 0.02rem 0.05rem;
  }
  .SectionTopTalk .LinkText {
    font-size: 0.07rem;
  }
  .SectionTopTalk .LinkTitle {
    font-size: 0.18rem;
  }
  .SectionTopTalk .AppStoreLink {
    width: 0.99rem;
  }
  .SectionTopTalk .GooglePlayLink {
    width: 1.11rem;
    margin: 0 0.08rem;
  }
  .SectionTopTalk .TalkPhone {
    display: block;
    width: 100%;
  }
  .SectionTopTalk .PhoneImage {
    width: 3.27rem;
    margin-left: auto;
  }
  .SectionTopTalk .PhoneDetail {
    width: 100%;
    margin-top: 0.49rem;
  }
  .SectionTopTalk .DetailText {
    font-size: 0.14rem;
    margin-top: 0.23rem;
    line-height: 1.75;
  }
}
.SectionTopCamp .TalkInfo {
  background: url("../images/top/camp_bg.jpg") center center/cover no-repeat;
}
.SectionTopCamp .SocialLink {
  display: flex;
  font-weight: bold;
  align-items: center;
  justify-content: center;
  color: #fff;
  border: 1px solid #fff;
  background: url("../images/common/ico_arrow_next_white.svg") right 27px center/7px auto no-repeat;
  background-color: rgba(0, 0, 0, 0.35);
}
.SectionTopCamp .TalkContent {
  display: flex;
  align-items: flex-start;
  background: #232526;
}
.SectionTopCamp .TalkGuide {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.SectionTopCamp .GuideImage {
  box-shadow: -3px -3px 16px rgba(85, 89, 90, 0.2), 3px 3px 20px rgba(36, 65, 93, 0.3);
}
.SectionTopCamp .GuideDetail {
  flex: 1;
  color: #fff;
}
.SectionTopCamp .GuideLabel {
  font-weight: bold;
  line-height: 1.1;
}
.SectionTopCamp .GuideTitle {
  font-weight: bold;
  line-height: 1.65;
}
.SectionTopCamp .GuideText {
  width: 100%;
  line-height: 1.85;
  font-weight: bold;
  color: #fff;
}
.SectionTopCamp .GuideLinks {
  display: flex;
}
.SectionTopCamp .LinkWrapper {
  display: flex;
  color: #fff;
  border: 2px solid #fff;
  border-radius: 8px;
  align-items: center;
  justify-content: space-between;
  padding: 0 10px;
}
.SectionTopCamp .LinkText {
  font-weight: bold;
  line-height: 1.333;
}
.SectionTopCamp .LinkTitle {
  font-weight: bold;
}
.SectionTopCamp .AppStoreLink {
  display: block;
}
.SectionTopCamp .GooglePlayLink {
  display: block;
}
.SectionTopCamp .TalkPhone {
  display: flex;
  align-items: flex-start;
  flex: 1;
}
.SectionTopCamp .PhoneDetail {
  margin-left: auto;
}
.SectionTopCamp .DetailText {
  color: #fff;
  font-weight: bold;
  line-height: 1.68;
}

@media print, (min-width: 768px) {
  .SectionTopCamp .TalkInfo {
    min-height: 700px;
    padding-top: 160px;
  }
  .SectionTopCamp .TalkInfo .BlockText {
    margin-top: 23px;
  }
  .SectionTopCamp .SocialLink {
    width: 211px;
    height: 50px;
    font-size: 17px;
  }
  .SectionTopCamp .TalkContent {
    margin-top: 157px;
    padding: 108px 50px 100px 65px;
  }
  .SectionTopCamp .TalkGuide {
    width: 42%;
  }
  .SectionTopCamp .GuideImage {
    width: 159px;
    border-radius: 20px;
  }
  .SectionTopCamp .GuideDetail {
    margin-left: 36px;
  }
  .SectionTopCamp .GuideLabel {
    font-size: 16px;
    text-indent: 2px;
  }
  .SectionTopCamp .GuideTitle {
    font-size: 28px;
    margin-top: 13px;
  }
  .SectionTopCamp .GuideText {
    font-size: 18px;
    margin-top: 26px;
  }
  .SectionTopCamp .GuideLinks {
    margin-top: 27px;
  }
  .SectionTopCamp .LinkWrapper {
    border: 2px solid #fff;
    border-radius: 8px;
    width: 177px;
    padding: 0 10px;
  }
  .SectionTopCamp .LinkText {
    font-size: 12px;
  }
  .SectionTopCamp .LinkTitle {
    font-size: 31px;
  }
  .SectionTopCamp .AppStoreLink {
    width: 169px;
  }
  .SectionTopCamp .GooglePlayLink {
    width: 190px;
    margin: 0 14px;
  }
  .SectionTopCamp .TalkPhone {
    padding: 0 0 0 80px;
  }
  .SectionTopCamp .PhoneImage {
    width: 308px;
  }
  .SectionTopCamp .PhoneDetail {
    width: 360px;
  }
  .SectionTopCamp .DetailText {
    font-size: 18px;
    margin-top: 32px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopCamp .TalkInfo {
    min-height: 5.39rem;
    padding-top: 0.61rem;
    background: url("../images/top/sp/camp_bg.jpg") center/cover no-repeat;
  }
  .SectionTopCamp .TalkInfo .BlockText {
    margin-top: 0.25rem;
  }
  .SectionTopCamp .Wrapper {
    padding: 0;
  }
  .SectionTopCamp .SocialLink {
    width: 100％;
    height: 0.44rem;
    font-size: 0.14rem;
    background-position: right 0.24rem center;
    background-size: 0.05rem auto;
  }
  .SectionTopCamp .CommonBlock {
    margin: 0 0.3rem;
    width: calc(100% - .6rem);
  }
  .SectionTopCamp .TalkContent {
    display: block;
    margin-top: 0.64rem;
    padding: 0.48rem 0.3rem 0.4rem;
  }
  .SectionTopCamp .TalkGuide {
    width: 100%;
    margin-bottom: 0.43rem;
  }
  .SectionTopCamp .GuideImage {
    width: 0.9rem;
    border-radius: 0.2rem;
    overflow: hidden;
    box-shadow: -0.03rem -0.03rem 0.16rem rgba(85, 89, 90, 0.2), 0.03rem 0.03rem 0.2rem rgba(36, 65, 93, 0.3);
  }
  .SectionTopCamp .GuideDetail {
    margin-left: 0.21rem;
  }
  .SectionTopCamp .GuideLabel {
    font-size: 0.12rem;
    margin-right: -0.1rem;
  }
  .SectionTopCamp .GuideTitle {
    font-size: 0.21rem;
    margin-top: 0.06rem;
  }
  .SectionTopCamp .GuideText {
    font-size: 0.14rem;
    margin-top: 0.16rem;
    line-height: 1.75;
  }
  .SectionTopCamp .GuideLinks {
    margin-top: 0.21rem;
    width: 100%;
    align-items: flex-start;
  }
  .SectionTopCamp .LinkWrapper {
    border: 0.02rem solid #fff;
    border-radius: 0.08rem;
    width: auto;
    flex: 1;
    margin-top: 0.06rem;
    padding: 0.02rem 0.05rem;
  }
  .SectionTopCamp .LinkText {
    font-size: 0.07rem;
  }
  .SectionTopCamp .LinkTitle {
    font-size: 0.18rem;
  }
  .SectionTopCamp .AppStoreLink {
    width: 0.99rem;
  }
  .SectionTopCamp .GooglePlayLink {
    width: 1.11rem;
    margin: 0 0.08rem;
  }
  .SectionTopCamp .TalkPhone {
    display: block;
    width: 100%;
  }
  .SectionTopCamp .PhoneImage {
    width: 3.27rem;
    margin-left: auto;
  }
  .SectionTopCamp .PhoneDetail {
    width: 100%;
    margin-top: 0.49rem;
  }
  .SectionTopCamp .DetailText {
    font-size: 0.14rem;
    margin-top: 0.23rem;
    line-height: 1.75;
  }
}
.SectionTopInformation .InformationTitle {
  width: 100%;
  font-weight: bold;
  color: #232526;
  letter-spacing: 0.16em;
}
.SectionTopInformation .InformationTitle span {
  font-weight: bold;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  letter-spacing: 0;
}
.SectionTopInformation .InformationDetail {
  color: #232526;
}
.SectionTopInformation .DetailTitle {
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.2rem;
}
.SectionTopInformation .DetailTitle strike {
  color: #aaa;
}
.SectionTopInformation .DetailText {
  font-weight: bold;
  line-height: 2;
}
.SectionTopInformation .DetailEvent {
  font-weight: bold;
}
.SectionTopInformation .DetailEvent.Time2nd:before {
  content: "";
  display: block;
  background: #232526;
  left: 0;
  top: 0;
}
.SectionTopInformation .EventTime {
  display: flex;
  align-items: flex-end;
  line-height: 1;
}
.SectionTopInformation .EventTime span {
  display: block;
  line-height: 1.3;
}
.SectionTopInformation .TimeHour {
  display: flex;
  align-items: flex-end;
  line-height: 1.6;
}
.SectionTopInformation .TimeSche2nd {
  line-height: 1.6;
  letter-spacing: 0.04rem;
  font-feature-settings: "palt";
}
.SectionTopInformation .StartTime {
  position: relative;
}
.SectionTopInformation .StartTime::before {
  content: "";
  display: block;
  background: #000;
  position: absolute;
  top: 50%;
  transform: translateX(-50%);
}
.SectionTopInformation .TimeLabel {
  color: #000;
  line-height: 2.5;
}
.SectionTopInformation .TimeLabelTalk {
  color: #000;
  line-height: 2.5;
}
.SectionTopInformation .TimeNote {
  color: #bd0000;
  line-height: 1.75;
}
.SectionTopInformation .TimeNote.note2nd {
  color: #232526;
  margin: 24px 0;
}
.SectionTopInformation .dLine {
  font-size: 18px;
  margin-top: 12px;
  background-color: #fff;
  width: auto;
  display: inline;
  padding: 8px 10px;
}
.SectionTopInformation .dLine.dEnd {
  background-color: #bdbdbd;
  color: #868686;
}
.SectionTopInformation .ListItems li {
  display: flex;
}
.SectionTopInformation .ListItems li.admFee .ItemLabel {
  border: solid 1px black;
  color: black;
  background: none;
}
.SectionTopInformation .ItemLabel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.08em;
  background: #000;
}
.SectionTopInformation .ItemText {
  font-weight: bold;
  color: #0a0b0b;
}
.SectionTopInformation .ItemText.IsSmall {
  color: #000;
}
.SectionTopInformation .ItemText span.day {
  font-size: 14px;
}
.SectionTopInformation .ItemText span.price {
  font-size: 26px;
  margin: 0 5px;
}
.SectionTopInformation .ItemText span.tax {
  font-size: 12px;
}
.SectionTopInformation .ItemText span.note {
  display: inline-block;
  font-weight: normal;
  margin-top: 0.6em;
}
.SectionTopInformation .InformationImage {
  flex: 1;
}

@media print, (min-width: 768px) {
  .SectionTopInformation {
    margin-top: 150px;
    padding-bottom: 150px;
  }
  .SectionTopInformation .InformationInner {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding-left: calc(50% - 680px);
  }
  .SectionTopInformation .InformationTitle {
    font-size: 56px;
    margin-bottom: 96px;
  }
  .SectionTopInformation .InformationTitle span {
    font-size: 23px;
    margin-left: 37px;
  }
  .SectionTopInformation .InformationDetail {
    width: 38%;
    min-width: 450px;
  }
  .SectionTopInformation .DetailTitle {
    font-size: 42px;
  }
  .SectionTopInformation .DetailText {
    font-size: 16px;
    margin: 24px 0 0;
    max-width: 650px;
  }
  .SectionTopInformation .DetailEvent {
    max-width: 650px;
  }
  .SectionTopInformation .DetailEvent.Time2nd {
    padding-top: 88px;
  }
  .SectionTopInformation .DetailEvent.Time2nd:before {
    width: 100%;
    height: 5px;
  }
  .SectionTopInformation .EventTitle {
    font-size: 48px;
    line-height: 3.4rem;
  }
  .SectionTopInformation .EventTime {
    font-size: 32px;
    margin-top: 12px;
  }
  .SectionTopInformation .EventTime.app2ndTtl {
    font-size: 24px;
    margin-top: 25px;
  }
  .SectionTopInformation .EventTime span {
    font-size: 25px;
    margin: 0 16px 0 3px;
  }
  .SectionTopInformation .StartTime {
    font-size: 22px;
    margin-right: 20px;
  }
  .SectionTopInformation .StartTime::before {
    width: 7px;
    height: 2px;
    right: -17px;
  }
  .SectionTopInformation .EndTime {
    font-size: 22px;
  }
  .SectionTopInformation .EndTimeTalk {
    font-size: 22px;
    margin-right: 3px;
  }
  .SectionTopInformation .TimeLabel {
    font-size: 12px;
    margin: 0 5px 0 17px;
  }
  .SectionTopInformation .TimeLabelTalk {
    font-size: 12px;
    margin: 0 5px 0 0;
  }
  .SectionTopInformation .TimeNote {
    font-size: 14px;
    margin-top: 10px;
  }
  .SectionTopInformation .TimeSche2nd {
    font-size: 20px;
  }
  .SectionTopInformation .dLine.d2nd {
    margin: 18px 0 10px;
    display: inline-block;
  }
  .SectionTopInformation .ListItems {
    margin-top: 18px;
  }
  .SectionTopInformation .ListItems li {
    margin-bottom: 11px;
  }
  .SectionTopInformation .ItemLabel {
    width: 73px;
    font-size: 14px;
    padding: 2px 9px 0;
    margin-right: 12px;
  }
  .SectionTopInformation .ItemText {
    font-size: 16px;
  }
  .SectionTopInformation .ItemText.IsSmall {
    font-size: 16px;
  }
  .SectionTopInformation .ItemText span.note {
    font-size: 13px;
  }
  .SectionTopInformation .InformationImage {
    padding-top: 8px;
    padding-left: 30px;
  }
  .SectionTopInformation .InformationImage .access-map {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
  }
  .SectionTopInformation .InformationImage .access-map iframe {
    width: 100%;
    height: 410px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopInformation {
    padding-top: 0.74rem;
  }
  .SectionTopInformation .InformationInner {
    padding: 0 0.3rem;
  }
  .SectionTopInformation .InformationTitle {
    font-size: 0.28rem;
    margin-bottom: 0.31rem;
  }
  .SectionTopInformation .InformationTitle span {
    display: block;
    font-size: 0.12rem;
    margin-top: 0.02rem;
  }
  .SectionTopInformation .DetailTitle {
    font-size: 0.24rem;
    letter-spacing: 0.03rem;
  }
  .SectionTopInformation .DetailText {
    font-size: 0.14rem;
    margin: 0.11rem 0 0;
    line-height: 1.75;
  }
  .SectionTopInformation .DetailEvent.Time2nd {
    padding-top: 0.6rem;
  }
  .SectionTopInformation .DetailEvent.Time2nd:before {
    width: 100%;
    height: 5px;
  }
  .SectionTopInformation .EventTitle {
    font-size: 0.4rem;
  }
  .SectionTopInformation .EventTime {
    font-size: 0.28rem;
    margin: 0.08rem 0 0.06rem;
  }
  .SectionTopInformation .EventTime.app2ndTtl {
    font-size: 0.22rem;
    margin: 0.16rem 0 0;
  }
  .SectionTopInformation .EventTime span {
    font-size: 0.16rem;
    margin: 0 0.1rem 0 0.03rem;
  }
  .SectionTopInformation .StartTime {
    font-size: 0.18rem;
    margin-right: 0.12rem;
    line-height: 1.3;
  }
  .SectionTopInformation .StartTime::before {
    width: 0.05rem;
    height: 0.02rem;
    right: -0.12rem;
    top: 45%;
  }
  .SectionTopInformation .EndTime {
    font-size: 0.19rem;
    line-height: 1.3;
    margin-right: 0.14rem;
  }
  .SectionTopInformation .EndTimeTalk {
    font-size: 0.19rem;
    line-height: 1.3;
    margin-right: 0.02rem;
  }
  .SectionTopInformation .TimeLabel {
    font-size: 0.1rem;
    margin: 0 0.05rem 0 0;
    line-height: 2.2;
  }
  .SectionTopInformation .TimeLabelTalk {
    font-size: 0.1rem;
    margin: 0 0.05rem 0 0;
    line-height: 2.2;
  }
  .SectionTopInformation .TimeNote {
    font-size: 0.12rem;
    margin-top: 0.08rem;
  }
  .SectionTopInformation .TimeSche2nd {
    font-size: 0.16rem;
    letter-spacing: 0.01rem;
  }
  .SectionTopInformation .dLine {
    font-size: 0.15rem;
    margin-top: 0;
  }
  .SectionTopInformation .dLine.d2nd {
    margin: 0.18rem 0 0.1rem;
    display: inline-block;
  }
  .SectionTopInformation .ListItems {
    margin-top: 0.15rem;
  }
  .SectionTopInformation .ListItems li {
    margin-bottom: 0.06rem;
  }
  .SectionTopInformation .ItemLabel {
    width: 0.53rem;
    font-size: 0.09rem;
    padding: 0 0.09rem;
    margin-right: 0.08rem;
  }
  .SectionTopInformation .ItemText {
    font-size: 0.14rem;
    line-height: 1.5;
  }
  .SectionTopInformation .ItemText.IsSmall {
    font-size: 0.14rem;
  }
  .SectionTopInformation .ItemText span.note {
    font-size: 11px;
  }
  .SectionTopInformation .InformationImage {
    margin: 0.4rem -0.3rem;
    width: calc(100% + .6rem);
  }
  .SectionTopInformation .InformationImage .access-map {
    vertical-align: middle;
    max-width: 100%;
    height: auto;
  }
  .SectionTopInformation .InformationImage .access-map iframe {
    width: 100%;
    height: 100vw;
  }
}
.SectionTopVisitor .VisitorInner {
  background: #fff;
}
.SectionTopVisitor .VisitorTitle {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1rem;
}
.SectionTopVisitor .VisitorTitle.IsLeft {
  text-align: left;
}
.SectionTopVisitor .VisitorText {
  line-height: 2;
  color: #232526;
  font-weight: 400;
}
.SectionTopVisitor .ItemTitle {
  font-weight: bold;
  line-height: 1.5;
  background: #ebebeb;
  word-break: break-all;
  letter-spacing: 0.08rem;
}
.SectionTopVisitor .DetailList {
  counter-reset: item;
}
.SectionTopVisitor .DetailList li {
  counter-increment: item;
  position: relative;
}
.SectionTopVisitor .DetailList li:before {
  content: counters(item,".") " ) ";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.SectionTopVisitor .VisitorFaq {
  border-bottom: 1px solid #7f8288;
}
.SectionTopVisitor .FaqBlock.IsActive .FaqHeading {
  background-image: url("../images/common/ico_arrow_circle_up_black.png");
}
.SectionTopVisitor .FaqHeading {
  line-height: 1.5;
  font-weight: bold;
  border-top: 1px solid #7f8288;
  transition: all 0.3s;
  cursor: pointer;
}
.SectionTopVisitor .FaqContent {
  display: none;
}
.SectionTopVisitor .FaqText {
  font-weight: 400;
  color: #232526;
  line-height: 2;
}
.SectionTopVisitor .FaqLink {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  color: #232526;
  background: #ebebeb url("../images/common/ico_arrow_next_black.svg") right 19px center/7px auto no-repeat;
}
.SectionTopVisitor .FaqNote {
  font-weight: 400;
  line-height: 2;
  color: #717171;
}
.SectionTopVisitor .FaqItemTitle {
  font-weight: bold;
}
.SectionTopVisitor .VisitorPress {
  background: #232526;
  color: #fff;
}
.SectionTopVisitor .PressTitle {
  font-weight: bold;
}
.SectionTopVisitor .PressText {
  font-weight: bold;
  line-height: 1.8;
}
.SectionTopVisitor .PressLink {
  display: flex;
  justify-content: space-between;
}
.SectionTopVisitor .ItemLink {
  display: block;
  width: 100%;
  border: 2px solid #fff;
  background: #fff url(../images/common/ico_download.svg) right 29px center/21px auto no-repeat;
}
.SectionTopVisitor .ItemLink.IsBlack {
  background-color: #232526;
  background-image: url(../images/common/ico_download_white.svg);
}
.SectionTopVisitor .ItemLink.IsBlack .LinkTitle {
  color: #fff;
}
.SectionTopVisitor .LinkTitle {
  font-weight: bold;
  color: #232526;
}
.SectionTopVisitor .LinkLabel {
  font-weight: bold;
  color: #7f8288;
}
.SectionTopVisitor .InformationText {
  line-height: 1.8;
  font-weight: bold;
}
.SectionTopVisitor .PlanList {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.SectionTopVisitor .PlanTitle {
  font-weight: bold;
}
.SectionTopVisitor .PlanText {
  font-weight: bold;
  line-height: 1.8;
}
.SectionTopVisitor .TimeSchedule {
  list-style: none;
}
.SectionTopVisitor .DetailTitle {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #fff;
  background: #282b33;
  font-feature-settings: "palt";
  flex-wrap: wrap;
}
.SectionTopVisitor .place {
  font-weight: bold;
}
.SectionTopVisitor .access-map {
  width: 100%;
  height: auto;
}
.SectionTopVisitor .access-map iframe {
  width: 100%;
}
.SectionTopVisitor .BusTimeTable {
  list-style: none;
}
.SectionTopVisitor .BusTimeTable li {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #232526;
}
.SectionTopVisitor .BusTimeTable li:nth-of-type(2n) {
  background: #fff;
}
.SectionTopVisitor .BusTimeTable li.last {
  background: #EFDFDF;
}
.SectionTopVisitor .BusSchedule {
  text-align: center;
}
.SectionTopVisitor .BusSchedule span {
  vertical-align: middle;
  font-weight: bold;
  color: #8c2525;
  letter-spacing: 0.03rem;
}
.SectionTopVisitor .ScheCaption {
  font-weight: bold;
  color: #7f8288;
  line-height: 1.75;
}
.SectionTopVisitor .ScheCaption span {
  color: #bd0000;
}

@media print, (min-width: 768px) {
  .SectionTopVisitor {
    margin: 95px 0 144px;
  }
  .SectionTopVisitor .VisitorInner {
    padding: 100px 10.2% 100px;
  }
  .SectionTopVisitor .VisitorTitle {
    font-size: 34px;
  }
  .SectionTopVisitor .VisitorTitle + .VisitorText {
    margin-top: 33px;
  }
  .SectionTopVisitor .VisitorList {
    margin-top: 39px;
    margin-bottom: 80px;
  }
  .SectionTopVisitor .VisitorList li {
    margin-bottom: 40px;
  }
  .SectionTopVisitor .VisitorText {
    font-size: 15px;
  }
  .SectionTopVisitor .ItemTitle {
    font-size: 24px;
  }
  .SectionTopVisitor .ItemTitle {
    font-size: 22px;
    padding: 14px 20px;
    margin-bottom: 24px;
  }
  .SectionTopVisitor .DetailList {
    padding-left: 48px;
    margin-bottom: 81px;
  }
  .SectionTopVisitor .DetailList li:before {
    left: -27px;
  }
  .SectionTopVisitor .VisitorFaq {
    margin-top: 43px;
  }
  .SectionTopVisitor .FaqBlock {
    padding-bottom: 26px;
  }
  .SectionTopVisitor .FaqBlock.IsActive .FaqHeading {
    padding-bottom: 18px;
  }
  .SectionTopVisitor .FaqHeading {
    padding: 28px 80px 0 20px;
    font-size: 21px;
    background: url("../images/common/ico_arrow_circle_down_black.png") 97.8% 31px/26px auto no-repeat;
  }
  .SectionTopVisitor .FaqContent {
    margin-bottom: 6px;
    padding: 0 20px;
  }
  .SectionTopVisitor .FaqText {
    font-size: 15px;
  }
  .SectionTopVisitor .FaqLink {
    margin-top: 26px;
    width: 211px;
    height: 44px;
    font-size: 16px;
  }
  .SectionTopVisitor .FaqNote {
    font-size: 13px;
    margin-top: 14px;
  }
  .SectionTopVisitor .FaqItem {
    width: 48%;
  }
  .SectionTopVisitor .FaqInner {
    display: flex;
    justify-content: space-between;
  }
  .SectionTopVisitor .FaqItemTitle {
    font-size: 19px;
    margin-top: 8px;
    margin-bottom: 12px;
  }
  .SectionTopVisitor .ListFaq li + li {
    margin-top: 18px;
  }
  .SectionTopVisitor .VisitorPress {
    padding: 94px 150px;
  }
  .SectionTopVisitor .PressTitle {
    font-size: 32px;
  }
  .SectionTopVisitor .PressText {
    font-size: 17px;
    margin-top: 28px;
  }
  .SectionTopVisitor .PressLink {
    margin: 40px 0 6px;
  }
  .SectionTopVisitor .PressLink li {
    width: 47.5%;
  }
  .SectionTopVisitor .ItemLink {
    padding: 16px 23px;
  }
  .SectionTopVisitor .LinkTitle {
    font-size: 21px;
  }
  .SectionTopVisitor .LinkLabel {
    font-size: 12px;
  }
  .SectionTopVisitor .VisitorInformation {
    margin-top: 144px;
  }
  .SectionTopVisitor .InformationText {
    font-size: 17px;
    padding: 20px 0;
    max-width: 60%;
  }
  .SectionTopVisitor .InformationText__mwNone {
    max-width: none;
  }
  .SectionTopVisitor .VisitorPlan {
    margin-top: 162px;
  }
  .SectionTopVisitor .PlanList {
    margin-top: 43px;
  }
  .SectionTopVisitor .PlanItem {
    width: 30.1%;
    max-width: 445px;
    margin-bottom: 30px;
  }
  .SectionTopVisitor .PlanTitle {
    font-size: 29px;
    margin: 30px 0 13px;
  }
  .SectionTopVisitor .PlanText {
    font-size: 18px;
  }
  .SectionTopVisitor .ShuttleBus {
    margin-top: 120px;
  }
  .SectionTopVisitor .ShuttleBusBox {
    margin-top: 24px;
  }
  .SectionTopVisitor .TimeSchedule {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
  }
  .SectionTopVisitor .TimeTable {
    width: calc(100% / 2 - 2.2%);
  }
  .SectionTopVisitor .DetailTitle {
    padding: 20px 16px;
    font-size: 18px;
    margin-bottom: 24px;
  }
  .SectionTopVisitor .place {
    font-size: 14px;
    margin-bottom: 12px;
  }
  .SectionTopVisitor .access-map iframe {
    height: 300px;
  }
  .SectionTopVisitor .BusTimeTable li {
    height: 48px;
    padding: 0 28px;
  }
  .SectionTopVisitor .BusSchedule {
    font-size: 23px;
  }
  .SectionTopVisitor .BusSchedule span {
    font-size: 12px;
    margin-left: 10px;
  }
  .SectionTopVisitor .ScheCaption {
    font-size: 14px;
    margin-top: 28px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopVisitor {
    margin: 0.67rem 0 0.5rem;
  }
  .SectionTopVisitor .Wrapper {
    padding: 0;
  }
  .SectionTopVisitor .VisitorInner {
    padding: 0.58rem 0.3rem 0.56rem;
  }
  .SectionTopVisitor .VisitorTitle {
    text-align: left;
    font-size: 0.2rem;
    letter-spacing: 0.01rem;
  }
  .SectionTopVisitor .VisitorTitle + .VisitorText {
    margin-top: 0.14rem;
  }
  .SectionTopVisitor .VisitorList {
    margin-top: 0.19rem;
    margin-bottom: 0.65rem;
  }
  .SectionTopVisitor .VisitorList li {
    margin-bottom: 0.26rem;
  }
  .SectionTopVisitor .VisitorText {
    font-size: 0.13rem;
    line-height: 1.9;
  }
  .SectionTopVisitor .ItemTitle {
    font-size: 0.16rem;
    letter-spacing: 0.01rem;
    padding: 0.14rem 0.15rem 0.13rem;
    margin-bottom: 0.19rem;
  }
  .SectionTopVisitor .DetailList {
    margin-bottom: 0.56rem;
  }
  .SectionTopVisitor .DetailList li {
    text-indent: 0.43rem;
  }
  .SectionTopVisitor .DetailList li:before {
    left: -0.24rem;
    top: 0;
    transform: none;
  }
  .SectionTopVisitor .VisitorFaq {
    margin-top: 0.2rem;
  }
  .SectionTopVisitor .FaqBlock {
    padding-bottom: 0.16rem;
  }
  .SectionTopVisitor .FaqBlock.IsActive .FaqHeading {
    padding-bottom: 0.12rem;
  }
  .SectionTopVisitor .FaqHeading {
    padding: 0.2rem 0.4rem 0 0.1rem;
    font-size: 0.16rem;
    background: url("../images/common/ico_arrow_circle_down_black.png") 96% 0.22rem/0.18rem auto no-repeat;
  }
  .SectionTopVisitor .FaqContent {
    margin-bottom: 0.07rem;
    padding: 0 0.1rem;
  }
  .SectionTopVisitor .FaqText {
    font-size: 0.13rem;
    line-height: 1.9;
  }
  .SectionTopVisitor .FaqLink {
    margin-top: 0.16rem;
    width: 100%;
    height: 0.49rem;
    font-size: 0.16rem;
    padding-top: 0.02rem;
  }
  .SectionTopVisitor .FaqNote {
    font-size: 0.1rem;
    margin-top: 0.05rem;
    line-height: 1.8;
  }
  .SectionTopVisitor .FaqItem {
    width: 100%;
  }
  .SectionTopVisitor .FaqItem + .FaqItem {
    margin-top: 0.21rem;
  }
  .SectionTopVisitor .FaqItem .FaqNote {
    margin-top: 0.13rem;
  }
  .SectionTopVisitor .FaqItemTitle {
    font-size: 0.14rem;
    margin-top: 0.03rem;
    margin-bottom: 0.14rem;
  }
  .SectionTopVisitor .ListFaq li + li {
    margin-top: 0.11rem;
  }
  .SectionTopVisitor .VisitorPress {
    padding: 0.53rem 0.3rem 0.39rem;
  }
  .SectionTopVisitor .PressTitle {
    font-size: 0.2rem;
  }
  .SectionTopVisitor .PressText {
    font-size: 0.13rem;
    margin-top: 0.14rem;
    line-height: 1.9;
  }
  .SectionTopVisitor .PressLink {
    display: block;
    margin: 0.26rem 0 0.06rem;
  }
  .SectionTopVisitor .PressLink li {
    width: 100%;
    margin-bottom: 0.24rem;
  }
  .SectionTopVisitor .ItemLink {
    padding: 0.1rem 0.15rem 0.11rem;
    background: #fff url(../images/common/ico_download.svg) right 0.2rem center/0.11rem auto no-repeat;
  }
  .SectionTopVisitor .LinkTitle {
    font-size: 0.15rem;
  }
  .SectionTopVisitor .LinkLabel {
    font-size: 0.1rem;
  }
  .SectionTopVisitor .VisitorInformation {
    padding: 0 0.3rem;
    margin-top: 0.61rem;
  }
  .SectionTopVisitor .VisitorInformation .VisitorFaq {
    margin-top: 0.17rem;
  }
  .SectionTopVisitor .InformationText {
    font-size: 0.13rem;
    padding: 0.14rem 0 0;
    line-height: 1.9;
  }
  .SectionTopVisitor .VisitorPlan {
    margin-top: 0.61rem;
    padding: 0 0.3rem;
  }
  .SectionTopVisitor .PlanList {
    display: block;
    margin-top: 0.17rem;
  }
  .SectionTopVisitor .PlanItem {
    width: 100%;
    margin-bottom: 0.34rem;
  }
  .SectionTopVisitor .PlanTitle {
    font-size: 0.17rem;
    margin: 0.17rem 0 0.06rem;
  }
  .SectionTopVisitor .PlanText {
    font-size: 0.12rem;
    line-height: 2;
  }
  .SectionTopVisitor .ShuttleBus {
    padding: 0 0.3rem;
    margin-top: 0.61rem;
  }
  .SectionTopVisitor .ShuttleBusBox {
    margin-top: 0.2rem;
  }
  .SectionTopVisitor .TimeSchedule li.TimeTable:nth-of-type(2n) {
    margin-top: 0.3rem;
  }
  .SectionTopVisitor .TimeTable {
    width: 100%;
  }
  .SectionTopVisitor .DetailTitle {
    padding: 0.16rem 0.12rem;
    font-size: 0.16rem;
    margin-bottom: 0.2rem;
  }
  .SectionTopVisitor .place {
    font-size: 0.14rem;
    margin-bottom: 0.12rem;
  }
  .SectionTopVisitor .access-map iframe {
    height: 2.8rem;
  }
  .SectionTopVisitor .BusTimeTable li {
    height: 0.38rem;
    padding: 0 0.12rem;
  }
  .SectionTopVisitor .BusSchedule {
    font-size: 0.18rem;
  }
  .SectionTopVisitor .BusSchedule span {
    font-size: 0.12rem;
    margin-left: 0.08rem;
    letter-spacing: 0;
  }
  .SectionTopVisitor .ScheCaption {
    font-size: 0.11rem;
    margin-top: 0.11rem;
  }
}
.SectionTopGuide {
  margin: 144px 0 95px;
}

.eventInfection {
  padding: 50px 25px;
}
.eventInfection h2 {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  color: #227f38;
  border-bottom: solid 2px #227f38;
  margin: 0 0 0.5em 0;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1rem;
  line-height: 1.8em;
}
.eventInfection h3 {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", "メイリオ", Meiryo, Verdana, sans-serif;
  font-weight: bold;
  line-height: 1.8em;
}
.eventInfection p {
  font-weight: bold;
  text-align: center;
  line-height: 1.6em;
  color: #555;
}
.eventInfection .eventInfectionIcon {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  list-style: none;
}
.eventInfection .eventInfectionIcon li {
  width: 45%;
}
.eventInfection .eventInfectionIcon li figure {
  margin-bottom: 0.5em;
}
.eventInfection .eventInfectionIcon li figure img {
  width: 100%;
  height: auto;
}
.eventInfection .eventInfectionIcon li p {
  color: black;
}
.eventInfection .eventInfectionDetail {
  padding: 0 25px;
  list-style: disc;
}
.eventInfection .eventInfectionDetail li {
  margin-top: 0.6em;
  color: #555;
}
.eventInfection .ContactLink {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #232526;
  border: 2px solid #232526;
  font-weight: bold;
  background: url("../images/common/ico_arrow_next_black.svg") right 19px center/7px auto no-repeat;
}

@media print, (min-width: 768px) {
  .SectionTopGuide {
    margin: 0 0 95px;
  }
  .SectionTopGuide.SectionTopGuide__report {
    padding-top: 95px;
  }

  .eventInfection {
    background: none;
    border: solid 3px #dcdcdc;
    padding: 100px 10.2% 100px;
  }
  .eventInfection h2 {
    font-size: 34px;
  }
  .eventInfection h3 {
    font-size: 16px;
    color: #000;
    margin: 32px 0 16px;
  }
  .eventInfection p {
    font-size: 18px;
    margin-bottom: 16px;
  }
  .eventInfection p.left {
    color: black;
    font-size: 16px;
    text-align: left;
  }
  .eventInfection p.left a {
    text-decoration: underline;
  }
  .eventInfection p.left a i {
    margin-left: 0.3em;
  }
  .eventInfection .eventInfectionIcon {
    justify-content: space-between;
    padding: 0 25px;
  }
  .eventInfection .eventInfectionIcon li {
    width: 30%;
  }
  .eventInfection .eventInfectionIcon li figure {
    margin-bottom: 0.5em;
  }
  .eventInfection .eventInfectionIcon li figure img {
    width: 100%;
    height: auto;
  }
  .eventInfection .eventInfectionIcon li p {
    font-size: 16px;
  }
  .eventInfection .eventInfectionDetail {
    padding: 0 0 0 25px;
    list-style: disc;
  }
  .eventInfection .eventInfectionDetail li {
    font-size: 15px;
  }
  .eventInfection .ContactLink {
    max-width: 380px;
    height: 44px;
    border: 2px solid #232526;
    font-size: 15px;
    margin: 40px auto 0;
  }
}
@media only screen and (max-width: 767px) {
  .SectionTopGuide {
    margin: 0.67rem 0 0.5rem;
    background: #fff;
  }

  .eventInfection {
    background: none;
    border: none;
    padding: 0.58rem 0.3rem 0.56rem;
  }
  .eventInfection h2 {
    font-size: 0.2rem;
    letter-spacing: 0.01rem;
  }
  .eventInfection h3 {
    font-size: 16px;
    color: #000;
    margin: 32px 0 16px;
  }
  .eventInfection p {
    font-size: 0.16rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.6em;
    margin-bottom: 1.5em;
  }
  .eventInfection p.left {
    font-size: 0.15rem;
    text-align: left;
  }
  .eventInfection .eventInfectionIcon {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    list-style: none;
  }
  .eventInfection .eventInfectionIcon li {
    width: 45%;
  }
  .eventInfection .eventInfectionIcon li figure {
    margin-bottom: 0.5em;
  }
  .eventInfection .eventInfectionIcon li figure img {
    width: 100%;
    height: auto;
  }
  .eventInfection .eventInfectionIcon li p {
    font-size: 0.15rem;
  }
  .eventInfection .eventInfectionDetail {
    padding: 0 0 0 0.3rem;
    list-style: disc;
  }
  .eventInfection .eventInfectionDetail li {
    font-size: 15px;
  }
  .eventInfection .ContactLink {
    margin: 0.31rem auto 0;
    max-width: 3.3rem;
    height: 0.5rem;
    font-size: 0.14rem;
  }
}
@media screen and (min-width: 751px) and (max-width: 1700px) {
  .IsIphone .SectionTopKeyvisual .KeyvisualTitle {
    margin-bottom: 20px;
    max-width: 80%;
  }
  .IsIphone .SectionTopKeyvisual .KeyvisualButton a {
    margin-top: 20px;
  }
  .IsIphone .SectionTopKeyvisual .KeyvisualContent {
    padding-top: 80px;
    width: 220px;
  }
  .IsIphone .SectionTopKeyvisual .KeyvisualText {
    font-size: 13px;
  }
  .IsIphone .SectionTopKeyvisual .KeyvisualSlider {
    width: calc(100% - 220px);
  }
}
@media screen and (min-width: 751px) and (max-width: 1520px) {
  .SectionTopConcept .ConceptTitle {
    font-size: 46px;
  }

  .SectionTopMessage .MessageContent {
    padding-right: 80px;
  }
  .SectionTopMessage .MessageTitle {
    font-size: 34px;
  }
  .SectionTopMessage .MessageVideo {
    max-width: 51.56%;
  }
  .SectionTopMessage .ContentImage {
    right: 100%;
    max-width: 50%;
  }

  .SectionTopSocial .SocialList {
    margin-left: 80px;
  }
  .SectionTopSocial .SocialDetail {
    left: 140px;
  }

  .SectionTopNews .NewsInner {
    margin-left: 80px;
  }
  .SectionTopNews .SliderItem {
    max-width: calc(100vw / 4.7);
  }
  .SectionTopNews .slick-slide {
    margin: 0 10px;
  }
  .SectionTopNews .slick-next {
    right: 30px;
  }
  .SectionTopNews .slick-prev {
    right: 130px;
  }

  .SectionTopFuture .FutureImage {
    right: 0;
  }
  .SectionTopFuture .FutureInner {
    margin-left: 80px;
  }

  .SectionTopExhibition {
    background: white;
  }
  .SectionTopExhibition .slick-list {
    padding-left: 80px;
  }
  .SectionTopExhibition .SliderItem {
    margin-right: 40px;
  }
  .SectionTopExhibition .slick-next {
    right: 30px;
  }
  .SectionTopExhibition .slick-prev {
    right: 130px;
  }
  .SectionTopExhibition .slick-dots {
    right: 250px;
  }

  .SectionTopTalk .TalkContent {
    padding-left: 20px;
    padding-right: 20px;
  }
  .SectionTopTalk .GuideLinks {
    flex-wrap: wrap;
  }
  .SectionTopTalk .TalkPhone {
    padding-left: 40px;
  }
  .SectionTopTalk .PhoneImage {
    max-width: 35%;
  }
  .SectionTopTalk .PhoneDetail {
    max-width: 60%;
    width: auto;
  }

  .SectionTopInformation .InformationInner {
    padding-left: 80px;
  }

  .SectionTopExpo .AnimationText {
    top: -44px;
  }

  .SectionTopTalk .GuideLinks {
    align-items: center;
  }
  .SectionTopTalk .LinkWrapper {
    margin: 20px 0;
  }

  .SectionTopInformation .InformationDetail {
    padding-right: 30px;
  }
}
@media screen and (min-width: 751px) and (max-width: 1220px) {
  .SectionTopKeyvisual .SliderTitle {
    font-size: 40px;
    margin-bottom: 22px;
  }
  .SectionTopKeyvisual .SliderText {
    font-size: 13px;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem {
    font-size: 22px;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem p {
    font-size: 8px;
    padding-top: 2px;
    line-height: 1.3;
  }
  .SectionTopKeyvisual .SliderContent {
    left: auto;
    right: 30px;
    bottom: 72px;
  }

  .SectionTopMessage {
    background: transparent;
    position: relative;
  }
  .SectionTopMessage:before {
    content: "";
    display: block;
    width: 100%;
    height: calc(100% - 96px);
    position: absolute;
    left: 0;
    top: 96px;
    background: #fff;
  }
  .SectionTopMessage .MessageInner {
    display: unset;
    align-items: unset;
    padding: 0;
  }
  .SectionTopMessage .MessageVideo {
    width: 80%;
    max-width: 100%;
    position: relative;
    z-index: 12;
  }
  .SectionTopMessage .MessageContent {
    padding: 100px 80px 100px 40%;
  }
  .SectionTopMessage .ContentImage {
    position: static;
    width: 100%;
    margin-top: 40px;
    padding-left: 0.04rem;
    max-width: 70%;
  }

  .SectionTopFuture .FutureTitle {
    font-size: 100px;
  }
  .SectionTopFuture .PresentationTime {
    font-size: 26px;
    width: 90px;
  }
  .SectionTopFuture .DetailTitle {
    font-size: 44px;
    margin-bottom: 40px;
  }
  .SectionTopFuture .DetailTitle span {
    font-size: 26px;
  }
  .SectionTopFuture .SpeakerName {
    font-size: 8px;
  }
  .SectionTopFuture .SpeakerName span {
    font-size: 24px;
  }
  .SectionTopFuture .TimeTitle {
    height: 100px;
    font-size: 28px;
  }
  .SectionTopFuture .TimeTitle span {
    font-size: 15px;
    margin-left: 22px;
  }
}
@media screen and (min-width: 751px) and (max-width: 1025px) {
  .SectionTopKeyvisual {
    margin-top: 112px;
  }
  .SectionTopKeyvisual .KeyvisualContent {
    width: 280px;
    padding-top: 220px;
  }
  .SectionTopKeyvisual .KeyvisualTitle {
    max-width: 90%;
  }
  .SectionTopKeyvisual .KeyvisualText {
    font-size: 13px;
    line-height: 2.3;
  }
  .SectionTopKeyvisual .KeyvisualSlider {
    width: calc(100% - 232px);
    height: calc(100vh - 112px);
  }
  .SectionTopKeyvisual .SliderTitle {
    font-size: 40px;
    margin-bottom: 22px;
  }
  .SectionTopKeyvisual .SliderText {
    font-size: 13px;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem {
    font-size: 22px;
  }
  .SectionTopKeyvisual .SliderGuest .SliderGuestItem p {
    font-size: 8px;
    padding-top: 2px;
    line-height: 1.3;
  }
  .SectionTopKeyvisual .SliderContent {
    left: auto;
    right: 30px;
    bottom: 72px;
  }
  .SectionTopKeyvisual .SliderNews {
    min-height: 40px;
  }

  .SectionTopNature .NatureTitle {
    font-size: 70px;
  }
  .SectionTopNature .NatureText {
    font-size: 24px;
  }

  .SectionTopSocial .ItemTitle {
    font-size: 22px;
  }
  .SectionTopSocial .ItemTitle span {
    font-size: 100px;
  }
  .SectionTopSocial .SocialTitle {
    font-size: 40px;
  }
  .SectionTopSocial .SocialText {
    font-size: 22px;
  }
  .SectionTopSocial .SocialDetail {
    left: 120px;
  }

  .SectionTopNews:before {
    height: 710px;
  }
  .SectionTopNews .ItemTitle {
    font-size: 14px;
  }

  .SectionTopFuture .FutureTitle {
    font-size: 90px;
    margin-bottom: 60px;
  }
  .SectionTopFuture .FutureInner {
    padding-top: 60px;
  }
  .SectionTopFuture .FutureImage {
    margin-left: 80px;
    width: 90%;
  }
  .SectionTopFuture .SpeakerList::after {
    display: block;
    content: "";
    width: calc(100% / 3 - 2%);
  }
  .SectionTopFuture .SpeakerList li {
    width: calc(100% / 3 - 2%);
  }
  .SectionTopFuture .SpeakerItem {
    margin: 26px 0 0;
  }
  .SectionTopFuture .SpeakerDetail {
    margin-left: 14px;
  }
  .SectionTopFuture .SpeakerItem {
    background: url(../images/top/ico_message.png) right 26px/24px auto no-repeat;
  }
  .SectionTopFuture .TimeTitle {
    font-size: 28px;
  }
  .SectionTopFuture .TimeTitle span {
    font-size: 14px;
  }
  .SectionTopFuture .PresentationTime {
    font-size: 22px;
    width: 80px;
  }
  .SectionTopFuture .PresentationTitle {
    font-size: 16px;
  }
  .SectionTopFuture .DetailTitle {
    font-size: 32px;
    margin-bottom: 32px;
    padding-top: 10px;
  }
  .SectionTopFuture .DetailTitle span {
    font-size: 21px;
  }
  .SectionTopFuture .PresentationDetailTitle {
    font-size: 18px;
    margin-top: 0;
  }
  .SectionTopFuture .PresentationDetail .ItemName {
    display: block;
    font-size: 14px;
  }
  .SectionTopFuture .PresentationDetail .ItemName span {
    display: block;
    font-size: 10px;
    margin: 0;
  }
  .SectionTopFuture .TimeTitle {
    font-size: 24px;
  }
  .SectionTopFuture .TimeTitle span {
    font-size: 13px;
    margin-left: 16px;
  }

  .SectionTopExhibition .slick-dots,
  .SectionTopExhibition .slick-next,
  .SectionTopExhibition .slick-prev {
    top: 10px;
  }
  .SectionTopExhibition .SliderItem {
    max-width: 90vw;
  }
  .SectionTopExhibition .SliderHeading {
    max-width: 40%;
  }
  .SectionTopExhibition .CardHeading {
    background: #fff url(../images/top/ico_message.png) right 20px top 54%/30px auto no-repeat;
  }
  .SectionTopExhibition .CardTitle {
    font-size: 18px;
  }

  .SectionTopTalk .GuideImage {
    max-width: 30%;
  }
  .SectionTopTalk .GuideDetail {
    margin-left: 10px;
  }
  .SectionTopTalk .GuideLinks {
    display: block;
  }
  .SectionTopTalk .GuideLinks li {
    width: 100%;
    text-align: center;
    margin-bottom: 10px;
  }
  .SectionTopTalk .GuideLinks a {
    max-width: 100%;
    margin: 0;
  }
  .SectionTopTalk .GuideLinks li:last-child {
    max-width: 100%;
    margin-top: 5px;
  }

  .SectionTopInformation .InformationTitle {
    font-size: 48px;
  }
  .SectionTopInformation .InformationTitle span {
    font-size: 20px;
  }
  .SectionTopInformation .InformationDetail {
    width: 60%;
    padding-right: 30px;
  }
  .SectionTopInformation .EventTime {
    font-size: 32px;
  }
  .SectionTopInformation .EventTime span {
    font-size: 20px;
  }

  .SectionTopVisitor .VisitorInner {
    padding-left: 30px;
    padding-right: 30px;
  }
  .SectionTopVisitor .DetailList li:before {
    top: 0;
    transform: none;
  }
  .SectionTopVisitor .VisitorPress {
    padding-left: 50px;
    padding-right: 50px;
  }
  .SectionTopVisitor .LinkTitle {
    font-size: 18px;
  }
  .SectionTopVisitor .PlanTitle {
    font-size: 24px;
  }
  .SectionTopVisitor .PlanText {
    font-size: 14px;
  }

  .ButtonEntry {
    width: 56px;
    height: 150px;
    padding-top: 18px;
    padding-right: 4px;
  }
  .ButtonEntry .TextEnglish {
    font-size: 10px;
  }
  .ButtonEntry .TextJapan {
    font-size: 14px;
    margin-top: -2px;
  }
}
@media screen and (min-width: 320px) and (max-width: 767px) and (orientation: landscape) {
  .ButtonEntry {
    width: 55px;
    height: 147px;
    padding-top: 21px;
  }
  .ButtonEntry .TextJapan {
    font-size: 12px;
    margin-top: -2px;
  }
  .ButtonEntry .TextEnglish {
    font-size: 9px;
  }
}
.contentListBlock .contentList_li .contentList_figure img {
  width: 100%;
  height: auto;
}
.contentListBlock .contentList_li .contentList_title {
  font-weight: bold;
  margin-top: 1em;
}
.contentListBlock .contentList_li .contentList_text {
  margin-top: 0.5em;
  line-height: 1.6;
}
.contentListBlock .contentList_li .contentList_text small {
  font-size: 75%;
}
.contentListBlock .contentList_li .contentList_text strong {
  font-weight: bold;
}

@media print, (min-width: 768px) {
  .contentListBlock {
    padding-bottom: 150px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .contentListBlock.noPaddingBottom {
    padding-bottom: 50px;
  }
  .contentListBlock .contentList_li {
    margin-top: 40px;
    width: 31%;
  }
  .contentListBlock .contentList_li .contentList_title {
    font-size: 20px;
  }
  .contentListBlock .contentList_li .contentList_text {
    font-size: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .contentListBlock .contentList_li {
    margin-top: 30px;
  }
  .contentListBlock .contentList_li .contentList_title {
    font-size: 16px;
  }
  .contentListBlock .contentList_li .contentList_text {
    font-size: 13px;
  }
}
.listSpeaker {
  margin-top: 40px;
  margin-bottom: 40px;
}
.listSpeaker .detailSpeaker {
  margin-top: 30px;
  text-align: center;
}
.listSpeaker .detailSpeaker .name .enName {
  letter-spacing: 0.1em;
  font-size: 12px;
  font-weight: bold;
}
.listSpeaker .detailSpeaker .name .jaName {
  letter-spacing: 0.1em;
  font-size: 48px;
  font-weight: normal;
}
.listSpeaker .detailSpeaker .division {
  font-weight: bold;
  font-size: 12px;
  color: #666;
}

@media only screen and (max-width: 767px) {
  .listSpeaker {
    margin-bottom: 50px;
  }
  .listSpeaker .detailSpeaker .name .enName {
    font-size: 10px;
  }
  .listSpeaker .detailSpeaker .name .jaName {
    font-size: 36px;
  }
  .listSpeaker .detailSpeaker .division {
    font-size: 10px;
  }
}
.honor {
  font-size: 11px;
  margin-top: 1em;
}

.SectionVenueMap {
  background: white;
}

@media print, (min-width: 768px) {
  .SectionVenueMap .wrapper {
    max-width: 1520px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 80px;
    padding-right: 80px;
    padding-top: 50px;
    padding-bottom: 200px;
  }
}
@media only screen and (max-width: 767px) {
  .SectionVenueMap .wrapper {
    padding-bottom: 125px;
  }
}
.hashtagUnderline {
  display: inline-block;
  font-size: 150%;
  background: linear-gradient(rgba(0, 0, 0, 0) 60%, #ffff00 60%, #ffff00 85%, rgba(0, 0, 0, 0) 85%);
}

.taggBox {
  margin: 30px auto;
}

.instagramAttention {
  line-height: 1.6;
}
.instagramAttention a {
  word-break: break-all;
}

@media print, (min-width: 768px) {
  .instagramAttention {
    font-size: 11px;
  }
}
@media only screen and (max-width: 767px) {
  .instagramAttention {
    font-size: 9px;
  }
}
.js-modal-btn {
  cursor: pointer;
}

.modal-video {
  background: rgba(0, 0, 0, 0.8) !important;
  backdrop-filter: blur(20px);
}

.modal-video-body {
  max-width: 1280px !important;
}

@media print, (min-width: 768px) {
  .photoArchive {
    margin-top: 30px;
    padding-bottom: 100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .photoArchive li {
    width: calc(100% / 4 - 2px);
    margin-top: 4px;
  }
}
@media only screen and (max-width: 767px) {
  .photoArchive {
    margin-top: 30px;
    padding-bottom: 100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .photoArchive li {
    width: calc(100% / 2 - 2px);
    margin-top: 4px;
  }
}

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