@charset "UTF-8";
@font-face { font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3","Hiragino Sans", ヒラギノ角ゴシック, Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif; src: url("../fonts/W3.otf") format("opentype"); }
@font-face { font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans", ヒラギノ角ゴシック, "ヒラギノ角ゴ ProN W6", Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif; font-weight: bold; src: url("../fonts/W6.otf") format("opentype"); }
@font-face { font-family: "A1MinchoStd-Bold"; font-weight: bold; src: url("../fonts/A1MinchoStd-Bold.otf") format("opentype"); }
@font-face { font-family: "Constantia-Bold"; font-weight: bold; src: url("../fonts/Constantia-Bold.ttf") format("truetype"); }
* { -webkit-box-sizing: border-box; box-sizing: border-box; }
*, *:after, *:before { padding: 0; margin: 0; }

body {
  font-size: 17px;
  color: #000000;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3","Hiragino Sans", ヒラギノ角ゴシック, Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif;
}

a {
  text-decoration: none;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

ul {
  list-style: none;
}

.hidden {
  display: none;
}

img.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
}

.container, .container-fluid {
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
}

.container {
  padding-left: 15px;
  padding-right: 15px;
}

.container-content {
  max-width: 926px;
  margin-left: auto;
  margin-right: auto;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

button {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  border: 0;
  cursor: pointer;
  outline: none;
}

button:hover {
  opacity: .8;
}

.js-conten{
  justify-content: center;
}

.spacing-5 {
  height: 5px;
}

.spacing-6 {
  height: 6px;
}

.spacing-7 {
  height: 7px;
}

.spacing-8 {
  height: 8px;
}

.spacing-9 {
  height: 9px;
}

.spacing-10 {
  height: 10px;
}

.spacing-11 {
  height: 11px;
}

.spacing-12 {
  height: 12px;
}

.spacing-13 {
  height: 13px;
}

.spacing-14 {
  height: 14px;
}

.spacing-15 {
  height: 15px;
}

.spacing-16 {
  height: 16px;
}

.spacing-17 {
  height: 17px;
}

.spacing-18 {
  height: 18px;
}

.spacing-19 {
  height: 19px;
}

.spacing-20 {
  height: 20px;
}

.spacing-21 {
  height: 21px;
}

.spacing-22 {
  height: 22px;
}

.spacing-23 {
  height: 23px;
}

.spacing-24 {
  height: 24px;
}

.spacing-25 {
  height: 25px;
}

.spacing-26 {
  height: 26px;
}

.spacing-27 {
  height: 27px;
}

.spacing-28 {
  height: 28px;
}

.spacing-29 {
  height: 29px;
}

.spacing-30 {
  height: 30px;
}

.spacing-31 {
  height: 31px;
}

.spacing-32 {
  height: 32px;
}

.spacing-33 {
  height: 33px;
}

.spacing-34 {
  height: 34px;
}

.spacing-35 {
  height: 35px;
}

.spacing-36 {
  height: 36px;
}

.spacing-37 {
  height: 37px;
}

.spacing-38 {
  height: 38px;
}

.spacing-39 {
  height: 39px;
}

.spacing-40 {
  height: 40px;
}

.spacing-41 {
  height: 41px;
}

.spacing-42 {
  height: 42px;
}

.spacing-43 {
  height: 43px;
}

.spacing-44 {
  height: 44px;
}

.spacing-45 {
  height: 45px;
}

.spacing-46 {
  height: 46px;
}

.spacing-47 {
  height: 47px;
}

.spacing-48 {
  height: 48px;
}

.spacing-49 {
  height: 49px;
}

.spacing-50 {
  height: 50px;
}

.spacing-51 {
  height: 51px;
}

.spacing-52 {
  height: 52px;
}

.spacing-53 {
  height: 53px;
}

.spacing-54 {
  height: 54px;
}

.spacing-55 {
  height: 55px;
}

.spacing-56 {
  height: 56px;
}

.spacing-57 {
  height: 57px;
}

.spacing-58 {
  height: 58px;
}

.spacing-59 {
  height: 59px;
}

.spacing-60 {
  height: 60px;
}

.spacing-61 {
  height: 61px;
}

.spacing-62 {
  height: 62px;
}

.spacing-63 {
  height: 63px;
}

.spacing-64 {
  height: 64px;
}

.spacing-65 {
  height: 65px;
}

.spacing-66 {
  height: 66px;
}

.spacing-67 {
  height: 67px;
}

.spacing-68 {
  height: 68px;
}

.spacing-69 {
  height: 69px;
}

.spacing-70 {
  height: 70px;
}

.spacing-71 {
  height: 71px;
}

.spacing-72 {
  height: 72px;
}

.spacing-73 {
  height: 73px;
}

.spacing-74 {
  height: 74px;
}

.spacing-75 {
  height: 75px;
}

.spacing-76 {
  height: 76px;
}

.spacing-77 {
  height: 77px;
}

.spacing-78 {
  height: 78px;
}

.spacing-79 {
  height: 79px;
}

.spacing-80 {
  height: 80px;
}

.spacing-81 {
  height: 81px;
}

.spacing-82 {
  height: 82px;
}

.spacing-83 {
  height: 83px;
}

.spacing-84 {
  height: 84px;
}

.spacing-85 {
  height: 85px;
}

.spacing-86 {
  height: 86px;
}

.spacing-87 {
  height: 87px;
}

.spacing-88 {
  height: 88px;
}

.spacing-89 {
  height: 89px;
}

.spacing-90 {
  height: 90px;
}

.spacing-91 {
  height: 91px;
}

.spacing-92 {
  height: 92px;
}

.spacing-93 {
  height: 93px;
}

.spacing-94 {
  height: 94px;
}

.spacing-95 {
  height: 95px;
}

.spacing-96 {
  height: 96px;
}

.spacing-97 {
  height: 97px;
}

.spacing-98 {
  height: 98px;
}

.spacing-99 {
  height: 99px;
}

.spacing-100 {
  height: 100px;
}

.siteroute_wrap {
  position: relative;
}

.siteroute_wrap:after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100px;
  right: 0;
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 253, 246, 0)), to(#fffdf6));
  background-image: linear-gradient(to right, rgba(255, 253, 246, 0), #fffdf6); z-index: 1;
}

@media screen and (min-width: 769px) {
  body {
    min-width: 1024px;
  }
  .sp {
    display: none !important;
  }
  .row {
    display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -12px;
    margin-right: -12px;
  }
  .row .col-md-6 {
    width: 50%;
  }
  .row [class*="col"] {
    padding-left: 12px;
    padding-right: 12px;
  }
  .row.row-large {
    margin-left: -18px;
    margin-right: -18px;
  }
  .row.row-large [class*="col"] {
    padding-left: 18px;
    padding-right: 18px;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
  .spacing-sp-5 {
    height: 5px;
  }
  .spacing-sp-6 {
    height: 6px;
  }
  .spacing-sp-7 {
    height: 7px;
  }
  .spacing-sp-8 {
    height: 8px;
  }
  .spacing-sp-9 {
    height: 9px;
  }
  .spacing-sp-10 {
    height: 10px;
  }
  .spacing-sp-11 {
    height: 11px;
  }
  .spacing-sp-12 {
    height: 12px;
  }
  .spacing-sp-13 {
    height: 13px;
  }
  .spacing-sp-14 {
    height: 14px;
  }
  .spacing-sp-15 {
    height: 15px;
  }
  .spacing-sp-16 {
    height: 16px;
  }
  .spacing-sp-17 {
    height: 17px;
  }
  .spacing-sp-18 {
    height: 18px;
  }
  .spacing-sp-19 {
    height: 19px;
  }
  .spacing-sp-20 {
    height: 20px;
  }
  .spacing-sp-21 {
    height: 21px;
  }
  .spacing-sp-22 {
    height: 22px;
  }
  .spacing-sp-23 {
    height: 23px;
  }
  .spacing-sp-24 {
    height: 24px;
  }
  .spacing-sp-25 {
    height: 25px;
  }
  .spacing-sp-26 {
    height: 26px;
  }
  .spacing-sp-27 {
    height: 27px;
  }
  .spacing-sp-28 {
    height: 28px;
  }
  .spacing-sp-29 {
    height: 29px;
  }
  .spacing-sp-30 {
    height: 30px;
  }
  .spacing-sp-31 {
    height: 31px;
  }
  .spacing-sp-32 {
    height: 32px;
  }
  .spacing-sp-33 {
    height: 33px;
  }
  .spacing-sp-34 {
    height: 34px;
  }
  .spacing-sp-35 {
    height: 35px;
  }
  .spacing-sp-36 {
    height: 36px;
  }
  .spacing-sp-37 {
    height: 37px;
  }
  .spacing-sp-38 {
    height: 38px;
  }
  .spacing-sp-39 {
    height: 39px;
  }
  .spacing-sp-40 {
    height: 40px;
  }
  .spacing-sp-41 {
    height: 41px;
  }
  .spacing-sp-42 {
    height: 42px;
  }
  .spacing-sp-43 {
    height: 43px;
  }
  .spacing-sp-44 {
    height: 44px;
  }
  .spacing-sp-45 {
    height: 45px;
  }
  .spacing-sp-46 {
    height: 46px;
  }
  .spacing-sp-47 {
    height: 47px;
  }
  .spacing-sp-48 {
    height: 48px;
  }
  .spacing-sp-49 {
    height: 49px;
  }
  .spacing-sp-50 {
    height: 50px;
  }
  .spacing-sp-51 {
    height: 51px;
  }
  .spacing-sp-52 {
    height: 52px;
  }
  .spacing-sp-53 {
    height: 53px;
  }
  .spacing-sp-54 {
    height: 54px;
  }
  .spacing-sp-55 {
    height: 55px;
  }
  .spacing-sp-56 {
    height: 56px;
  }
  .spacing-sp-57 {
    height: 57px;
  }
  .spacing-sp-58 {
    height: 58px;
  }
  .spacing-sp-59 {
    height: 59px;
  }
  .spacing-sp-60 {
    height: 60px;
  }
  .spacing-sp-61 {
    height: 61px;
  }
  .spacing-sp-62 {
    height: 62px;
  }
  .spacing-sp-63 {
    height: 63px;
  }
  .spacing-sp-64 {
    height: 64px;
  }
  .spacing-sp-65 {
    height: 65px;
  }
  .spacing-sp-66 {
    height: 66px;
  }
  .spacing-sp-67 {
    height: 67px;
  }
  .spacing-sp-68 {
    height: 68px;
  }
  .spacing-sp-69 {
    height: 69px;
  }
  .spacing-sp-70 {
    height: 70px;
  }
  .spacing-sp-71 {
    height: 71px;
  }
  .spacing-sp-72 {
    height: 72px;
  }
  .spacing-sp-73 {
    height: 73px;
  }
  .spacing-sp-74 {
    height: 74px;
  }
  .spacing-sp-75 {
    height: 75px;
  }
  .spacing-sp-76 {
    height: 76px;
  }
  .spacing-sp-77 {
    height: 77px;
  }
  .spacing-sp-78 {
    height: 78px;
  }
  .spacing-sp-79 {
    height: 79px;
  }
  .spacing-sp-80 {
    height: 80px;
  }
  .spacing-sp-81 {
    height: 81px;
  }
  .spacing-sp-82 {
    height: 82px;
  }
  .spacing-sp-83 {
    height: 83px;
  }
  .spacing-sp-84 {
    height: 84px;
  }
  .spacing-sp-85 {
    height: 85px;
  }
  .spacing-sp-86 {
    height: 86px;
  }
  .spacing-sp-87 {
    height: 87px;
  }
  .spacing-sp-88 {
    height: 88px;
  }
  .spacing-sp-89 {
    height: 89px;
  }
  .spacing-sp-90 {
    height: 90px;
  }
  .spacing-sp-91 {
    height: 91px;
  }
  .spacing-sp-92 {
    height: 92px;
  }
  .spacing-sp-93 {
    height: 93px;
  }
  .spacing-sp-94 {
    height: 94px;
  }
  .spacing-sp-95 {
    height: 95px;
  }
  .spacing-sp-96 {
    height: 96px;
  }
  .spacing-sp-97 {
    height: 97px;
  }
  .spacing-sp-98 {
    height: 98px;
  }
  .spacing-sp-99 {
    height: 99px;
  }
  .spacing-sp-100 {
    height: 100px;
  }
}

.section-bottom {
  margin-bottom: 44px;
}

.section-bottom .banner {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
.section-bottom .banner .banner_item:nth-child(n + 2) {
  margin-top: 20px;
}

.section-bottom .banner_double {
  display: flex;
  flex-wrap: wrap;
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 19px;
  margin-bottom: 40px;
}

.section-bottom .banner_double .banner_double_item {
  width: 48%;
}
.section-bottom .banner_double .banner_double_item:nth-child(2n) {
  margin-left: 4%;
}

.section-bottom .banner a {
  display: block;
}

.section-bottom .banner_double a {
  display: block;
}

.section-bottom .banner a:hover {
  opacity: 0.7;
}

.section-bottom .banner_double a:hover {
  opacity: 0.7;
}

.section-bottom .banner .intro {
  text-align: center;
  font-size: 16px;
  line-height: 1;
  margin-top: 14px;
}

.section-bottom .banner_double .intro {
  text-align: center;
  font-size: 16px;
  line-height: 1.3;
  margin-top: 8px;
  margin-bottom: 30px;
}

.section-bottom .content {
  max-width: 650px;
  margin-left: auto;
  margin-right: auto;
  background-color: #f6eee0;
}

.section-bottom .list-box {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 20px;
  padding-bottom: 3px;
}

.section-bottom .list-box .item {
  margin-bottom: 13px;
}

.section-bottom .list-box .item .thumb {
  margin-bottom: 5px;
}

.section-bottom .list-box .item .thumb:hover {
  opacity: 0.7;
}

.section-bottom .list-box .item .desc {
  font-size: 15px;
  color: #000000;
  line-height: 21px;
  padding-left: 20px;
  background: url("../image/ico/ico-list-bottom.png") no-repeat top 4px left;
}

.section-bottom .bnr_meihaku_open{
  margin-top: 50px;
  text-align: center;
}

.section-bottom .bnr_meihaku_open.bnr_bus_tour{
  margin-top: 20px;
}

.section-bottom .bnr_meihaku_open a:hover img{
  opacity: 0.7;
}

.section-bottom .bnr_meihaku_open img {
  margin: 0 auto;
  height: auto;
  max-width: 620px;
  width: 100%;
}

.section-bottom .bnr_meihaku_open figure {
  margin-bottom: 20px;
}
.section-bottom .bnr_meihaku_open figcaption {
  font-size: 14px;
  line-height: 1.4;
  margin-top: 5px;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .bnr_meihaku_open{
    margin: 25px auto 20px;
    width: 840px;
  }
  .bnr_meihaku_open img{
    max-width: 700px; 
  }
  .bnr_meihaku_open .preopen_bnr,
  .bnr_meihaku_open .pr-contents_bnr{
    position: relative;
    margin: 20px auto 0;
  }
  .bnr_meihaku_open .pr-contents_bnr{
    margin: 15px auto;
  }
  .bnr_meihaku_open .pr-contents_bnr a {
    display: inline-block;
    position: relative;
  }
  .bnr_meihaku_open .preopen_bnr a {
    opacity: 0;
  }
  .bnr_meihaku_open .preopen_bnr .preopen_url {
    position: absolute;
    top: 72.5%;
    left: 42%;
    width: 21.571%;
    height: 18.571%;
    border-radius: 20px;
  }
  .bnr_meihaku_open .preopen_bnr .preopen_pdf{
    position: absolute;
    top: 72.5%;
    left: 64.857%;
    width: 21.571%;
    height: 18.571%;
    border-radius: 20px;
  }
  .bnr_meihaku_open .pr-contents_bnr:hover {
    opacity: .6;
  }
  .bnr_meihaku_open .preopen_bnr .preopen_url:hover,
  .bnr_meihaku_open .preopen_bnr .preopen_pdf:hover {
    opacity: .4;
    background:#fff;
  }
  .bnr_meihaku_open .pr-exhibition_bnr {
    margin: 15px auto;
    width: 450px;
  }
  .bnr_meihaku_open .pr-exhibition_bnr a {
    display: block;
  }
  .bnr_meihaku_open .pr-exhibition_bnr a:hover {
    opacity: .7;
  }
  .bnr_meihaku_open .pr-exhibition_bnr img {
    width: 100%;
  }
  .bnr_meihaku_open .pr-exhibition_bnr figcaption {
    font-size: 15px;
    margin-top: 7px;
    text-align: left;
  }
  .bnr_top_col2 {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 15px;
    max-width: 1000px;
  }
  .bnr_top_col2 .bnr_contest_rs {
    margin: 0;
    width: 400px;
  }
  .bnr_top_col2.bnr_top_col2_meihaku .bnr_contest_rs {
    width: 400px;
  }
  .bnr_top_col2 .bnr_contest_rs .cap {
    font-size: 15px;
    font-feature-settings: "palt";
    letter-spacing: normal;
    line-height: 1.5;
    margin: 8px -1px 0;
    text-align: left;
  }
  .bnr_top_col2 .bnr_contest_rs .cap.ls {
    letter-spacing: -0.04em;
  }
}
.top_topix_bnr_new_tour {
  align-items: flex-end;
  background-image: url(https://webcdn.token.co.jp/www08/token/banner_all/totsu-travel/bnr-bustour_tenga_sanmeiso_1400x354.png);
  background-position: center center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  height: 170px;
  margin: 0 auto;
  padding-right: 17px;
  padding-bottom: 17px;
  width: 620px;
}

.top_topix_bnr_new_tour ul {
  display: flex;
  justify-content: space-between;
  margin-bottom: -4px;
  width: 286px;
}

.top_topix_bnr_new_tour li {
  width: 48%;
}

.top_topix_bnr_new_tour li:last-child {
  width: 51%;
}

.top_topix_bnr_new_tour a {
  border-radius: 20px;
  background-color: transparent !important;
  color: transparent !important;
  display: block;
  height: 27px;
  text-align: center;
}

.top_topix_bnr_new_tour a:hover {
  background-color: #fff !important;
  opacity: 0.4;
}

@media screen and (max-width: 767px) {
  .top_topix_bnr_new_tour {
    margin: 0 auto 20px !important;
  }
}

.section-bottom .tado_bnr {
  max-width: 650px;
  display: flex;
  margin: 40px auto 0;
}

.section-bottom .tado_bnr .pc {
  width: 300px;
  margin: 0 13px 0;
}

.section-box-bottom .wrap-box {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #2964b9;
  position: relative;
  padding: 6px;
}

.section-box-bottom .wrap-box .wrap-border {
  position: absolute;
  z-index: 1;
  background-color: #fff;
}

.section-box-bottom .wrap-box .wrap-border.border-ver {
  top: 34px;
  bottom: 34px;
  width: 5px;
}

.section-box-bottom .wrap-box .wrap-border.border-hoz {
  left: 34px;
  right: 34px;
  height: 5px;
}

.section-box-bottom .wrap-box .wrap-border.border-top {
  top: -2px;
}

.section-box-bottom .wrap-box .wrap-border.border-bottom {
  bottom: -2px;
}

.section-box-bottom .wrap-box .wrap-border.border-left {
  left: -2px;
}

.section-box-bottom .wrap-box .wrap-border.border-right {
  right: -2px;
}

.section-box-bottom .box-main {
  border: 1px solid #2964b9;
  background-color: #edf5fc;
  font-size: 15px;
  line-height: 1.5;
  color: #0c2a4f;
  padding: 16px 20px;
}

@media screen and (max-width: 768px) {
  .section-bottom > .container {
    padding-left: 10px;
    padding-right: 10px;
  }
  
  .section-bottom .banner {
    margin-bottom: 24px;
    max-width: none;
    width: 80vw;
  }
  
  .section-bottom .banner .intro {
    font-size: 15px;
    line-height: 18px;
    margin-top: 7px;
  }
  
  .section-bottom .content {
    max-width: 650px;
    margin-left: auto;
    margin-right: auto;
    background-color: #f6eee0;
  }
  
  .section-bottom .list-box {
    max-width: 560px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 23px;
    padding-bottom: 0;
    padding-left: 16px;
    padding-right: 16px;
  }
  
  .section-bottom .list-box .item {
    margin-bottom: 13px;
  }
  
  .section-bottom .list-box .item .thumb {
    margin-bottom: 9px;
  }
  
  .section-bottom .list-box .item .desc {
    font-size: 15px;
    color: #000000;
    line-height: 18px;
    padding-left: 16px;
    background-position: top 1px left;
  }
  
  .section-box-bottom .wrap-box {
    background-color: #fbe8f0;
    border: 0;
    padding: 0 3px 14px;
  }
  
  .section-box-bottom .wrap-box .wrap-border {
    display: none;
  }
  
  .section-box-bottom .box-main {
    background-color: transparent;
    padding: 9px 9px;
    border: 0;
    font-size: 15px;
    max-height: 95px;
    overflow: hidden;
  }
  
  .section-box-bottom .box-main.active {
    max-height: inherit;
  }
  
  .section-box-bottom .view-more {
    color: #0075d8;
    display: inline-block;
    margin-left: 9px;
    margin-top: 10px;
    font-size: 15px;
    line-height: 1;
  }
  
  .section-box-bottom .view-more.active {
    margin-top: 0px;
  }
  
  .section-box-bottom .view-more.active:after {
    border-bottom: 12px solid #0075d8;
    border-top: 0;
  }
  
  .section-box-bottom .view-more:after {
    display: inline-block;
    content: "";
    width: 0;
    height: 0;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 12px solid #0075d8;
    margin-left: 4px;
  }

  .section-bottom .banner a img {
    width: 100%;
  }

  .section-bottom .banner_double {
    max-width: 560px;
    padding: 0 16px;
    margin-bottom: 0;
  }
  .section-bottom .banner_double .banner_double_item {
    width: 100%;
  }
  .section-bottom .banner_double .banner_double_item:nth-child(2n) {
    margin-left: 0;
  }
  .section-bottom .banner_double .banner_double_item img {
    width: 100%;
  }
}

.row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.row [class^=col] {
  min-height: 1px;
}

.row .col-50 {
  width: 50%;
}

.row.row-5px {
  margin-left: -5px;
  margin-right: -5px;
}

.row.row-5px [class^=col] {
  padding-left: 5px;
  padding-right: 5px;
}

.row.row-13px {
  margin-left: -13px;
  margin-right: -13px;
}

.row.row-13px [class^=col] {
  padding-left: 13px;
  padding-right: 13px;
}

.row.row-20px {
  margin-left: -20px;
  margin-right: -20px;
}

.row.row-20px [class^=col] {
  padding-left: 20px;
  padding-right: 20px;
}

@media screen and (max-width: 768px) {
  .row .col-sp-100 {
    width: 100%;
  }
  .row.row-sp-0px {
    margin-left: 0;
    margin-right: 0;
  }
  .row.row-sp-0px [class^=col] {
    padding-left: 0;
    padding-right: 0;
  }
  .row.row-sp-5px {
    margin-left: -5px;
    margin-right: -5px;
  }
  .row.row-sp-5px [class^=col] {
    padding-left: 5px;
    padding-right: 5px;
  }
}

body[data-fs="font-small"] .section-content .content .desc, body[data-fs="font-small"] .section-detail .content .desc {
  font-size: 15px;
}

body[data-fs="font-large"] .section-content .content .desc, body[data-fs="font-large"] .section-detail .content .desc {
  font-size: 19px;
}

.section-font {
  margin-top: 22px;
}

.section-font .btn-font {
  text-align: right;
  border-bottom: 2px solid #148ec6;
  display: table;
  margin-left: auto;
  height: 47px;
  padding-right: 4px;
}

.section-font .btn-font > span {
  font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans", ヒラギノ角ゴシック, "ヒラギノ角ゴ ProN W6", Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif;
  font-weight: bold;
}

.section-font .btn-font .text {
  color: #1780b0;
  padding-right: 16px;
  line-height: 1.3;
  font-size: 17px;
}

.section-font .btn-font .font {
  background-color: #89c6e2;
  color: #ffffff;
  display: inline-block;
  text-align: center;
  vertical-align: bottom;
  margin-left: 12px;
  cursor: pointer;
}

.section-font .btn-font .font.active {
  background-color: #148ec6;
}

.section-font .btn-font .font-small {
  font-size: 17px;
  line-height: 28px;
  width: 28px;
}

.section-font .btn-font .font-default {
  font-size: 20px;
  line-height: 33px;
  width: 33px;
}

.section-font .btn-font .font-large {
  font-size: 25px;
  line-height: 38px;
  width: 38px;
}

@media screen and (max-width: 768px) {
  .section-font {
    margin-top: 16px;
  }
  .section-font .btn-font {
    height: 40px;
    padding-right: 0;
  }
  .section-font .btn-font .text {
    padding-right: 16px;
    font-size: 15px;
  }
  .section-font .btn-font .font {
    margin-bottom: 2px;
    margin-left: 10px;
  }
  .section-font .btn-font .font-small {
    font-size: 15px;
    line-height: 24px;
    width: 24px;
  }
  .section-font .btn-font .font-default {
    font-size: 17px;
    line-height: 29px;
    width: 29px;
  }
  .section-font .btn-font .font-large {
    font-size: 26px;
    line-height: 32px;
    width: 32px;
  }
}

#main {
  background: url("../image/cmn/bg.png") top center;
}

.section-content .content {
  max-width: 670px;
  margin-left: auto;
  margin-right: auto;
}

.section-content .content .desc {
  line-height: 1.5;
  text-align: justify;
  font-size: 17px;
}

.section-map {
  padding-bottom: 43px;
}

.section-map .map {
  position: relative;
}

.section-map .map .grp-btns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.section-map .map .grp-btns .btn {
  display: block;
  font-family: "A1MinchoStd-Bold";
  font-size: 22px;
  font-weight: bold;
  line-height: 60px;
  height: 63px;
  width: 170px;
  background: url("../image/ico/ico-btn-map.png") center right 6px no-repeat;
  position: absolute; border-bottom: 3px solid #c9b965;
  padding-right: 17px;
  text-align: center;
  color: #000000;
}

.section-map .map .grp-btns .btn > span {
  position: relative;
  z-index: 2;
}

.section-map .map .grp-btns .btn:after {
  position: absolute;
  content: "";
  background: url("../image/cmn/bg-btn-map.png") top left;
  top: 0;
  bottom: 0;
  right: 23px;
  left: 0;
  z-index: 1;
}

.section-map .map .grp-btns .btn:hover {
  opacity: 0.7;
}

.section-map .map .grp-btns .btn-01 {
  top: 305px;
  left: 427px;
  background-color: #267739;
}

.section-map .map .grp-btns .btn-02 {
  top: 397px;
  left: 96px;
  background-color: #ae3f29;
}

.section-map .map .grp-btns .btn-03 {
  top: 385px;
  left: 287px;
  background-color: #b97009;
}

.section-map .map .grp-btns .btn-04 {
  top: 389px;
  right: 56px;
  background-color: #3475a2;
}

.section-map .map .grp-btns .btn-05 {
  top: 475px;
  left: 28px;
  background-color: #755b76;
}

.section-map .map .grp-btns .btn-06 {
  top: 478px;
  right: 106px;
  background-color: #1d9b7f;
}

.section-map .map .grp-btns .btn-07 {
  top: 625px;
  left: 246px;
  background-color: #c65b62;
}

.section-map .map .grp-btns .btn-08 {
  top: 587px;
  right: 318px;
  background-color: #779729;
}


@media screen and (max-width: 768px) {
  .section-top .banner img {
    width: 100%;
  }
  .section-top .banner>.container {
    padding-left: 0;
    padding-right: 0;
  }
  .section-map {
    padding-bottom: 27px;
  }
  .section-map .map>img {
    width: 100%;
  }
  .section-map .map .grp-btns {
    position: absolute;
    bottom: 18px;
    left: 6px;
    right: 6px;
  }
  .section-map .map .grp-btns .wrap-btn {
    padding-left: 6px;
    padding-right: 6px;
    width: 50%;
    margin-top: 11px;
  }
  .section-map .map .grp-btns .btn {
    font-size: 15px;
    line-height: 40px;
    height: 40px;
    width: 100%;
    position: relative;
    border-bottom: 1px solid #c9b965;
    padding-right: 15px;
    background-size: 6px auto;
    background-position: center right 4px;
    left: 0;
    top: 0;
  }
  .section-map .map .grp-btns .btn:after {
    right: 15px;
  }
}

.section-kansai .kansai {
  background: url("../image/kansai/bg-kansai.png") top center;
  padding-bottom: 20px;
}

.section-kansai .kansai .heading {
  line-height: 67px;
  text-align: center;
  background: url("../image/kansai/bg-ttl.png") no-repeat top center/cover;
  color: #ffffff;
  font-family: "A1MinchoStd-Bold";
  font-size: 34px;
  letter-spacing: 21px;
  text-indent: 23px;
}

.section-kansai .kansai .wrap-district-menu, .section-kansai .kansai .district-list {
  padding: 0 20px;
}

.section-kansai .kansai .district-menu {
  margin-top: 19px;
  margin-bottom: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 65px;
  background-image: url("../image/kansai/bg-heading-l.png"), url("../image/kansai/bg-heading-r.png");
  background-repeat: no-repeat;
  background-position: bottom 3px left, bottom 3px right;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.section-kansai .kansai .district-menu .item {
  width: 116px;
  margin-right: 12px;
}

.section-kansai .kansai .district-menu .item:last-child {
  margin-right: 0;
}

.section-kansai .kansai .district-menu .item>a {
  height: 43px;
  background: url("../image/kansai/bg-district.png") no-repeat top center/100%;
  display: block;
  line-height: 39px;
  color: #000000;
  font-size: 18px;
  padding-right: 10px;
  text-align: center;
  margin: auto;
  letter-spacing: 2px;
}

.section-kansai .kansai .district-menu .item>a:hover {
  opacity: 0.7;
}

.section-kansai .kansai .district-list {
  margin-bottom: 40px;
}

.section-kansai .kansai .district-list:last-child {
  margin-bottom: 20px;
}

.section-kansai .kansai .district-list.odd {
  background: url("../image/kansai/bg-article-empty.png") no-repeat bottom 13px right 31px/44% auto;
}

.section-kansai .kansai .district-list .district-heading {
  font-family: "A1MinchoStd-Bold";
  font-size: 30px;
  line-height: 1;
  text-align: center;
  background-image: url("../image/kansai/bg-heading-item.png"), url("../image/kansai/bg-heading-item.png");
  background-repeat: no-repeat;
  background-position: center left, center right;
  color: #a05d00;
  margin-bottom: 26px;
}

.section-kansai .kansai .district-list .list .item {
  position: relative;
  height: 90px;
  margin-bottom: 21px;
  border: 2px solid #ae6601;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background-color: #fffdf6;
  background-image: url("../image/kansai/bg-article.png"), url("../image/ico/ico-arrow-right.png");
  background-repeat: no-repeat;
  background-position: top -8px right 46px, center right 20px;
}

.section-kansai .kansai .district-list .list .item:after {
  content: "";
  position: absolute;
  height: 3px;
  bottom: -5px;
  left: -2px;
  right: -2px;
  background-color: #d6c6b3;
}

.section-kansai .kansai .district-list .list .item:hover {
  opacity: 0.7;
}

.section-kansai .kansai .district-list .list .item .thumb {
  width: 99px;
}

.section-kansai .kansai .district-list .list .item .name {
  font-family: "A1MinchoStd-Bold";
  font-size: 24px;
  line-height: 32px;
  color: #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 26px;
  max-width: 270px;
  letter-spacing: 6px;
}

.section-kansai .kansai .district-list .list .item .name .txt-sm {
  white-space: nowrap;
  font-size: 20px;
}

.section-kansai .kansai .district-list .list .item .name .txt-lg, .section-kansai .kansai .district-list .list .item .name .txt-sm {
  display: inline-block;
}

.section-kansai .kansai .district-list .list .item .name>span {
  display: inline-block;
  max-width: 220px;
}

@media screen and (max-width: 768px) {
  .section-kansai .kansai {
    background: url("../image/kansai/bg-kansai.png") top center;
    padding-bottom: 10px;
  }
  .section-kansai .kansai .heading {
    line-height: 42px;
    text-align: center;
    background-image: url("../image/kansai/sp/bg-ttl.png");
    font-size: 22px;
    letter-spacing: 15px;
    text-indent: 15px;
  }
  .section-kansai .kansai .wrap-district-menu, .section-kansai .kansai .district-list {
    padding: 0 10px;
  }
  .section-kansai .kansai .district-menu {
    margin-top: 15px;
    margin-bottom: 15px;
    background: none;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0;
  }
  .section-kansai .kansai .district-menu .item {
    width: 50%;
    margin-right: 0;
    margin-bottom: 9px;
  }
  .section-kansai .kansai .district-menu .item>a {
    background-image: url("../image/ico/ico-arrow-down.png"), url("../image/kansai/sp/bg-district.png");
    background-repeat: no-repeat;
    background-size: auto, 100% 100%;
    background-position: top 16px right 12px, top left;
    line-height: 40px;
    font-size: 16px;
    padding-right: 12px;
    letter-spacing: 3px;
  }
  .section-kansai .kansai .district-menu .item:nth-child(even) {
    padding-left: 5px;
  }
  .section-kansai .kansai .district-menu .item:nth-child(odd) {
    padding-right: 5px;
  }
  .section-kansai .kansai .district-list {
    margin-bottom: 17px;
  }
  .section-kansai .kansai .district-list:last-child {
    margin-bottom: 0px;
  }
  .section-kansai .kansai .district-list.odd {
    background: url("../image/kansai/sp/bg-article-empty.png") no-repeat bottom 12px right/50% 64px;
  }
  .section-kansai .kansai .district-list .district-heading {
    font-size: 20px;
    background-image: url("../image/kansai/sp/bg-heading-item.png"), url("../image/kansai/sp/bg-heading-item.png");
    background-size: auto 75%;
    margin-bottom: 16px;
    letter-spacing: 2.5px;
  }
  .section-kansai .kansai .district-list .list .item {
    height: 64px;
    margin-bottom: 11px;
    background-position: center right 8px, center right 7px;
    background-size: 55px auto, 10px auto;
    display: block;
    position: relative;
  }
  .section-kansai .kansai .district-list .list .item:after {
    height: 2px;
    bottom: -3px;
    left: -2px;
    right: -2px;
  }
  .section-kansai .kansai .district-list .list .item .thumb {
    width: 60px;
    border: 1px solid #ffffff;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
  }
  .section-kansai .kansai .district-list .list .item .thumb img {
    height: 100%;
    width: auto;
  }
  .section-kansai .kansai .district-list .list .item .name {
    font-size: 17px;
    left: -12px;
    height: 100%;
    position: relative;
    z-index: 2;
    padding-left: 20px;
    padding-right: 8px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    overflow: hidden;
    letter-spacing: inherit;
    line-height: 20px;
  }
  .section-kansai .kansai .district-list .list .item .name:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 60px;
    width: 1px;
    z-index: -1;
    -webkit-box-shadow: 16px 0px 10px 10px #fffdf6;
    box-shadow: 16px 0px 10px 10px #fffdf6;
  }
  .section-kansai .kansai .district-list .list .item .name .txt-sm {
    font-size: 13px;
  }
  .section-kansai .kansai .district-list .list .item .name .txt-lg, .section-kansai .kansai .district-list .list .item .name .txt-sm {
    position: relative;
    z-index: 1;
    text-shadow: -5px -5px 10px #fffdf6, 5px 5px 10px #fffdf6;
  }
  .section-kansai .kansai .district-list .list .item .name .txt-lg:after, .section-kansai .kansai .district-list .list .item .name .txt-sm:after {
    content: attr(data-text);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    -webkit-text-stroke: 5px #fffdf6;
    z-index: -1;
    text-shadow: -5px -5px 10px #fffdf6, 5px 5px 10px #fffdf6;
  }
}

@media screen and (min-width: 568px) and (max-width: 768px) {
  .section-kansai .kansai .district-list .list .item .name {
    -webkit-box-pack: left;
    -ms-flex-pack: left;
    justify-content: left;
    padding-left: 80px;
    min-width: 100%;
  }
}

@media screen and (max-width: 567px) {
  .section-kansai .kansai .district-list .list .item .name>span {
    max-width: 110px;
    text-align: center;
  }
}

.section-detail.has-bg {
  background: url("../image/detail/bg-content.png") top center repeat-x;
}

.section-detail .heading {
  line-height: 65px;
  text-align: center;
  background: url("../image/detail/bg-ttl.png") no-repeat top center/cover;
  color: #ffffff;
  font-family: "A1MinchoStd-Bold";
  font-size: 34px;
  margin-bottom: 34px;
  letter-spacing: 6px;
}

.section-detail .heading-content {
  max-width: 600px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  background-image: url("../image/detail/bg-heading-l.png"), url("../image/detail/bg-heading-r.png");
  background-repeat: no-repeat;
  background-position: center left, center right;
  margin-bottom: 26px;
}

.section-detail .heading-content .text-large {
  font-size: 33px;
  font-family: "A1MinchoStd-Bold";
  color: #000000;
  display: block;
  margin-bottom: 5px;
  letter-spacing: 0.4em;
  text-indent: 0.4em;
}

.section-detail .heading-content .text-large.no-spacing {
  letter-spacing: normal;
}

.section-detail .heading-content .text-small {
  font-size: 17px;
  font-family: "Constantia-Bold";
  color: #d09901;
  display: block;
}

.section-detail .thumb img {
  margin-left: auto;
  margin-right: auto;
}

.section-detail .content {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}

.section-detail .content:nth-child(n + 2) {
  margin-top: 35px;
}

.section-detail .ttl_h3,
.section-detail h4 {
  color: #000000;
  font-size: 24px;
  font-family: "A1MinchoStd-Bold";
}

.img-c {
  text-align: center;
}

.section-detail .img-detail {
  margin-top: 25px;
}

.section-detail .txt-source {
  font-size: 15px;
  margin-top: 5px;
}

.section-detail .txt-source a {
  word-wrap: break-word;
}

.section-detail .content .desc {
  line-height: 1.5;
  font-size: 17px;
}

.section-detail .content .desc p:nth-child(n+2) {
  margin-top: 17px;
}

.section-detail .list-box .col-50 {
  margin-bottom: 10px;
}

.section-detail .list-box .item {
  min-height: 48px;
  border: 1px solid #d4b45d;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}

.section-detail .list-box .item .title, .section-detail .list-box .item .name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 17px;
  line-height: 26px;
}

.section-detail .list-box .item .title {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans", ヒラギノ角ゴシック, "ヒラギノ角ゴ ProN W6", Meiryo, "メイリオ", YuGothic, "游ゴシック", sans-serif;
  min-width: 136px;
  max-width: 136px;
  padding: 10px 0;
  background-color: #d4b45d;
  text-align: center;
}

.section-detail .list-box .item .title.title-spacing{
  letter-spacing: 0.4em;
  text-indent: 0.4em;
}

.section-detail .list-box .item .name {
  padding: 10px;
}

.section-detail .detail-top .thumb {
  padding-bottom: 16px;
  margin-bottom: 10px;
  background-image: url("../image/detail/bg-item-l.png"), url("../image/detail/bg-item-r.png");
  background-repeat: no-repeat;
  background-position: top 135px left, bottom right;
}

.section-detail .detail-bottom .thumb {
  margin-bottom: 26px;
  background-image: url("../image/detail/bg-item-l.png"), url("../image/detail/bg-item-r.png");
  background-repeat: no-repeat;
  background-position: top 97px left, bottom 18px right;
}

.section-detail .detail-bottom .wrap-content {
  padding-bottom: 85px;
  background-image: url("../image/detail/bg-item-l.png"), url("../image/detail/bg-item-r.png");
  background-repeat: no-repeat;
  background-position: center left, bottom 40px right;
}

.section-detail .detail-bottom:last-child .wrap-content {
  padding-bottom: 60px;
  background-position: center left, bottom right;
}

@media screen and (max-width: 768px) {
  .section-detail .heading {
    line-height: 59px;
    background-image: url("../image/detail/sp/bg-ttl.png");
    font-size: 20px;
    margin-bottom: 20px;
    letter-spacing: 3px;
  }
  .section-detail .heading-content {
    background-size: 125px auto;
    margin-bottom: 15px;
  }
  .section-detail .heading-content .text-large {
    font-size: 26px;
    margin-bottom: 3px;
  }
  .section-detail .heading-content .text-small {
    font-size: 16px;
  }
  .section-detail .thumb {
    padding-left: 22px;
    padding-right: 22px;
  }
  .section-detail .content {
    max-width: 750px;
  }
  .section-detail .list-box .col-50 {
    margin-bottom: 8px;
  }
  .section-detail .list-box .item {
    min-height: 58px;
    /* margin-bottom: 8px; */
  }
  .section-detail .list-box .item .title, .section-detail .list-box .item .name {
    font-size: 16px;
    line-height: 20px;
  }
  .section-detail .list-box .item .title {
    max-width: 107px;
    min-width: 107px;
  }
  .section-detail .list-box .item .name {
    padding-left: 13px;
    padding-right: 13px;
  }
  .section-detail .detail-top .thumb {
    padding-bottom: 16px;
    margin-bottom: 6px;
    background: none;
  }
  .section-detail .detail-bottom .thumb {
    margin-bottom: 20px;
    background: none;
  }
  .section-detail .detail-bottom .wrap-content {
    padding-bottom: 85px;
    background: none;
  }
  .section-detail .detail-bottom:last-child .wrap-content {
    padding-bottom: 35px;
    background-position: center left, bottom right;
  }
  .section-detail .ttl_h3,
  .section-detail h4 {
    margin-top: 22px;
    font-size: 20px;
  }
  .ttl_h3 {
    border-bottom: 0; 
    margin: 0 0 0;
    padding-bottom: 0;
  }
  .section-detail .img-detail {
    margin-top: 22px;
    padding-left: 22px;
    padding-right: 22px;
  }
  .section-detail .img-detail img {
    width: 100%;
  }
}


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

last modify: 20190128_都道府県別_見出し背景画像変更

/* ========================================================================= */
/* 地方ページの背景・タイトル背景 */
.section-kansai .kansai.tohoku {
  background-image: url("../image/tohoku/bg-tohoku.png");
}

.section-kansai .kansai.tohoku .heading {
  background-image: url("../image/tohoku/bg-ttl-tohoku.png");
}

.section-kansai .kansai.koshinetsu_hokuriku {
  background-image: url("../image/koshinetsu_hokuriku/bg-koshinetsu_hokuriku.png");
}

.section-kansai .kansai.koshinetsu_hokuriku .heading {
  background-image: url("../image/koshinetsu_hokuriku/bg-ttl-koshinetsu_hokuriku.png");
}

.section-kansai .kansai.kanto {
  background-image: url("../image/kanto/bg-kanto.png");
}

.section-kansai .kansai.kanto .heading {
  background-image: url("../image/kanto/bg-ttl-kanto.png");
}

.section-kansai .kansai.tokai {
  background-image: url("../image/tokai/bg-tokai.png");
}

.section-kansai .kansai.tokai .heading {
  background-image: url("../image/tokai/bg-ttl-tokai.png");
}

.section-kansai .kansai.chugoku {
  background-image: url("../image/chugoku/bg-chugoku.png");
}

.section-kansai .kansai.chugoku .heading {
  background-image: url("../image/chugoku/bg-ttl-chugoku.png");
}

.section-kansai .kansai.shikoku {
  background-image: url("../image/shikoku/bg-shikoku.png");
}

.section-kansai .kansai.shikoku .heading {
  background-image: url("../image/shikoku/bg-ttl-shikoku.png");
}

.section-kansai .kansai.kyushu {
  background-image: url("../image/kyushu/bg-kyushu.png");
}

.section-kansai .kansai.kyushu .heading {
  background-image: url("../image/kyushu/bg-ttl-kyushu.png");
}

.section-kansai .kansai.tohoku .district-menu, .section-kansai .kansai.tokai .district-menu, .section-kansai .kansai.shikoku .district-menu, .section-kansai .kansai.kyushu .district-menu {
  background-image: url("../image/cmn/bg-heading-btn3-l.png"), url("../image/cmn/bg-heading-btn3-r.png");
  background-repeat: no-repeat;
  background-position: bottom 3px left, bottom 3px right;
  background-size: 246px 30px, 246px 30px;
}

.section-kansai .kansai.koshinetsu_hokuriku .district-menu, .section-kansai .kansai.kanto .district-menu {
  background-image: url("../image/cmn/bg-heading-btn4-l.png"), url("../image/cmn/bg-heading-btn4-r.png");
  background-repeat: no-repeat;
  background-position: bottom 3px left, bottom 3px right;
  background-size: 173px 30px, 178px 30px;
}

.section-kansai .kansai.chugoku .district-menu {
  background-image: url("../image/cmn/bg-heading-btn5-l.png"), url("../image/cmn/bg-heading-btn5-r.png");
  background-repeat: no-repeat;
  background-position: bottom 3px left, bottom 3px right;
  background-size: 118px 30px, 119px 30px;
}


/* 紹介ページタイトル背景画像 */

.section-detail .heading.tohoku {
  background-image: url("../image/detail/bg-ttl-tohoku.png");
}

.section-detail .heading.koshinetsu_hokuriku {
  background-image: url("../image/detail/bg-ttl-koshinetsu_hokuriku.png");
}

.section-detail .heading.kanto {
  background-image: url("../image/detail/bg-ttl-kanto.png");
}

.section-detail .heading.tokai {
  background-image: url("../image/detail/bg-ttl-tokai.png");
}

.section-detail .heading.kansai {
  background-image: url("../image/detail/bg-ttl-kansai.png");
}

.section-title .heading.chugoku {
  background-image: url("../image/detail/bg-ttl-chugoku.png");
}

.section-title .heading.shikoku {
  background-image: url("../image/detail/bg-ttl-shikoku.png");
}

.section-title .heading.kyushu {
  background-image: url("../image/detail/bg-ttl-kyushu.png");
}

.section-detail .heading {
  background-image: url("../image/detail/bg-ttl-kansai.png");
}

@media screen and (max-width: 768px) {
  /* 地方ページの背景・タイトル背景 */
  .section-kansai .kansai.tohoku .heading {
    background-image: url("../image/tohoku/sp/bg-ttl-tohoku.png");
  }
  .section-kansai .kansai.koshinetsu_hokuriku .heading {
    background-image: url("../image/koshinetsu_hokuriku/sp/bg-ttl-koshinetsu_hokuriku.png");
  }
  .section-kansai .kansai.kanto .heading {
    background-image: url("../image/kanto/sp/bg-ttl-kanto.png");
  }
  .section-kansai .kansai.tokai .heading {
    background-image: url("../image/tokai/sp/bg-ttl-tokai.png");
  }
  .section-kansai .kansai.chugoku .heading {
    background-image: url("../image/chugoku/sp/bg-ttl-chugoku.png");
  }
  .section-kansai .kansai.shikoku .heading {
    background-image: url("../image/shikoku/sp/bg-ttl-shikoku.png");
  }
  .section-kansai .kansai.kyushu .heading {
    background-image: url("../image/kyushu/sp/bg-ttl-kyushu.png");
  }
  .section-kansai .kansai.tohoku .district-menu, .section-kansai .kansai.koshinetsu_hokuriku .district-menu, .section-kansai .kansai.kanto .district-menu, .section-kansai .kansai.tokai .district-menu, .section-kansai .kansai.chugoku .district-menu, .section-kansai .kansai.shikoku .district-menu, .section-kansai .kansai.kyushu .district-menu {
    background: none;
  }
  /* 紹介ページタイトル背景画像 */
  .section-detail .heading.tohoku {
    background-image: url("../image/detail/sp/bg-ttl-tohoku.png");
  }
  .section-detail .heading.koshinetsu_hokuriku {
    background-image: url("../image/detail/sp/bg-ttl-koshinetsu_hokuriku.png");
  }
  .section-detail .heading.kanto {
    background-image: url("../image/detail/sp/bg-ttl-kanto.png");
  }
  .section-detail .heading.tokai {
    background-image: url("../image/detail/sp/bg-ttl-tokai.png");
  }
  .section-title .heading.chugoku {
    background-image: url("../image/detail/sp/bg-ttl-chugoku.png");
  }
  .section-title .heading.shikoku {
    background-image: url("../image/detail/sp/bg-ttl-shikoku.png");
  }
  .section-title .heading.kyushu {
    background-image: url("../image/detail/sp/bg-ttl-kyushu.png");
  }
  .section-detail .heading {
    background-image: url("../image/detail/sp/bg-ttl-kansai.png");
  }
}

/*施設詳細はこちら*/
.banner_detail {
  margin: -65px auto 0;
  max-width: 500px;
  padding-bottom: 20px;
}

.banner_detail a {
  background: url(../image/cmn/bnr-detail.png) no-repeat center;
  background-size: contain;
  display: block;
  min-height: 70px;
}

.banner_detail a:hover {
  opacity: .7;
}

.banner_detail .area_txt {
  color: #fff;
  display: block;
  font-family: "A1MinchoStd-Bold";
  font-feature-settings : "palt";
  font-size: 18px;
  margin-left: calc(48% + 8px);
  padding: 10px 2px;
  text-align: center;
  text-shadow: 0 0 4px #000;
}

@media screen and (max-width: 768px) {
/*施設詳細はこちら*/
  .banner_detail {
    max-width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    width: 100%;
  }

  .banner_detail a {
    background: url(../image/cmn/bnr-detail-sp.png) no-repeat center;
    background-size: cover;
    height: 20vw;
    margin: 0 auto;
    min-height: 0;
    width: 80vw;

  }

  .banner_detail .area_txt {
    font-size: 0.70rem;
    margin-left: calc(50% - 4vw);
    padding: 6.2% 5px;
  }
  
  .section-bottom .bnr_meihaku_open{
    margin: 40px auto 0;
    text-align: center;
    width: 96%;
  }
  
  .section-bottom .bnr_meihaku_open.bnr_bus{
    margin-top: 20px;
  }
  .bnr_meihaku_open.bnr_bus_tour + .bnr_bus_tour {
    margin-bottom: 50px;
  }
  @media screen and (max-width: 767px) {
    .bnr_meihaku_open.bnr_bus_tour + .bnr_bus_tour {
      margin-bottom: 25px;
    }
  }

  .section-bottom .bnr_meihaku_open img {
    height: auto;
    max-width: 620px;
    width: 100%;
  }

  .top_topix_bnr_new_tour {
    align-items: flex-end;
    background-image: url(https://webcdn.token.co.jp/www08/token/banner_all/totsu-travel/bnr-bustour_tenga_sanmeiso_600x452.png);
    position: relative;
    height: 452px;
    margin: -20px auto 20px;
    max-width: 620px;
    width: 100%;
  }

  .top_topix_bnr_new_tour ul {
    display: block;
    height: 30.5%;
    left: 50%;
    position: absolute;
    top: 63.5%;
    transform: translateX(-50%);
    width: 65%;
  }
  
  .top_topix_bnr_new_tour ul li,
  .top_topix_bnr_new_tour li:last-child {
    margin: 0 auto 2px !important;
    width: 100%;
  }

  .top_topix_bnr_new_tour li:last-child {
    margin: 3% auto 2px !important;
  }

  .top_topix_bnr_new_tour li:last-child a {
    margin-top: 7px;
  }

  .top_topix_bnr_new_tour ul li a {
    color: transparent !important;
    display: block;
    height: 62px;
    padding: 0.4em;
    text-align: center;
    border-radius: 50px;
  }
  
  .section-bottom .tado_bnr {
    display: block;
    margin: 20px auto 40px;
  }
  
  .section-bottom .tado_bnr a .sp {
    margin: 0 auto 25px;
    width: 96%;
  }
}


/* ヘッダー・フッターRWD */
@media screen and (max-width: 767px) { 
  header .header_sec {
    height: auto;
    min-height: 2px;
    overflow-y: hidden;
    overflow: auto;
    padding: 5px;
    white-space: nowrap;
  }
  header .header_sec .header_sec_p {
    display: block !important;
  }
  footer {
    background-color: #fff;
    padding-top: 45px;
  }
  #nav .nav_wrap {
    top: 100px;
  }
}

/*************************************
コンテンツ 構造共通化
*************************************/
#wrap_inner{
  background-color: transparent;
}
.banner .container{
  margin-top: 0;
  margin-bottom: 0;
}

.section-content{
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .section-content{
    margin-top: 15px;
  } 
}

.map{
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .map{
    margin-top: 25px;
  } 
}

.section-bottom{
  margin-top: 35px;
}
@media screen and (max-width: 767px) {
  .section-content{
    margin-top: 25px;
  } 
}

.banner_return{
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 30px;
}
@media screen and (max-width: 767px) {
  .banner_return{
    margin-bottom: 24px;
    max-width: none;
    width: 80vw;
  }
}


.kansai{
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .kansai{
    margin-top: 30px;
  }
}

.section-kansai{
  margin-bottom: 50px;
  padding-bottom: 50px;
}

.section-01{
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .section-01{
    margin-top: 20px;
  }
}
.section-02{
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .section-02{
    margin-top: 25px;
  }
}
.section-03{
  margin-top: 70px;
}
@media screen and (max-width: 767px) {
  .section-03{
    margin-top: 35px;
  }
}


/*************************************
h1 対応共通化
*************************************/
.section-title .container-content{
  max-width: none;
}
.section-title .heading{
  line-height: 65px;
  text-align: center;
  background: url("../image/detail/bg-ttl-kansai.png") no-repeat top center / cover;
  color: #ffffff;
  font-family: "A1MinchoStd-Bold";
  font-size: 34px;
  margin-top: 22px;
  margin-bottom: 30px;
  letter-spacing: 6px;
}

.section-title .heading.tohoku{
  background-image: url("../image/detail/bg-ttl-tohoku.png");
}
.section-title .heading.kanto{
  background-image: url("../image/detail/bg-ttl-kanto.png");
}
.section-title .heading.koshinetsu_hokuriku{
  background-image: url("../image/detail/bg-ttl-koshinetsu_hokuriku.png");
}
.section-title .heading.tokai{
  background-image: url("../image/detail/bg-ttl-tokai.png");
}

@media screen and (max-width: 768px){
  .section-title .heading{
    line-height: 59px;
    background-image: url("../image/detail/sp/bg-ttl-kansai.png");
    font-size: 20px;
    margin-top: 16px;
    margin-bottom: 20px;
    letter-spacing: 3px;
  }
  .section-title .heading.tohoku{
    background-image: url("../image/detail/sp/bg-ttl-tohoku.png");
  }
  .section-title .heading.kanto{
    background-image: url("../image/detail/sp/bg-ttl-kanto.png");
  }
  .section-title .heading.koshinetsu_hokuriku{
    background-image: url("../image/detail/sp/bg-ttl-koshinetsu_hokuriku.png");
  }
  .section-title .heading.tokai{
    background-image: url("../image/detail/sp/bg-ttl-tokai.png");
  }
}

.section-detail .content .desc p.margin-wide{
  margin-top: 34px;
}

@media screen and (max-width: 767px) {
.section-top .container img.pc {
  display: none !important;
}
.section-top .container img.sp {
  display: block !important;
}
}

@media screen and (min-width: 767px) and (max-width: 768px) {
  .section-top .container img.pc {
  padding-left: 15px;
  padding-right: 15px;
}
}

@media screen and (max-width: 767px) {
  .section-top .container img.pc {
  padding-left: 0;
  padding-right: 0;
}
}

@media screen and (min-width: 768px) {
.section-top .container img.pc {
  display: block !important;
}
.section-top .container img.sp {
  display: none !important;
}
}

@media screen and (max-width: 767px) {
.top_topix_bnr_new_tour {
  height: 256px;
  margin: -20px auto 20px;
}

.top_topix_bnr_new_tour ul {
  height: 30.5%;
  top: 63.5%;
}

.top_topix_bnr_new_tour li:last-child a {
  margin-top: 8px;
}

.top_topix_bnr_new_tour ul li a {
  height: 35px;
}
}