@charset "UTF-8";
/* ==========================================================

title : 九州国立博物館で歴史に触れよう！【刀剣ワールド】
scope : 九州国立博物館で歴史に触れよう！【刀剣ワールド】

memo：

last modify : 2021/01/20 TCI福岡_sakaguchi バナー共通化対応 画像幅微修正

2020/09/06 TCI福岡_eguchi 東建・HM・刀剣バナーを追加
2020/06/22 TCI福岡_eguchi／インデント調整
2019/12/25 TCI福岡_tsunawaki／新規作成
(次ファイルを流用 /special-contents/kyushu-national-museum/css/style.css)

========================================================== */

/* ------------------------------------ */
/* ▼ page common */
/* ------------------------------------ */
/* -- base font size -- */
@media (min-width: 768px) {
  .content_area {
    font-size: 1.8rem;
    padding-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .content_area {
    clear: both;
    font-size: 1.6rem;
    padding-bottom: 25px;
  }
}

.content_area img {
  vertical-align: bottom;
}

/* -- bg_roll -- */
.bg_roll {
  display: inline-block;
  font-size: 0;
  position: relative;
  transition: all .2s;
}

.bg_roll::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  transition: all .2s;
  width: 100%;
  height: 100%;
}

.bg_roll:hover::after {
  background: rgba(255, 255, 255, .3);
}

@media (max-width: 767px) {
  .bg_roll::after {
    display: none;
  }
}

/* -- pagetop -- */
.btn_gotop {
  z-index: 5;
}

/* -- for sp -- */
.sp_pt {
  display: none;
}

@media screen and (max-width: 767px) and (orientation: portrait) {
  .sp_pt {
    display: block;
  }
}

/* -- pc or sp only (block unused) -- */
@media (max-width: 767px) {
  .pc_only {
    display: none!important;
  }
}

@media (min-width: 768px) {
  .sp_only {
    display: none!important;
  }
}

/* -- letter spacing -- */
.adjust_letter_space {
  letter-spacing: .06em;
  text-align: justify;
  word-break: break-all;
}

/* -- other parts -- */
.sword_gallery01_item_img {
  position: relative;
}

.sword_gallery_label01 {
  position: absolute;
  transform: translate(-45%, -40%);
}

.sword_gallery01_item_txt {
  letter-spacing: .03em;
  text-align: left;
}

@media (min-width: 768px) {
  .disc_text_diagonally {
    color: #fff;
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.8;
    padding: 13px 10px 13px 24px;
    position: relative;
    text-align: center;
    z-index: 1;
  }

  .disc_text_diagonally::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-13deg);
    z-index: -1;
  }

  .btn_link01 {
    margin: 18px auto 0;
    max-width: 230px;
  }

  .btn_link01 .cmn_link_btn_text {
    font-size: 16px;
    letter-spacing: .15em;
  }

  .gallery_item_line {
    background: url(../image/bg-section-line01.png) repeat-x;
    border: none;
    display: block;
    height: 15px;
    max-width: 615px;
    position: relative;
    width: 87%;
  }

  .gallery_item_line::before {
    background:url(../image/bg-section-spacer03.png) no-repeat;
    background-size: contain;
    content: "";
    height: 320px;
    max-width: 254px;
    position: absolute;
    top: -110px;
    left: -43%;
    width: 42%;
  }

  .gallery_item_line01:nth-of-type(odd),
  .gallery_item_line02:nth-of-type(even) {
    margin: 0 -9% 0 auto;
  }

  .gallery_item_line01:nth-of-type(even),
  .gallery_item_line02:nth-of-type(odd) {
    margin: 0 auto 0 -9%;
    transform: scale(-1, 1);
  }

  .sword_gallery01_item {
    position: relative;
  }

  .sword_gallery_label01 {
    top: 0;
    left: 0;
  }

  .sword_gallery01_item_name {
    margin-top: 23px;
  }

  .sword_gallery01_item_txt {
    letter-spacing: .03em;
    margin-top: 15px;
    padding: 0 12.89%;
    text-align: justify;
  }
}

@media (max-width: 767px) {
  .btn_link01 {
    margin: 5px auto 0;
    max-width: 230px;
  }

  .sword_gallery_label01 {
    max-width: 100px;
    top: 2%;
    left: 9%;
    width: 25%;
  }

  .sword_gallery01_item:nth-of-type(n+2) {
    margin-top: 35px;
  }

  .sword_gallery01_item_name {
    margin: 5px auto 0;
  }

  .sword_gallery01_item_name.type01 {
    max-width: 320px;
  }

  .sword_gallery01_item_name.type02 {
    max-width: 160px;
  }

  .sword_gallery01_item_name.type03 {
    max-width: 115px;
  }

  .sword_gallery01_item_txt {
    margin-top: 5px;
  }
}

/* ------------------------------------ */
/* ▼ breadcrumbs */
/* ------------------------------------ */
.breadcrumbs {
  margin: 0 auto;
  padding: 15px 0 36px;
}

/* ------------------------------------ */
/* ▼ bg image type */
/* ------------------------------------ */
@media (min-width: 768px) {
  .bg_outer {
    background-repeat: repeat-y;
    background-position: center 0;
    background-size: 100% auto;
    margin: 0 auto;
    max-width: 1080px;
    width: 100%;
  }

  .bg_outer.bg_type01 {
    background-image: url(../image/bg-contents-01.gif);
  }

  .bg_outer.bg_type02 {
    background-image: url(../image/bg-contents-02.gif);
  }

  .bg_outer.bg_type03 {
    background-image: url(../image/bg-contents-03.gif);
  }
}

/* ------------------------------------ */
/* ▼ section */
/* ------------------------------------ */
.section.section01 {
  padding: 25px 0 3.722%;
}

.section.section02,
.section.section03,
.section.section04,
.section.section05,
.section.section06,
.section.section07,
.section.section08 {
  padding: 20px 0 3.722%;
}

.section_inner {
  margin: 0 auto;
  position: relative;
  width: 100%;
}

.section_inner.top {
  max-width: 1000px;
}

@media (min-width: 768px) {
  .section.section09 {
    padding: 105px 0 0;
  }

  .section.section10 {
    margin-top: -1px;
    position: relative;
  }

  .section.section10::before {
    content: "";
    display: block;
    background: url(../image/bg-sec10-top.jpg) no-repeat bottom center;
    background-size: 100% auto;
    padding-top: 8.149%;
    position: relative;
    z-index: 1;
  }

  .section01 .section_inner,
  .section02 .section_inner,
  .section03 .section_inner,
  .section04 .section_inner,
  .section05 .section_inner,
  .section06 .section_inner,
  .section07 .section_inner,
  .section08 .section_inner {
    max-width: 960px;
    padding-bottom: 30px;
    position: relative;
  }

  .section09 .section_inner {
    background-color: rgba(20, 55, 112, 0.8);
    max-width: 100%;
    margin-top: -1px;
  }

  .other_museum .section_inner {
    background-color: rgba(191, 150, 99, 0.6);
    max-width: 100%;
    padding: 0 20px 45px;
  }

  .section01 .section_inner::after,
  .section02 .section_inner::after,
  .section03 .section_inner::after,
  .section04 .section_inner::after,
  .section05 .section_inner::after,
  .section06 .section_inner::after,
  .section07 .section_inner::after,
  .section08 .section_inner::after {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% auto;
    content: "";
    display: block;
    padding-top: 4.6%;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
  }

  .section01 .section_inner {
    background-image:
      url(../image/bg-section-spacer01.png),
      url(../image/bg-section01-middle.png);
    background-repeat: no-repeat, repeat-y;
    background-position: 41% 37%, center top;
    background-size: 27% auto, 100% auto;
  }
  .section01 .section_inner::after {
    background-image: url(../image/bg-section01-bottom.png);
  }

  .section02 .section_inner {
    background-image:
      url(../image/bg-section-spacer02.png),
      url(../image/bg-section02-middle.png);
    background-repeat: no-repeat, repeat-y;
    background-position: 70% 41%, center top;
    background-size: 27% auto, 100% auto;
  }
  .section02 .section_inner::after {
    background-image: url(../image/bg-section02-bottom.png);
  }

  .section03 .section_inner {
    background-image: url(../image/bg-section03-middle.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
  }
  .section03 .section_inner::after {
    background-image: url(../image/bg-section03-bottom.png);
  }

  .section04 .section_inner {
    background-image: url(../image/bg-section04-middle.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
  }
  .section04 .section_inner::after {
    background-image: url(../image/bg-section04-bottom.png);
  }

  .section05 .section_inner {
    background-image: url(../image/bg-section05-middle.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
  }
  .section05 .section_inner::after {
    background-image: url(../image/bg-section05-bottom.png);
  }

  .section06 .section_inner {
    background-image: url(../image/bg-section06-middle.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
  }
  .section06 .section_inner::after {
    background-image: url(../image/bg-section06-bottom.png);
  }

  .section07 .section_inner {
    background-image:
      url(../image/bg-section-spacer05.png),
      url(../image/bg-section-spacer06.png),
      url(../image/bg-section07-middle.png);
    background-repeat: no-repeat, no-repeat, repeat-y;
    background-position: 21px 26px, 96.5% 102.4%, center top;
    background-size: 25% auto, 25% auto, 100% auto;
  }
  .section07 .section_inner::after {
    background-image: url(../image/bg-section07-bottom.png);
  }

  .section08 .section_inner {
    background-image:
      url(../image/bg-section-spacer07.png),
      url(../image/bg-section-spacer08.png),
      url(../image/bg-section08-middle.png);
    background-repeat: no-repeat, no-repeat, repeat-y;
    background-position: 96.5% 35.9%, 40.7% 100.4%, center top;
    background-size: 23.5% auto, 27% auto, 100% auto;
  }
  .section08 .section_inner::after {
    background-image: url(../image/bg-section08-bottom.png);
  }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .section08 .section_inner {
    background-position: 94% 40%, 40.7% 100.4%, center top;
  }
}

@media (max-width: 767px) {
  .section.section09 {
    padding: 20px 0 3.722%;
  }

  .section01 .section_inner,
  .section02 .section_inner,
  .section03 .section_inner,
  .section04 .section_inner,
  .section05 .section_inner,
  .section06 .section_inner,
  .section07 .section_inner,
  .section08 .section_inner,
  .section09 .section_inner,
  .section10 .section_inner,
  .other_museum .section_inner {
    margin: 0 auto;
    max-width: 600px;
    padding: 0 20px;
  }
}

/* ------------------------------------ */
/* ▼ MV */
/* ------------------------------------ */
.museum_title_main {
  font-size: 0;
}

.mv_area_wrap {
  position: relative;
}

.mv_wrap {
  background: url(../image/img-main-pc.png) 0 0 no-repeat;
  background-size: contain;
  padding-bottom: 52%;
  width: 100%;
}

.mv_char_info {
  color: #121212;
  font-size: 12px;
  text-align: left;
  letter-spacing: .03em;
  position: absolute;
  bottom: -28px;
  left: 59px;
  line-height: 1.3;
  width: auto;
  z-index: 3;
}

.mv_char_img {
  width: 43.8%;
  position: absolute;
  bottom: 0%;
  left: -0.8%;
  z-index: 1;
}

.mv_btn_link {
  position: absolute;
  width: 123px;
  z-index: 2;
}

.mv_btn_link.link01 {
  bottom: 2.2%;
  left: 2.1%;
}

.mv_btn_link.link02 {
  bottom: 2.2%;
  left: 23.8%;
}

.mv_btn_link a {
  background-color: #9e7210;
  border-radius: 20px;
  color: #fff;
  display: block;
  font-size: 14px;
  letter-spacing: .01em;
  line-height: 1;
  padding: 6px 23px 6px 18px;
  position: relative;
  text-align: left;
  transition: background-color .3s;
}

.mv_btn_link a::after {
  border-color: transparent transparent transparent #f5f5f5;
  border-style: solid;
  border-width: 5px 0 5px 8px;
  content: "";
  display: block;
  height: 0;
  position: absolute;
  right: 14px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 0;
}

.mv_btn_link a:hover {
  background-color: #aa925e;
  color: #fff;
}

@media (max-width: 767px) {
  .museum_title_main {
    background: #c92121;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: 0;
    padding: 20px 0;
    position: static;
    text-align: center;
    width: 100%;
  }

  .mv_wrap {
    background: url(../image/img-main-sp.png) 0 0 no-repeat;
    background-size: 100% auto;
    height: auto;
    padding: 60.3% 0 0;
    width: 100vw;
  }

  .mv_area_top {
    display: none;
  }

  .mv_char_info {
    bottom: 10%;
    font-size: 1.7rem;
    font-size: 2vw;
    left: 46%;
    line-height: 1.375;
    position: absolute;
    text-align: left;
    text-shadow: 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff, 0 0 2px #fff;
  }

  .mv_btn_link {
    width: 21vw;
  }

  .mv_btn_link.link01 {
    position: absolute;
    bottom: 1.4%;
    left: 2%;
  }

  .mv_btn_link.link02 {
    position: absolute;
    bottom: 10%;
    left: 20%;
  }

  .mv_btn_link a {
    box-shadow: none;
    font-size: 3vw;
    line-height: 1.2222;
    padding: 0.5vw 2.4vw 0.5vw 1.5vw;
  }

  .mv_btn_link a::after {
    border-width: 4px 0 4px 5px;
    right: 1.5vw;
  }

  .mv_btn_link a:hover {
    background: #c92121;
  }
}

/* ------------------------------------ */
/* ▼ page caption */
/* ------------------------------------ */
@media (min-width: 768px) {
  .intro_caption {
    font-size: 17px;
    text-align: right;
    letter-spacing: .01em;
    position: relative;
  }
  .intro_caption p {
    font-size: .85em;
    position: absolute;
    z-index: 2;
    right: 1.5%;
    top: 48px;
    transform: rotate( -.75deg );
  }
}

@media (max-width: 767px) {
  .intro_caption {
    font-size: 16px;
    margin: .75em auto 1em;
    padding: 0 20px;
    position: relative;
    width: 100%;
    text-align: left;
  }
  .intro_caption .caption_inner {
    display: block;
    display: inline-block;
    font-size: 1.45rem;
  }
}

/* ------------------------------------ */
/* ▼ intro */
/* ------------------------------------ */
.intro_contents_wrap {
  padding: 42px 0 40px;
  position: relative;
}

@media (max-width: 767px) {
  .intro_contents_wrap {
    margin-top: 54px;
    padding: 0;
    position: static;
  }
}

/* intro read */

.intro_read_btn {
  margin-top: 14px;
  width: 100%;
}

.intro_read_btn .cmn_link_btn {
  margin: 0 auto;
  max-width: 320px;
  width: 100%;
}
.intro_read_btn .cmn_link_btn_text {
  letter-spacing: .03em;
}

@media (min-width: 768px) {

  .intro_read_title {
    width: 100%;
  }

  .intro_read_img {
    margin-top: 2.5rem;
  }

  .intro_read_wrap {
    display: flex;
    flex-wrap: wrap;
    padding: 0 9%;
    margin-top : 1rem;
  }

  .intro_read_col:nth-of-type(1) {
    width: 40%;
  }

  .intro_read_col:nth-of-type(2) {
    margin-left: 2.2%;
    width: 57.8%;
  }

  .intro_read_text {
    margin-top: 2rem;
  }
}

@media (max-width: 767px) {
  .intro_read_wrap {
    max-width: 600px;
    margin: 20px auto 0;
    padding: 0 20px;
  }

  .intro_read_col:nth-of-type(2) {
    margin-top: 20px;
  }

  .intro_read_img {
    text-align: center;
  }

  .intro_read_text {
    margin-top: 10px;
  }

  .intro_read_btn {
    margin-top: 20px;
  }

  .intro_read_btn .cmn_link_btn {
    max-width: 280px;
  }

  .intro_read_btn .cmn_link_btn_text {
    font-size: 16px;
  }
}

/* intro bnr */
.intro_bnr_wrap.cmn_bnr_area.col02 {
  margin: 35px auto 0;
  max-width: 758px;
  padding: 0;
}

.intro_bnr_wrap.cmn_bnr_area.col02 .intro_bnr_block {
  max-width: 360px;
}

.intro_bnr_block>a {
  display: block;
}

.intro_bnr_caption {
  text-align: left;
  line-height: 1.4;
  letter-spacing: .05em;
  margin-top: 12px;
}

@media (max-width: 767px) {
  .intro_bnr_wrap {
    margin-top: 30px;
    padding: 0 20px;
  }

  .intro_bnr_block {
    margin: 0 auto;
    width: 100%;
  }

  .intro_bnr_block:nth-of-type(n+2) {
    margin-top: 15px;
  }

  .intro_bnr_caption {
    margin-top: 5px;
    text-align: left;
  }
}

/* ------------------------------------ */
/* ▼ anchor menu */
/* ------------------------------------ */
.anchor_menu_wrap {
  margin: 40px auto 0;
  max-width: 1000px;
  width: 100%;
}

.anchor_link_block {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.anchor_link_item {
  width: 31.5%;
}

.anchor_link_item:nth-child(n+4) {
  margin-top: 12px;
}

.anchor_link_item a {
  display: block;
}

@media (min-width: 768px) {
  .anchor_link_block {
    margin: 0 auto;
    width: 80%;
  }
}

@media (max-width: 767px) {
  .anchor_menu_wrap {
    margin-top: 0;
    position: absolute;
    left: 0;
    top: 100%;
  }

  .content_menu {
    position: relative;
    z-index: 4;
  }

  .meun_title {
    background: linear-gradient(#b48d4f, #957e5a);
    background: -webkit-linear-gradient(top, #b48d4f 0%, #957e5a 100%);
    box-shadow: 0 .25em .5em 0 rgba(0, 20, 30, .2);
    color: #fff;
    font-size: 1.7rem;
    font-weight: 600;
    padding: 10px 0;
    text-align: center;
  }

  .meun_title_inner {
    position: relative;
  }

  .meun_title_inner::before,
  .meun_title_inner::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
  }

  .meun_title_inner::before {
    background: url(/special-contents/image-cmn/ico-contens-menu.png) 0 0 no-repeat;
    background-size: contain;
    height: 2rem;
    left: -36px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 2rem;
  }

  .meun_title_inner::after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
    height: 10px;
    right: -20px;
    -webkit-transform: translateY(-70%) rotate(-45deg);
    transform: translateY(-70%) rotate(-45deg);
    width: 10px;
  }

  .meun_title.active .meun_title_inner::after {
    -webkit-transform: translateY(-30%) rotate(135deg);
    transform: translateY(-30%) rotate(135deg);
  }

  .menu_list {
    background: #faeddd;
    border-radius: 4px;
    box-shadow: 0 .25em .5em 0 rgba(0, 20, 30, .2);
    display: none;
    padding: 20px 25px;
  }

  .menu_list.active {
    -webkit-animation: fadeIN .6s ease 0s 1 alternate;
    animation: fadeIN .6s ease 0s 1 alternate;
    display: block;
    height: auto;
  }

  @keyframes fadeIN {
    0% {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
  }

  @-webkit-keyframes fadeIN {
    0% {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
  }

  .content_menu_close_btn {
    margin-top: 15px;
    text-align: center;
  }

  .content_menu_close_btn_inner {
    background: #b0894c;
    border: 1px solid #fff;
    border-radius: 4px;
    color: #fff;
    display: inline-block;
    padding: 10px 40px 10px 20px;
    position: relative;
  }

  .content_menu_close_btn_inner::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    content: "";
    display: block;
    height: 10px;
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-30%) rotate(-135deg);
    transform: translateY(-30%) rotate(-135deg);
    width: 10px;
  }

  .anchor_link_block {
    background: #fff;
    border-radius: 4px;
    width: 100%;
  }

  .anchor_link_item {
    width: 100%;
  }

  .anchor_link_item:nth-child(n+4) {
    margin-top: 0;
  }

  .anchor_link_item:not(:first-child) {
    border-top: 1px solid #9d7943;
  }

  .anchor_link_item a {
    background: none;
    color: #9e7943;
    display: flex;
    align-items: center;
    font-size: 16px;
    justify-content: flex-start;
    letter-spacing: .06em;
    line-height: 1.2;
    min-height: auto;
    padding: 10px 5px 10px 40px;
    position: relative;
    text-align: left;
    transition: opacity .2s;
    width: 100%;
  }

  .anchor_link_item a::after {
    background: url(/special-contents/image-cmn/ico-contens-menu-list.png) 0 0 no-repeat;
    background-size: contain;
    border: none;
    content: "";
    height: 2.1rem;
    position: absolute;
    left: 10px;
    right: auto;
    top: 50%;
    width: 2.1rem;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .anchor_link_num {
    font-size: 15px;
    left: 40px;
  }
}

/* ------------------------------------ */
/* ▼ access map */
/* ------------------------------------ */
/* -- common.css上書き -- */
.root_annotation {
  font-size: 12px;
  letter-spacing: .01em;
  margin-top: 5px;
  padding-left: 1em;
  text-indent: -1em;
}

@media (min-width: 768px) {
  .mod_access .y_map {
    height: 380px;
  }
}

@media (max-width: 767px) {
  .access_map_wrap {
    padding: 20px;
    width: 100%;
  }
}

/* ------------------------------------ */
/* ▼ title */
/* ------------------------------------ */
.section_title {
  font-size: 0;
  margin: 0 auto;
  max-width: 960px;
  width: 100%;
}

@media (min-width: 768px) {
  .section_title02 {
    font-size: 0;
  }

  .other_museum_title {
    font-size: 0;
  }
}

@media (max-width: 767px) {
  .section_title,
  .section_title02,
  .other_museum_title {
    border-bottom: 2px solid #c92121;
    font-size: 2rem;
    font-weight: 600;
    margin: 0 auto 20px;
    max-width: 600px;
    padding-bottom: 6px;
    position: static;
    text-align: left;
    width: 100%;
  }

  .section01 .section_title,
  .section02 .section_title,
  .section03 .section_title,
  .section04 .section_title,
  .section05 .section_title,
  .section06 .section_title,
  .section07 .section_title,
  .section08 .section_title,
  .section09 .section_title02,
  .section10 .section_title02 {
    width: calc(100% - 40px);
  }
}

/* ------------------------------------ */
/* ▼ contents */
/* ------------------------------------ */
/* facility info */
@media (min-width: 768px) {
  .sec_faci_info_list {
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .sec_faci_info_list:not(:first-of-type) {
    margin-top: 5px;
  }

  .sec_faci_info_list dt,
  .sec_faci_info_list dd {
    letter-spacing: .06em;
    line-height: 1.6;
  }

  .sec_faci_info_list dt {
    font-size: 0;
    padding-top: 5px;
    width: 145px;
  }

  .sec_faci_info_list dt img {
    vertical-align: top;
  }

  .sec_faci_info_list dd {
    padding-left: 24px;
    width: calc(100% - 145px);
  }

  .sec_faci_info_list dd.is_cols {
    display: flex;
    flex-wrap: wrap;
  }

  .sec_faci_info_week {
    text-align: right;
    padding-right: 10px;
    width: 98px;
  }

  .sec_faci_info_time {
    padding-left: 12px;
    position: relative;
    width: calc(100% - 98px);
  }

  .sec_faci_info_time.is_border::before {
    background-color: #fff;
    content: "";
    display: block;
    width: 1px;
    height: 85%;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .sec_faci_info_annotation>li {
    font-size: 16px;
    padding-left: 1em;
    text-indent: -1em;
  }
}

@media (max-width: 767px) {
  .sec01_faci_info_wrap {
    margin-top: 20px;
  }

  .sec_faci_info_list:not(:first-of-type) {
    margin-top: 15px;
  }

  .sec_faci_info_list dt {
    border-left: 5px solid #c92121;
    padding: 2px 0 2px 10px;
  }

  .sec_faci_info_list dd {
    margin-top: 10px;
    padding-left: 15px;
  }

  .sec_faci_info_schedule:not(:first-of-type) {
    margin-top: 5px;
  }

  .sec_faci_info_annotation {
    margin-top: 10px;
  }

  .sec_faci_info_annotation>li {
    font-size: 14px;
    padding-left: 1em;
    text-indent: -1em;
  }

  .sec_faci_info_annotation>li:not(:first-of-type) {
    margin-top: 5px;
  }
}

/* -- section01 -- */
@media (min-width: 768px) {
  .sec01_disc_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 960px;
    padding: 3.2% 6.25% 0;
    width: 100%;
  }

  .sec01_disc_col:nth-of-type(1) {
    width: 58.572%;
  }

  .sec01_disc_col:nth-of-type(2) {
    padding-top: 4px;
    width: 38.097%;
  }

  .sec01_faci_info_wrap {
    margin: 22px auto 0;
    max-width: 960px;
    padding: 0 6.25%;
    width: 100%;
  }

  .sec01_faci_info_inner {
    background-color: #768aad;
    padding: 34px 40px 34px 58px;
    width: 100%;
  }

  .sec01_gallery_wrap {
    margin-top: 25px;
    position: relative;
  }

  .sec01_gallery_col_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .sec01_gallery_col img {
    width: 100%;
  }

  .sec01_gallery_col:nth-of-type(1) {
    padding-top: .5%;
    width: 48.96%;
  }

  .sec01_gallery_col:nth-of-type(2) {
    width: 48.02%;
  }

  .sec01_chara_wrap {
    position: absolute;
    bottom: 89%;
    left: 1.8%;
    width: 20.83%
  }

  .sec01_chara_bubbles_wrap {
    position: absolute;
    top: -74.5%;
    left: 18.3%;
    width: 27.5%;
  }
}

@media (max-width: 767px) {
  .sec01_disc_img {
    text-align: center;
  }

  .sec01_disc_col:nth-of-type(2) {
    margin-top: 10px;
  }

  .sec01_gallery_wrap {
    padding-top: 50%;
    position: relative;
  }

  .sec01_gallery_col {
    text-align: center;
    width: 100%;
  }

  .sec01_gallery_col:nth-of-type(2) {
    margin-top: 6.5%;
  }

  .sec01_chara_wrap {
    position: absolute;
    bottom: 73.1%;
    left: 1.8%;
    width: 32%;
  }

  .sec01_chara_bubbles_wrap {
    position: absolute;
    top: 3%;
    left: 33%;
    width: 65%;
  }
}

/* -- section02 -- */
.sec02_annotation {
  margin-top: 5px;
  padding-left: 12px;
}

.sec02_annotation>li {
  font-size: 16px;
  letter-spacing: .06em;
  text-indent: -1em;
  padding-left: 1em;
}

@media (min-width: 768px) {
  .sec02_disc_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 960px;
    padding: 2.9% 6.25% 0;
    width: 100%;
  }

  .sec02_disc_col {
    position: relative;
  }

  .sec02_disc_col:nth-of-type(1) {
    width: 49%;
  }

  .sec02_disc_col:nth-of-type(2) {
    width: 50%;
  }

  .sec02_chara_wrap {
    position: absolute;
    bottom: 100%;
    right: -1%;
    width: 78.392%;
    z-index: 1;
  }

  .sec02_chara_bubbles_wrap {
    position: absolute;
    top: -77.8%;
    right: 46.3%;
    width: 58.545%;
    z-index: 1;
  }

  .sec02_gallery_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 6% auto 0;
    max-width: 960px;
    padding: 0 6.25%;
    width: 100%;
  }

  .sec02_gallery_col {
    position: relative;
  }

  .sec02_gallery_col:nth-of-type(1) {
    width: 47.381%;
  }

  .sec02_gallery_col:nth-of-type(2) {
    width: 47.381%;
  }

  .sec02_gallery_text {
    margin-top: 15px;
    padding: 0 12px;
  }

  .sec02_gallery_label {
    position: absolute;
    top: -11.7%;
    left: -1.9%;
    width: 44.725%;
    z-index: 2;
  }
}

@media (max-width: 767px) {
  .sec02_disc_col {
    position: relative;
  }

  .sec02_disc_col:nth-of-type(2) {
    padding-top: 70%;
  }

  .sec02_chara_wrap {
    position: absolute;
    bottom: 0;
    right: -1%;
    width: 58%;
    z-index: 1;
  }

  .sec02_chara_bubbles_wrap {
    position: absolute;
    top: 8%;
    right: 39%;
    width: 60%;
    z-index: 1;
  }

  .sec02_gallery_col:nth-of-type(2) {
    margin-top: 15%;
  }

  .sec02_gallery_img {
    margin: 0 auto;
    max-width: 398px;
    text-align: center;
    position: relative;
  }

  .sec02_gallery_text {
    margin: 10px auto 0;
    max-width: 398px;
    padding: 0 5px;
  }

  .sec02_gallery_label {
    position: absolute;
    top: -19%;
    left: -1.9%;
    width: 44%;
    z-index: 2;
  }

  .sec02_annotation {
    margin: 5px auto 0;
    max-width: 398px;
    padding-left: 5px;
  }

  .sec02_annotation>li {
    font-size: 14px;
  }
}

/* -- section03 -- */
@media (min-width: 768px) {
  .sec03_disc_wrap {
    margin: 0 auto;
    max-width: 960px;
    padding: 3.8% 20.3125% 0 22.8125%;
    position: relative;
    width: 100%;
  }

  .sec03_chara_items_wrap {
    position: absolute;
    left: 1%;
    bottom: -10.3%;
    width: 21.667%;
    z-index: 1;
  }

  .sec03_chara_bubbles_wrap {
    position: absolute;
    top: -29.6%;
    right: 14.1%;
    width: 83.18%;
  }

  .sec03_disc_books {
    position: absolute;
    right: -3.5%;
    top: 14.1%;
    width: 23.855%;
    z-index: 1;
  }

  .sec03_faci_info_wrap {
    margin: 22px auto 0;
    max-width: 960px;
    width: 100%;
  }

  .sec03_faci_info_inner {
    background-color: #8d9f83;
    padding: 28px 20px 34px 52px;
    width: 100%;
  }

  .section03 .sec_faci_info_list dt {
    width: 127px;
  }

  .section03 .sec_faci_info_list dd {
    padding-left: 17px;
    width: calc(100% - 127px);
  }
}

@media (max-width: 1090px) {
  .sec03_disc_books {
    right: 0;
    width: 21.2%;
  }
}

@media (max-width: 767px) {
  .sec03_disc_wrap {
    position: relative;
  }

  .sec03_chara_items_wrap {
    margin-left: 6%;
    padding-top: 20%;
    position: relative;
    width: 30%;
  }

  .sec03_chara_bubbles_wrap {
    position: absolute;
    top: -2%;
    left: -19%;
    width: 149%;
  }

  .sec03_disc_books {
    position: absolute;
    top: 0;
    right: 1%;
    width: 50%;
  }

  .sec03_disc_books img {
    width: 100%;
  }

  .sec03_disc_text {
    margin-top: 4%;
  }

  .sec03_faci_info_wrap {
    margin-top: 20px;
  }
}

/* -- section04 -- */
@media (min-width: 768px) {
  .sec04_disc_wrap {
    margin: 0 auto;
    padding: 3% 18.23% 0;
  }

  .section04 .disc_text_diagonally::before {
    background: #857b54;
  }

  .sec04_gallery_wrap {
    margin: 3.3% auto 0;
    max-width: 960px;
    padding: 0 12.813%;
  }

  .section04 .sword_gallery01_item:first-child {
    margin-top: 32px;
  }

  .section04 .sword_gallery01_item:not(:first-child) {
    margin-top: 42px;
  }

  .sec04_gallery_wrap .gallery_item_line:not(:first-child) {
    margin-top: 38px;
  }

}

@media (max-width: 767px) {
  .sec04_gallery_wrap {
    margin-top: 40px;
  }
}

/* -- section05 -- */
@media (min-width: 768px) {
  .sec05_disc_wrap {
    margin: 0 auto;
    padding: 4.5% 12.917% 0;
  }

  .section05 .disc_text_diagonally::before {
    background: #a27756;
  }

  .section05 .sword_gallery01_item {
    margin-top: 58px;
  }

  .sec05_gallery_wrap {
    margin: 4.6% auto 0;
    max-width: 960px;
    padding: 0 12.813%;
  }

  .sec05_gallery_wrap .gallery_item_line:not(:first-child) {
    margin-top: 58px;
  }

  .section05 .sword_gallery_label01.label_bubbles {
    max-width: 289px;
    top: -24%;
    left: 1%;
    width: 41%;
    z-index: 1;
  }

}

@media (max-width: 767px) {
  .sec05_gallery_wrap {
    margin-top: 40px;
  }
  .section05 .sword_gallery_label01.label_bubbles {
    max-width: 425px;
    top: -5%;
    left: 34%;
    width: 90%;
  }
}

/* -- section06 -- */
.section06 .section_inner {
  padding-bottom: 0;
}

@media (min-width: 768px) {
  .sec06_disc_wrap {
    margin: 0 auto;
    max-width: 960px;
    padding: 3.2% 6.25%;
    position: relative;
    width: 100%;
  }

  .sec06_disc_text {
    margin-top: 27px;
    padding-left: 34%;
  }

  .sec06_chara_items_wrap {
    position: absolute;
    bottom: 0;
    left: 1.7%;
    width: 32.917%;
  }

  .sec06_chara_bubbles_wrap {
    position: absolute;
    top: -23.5%;
    left: 6.2%;
    width: 70.258%;
  }

  .sec06_gallery_wrap {
    background-image: url(../image/bg-section06-01-middle.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: 100% auto;
    margin: 0 auto;
    max-width: 960px;
    padding: 0 6.25%;
    position: relative;
    width: 100%;
  }

  .sec06_gallery_row {
    display: flex;
    flex-wrap: wrap;
  }

  .sec06_gallery_row:nth-of-type(1) {
    padding: 5.954% 0 5.358%;
  }

  .sec06_gallery_row:nth-of-type(2) {
    padding: 5.954% 0 3.4%;
    position: relative;
  }

  .sec06_gallery_row:nth-of-type(2)::before {
    background: url(../image/bg-sec06-dot02.png) repeat-x 0 0;
    background-size: auto auto;
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: -2.5%;
    height: 4px;
    width: 100%;
  }

  .sec06_gallery_col {
    width: 50%;
  }

  .sec06_gallery_col:nth-of-type(odd) {
    padding-right: 4.762%;
  }

  .sec06_gallery_col:nth-of-type(even) {
    padding-left: 4.762%;
    position: relative;
  }

  .sec06_gallery_col:nth-of-type(even)::before {
    background: url(../image/bg-sec06-dot01.png) repeat-y 0 0;
    background-size: auto auto;
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    height: 110%;
    width: 4px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }

  .sec06_gallery_col.add_icon:nth-of-type(even) {
    margin-top: -2.7%;
    padding-left: 2.62%;
  }

  .sec06_gallery_img {
    text-align: center;
  }

  .sec06_gallery_title {
    margin: 15px auto 0;
    text-align: center;
  }

  .sec06_gallery_title.type01 {
    max-width: 241px;
  }

  .sec06_gallery_title.type02 {
    max-width: 156px;
  }

  .sec06_gallery_title.type03 {
    max-width: 213px;
  }

  .sec06_gallery_title.type04 {
    max-width: 178px;
  }

  .sec06_gallery_text {
    margin-top: 15px;
  }
}

@media (max-width: 767px) {
  .sec06_disc_img {
    position: relative;
  }

  .sec06_disc_text {
    margin-top: 9%;
  }

  .sec06_chara_items_wrap {
    position: absolute;
    bottom: -12%;
    left: 0;
    overflow: hidden;
    padding-top: 52%;
    width: 100%;
  }

  .sec06_chara_wrap {
    position: absolute;
    bottom: -51%;
    left: 0;
    width: 38%;
  }

  .sec06_chara_bubbles_wrap {
    position: absolute;
    top: 5%;
    left: 1%;
    width: 50%;
  }

  .sec06_gallery_wrap {
    margin-top: 20px;
  }

  .sec06_gallery_row:nth-of-type(n+2) {
    margin-top: 15px;
  }

  .sec06_gallery_col {
    margin: 0 auto;
    max-width: 380px;
    width: 100%;
  }

  .sec06_gallery_col:nth-of-type(n+2) {
    margin-top: 15px;
  }

  .sec06_gallery_img {
    text-align: center;
  }

  .add_icon .sec06_gallery_img {
    margin-left: -4.5%;
  }

  .sec06_gallery_title {
    font-size: 0;
    margin: 5px auto 0;
    text-align: center;
  }

  .sec06_gallery_text {
    margin-top: 5px;
  }

  .sec06_gallery_title.type01 {
    max-width: 201px;
  }

  .sec06_gallery_title.type02 {
    max-width: 120px;
  }

  .sec06_gallery_title.type03 {
    max-width: 173px;
  }

  .sec06_gallery_title.type04 {
    max-width: 138px;
  }
}

/* -- section07 -- */
@media (min-width: 768px) {
  .sec07_disc_wrap {
    margin: 0 auto;
    max-width: 960px;
    padding: 0.9% 4.584% 0;
    position: relative;
    z-index: 1;
  }

  .section07 .disc_text_diagonally {
    line-height: 1.9;
    padding: 1.5% 8% 1.2% 4%;
    position: absolute;
    top: 36%;
    left: 11%;
    width: 67%;
    z-index: 1;
  }

  .section07 .disc_text_diagonally::before {
    background-color: rgba(111, 63, 107, .8);
  }

  .sec07_chara_items_wrap {
    position: relative;
    z-index: 2;
  }

  .sec07_chara_wrap {
    margin-left: 72.5%;
    width: 27.5%;
  }

  .sec07_chara_bubbles_wrap {
    position: absolute;
    top: 3%;
    right: 24.3%;
    width: 26.73%;
  }

  .sec07_gallery_wrap {
    margin: -0.9% auto 0;
    max-width: 960px;
    padding: 0 6.25%;
    position: relative;
    width: 100%;
    z-index: 2;
  }

  .sec07_gallery_disc_wrap.store_schedule {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .store_schedule .sec07_gallery_disc_col.disc_text {
    width: 51.903%;
  }

  .store_schedule .sec07_gallery_disc_col.disc_img {
    width: 48.097%;
  }

  .sec07_gallery_row:nth-of-type(2) .store_schedule .sec07_gallery_disc_col.disc_text {
    width: 53.47%;
  }

  .sec07_gallery_row:nth-of-type(2) .store_schedule .sec07_gallery_disc_col.disc_img {
    width: 46.43%;
  }

  .sec07_gallery_store_name {
    padding: 7.5% 10.78% 3% 0;
    position: relative;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_name {
    padding: 6.4% 47.8% 3.5% 5%;
  }

  .sec07_gallery_store_name::before {
    background-color: #c1aac0;
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: -1%;
    height: 3px;
    width: 103%;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_name::before {
    left: -2.3%;
  }

  .sec07_gallery_store_disc_text {
    margin-top: 4%;
    padding-right: 5.5%;
    letter-spacing: .01em;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_disc_text {
    margin-top: 2.8%;
    padding-right: 0;
    padding-left: 5.5%;
  }

  .sec07_gallery_store_info {
    background-color: #896980;
    border: solid 5px #a68ea0;
    margin: 4.5% 8% 0 0;
    padding: 2.7% 1% 2.7% 4.5%;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_info {
    margin: 4% 0 0 4.1%;
    padding: 2.7% 1% 2.7% 3%;
  }

  .sec07_gallery_store_info .sec_faci_info_list>dt {
    padding-top: 2px;
    width: 100px;
  }

  .sec07_gallery_store_info .sec_faci_info_list>dd {
    font-size: 14px;
    letter-spacing: 0;
    padding-left: 7px;
    width: calc(100% - 100px);
  }

  .sec07_gallery_disc_wrap.store_menue {
    display: flex;
    flex-wrap: wrap;
  }

  .sec07_gallery_row:nth-of-type(1) .sec07_gallery_disc_wrap.store_menue {
    flex-direction: row-reverse;
    margin-top: 5%;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_disc_wrap.store_menue {
    margin-top: 1.2%;
  }

  .sec07_gallery_store_menue_img {
    width: 28.81%;
  }

  .sec07_gallery_row:nth-of-type(1) .sec07_gallery_store_menue_text {
    padding-top: 2.5%;
    width: 54.525%;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_menue_text {
    padding-top: 3.7%;
    width: 50.5%;
  }

  .sec07_gallery_row:nth-of-type(2) {
    background: url(../image/bg-sec07-line.png) repeat-x 0 0;
    background-size: auto 16px;
    margin-top: 4%;
    padding-top: 5.5%;
  }
}

@media (max-width: 767px) {
  .sec07_chara_items_wrap {
    position: relative;
  }

  .sec07_chara_wrap {
    margin-left: 60%;
    width: 30%;
  }

  .sec07_chara_bubbles_wrap {
    position: absolute;
    top: 0;
    left: 0;
    text-align: right;
    width: 60%;
  }

  .disc_text_diagonally {
    font-weight: 600;
    margin-top: 10px;
  }

  .sec07_gallery_wrap {
    margin-top: 20px;
  }

  .sec07_gallery_row:nth-of-type(2) {
    margin-top: 30px;
  }

  .sec07_gallery_store_name {
    text-align: center;
  }

  .sec07_gallery_row:nth-of-type(1) .sec07_gallery_store_name>img {
    max-width: 300px;
    width: 100%;
  }

  .sec07_gallery_row:nth-of-type(2) .sec07_gallery_store_name>img {
    max-width: 180px;
    width: 100%;
  }

  .sec07_gallery_store_disc_text {
    margin-top: 10px;
  }

  .sec07_gallery_store_img {
    margin-top: 10px;
  }

  .sec07_gallery_store_info {
    margin-top: 10px;
  }

  .sec07_gallery_disc_wrap.store_menue {
    margin-top: 20px;
  }

  .sec07_gallery_store_menue_img {
    text-align: center;
  }

  .sec07_gallery_store_menue_text {
    margin-top: 5px;
    text-align: center;
  }

  .sec07_gallery_store_menue_text>img {
    margin: 0 auto;
    max-width: 330px;
    padding: 0 10px;
    width: 100%;
  }
}

/* -- section08 -- */
@media (min-width: 768px) {
  .sec08_disc_wrap {
    margin: 0 auto;
    max-width: 960px;
    padding: 3.2% 6.25% 0;
    position: relative;
    width: 100%;
  }

  .sec08_disc_text {
    margin-top: 24px;
    padding-right: 32%;
  }

  .sec08_onlineshop_info_wrap {
    margin: 0 auto;
    max-width: 960px;
    padding: 2.3% 8% 0;
    width: 100%;
  }

  .sec08_onlineshop_info_inner {
    background-color: #314f84;
    border: solid 5px #647aa2;
    padding: 1% 1% 1% 2.2%;
    max-width: 428px;
  }

  .sec08_onlineshop_info_wrap .sec_faci_info_list dt {
    width: 126px;
  }

  .sec08_onlineshop_info_wrap .sec_faci_info_list dd {
    padding-left: 24px;
    width: calc(100% - 126px);
  }

  .sec08_onlineshop_info_wrap .sec_faci_info_list dd a {
    color: #fff;
    font-size: 15px;
    letter-spacing: 0;
  }

  .sec08_onlineshop_item_wrap {
    padding-top: 53%;
    position: relative;
  }

  .sec08_onlineshop_item_col {
    position: absolute;
  }

  .sec08_onlineshop_item_col.item_type01 {
    background: url(../image/bg-sec08-item01.png) no-repeat center center;
    background-size: 100% auto;
    top: 4%;
    left: 16%;
    padding-top: 40.834%;
    width: 40.834%;
  }

  .item_type01 .sec08_onlineshop_item_img {
    position: absolute;
    top: 20%;
    left: -38%;
    width: 71.43%;
    z-index: 2;
  }

  .item_type01 .sec08_onlineshop_item_name {
    position: absolute;
    top: 13%;
    left: 27%;
    width: 51.534%;
  }

  .item_type01 .sec08_onlineshop_item_text {
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1.7;
    position: absolute;
    top: 35.5%;
    left: 22.7%;
    text-align: justify;
    width: 62%;
  }

  .sec08_onlineshop_item_col.item_type02 {
    background: url(../image/bg-sec08-item02.png) no-repeat center center;
    background-size: 100% auto;
    top: 27.6%;
    right: 6.4%;
    padding-top: 40.834%;
    width: 40.834%;
  }

  .item_type02 .sec08_onlineshop_item_img {
    position: absolute;
    top: -86.4%;
    left: 15.6%;
    width: 95.41%;
    z-index: 2;
  }

  .item_type02 .sec08_onlineshop_item_name {
    position: absolute;
    top: 22.5%;
    left: 20%;
    width: 63.269%;
  }

  .item_type02 .sec08_onlineshop_item_text {
    font-size: 15px;
    letter-spacing: 0;
    line-height: 1.7;
    position: absolute;
    top: 41.1%;
    left: 16.3%;
    text-align: justify;
    width: 71%;
  }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .item_type01 .sec08_onlineshop_item_text,
  .item_type02 .sec08_onlineshop_item_text {
    font-size: 1.45vw;
  }

  .item_type02 .sec08_onlineshop_item_img {
    top: -82%;
    left: 15%;
    width: 92%;
  }
}

@media (max-width: 767px) {
  .sec08_disc_text {
    margin-top: 10px;
  }

  .sec08_onlineshop_info_wrap {
    margin-top: 20px;
  }

  .sec08_onlineshop_item_wrap {
    margin-top: 20px;
  }

  .sec08_onlineshop_item_name {
    margin-top: 5px;
    text-align: center;
  }

  .sec08_onlineshop_item_name>img {
    max-width: 174px;
    width: 100%;
  }

  .sec08_onlineshop_item_text {
    margin-top: 5px;
  }

  .sec08_onlineshop_item_col.item_type02 {
    margin-top: 20px;
  }

  .sec08_onlineshop_info_wrap .sec_faci_info_list dd a {
    display: block;
    word-break: break-all;
  }
}

/* -- section09 -- */
@media (min-width: 768px) {
  .sec09_disc_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1000px;
    padding: 4.5% 7.408% 0;
    width: 100%;
  }

  .section09 .section_title02::before {
    background: url(../image/ttl-section09.png) no-repeat bottom center;
    background-size: 100% auto;
    content: "";
    display: block;
    padding-top: 9.9074%;
    position: relative;
    z-index: 1;
  }

  .sec09_disc_col:nth-of-type(1) {
    width: 44.73%;
  }

  .sec09_disc_col:nth-of-type(2) {
    width: 52%;
  }

  .sec09_disc_title {
    font-size: 0;
    padding-top: 4.8%;
    width: 86.76%;
  }

  .sec09_disc_text {
    color: #fff;
    letter-spacing: .05em;
    margin-top: 5%;
  }

  .sec09_disc_faci_info_wrap {
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    color: #fff;
    font-size: 16px;
    margin-top: 20px;
    padding: 13px 5% 10px 10%;
  }

  .sec09_disc_faci_info_wrap>dl {
    display: flex;
    flex-wrap: wrap;
  }

  .sec09_disc_faci_info_wrap>dl:not(:first-of-type) {
    margin-top: 3px;
  }

  .sec09_disc_faci_info_wrap dt,
  .sec09_disc_faci_info_wrap dd {
    font-weight: normal;
    letter-spacing: 0;
    width: auto;
  }

  .sec09_disc_faci_info_wrap dd a {
    color: #fff;
  }

  .sec09_disc_faci_info_wrap .info_address>dt {
    width: 65px;
  }

  .sec09_disc_faci_info_wrap .info_address>dd {
    width: calc(100% - 65px)
  }

  .sec09_disc_faci_info_wrap .info_tel>dt {
    width: 158px;
  }

  .sec09_disc_faci_info_wrap .info_tel>dd {
    width: calc(100% - 158px)
  }

  .sec09_disc_faci_info_wrap .info_hp>dt {
    width: 48px;
  }

  .sec09_disc_faci_info_wrap .info_hp>dd {
    width: calc(100% - 48px)
  }

  .sec09_disc_faci_annotation {
    color: #fff;
    font-weight: 600;
    margin-top: 25px;
    text-align: center;
  }

  .sec09_disc_faci_btn_wrap {
    margin-top: 18px;
  }

  .sec09_disc_faci_btn_wrap .cmn_link_btn {
    max-width: 210px;
  }

  .sec09_disc_faci_btn_wrap .cmn_link_btn_text {
    letter-spacing: .3em;
    padding: 6px 16.83% 6px 12.5%;
  }

  .sec09_disc_faci_btn_wrap .cmn_link_btn_text::after {
    right: 15%;
  }

  .sec09_disc_img:nth-of-type(2) {
    border-radius: 10px;
    margin-top: 22px;
    overflow: hidden;
  }

  .museum_share_block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 25px auto 0;
    max-width: 845px;
    width: 100%;
  }

  .share_title {
    border: solid 1px #fff;
    color: #fff;
    font-weight: 600;
    padding: 5px 0;
    text-align: center;
    width: 240px;
  }

  .block_sns {
    width: calc(100% - 240px);
  }

  .block_sns .list_sns {
    width: 100%;
  }

  .block_sns .list_sns li:not(:first-of-type) {
    margin-left: 4.134%;
  }

  .block_sns .list_sns li.list_sns_mail>a {
    color: #fff;
  }

  .museum_intro_block {
    margin-top: 60px;
  }

  .museum_bnr_block {
    margin: 51px auto 0;
    max-width: 513px;
    width: 100%;
  }

  .museum_bnr_block .caption {
    color: #fff;
  }
}

.movie_thumb {
  display: block;
  position: relative;
}

.movie_thumb::before {
  background: url(/image_cmn/ico_play.png) 0 0 no-repeat;
  background-size: contain;
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  height: 46px;
  width: 46px;
}

@media (max-width: 767px) {
  .sec09_disc_title {
    font-size: 18px;
    font-weight: 600;
  }

  .sec09_disc_img.main {
    margin-top: 10px;
    text-align: center;
  }

  .sec09_disc_text {
    margin-top: 10px;
  }

  .sec09_disc_faci_info_wrap {
    margin: 10px auto 0;
    max-width: 500px;
    padding: 0 0 0 5px;
  }

  .sec09_disc_faci_info_wrap>dl {
    display: flex;
    flex-wrap: wrap;
  }

  .sec09_disc_faci_info_wrap>dl:not(:first-of-type) {
    margin-top: 3px;
  }

  .sec09_disc_faci_info_wrap dt,
  .sec09_disc_faci_info_wrap dd {
    font-size: 15px;
    font-weight: normal;
    letter-spacing: 0;
    width: auto;
  }

  .sec09_disc_faci_info_wrap .info_address>dt {
    width: 65px;
  }

  .sec09_disc_faci_info_wrap .info_address>dd {
    width: calc(100% - 65px)
  }

  .sec09_disc_faci_info_wrap .info_tel>dt {
    width: 150px;
  }

  .sec09_disc_faci_info_wrap .info_tel>dd {
    width: calc(100% - 150px)
  }

  .sec09_disc_faci_info_wrap .info_hp>dt {
    width: 48px;
  }

  .sec09_disc_faci_info_wrap .info_hp>dd {
    width: calc(100% - 48px)
  }

  .sec09_disc_img.movie {
    margin-top: 20px;
  }

  .sec09_disc_img.movie>a {
    max-width: 480px;
    margin: 0 auto;
  }

  .sec09_disc_faci_annotation {
    font-weight: 600;
    margin-top: 20px;
    text-align: center;
  }

  .sec09_disc_faci_btn_wrap {
    margin: 10px auto 0;
    max-width: 300px;
    padding: 0 10px;
    width: 70%;
  }

  .museum_share_block {
    margin-top: 20px;
  }

  .share_title {
    text-align: center;
  }

  .block_sns .list_sns li:not(:first-of-type) {
    margin-left: 3%;
  }

  .block_sns .list_sns li.list_sns_mail {
    margin-left: 0;
  }

  .museum_bnr_block {
    margin: 20px auto 0;
    max-width: 500px;
    width: 100%;
  }
}

/* -- section10 -- */
.sec10_spot_block:not(:first-child) {
  margin-top: 30px;
  max-width: 950px;
}

.sec10_spot_content_wrap {
  display: flex;
  flex-wrap: wrap;
}

.sec10_spot_text_wrap {
  width: 100%;
}

.sec10_spot_image_box {
  width: 100%;
}

.sec10_spot_text_intro {
  font-weight: 600;
}

.sec10_spot_access_list {
  display: flex;
  flex-wrap: wrap;
}

.sec10_spot_access_list dt {
  font-weight: normal;
  width: 65px;
}

.sec10_spot_access_list.info_hp dt {
  width: 43px;
}

.sec10_spot_access_list dt::after {
  content: "：";
}

.sec10_spot_access_list dd {
  width: calc( 100% - 65px);
}

.sec10_spot_btn_detail {
  margin: 10px auto 0;
}

.sec10_spot_access_btn_txt {
  font-weight: 600;
}

.sec10_spot_image_list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.sec10_spot_image_list.col02 li {
  width: 49.13%;
}

.sec10_spot_image_annotation {
  font-size: 15px;
}

.section_title02 img.kyushu{
  max-width: 700px;
}

@media (min-width: 768px) {
  .section10 .section_title02 {
    background-color: rgba(191, 150, 99, 0.6);
    margin-top: -1px;
    padding-top: 24px;
  }

  .section10 .section_inner {
    background-color: rgba(191, 150, 99, 0.6);
    max-width: 1080px;
    padding: 80px 0 54px;
    position: relative;
  }

  .section10 .section_title02 img {
    margin: 0 auto;
  }

  .sec10_spot_block {
    padding-bottom: 3.6%;
  }

  .sec10_disc_text {
    font-weight: 600;
    letter-spacing: .03em;
    line-height: 2.1;
    text-align: center;
    padding: 0 10.83%;
    position: absolute;
    top: -65px;
  }

  .sec10_spot_wrap {
    padding: 0 4.35185% 0 7.68518%;
  }

  .sec10_spot_title {
    font-size: 0;
    max-width: 950px;
  }

  .sec10_spot_inner {
    background: url(../image/bg-section10-middle.png) 0 0 repeat-y;
    background-size: 100% auto;
    padding-bottom: 16px;
    padding-right: 3.158%;
    position: relative;
  }

  .sec10_spot_inner::after {
    background: url(../image/bg-section10-bottom.png) 0 0 no-repeat;
    background-size: 100% auto;
    content: "";
    display: block;
    padding-top: 3.6%;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
  }

  .sec10_spot_text_block {
    max-width: 920px;
    padding: 1.4% 12% 0;
  }

  .sec10_spot_text_intro {
    font-size: 22px;
    letter-spacing: -0.02em;
  }

  .sec10_spot_text_disc {
    letter-spacing: 0;
    line-height: 1.39;
    margin-top: 5px;
    text-align: justify;
  }

  .sec10_spot_access_block {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 920px;
    padding: 2.1% 12% 0;
  }

  .sec10_spot_access {
    width: 58%;
  }

  .sec10_spot_access_inner {
    border-bottom: 1px solid #7aa3b9;
    border-top: 1px solid #7aa3b9;
    font-size: 16px;
    padding: 10px 5px;
  }

  .sec10_spot_access_list:not(:first-child) {
    margin-top: 3px;
  }

  .sec10_spot_access_btn {
    width: 40%;
  }

  .sec10_spot_btn_detail {
    width: 210px;
  }

  .sec10_spot_btn_detail .cmn_link_btn_text {
    letter-spacing: .3em;
    padding: 6px 16.83% 6px 12.5%;
  }

  .sec10_spot_btn_detail .cmn_link_btn_text::after {
    right: 15%;
  }

  .sec10_spot_access_btn_txt {
    font-size: 15px;
    letter-spacing: -0.02em;
  }

  .sec10_spot_btn_txt {
    font-size: 18px;
    font-weight: 600;
    letter-spacing: .3em;
    position: relative;
  }

  .sec10_spot_btn_txt::after {
    border-color: transparent transparent transparent #fff;
    border-style: solid;
    border-width: 6px 0 6px 8px;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    right: -28px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 0;
  }

  .sec10_spot_image_box {
    margin-top: 28px;
    max-width: 920px;
    padding: 0 8.86%;
  }

  .sec10_spot_image_annotation {
    font-weight: 600;
    letter-spacing: .01em;
    margin-top: 3px;
    text-align: right;
  }

  .section10 .museum_share_block {
    margin: 10px 0 0;
    max-width: 920px;
    padding: 0 8.86%;
  }

  .section10 .share_title {
    background: #175f85;
    border: none;
    font-size: 16px;
    letter-spacing: 0;
    padding: 7px 0;
    width: 190px;
  }

  .section10 .block_sns {
    width: calc(100% - 190px);
  }

  .section10 .block_sns .list_sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .section10 .block_sns .list_sns li:first-child {
    margin-left: 4.134%;
  }

  .section10 .block_sns .list_sns li.list_sns_mail>a {
    color: #000;
    padding: 4px 0 4px 24px;
  }
}

@media (max-width: 975px) and (min-width: 768px) {
  .section10 .section_inner {
    padding-top: 15vh;
  }

  .section10 .share_title {
    width: 40%;
  }

  .section10 .block_sns {
    width: 60%;
  }
}

@media (max-width: 767px) {
  .section10 .section_inner {
    padding-bottom: 30px;
  }

  .sec10_spot_wrap {
    margin-top: 20px;
  }

  .sec10_spot_block:not(:last-of-type) {
    border-bottom: 1px dashed #c92121;
    padding-bottom: 30px;
  }

  .sec10_spot_content_wrap {
    flex-direction: column-reverse;
  }

  .sec10_spot_title {
    border-left: 5px solid #c92121;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 2px 0 2px 10px;
  }

  .sec10_spot_inner,
  .sec10_spot_text_wrap,
  .sec10_spot_access_btn {
    margin-top: 15px;
  }

  .sec10_spot_text_disc {
    margin-top: 10px;
  }

  .sec10_spot_btn_detail {
    max-width: 300px;
    width: 70%;
  }

  .sec10_spot_access_btn_txt {
    text-align: center;
  }

  .sec10_spot_access_block {
    margin: 15px auto 0;
    width: 90%;
  }
}


/* ------------------------------------ */
/* ▼ other museum block */
/* ------------------------------------ */
@media (min-width: 768px) {
  .other_museum_wrap {
    margin: 0 auto;
    max-width: 920px;
    width: 100%;
  }

  .other_museum_disc {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .other_museum_disc_col:nth-of-type(1) {
    padding-top: 5px;
    width: 65.11%;
  }

  .other_museum_disc_col:nth-of-type(2) {
    width: 32%;
  }

  .other_museum_text {
    line-height: 1.4;
    letter-spacing: .01em;
  }

  .other_museum_gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 35px;
  }

  .other_museum_gallery>li {
    width: 32.61%;
  }

  .other_museum_bnr_wrap {
    margin: 50px auto 0;
    max-width: 730px;
    width: 100%;
  }

  .other_museum_bnr>a {
    display: block;
  }

  .other_museum_bnr_cap {
    letter-spacing: 0;
    margin-top: 14px;
    padding: 0 16px;
  }
}

@media (max-width: 767px) {
  .other_museum_gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .other_museum_gallery>li {
    width: 32.61%;
  }

  .other_museum_text {
    margin-top: 10px;
  }

  .other_museum_bnr_wrap {
    margin-top: 20px;
    padding: 0 20px;
  }

  .other_museum_bnr_cap {
    margin-top: 6px;
  }
}

/* ------------------------------------ */
/* ▼ relation bnr block */
/* ------------------------------------ */
.bnr_section_block {
  background-image: url(../image/bg-contents-02.gif);
  background-repeat: repeat-y;
  background-position: center 0;
  background-size: 100% auto;
  max-width: 1080px;
  margin: auto;
  width: 100%;
  padding: 0 0 37px;
}

.bnr_section_block::before {
  content: "";
  display: block;
  background: url(../image/bg-relation-top.png) no-repeat top center;
  background-size: 100% auto;
  margin-top: -1px;
  padding: 8.149% 0 0;
  position: relative;
  z-index: 1;
}

.bnr_section_inner {
  margin: 48px auto 0;
}

.bnr_section_block+.museum_bnr_block {
  margin: 43px auto 0;
  max-width: 630px;
  width: 100%;
}

.bnr_section_block+.museum_bnr_block .caption {
  color: #000;
  margin-top: 6px;
}

.bnr_block .box__links__item .item_image img {
  width: 100%;
}

@media (max-width: 767px) {
  .bnr_section_block {
    background: none;
    border: 1px solid #c92121;
    margin: 20px auto 0;
    max-width: calc(100% - 40px);
    padding: 0;
  }

  .bnr_section_block::before {
    display: none;
  }

  .bnr_section_inner {
    margin-top: 0;
    padding: 20px;
    width: 100%;
  }

  .bnr_section_block+.museum_bnr_block {
    margin-top: 35px;
    max-width: 600px;
    padding: 0 40px;
  }

  .bnr_section_block+.museum_bnr_block .caption {
    text-align: left;
  }
}
/* 共通上書き */
@media (min-width: 768px) {
  .bnr_section_h3 {
    margin-top: 57px;
  }
  .bnr_section_h3>span {
    background-image: url(../image/bg-h3-left.png),
                      url(../image/bg-h3-right.png);
  }
  .bnr_section_h3>span::before,
  .bnr_section_h3>span::after {
    background: url(../image/bg-h3-line.png);
    background-size: 58%;
    top: 50%;
    transform: translateY(-50%);
    height: 38px;
  }
  .bnr_section_h3>span>span {
    background-image:url(../image/bg-h3-center.png);
    height: 38px;
  }
  .cmn_bnr_area.col03.cmn_has_spacer figure:last-of-type {
    background-color: transparent;
  }
  .bnr_section_block.box__links__related .cmn_bnr_area.col03.cmn_has_spacer {
    background-position: right 2.5% bottom 50px;
  }
}

/* ------------------------------------ */
/* ▼ 近くの施設情報 */
/* ------------------------------------ */
/* 共通上書き */
.box__facility .facilities .txt {
  line-height: 1.6;
}

/* ------------------------------------ */
/* ▼ bnr_contents_block */
/* ------------------------------------ */
/* 共通上書き */
.box__links__content .box__links__content_inner .box__links__item {
  background: none;
}

@media screen and (max-width: 767px) {
  .bnr_contents_block {
    padding: 0 40px;
    width: 100%;
  }
}

/* ------------------------------------ */
/* ▼ TCI福岡_sakaguchi バナー共通化対応 */
/* ------------------------------------ */
@media (min-width: 768px) {
  .cmn_bnr_area.col02.col02_bnr_01 {
    margin-top: 35px;
  }
}

@media (max-width: 767px) {
  .cmn_bnr_area.col02.col02_bnr_01 {
    max-width: 400px;
    margin-top: 30px;
    padding: 0 20px;
  }
}

/* ------------------------------------ */
/* ▼ iframe 調整 */
/* ------------------------------------ */
.mod_access .y_map iframe {
  width: 100%;
}