.lh2 {
  line-height: 2; }

.txt-indent {
  text-indent: 1em; }

a {
  transition: all 0.3s; }
  a:hover {
    opacity: 0.7; }

a.btn-box {
  display: inline-block;
  background: #FFF;
  color: #b55d2a;
  border: 1px solid #b55d2a;
  padding: 13px 5rem; }
  a.btn-box:hover {
    opacity: 1;
    background: #b55d2a;
    color: #FFF; }

img {
  width: 100%; }

.spnav {
  display: block; }

header {
  width: 100%;
  display: block;
  position: relative;
  height: 80px;
  background: url("../images/common/bg_header.jpg") no-repeat;
  background-size: auto;
  background-position: center; }
  header .head-container {
    width: 95%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); }
    header .head-container a.toplogo {
      display: block;
      width: 340px; }
  header .slider-top-shadow {
    width: 100%;
    position: absolute;
    height: 20px;
    left: 0;
    bottom: -20px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0) 100%);
    z-index: 5; }

header.fixed {
  position: fixed;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  text-align: justify;
  height: 60px; }
  header.fixed a.toplogo {
    width: 260px; }

ul.social-container {
  width: 200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center; }
  ul.social-container li img {
    width: 50px; }

.txt-caution {
  color: #e15050; }

main section {
  width: 100%; }
main .bg-jimon {
  background: url("../images/common/bg_amime01.png") repeat-y;
  background-size: auto;
  background-position: center; }

.pagehead-container {
  display: block;
  position: relative; }
  .pagehead-container .subcopy-container {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 35%;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, black 100%); }
    .pagehead-container .subcopy-container h1 {
      font-family: 'Shippori Mincho', serif;
      color: #FFF;
      font-size: 4.6rem;
      letter-spacing: 0.5rem;
      font-weight: 800;
      text-align: right;
      padding: 5px 5%; }

.anchor-box {
  position: relative;
  display: block;
  width: 100%;
  background: rgba(13, 63, 78, 0.9);
  padding: 15px 0;
  margin-bottom: 60px; }
  .anchor-box ul {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center; }
    .anchor-box ul li a {
      font-family: 'Shippori Mincho', serif;
      font-size: 2.2rem;
      color: #FFF;
      position: relative;
      padding-left: 25px; }
      .anchor-box ul li a:before {
        position: absolute;
        content: "";
        width: 16px;
        height: 16px;
        background: url("../images/common/blt_arrow_right_pink.svg") no-repeat;
        background-size: contain;
        background-position: center;
        left: 0;
        top: 50%;
        transform: translateY(-40%); }

.anchor-box.fixed {
  position: fixed;
  z-index: 5;
  top: 60px; }

footer {
  background: #E4E1DD;
  padding: 10px; }
  footer p {
    font-size: 1.6rem;
    color: #523a20; }

main {
  width: auto; }
  main .container {
    width: 1200px;
    margin: 0 auto; }

.spnav {
  display: block !important;
  z-index: 25;
  position: fixed;
  right: 2.5%;
  top: 1%; }

.spnav.fixed {
  right: 2.5%;
  top: 0; }

.drawer-hamburger {
  z-index: 25 !important;
  position: absolute !important;
  right: 1% !important;
  margin-top: 2% !important; }

.drawer-hamburger-icon:before, .drawer-hamburger-icon:after, .drawer-hamburger-icon {
  background-color: #0d3f4e !important;
  height: 5px !important; }

.drawer-hamburger-icon:before {
  top: -15px !important; }

.drawer-hamburger-icon:after {
  top: 15px !important; }

body.drawer-open .drawer-hamburger {
  right: 1% !important;
  z-index: 100; }
body.drawer-open .drawer-hamburger-icon {
  background-color: rgba(0, 0, 0, 0) !important; }
body.drawer-open .drawer-hamburger-icon:before {
  top: 0px !important; }
body.drawer-open .drawer-hamburger-icon:after {
  top: 0 !important; }
body.drawer-open .drawer-nav {
  width: 45rem !important; }

.drawer-toggle.drawer-hamburger {
  width: 8rem !important;
  top: 0rem !important; }

nav.drawer-nav {
  background: url("../images/common/bg_menu.jpg") no-repeat;
  background-size: cover;
  z-index: 7; }
  nav.drawer-nav dl {
    width: 90%;
    margin: 100px auto 40px auto;
    font-family: 'Shippori Mincho', serif;
    font-weight: 600;
    text-align: left; }
    nav.drawer-nav dl p.navlogo {
      display: block;
      width: 70%;
      margin: 0 auto 30px; }
    nav.drawer-nav dl dt {
      border-bottom: 1px dotted #FFF;
      font-size: 2.4rem;
      padding: 20px 0 20px 35px;
      position: relative; }
      nav.drawer-nav dl dt a {
        display: block;
        color: #FFF; }
        nav.drawer-nav dl dt a span.icn_arrow {
          position: absolute;
          width: 25px;
          left: -35px;
          top: 40%;
          transform: translateY(-50%); }
        nav.drawer-nav dl dt a:hover {
          margin-left: 20px; }
      nav.drawer-nav dl dt.noborder {
        border-bottom: none;
        padding-bottom: 20px; }
    nav.drawer-nav dl dd a {
      display: block;
      color: #FFF;
      padding: 0 0 20px 35px; }
      nav.drawer-nav dl dd a:hover {
        padding: 0 0 20px 55px; }
    nav.drawer-nav dl dd.border {
      border-bottom: 1px dotted #FFF; }

@media screen and (max-width: 1280px), screen and (orientation: portrait) {
  section .container {
    width: 95%; } }
@media screen and (max-width: 1025px) {
  .anchor-box ul {
    width: 90%; }
    .anchor-box ul li a {
      font-size: 2.0rem; } }
@media screen and (max-width: 599px) {
  header {
    height: 75px; }
    header .head-container a.toplogo {
      width: 260px; }

  .pagehead-container {
    height: 150px;
    background: url("../images/event/bg_event-head.jpg") no-repeat;
    background-size: 300%;
    background-position: center; }
    .pagehead-container img {
      display: none; }
    .pagehead-container .subcopy-container {
      bottom: 35%; }
      .pagehead-container .subcopy-container h1 {
        font-size: 4.6rem;
        text-align: center; }

  .anchor-box ul {
    width: 95%;
    display: block; }
    .anchor-box ul li a {
      display: inline-block;
      text-align: justify;
      line-height: 2.5; }

  .anchor-box.fixed {
    top: 60px; } }
