@charset "UTF-8";
/*-----------------------------------
    ブレイクポイント
-----------------------------------*/
/*$tablet: "only screen and (max-width:959px)";*/
/*-----------------------------------
    カラー
-----------------------------------*/
/*-----------------------------------
    フォント
-----------------------------------*/
/*
  1. より直感的なボックスサイズのモデルを使用
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+JP:wght@100;200;300;400;500;600;700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700&display=swap");
*, *::before, *::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/*
  2. デフォルトのマージンを削除
*/
* {
  margin: 0; }

/*
  3. 高さは%ベースを使用
*/
html, body {
  height: 100%; }

/*
  タイポグラフィの微調整
  4. アクセシブルなline-heightを追加
  5. テキストのレンダリングを改善
*/
body {
  font-family: 'Noto Sans JP','Roboto', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  /*font-family:"Roboto","游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;*/
  /*font-family:'Roboto','Noto Sans JP', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;*/
  font-size: 16px;
  line-height: 1.7em;
  -webkit-font-smoothing: antialiased; }

/*
  6. メディア要素のデフォルトを改善
*/
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%; }

/*
  7. フォームのfontに関するデフォルトを削除
*/
input, button, textarea, select {
  font: inherit; }

/*
  8. テキストのオーバーフローを回避
*/
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word; }

/*
  9. ルートのスタックコンテキストを作成
*/
#root, #__next {
  isolation: isolate; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, input, textarea, p, th, td {
  margin: 0;
  padding: 0; }

address, caption, em, strong, th {
  font-style: normal; }

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

object, embed {
  vertical-align: top; }

h1, h2, h3, h4, h5, h6 {
  font-size: 100%; }

img, abbr {
  border: 0;
  vertical-align: bottom; }

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

ol, ul {
  list-style: none; }

.spOnly {
  display: none; }
  @media only screen and (max-width: 599px) {
    .spOnly {
      display: block; } }

@media only screen and (max-width: 599px) {
  .spNone {
    display: none; } }

@media only screen and (max-width: 1099px) {
  .pcOnly {
    display: none; } }

@media only screen and (min-width: 1100px) {
  .pcNone {
    display: none; } }

br .spOnly {
  display: none; }
  @media only screen and (max-width: 599px) {
    br .spOnly {
      display: inline-block; } }

@media only screen and (max-width: 599px) {
  br .spNone {
    display: none; } }

.spOnly {
  display: none; }
  @media only screen and (max-width: 599px) {
    .spOnly {
      display: block; } }

@media only screen and (max-width: 599px) {
  .spNone {
    display: none; } }

@media only screen and (max-width: 1099px) {
  .pcOnly {
    display: none; } }

@media only screen and (min-width: 1099px) {
  .pcNone {
    display: none; } }

.junbi {
  width: 100%;
  padding: 100px 0 0 0;
  text-align: center; }
  .junbi img {
    width: 700px;
    height: auto;
    display: block;
    margin: 0 auto; }
    @media only screen and (max-width: 599px) {
      .junbi img {
        width: 70%;
        height: auto; } }

body {
  background: #f2efea;
  font-size: 17px;
  line-height: 1.8em; }

/*スムーズスクロール*/
html {
  scroll-behavior: smooth; }

/*ブラウザ全体　固定枠*/
html:before,
html:after,
body:before,
body:after {
  content: "";
  background: #66d7d1;
  position: fixed;
  display: block;
  z-index: 99999; }

html:before {
  height: 12px;
  width: 100vw;
  left: 0;
  top: 0; }
  @media only screen and (max-width: 599px) {
    html:before {
      height: 8px; } }

html:after {
  width: 12px;
  height: 100vh;
  right: 0;
  top: 0; }
  @media only screen and (max-width: 599px) {
    html:after {
      width: 8px; } }

body:before {
  height: 12px;
  width: 100vw;
  bottom: 0;
  left: 0; }
  @media only screen and (max-width: 599px) {
    body:before {
      height: 8px; } }

body:after {
  width: 12px;
  height: 100vh;
  top: 0;
  left: 0; }
  @media only screen and (max-width: 599px) {
    body:after {
      width: 8px; } }

/*さかなふわふわ*/
.fish_wrapper, .fish_wrapper_2 {
  display: block;
  position: absolute;
  height: auto;
  z-index: 999; }

.fis_1_box {
  left: -5vw;
  top: 40vh; }
  @media only screen and (max-width: 599px) {
    .fis_1_box {
      left: -5%;
      top: 46vh; } }

.fish_1 {
  width: 150px; }
  @media only screen and (max-width: 599px) {
    .fish_1 {
      width: 100px; } }

.fis_2_box {
  right: -5vw;
  top: 17vh; }
  @media only screen and (max-width: 599px) {
    .fis_2_box {
      right: -5vw;
      top: 2vh; } }

.fish_2 {
  width: 200px; }
  @media only screen and (max-width: 599px) {
    .fish_2 {
      width: 150px; } }

.fis_3_box {
  left: -7vw;
  top: 5vh; }
  @media only screen and (max-width: 599px) {
    .fis_3_box {
      left: -5vw;
      top: 2vh; } }

.fish_3 {
  width: 160px; }
  @media only screen and (max-width: 599px) {
    .fish_3 {
      width: 110px; } }

.fis_4_box {
  right: -1vw;
  top: 83vh; }
  @media only screen and (max-width: 599px) {
    .fis_4_box {
      right: -2vw;
      top: 72vh; } }

.fish_4 {
  width: 100px; }
  @media only screen and (max-width: 599px) {
    .fish_4 {
      width: 90px; } }

.fis_5_box {
  right: -10vw;
  top: 65vh; }
  @media only screen and (max-width: 599px) {
    .fis_5_box {
      right: -5vw;
      top: 49vh; } }

.fish_5 {
  width: 220px; }
  @media only screen and (max-width: 599px) {
    .fish_5 {
      width: 140px; } }

.fis_6_box {
  right: -27vw;
  top: 3vh; }
  @media only screen and (max-width: 599px) {
    .fis_6_box {
      display: none; } }

.fish_6 {
  width: 120px; }

.fis_7_box {
  left: -10vw;
  top: 80vh; }
  @media only screen and (max-width: 599px) {
    .fis_7_box {
      display: none; } }

.fish_7 {
  width: 150px; }

.fis_8_box {
  left: -25vw;
  top: 2vh; }
  @media only screen and (max-width: 599px) {
    .fis_8_box {
      display: none; } }

.fish_8 {
  width: 100px; }

/* Animation */
.fish_wrapper {
  animation: floating-x 8s ease-in-out infinite alternate-reverse; }

.target {
  animation: floating-y 2.0s ease-in-out infinite alternate-reverse; }

.fish_wrapper_2 {
  animation: floating-x_2 4s ease-in-out infinite alternate-reverse; }

.target_2 {
  animation: floating-y_2 4.0s ease-in-out infinite alternate-reverse; }

@-webkit-keyframes floating-x {
  0% {
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%); }
  100% {
    -webkit-transform: translateX(10%);
    transform: translateX(10%); } }

@keyframes floating-x {
  0% {
    -webkit-transform: translateX(-10%);
    transform: translateX(-10%); }
  100% {
    -webkit-transform: translateX(10%);
    transform: translateX(10%); } }

@-webkit-keyframes floating-y {
  0% {
    -webkit-transform: translateY(-5%);
    transform: translateY(-5%); }
  100% {
    -webkit-transform: translateY(5%);
    transform: translateY(5%); } }

@keyframes floating-y {
  0% {
    -webkit-transform: translateY(-5%);
    transform: translateY(-5%); }
  100% {
    -webkit-transform: translateY(5%);
    transform: translateY(5%); } }

@-webkit-keyframes floating-x_2 {
  0% {
    -webkit-transform: translateX(-5%);
    transform: translateX(-5%); }
  100% {
    -webkit-transform: translateX(5%);
    transform: translateX(5%); } }

@keyframes floating-x_2 {
  0% {
    -webkit-transform: translateX(-5%);
    transform: translateX(-5%); }
  100% {
    -webkit-transform: translateX(5%);
    transform: translateX(5%); } }

@-webkit-keyframes floating-y_2 {
  0% {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%); }
  100% {
    -webkit-transform: translateY(10%);
    transform: translateY(10%); } }

@keyframes floating-y_2 {
  0% {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%); }
  100% {
    -webkit-transform: translateY(10%);
    transform: translateY(10%); } }

/*全体レイアウト*/
.wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.left-fixed {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  text-align: center; }
  @media only screen and (max-width: 1099px) {
    .left-fixed {
      display: none; } }
  .left-fixed .left_image {
    position: -webkit-sticky;
    position: sticky;
    top: 18vh;
    text-align: center;
    margin: 0 auto;
    max-width: 345px;
    padding: 0 10px; }
    .left-fixed .left_image img {
      width: 100%;
      display: inline; }

#application, #attention {
  padding: 60px 0 0 0; }

.container {
  position: relative;
  width: 472px;
  margin: 0;
  min-height: 100vh;
  background: #f2efea url("../img/2025/bg_cont.png") no-repeat center 18px;
  background-size: 98% auto; }
  @media only screen and (max-width: 1099px) {
    .container {
      margin: 0 0 12px 12px; } }
  @media only screen and (max-width: 599px) {
    .container {
      width: auto;
      margin: 8px;
      background: #f2efea url("../img/2025/bg_cont.png") no-repeat center 5px;
      background-size: 98% auto;
      overflow: hidden; } }
  .container .logo_pc {
    margin: 70px 0 30px; }
    @media only screen and (max-width: 599px) {
      .container .logo_pc {
        display: none; } }
    .container .logo_pc img {
      width: 89%;
      display: block;
      margin: 0 auto; }
  .container .logo_sp {
    display: none;
    margin: 70px 0 30px; }
    @media only screen and (max-width: 599px) {
      .container .logo_sp {
        display: block; } }
    .container .logo_sp img {
      width: 92%;
      display: block;
      margin: 0 auto; }
  .container .main_info {
    margin: 0 60px 20px; }
    @media only screen and (max-width: 599px) {
      .container .main_info {
        margin: 0 20px 20px; } }
    .container .main_info p {
      font-size: 19px;
      color: #132874;
      line-height: 2.3em;
      padding: 0.4em 0;
      margin-right: -0.3em;
      border-bottom: 3px dotted #66d7d1;
      display: inline; }
      @media only screen and (max-width: 599px) {
        .container .main_info p {
          font-size: 18px; } }
  .container .img_day img {
    width: 100%;
    height: auto; }
  .container .title_set {
    margin: 0 0 40px; }
    .container .title_set img {
      width: 250px;
      height: auto;
      display: block;
      margin: 0 auto; }
  .container .txt_set {
    text-align: center;
    margin: 0 0 50px; }
    .container .txt_set dt {
      font-size: 20px;
      line-height: 20px;
      margin: 0 0 20px; }
      .container .txt_set dt.title_oubo span {
        margin: 0 auto;
        border-radius: 40px;
        color: #0f084b;
        border: 2px solid #66d7d1;
        padding: 4px 20px; }
      .container .txt_set dt.title_atte span {
        margin: 0 auto;
        border-radius: 40px;
        color: #0f084b;
        background: #e6e0d7;
        padding: 4px 20px; }
    @media only screen and (max-width: 599px) {
      .container .txt_set dd {
        margin: 0 20px; } }
    .container .txt_set dd a {
      color: #66d7d1;
      text-decoration: underline;
      font-size: 16px; }
    .container .txt_set dd span {
      font-size: 12px;
      line-height: 1.5em;
      display: block; }
    .container .txt_set dd .oubo_info {
      color: #fc7753;
      display: block;
      margin: 10px 0 0 0;
      line-height: 1.5em; }
    .container .txt_set dd .list_num {
      margin: 0 20px;
      text-align: left;
      padding-left: 25px; }
      @media only screen and (max-width: 599px) {
        .container .txt_set dd .list_num {
          margin: 0; } }
      .container .txt_set dd .list_num li {
        list-style-type: decimal;
        list-style-position: outside; }
        .container .txt_set dd .list_num li::marker {
          color: #fc7753; }
    .container .txt_set dd .p_title {
      color: #fc7753;
      margin: 0 20px;
      text-align: left; }
      @media only screen and (max-width: 599px) {
        .container .txt_set dd .p_title {
          margin: 0; } }
    .container .txt_set dd .p_title_access {
      color: #0f084b;
      margin: 15px 20px 0;
      text-align: left;
      padding: 0 0 0 66px; }
      @media only screen and (max-width: 599px) {
        .container .txt_set dd .p_title_access {
          margin: 15px 0 0; } }
    .container .txt_set dd .access_icon_a {
      background: url("../img/2025/icon_access_a.png") no-repeat left center;
      background-size: 55px auto; }
    .container .txt_set dd .access_icon_b {
      background: url("../img/2025/icon_access_b.png") no-repeat left center;
      background-size: 55px auto; }
    .container .txt_set dd .access_icon_c {
      background: url("../img/2025/icon_access_c.png") no-repeat left center;
      background-size: 55px auto; }
    .container .txt_set dd .txt_left {
      text-align: left;
      margin: 0 20px; }
      @media only screen and (max-width: 599px) {
        .container .txt_set dd .txt_left {
          margin: 0; } }
    .container .txt_set dd iframe {
      margin: 0 auto;
      width: 90%; }
      @media only screen and (max-width: 599px) {
        .container .txt_set dd iframe {
          width: 100%; } }
  .container .toujitsu_set {
    padding: 60px 0; }
    .container .toujitsu_set img {
      width: 100%;
      height: auto;
      margin: 0;
      padding: 0; }
    .container .toujitsu_set .toujitsu_txt {
      background: #66d7d1;
      padding: 10px 20px 50px;
      text-align: left; }
  .container .bnr_official {
    margin: 40px 0; }
    .container .bnr_official a {
      -webkit-transition: -webkit-transform 0.3s ease;
      transition: -webkit-transform 0.3s ease;
      -o-transition: transform 0.3s ease;
      transition: transform 0.3s ease;
      transition: transform 0.3s ease, -webkit-transform 0.3s ease;
      display: block;
      width: 250px;
      margin: 0 auto; }
      .container .bnr_official a:hover {
        -webkit-transform: scale(1.05);
        -ms-transform: scale(1.05);
        transform: scale(1.05); }
      .container .bnr_official a img {
        width: 250px;
        height: auto; }
  .container .bnr_kk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 0 20px; }
    .container .bnr_kk li {
      width: 38%;
      margin: 0 20px; }
      .container .bnr_kk li img {
        width: 100%;
        height: auto; }
  .container .footer_link {
    text-align: center;
    margin: 0 0 10px; }
    .container .footer_link a {
      font-size: 14px;
      color: #0d0221;
      text-decoration: none; }
  .container .copyright {
    text-align: center;
    background: #fff;
    font-size: 14px;
    color: #0d0221;
    padding: 0 0 20px; }
  .container .btn_oubo_sp {
    display: none; }
    @media only screen and (max-width: 599px) {
      .container .btn_oubo_sp {
        position: fixed;
        bottom: 15px;
        right: 15px;
        width: 150px;
        margin: 0 auto;
        display: block;
        z-index: 9999; } }

.right-fixed {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1; }
  @media only screen and (max-width: 599px) {
    .right-fixed {
      display: none; } }
  .right-fixed .right_navigation {
    position: -webkit-sticky;
    position: sticky;
    top: 30vh;
    width: 250px;
    margin: 0 auto; }
    @media only screen and (max-width: 1099px) {
      .right-fixed .right_navigation {
        width: auto;
        margin: 0 50px; } }
    .right-fixed .right_navigation li {
      margin: 0 0 30px;
      background: url("../img/2025/icon_menu.png") no-repeat left center;
      background-size: 36px 22px;
      padding: 0 0 0 46px; }
      .right-fixed .right_navigation li a {
        color: #fff;
        text-decoration: none;
        font-weight: bold;
        -webkit-transition-duration: .4s;
        -o-transition-duration: .4s;
        transition-duration: .4s; }
        .right-fixed .right_navigation li a:hover {
          color: #66d7d1;
          letter-spacing: 0.15em; }
  .right-fixed .btn_oubo {
    position: -webkit-sticky;
    position: sticky;
    top: 60vh;
    width: 235px;
    margin: 0 auto;
    display: block;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    -o-transition: transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    z-index: 9999; }
    .right-fixed .btn_oubo:hover {
      -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
      transform: scale(1.05); }

/*PC用 背景・右メニュー*/
.bg-back {
  background: url("/festival/files/img/2025/sui_back.png") center no-repeat;
  background-attachment: scroll;
  /*background-size: auto;*/
  background-size: cover;
  position: fixed;
  height: 100vh;
  width: 100%;
  /*background-attachment: fixed;*/
  z-index: -1; }

/*メインコンテンツ*/
.content {
  width: 472px;
  margin: 0 auto;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  background: #f2efea;
  z-index: 99;
  position: relative; }
  @media only screen and (max-width: 599px) {
    .content {
      width: auto; } }
  .content .title_set {
    margin: 100px 0 40px; }
    .content .title_set img {
      width: 230px;
      height: auto;
      display: block;
      margin: 0 auto; }
  .content .f18 {
    font-size: 18px;
    line-height: 1.5em; }
  .content .f14 {
    font-size: 14px;
    line-height: 1.5em; }
  .content .f12 {
    font-size: 12px;
    line-height: 1.5em; }
  .content .bold {
    font-weight: bold; }
  .content .mv {
    position: relative;
    background: url("../img/bg_pc.jpg") no-repeat center top;
    background-size: auto 100%;
    -o-object-fit: cover;
    object-fit: cover;
    text-align: center; }
    .content .mv img.point_6 {
      position: absolute;
      left: 0;
      top: 0;
      width: 200px;
      height: auto; }
    .content .mv img.logo {
      width: 265px;
      height: auto;
      display: block;
      margin: 0 auto;
      padding: 80px 0 10px; }
    .content .mv img.mv_info {
      width: 350px;
      height: auto;
      display: block;
      margin: 0 auto;
      padding: 0 0 50px 0; }
    .content .mv::before {
      content: '';
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      background-color: #fff;
      -webkit-transform: skewY(-7deg) translateY(760px);
      -ms-transform: skewY(-7deg) translateY(760px);
      transform: skewY(-7deg) translateY(760px);
      z-index: 79;
      height: 70px; }
  .content .photo_1 {
    position: relative;
    height: 480px;
    margin: 0 0 50px; }
    .content .photo_1 img.main {
      border-radius: 10px 0 10px 0;
      width: 100%;
      height: auto; }
    .content .photo_1 .photo_txt {
      position: absolute;
      top: 170px;
      left: 0;
      width: 70%;
      background: #fff;
      padding: 15px 15px 15px 0;
      font-size: 16px;
      letter-spacing: 0.5px; }
    .content .photo_1 img.point_1 {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 110px;
      height: auto; }
    .content .photo_1 img.point_2 {
      position: absolute;
      top: 150px;
      right: 50px;
      width: 110px;
      height: auto; }
  .content .photo_2 {
    position: relative;
    height: 500px;
    margin: 0 0 50px; }
    .content .photo_2 img.main {
      border-radius: 0 10px 0 10px;
      width: 100%;
      height: auto; }
    .content .photo_2 .photo_txt {
      position: absolute;
      top: 180px;
      right: 0;
      width: 70%;
      background: #fff;
      padding: 15px 0 15px 15px;
      font-size: 16px;
      letter-spacing: 1px; }
    .content .photo_2 img.point_3 {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 170px;
      height: auto; }
    .content .photo_2 img.point_4 {
      position: absolute;
      top: 130px;
      left: -20px;
      width: 180px;
      height: auto; }
  .content .photo_3 {
    position: relative;
    height: 450px;
    margin: 0 0 50px; }
    .content .photo_3 img.main {
      border-radius: 10px;
      width: 400px;
      height: 450px;
      -o-object-fit: cover;
      object-fit: cover; }
    .content .photo_3 .photo_txt {
      position: absolute;
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      width: 110px;
      height: 290px;
      background: #fff;
      padding: 15px;
      font-size: 16px;
      letter-spacing: 1px; }
    .content .photo_3 img.point_5 {
      position: absolute;
      top: -70px;
      right: -10px;
      width: 130px;
      height: auto; }
  .content .info_oubo dt {
    text-align: center;
    letter-spacing: 5px;
    background: #162850;
    color: #fff;
    margin: 0 0 10px; }
  .content .info_oubo dd {
    margin: 0 0 20px; }
    .content .info_oubo dd.center {
      text-align: center; }
    .content .info_oubo dd .oubo_atte {
      background: #FFE1E2;
      display: block;
      color: #D30003;
      padding: 10px 5px;
      margin: 0 0 20px;
      font-size: 14px;
      line-height: 1.3em; }
    .content .info_oubo dd .oubo_day {
      margin: 0 0 20px;
      font-size: 18px;
      font-weight: bold; }
      .content .info_oubo dd .oubo_day span {
        font-size: 16px; }
    .content .info_oubo dd .oubo_op {
      text-align: left; }
  .content .pickup_photo {
    border: 5px solid #eee;
    padding: 15px;
    margin: 0 0 20px; }
    .content .pickup_photo .title {
      position: relative;
      display: block;
      text-align: center;
      font-size: 18px;
      font-weight: bold;
      padding: 20px 0 0 0;
      margin: 0 0 10px; }
      .content .pickup_photo .title:before {
        content: '';
        background: url("../img/icon_camera.png") no-repeat;
        background-size: 28px;
        position: absolute;
        top: -5px;
        display: inline-block;
        width: 30px;
        height: 30px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
  .content .pickup_app {
    background: url("../img/line_a.png") no-repeat;
    background-size: 400px 17px;
    margin: 30px 0;
    padding: 30px 0 50px;
    position: relative; }
    .content .pickup_app:after {
      content: "";
      background: url("../img/line_a.png") no-repeat;
      background-size: 400px 17px;
      width: 100%;
      height: 17px;
      position: absolute;
      bottom: 0;
      left: 0; }
    .content .pickup_app .title {
      position: relative;
      display: block;
      text-align: center;
      font-size: 18px;
      font-weight: bold;
      padding: 40px 0 0 0;
      margin: 0 0 10px; }
      .content .pickup_app .title:before {
        content: '';
        background: url("../img/icon_sp.png") no-repeat;
        background-size: 28px;
        position: absolute;
        top: 10px;
        display: inline-block;
        width: 30px;
        height: 30px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
    .content .pickup_app .day {
      background: #cef3fa;
      text-align: center;
      padding: 15px;
      display: block;
      font-weight: bold;
      font-size: 18px;
      margin: 10px 0; }
    .content .pickup_app .btn_app {
      display: block;
      text-align: center;
      font-weight: bold;
      background: url("../img/btn_app.png") no-repeat;
      background-size: 300px 57px;
      margin: 20px auto;
      width: 300px;
      height: 57px;
      color: #000;
      text-decoration: none;
      line-height: 57px;
      -webkit-transition: 0.5s;
      -o-transition: 0.5s;
      transition: 0.5s; }
      .content .pickup_app .btn_app:hover {
        color: #329fcf; }
    .content .pickup_app .error_txt {
      margin: 30px 0 0 0;
      font-size: 12px;
      line-height: 1.7em;
      display: block; }

footer {
  text-align: center; }
  @media only screen and (max-width: 599px) {
    footer {
      padding: 0 0 70px; } }
  footer .official_logo img {
    width: 60%;
    height: auto;
    display: block;
    margin: 0 auto 30px; }
  footer ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 auto 30px;
    width: 90%; }
    footer ul li {
      margin: 0 10px; }
  footer .contact {
    color: cornflowerblue;
    font-size: 12px;
    padding: 5px 0; }
  footer .copyright {
    background: #f2f2f2;
    color: #666;
    font-size: 12px;
    padding: 3px 0; }

.enki {
  font-size: 16px;
  line-height: 1.8em;
  padding: 20px;
  background: #FFF0F1; }
  .enki .title {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    margin: 0 0 10px; }
  .enki span {
    color: #DB0003;
    font-weight: bold;
    text-decoration: underline; }

.gallery_list img {
  display: block;
  border-radius: 10px 0 10px 0;
  margin: 0 0 10px; }
