@charset "utf-8";
/* CSS Document */

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

body{
  font-family: "メイリオ", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
  font-size:1.4rem;
  font-size:14px;
  line-height: 1.5
}
a{
  text-decoration: none;
  color:#333
}
img{
  max-width: 100%;
  vertical-align: top
}

/***** ▼パンくず ****/
.breadcrumb{
  padding:5px;
  /*width: min(1024px, 100%);*/
  box-sizing: border-box;
  margin: auto;
}
.breadcrumb ul.breadlist{
  width:992px;
  margin:auto;
  font-size:0;
}
.breadcrumb ul.breadlist li{
  font-size: 12px;
  display: inline-block;
}
.breadcrumb ul.breadlist li a{
  text-decoration: underline;
  position: relative
}
.breadcrumb ul.breadlist li+ li:before {
    content: "＞";
    margin: 0 10px;
}
.breadcrumb__icon {
  width: 12px;
  height: auto;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.pc .breadcrumb__item:nth-child(1) .breadcrumb__icon {
  top: calc(50% - 1px);
}
.breadcrumb__icon+span{
  margin-left: 17px;
}

/***** ▼問い合わせTEL *****/
#inqurybox{
  width:992px;
  margin:20px auto;
  background: #FFF;
  padding: 20px;
  box-sizing: border-box;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  border: 1px solid
}
.sub_tel{
  font-size:16px;
  font-weight:bold;
  color:#2572be;
  border-bottom: 1px solid #333;
  padding: 5px 0 5px 30px;
  margin-bottom: 5px;
  position: relative
}
.sub_tel:before{
  content:"";
  background: url("../image/icon_tel.png") no-repeat;
  background-size: contain;
  width:22px;
  height:22px;
  position: absolute;
  top:0;
  bottom:0;
  left:0;
  margin: auto;
}
.sub_shop{
  font-size:20px;
  font-weight:bold;
  padding: 5px 0 5px 30px;
  margin-bottom: 5px;
  position: relative
}
.sub_shop a{
  color:#2572be!important;
  text-decoration: underline
}
.sub_shop a:hover{
  opacity: 0.8
}
.sub_shop:before{
  content:"";
  background: url("../image/icon_shop.png") no-repeat;
  background-size: contain;
  width:22px;
  height:22px;
  position: absolute;
  top:0;
  bottom:0;
  left:0;
  margin: auto;
}
.tel_list{
  display: flex;
  flex-wrap: wrap
}
.tel_list>li{
  width:50%;
  padding: 5px;
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
  display: none;
}
.tel_list>li:before{
  content:"";
  margin-right: 5px;
  margin-left: 5px;
  border-top:1px dotted;
  flex-grow: 1;
  order:2
}
.tel_list>li .area{
  font-size:18px;
  font-weight:bold;
  order:1
}
.tel_list>li .phone_num{
  font-size:20px;
  font-weight:bold;
  order:3
}
.tel_list>li .phone_num span{
  color:#BF1010;
  font-size:120%
}
.notice{
  font-size:12px;
}
.data{
  margin: 10px auto;
}
.data>li{
  font-size:12px;
}


body.all .tel_list>li:not(.hotel-inq){
  display: flex
}
body.oka .tel_list>li.okinawa{
  display: flex
}
body.hok .tel_list>li.hokkaido{
  display: flex
}
body.kyu .tel_list>li.kyushu{
  display: flex
}
body.htb .tel_list>li.huistenbosch{
  display: flex
}
body.hon .tel_list>li.honshu{
  display: flex
}
body.train .tel_list>li.railway{
  display: flex
}
body.bus .tel_list>li.bustour{
  display: flex
}
body.hotel .tel_list>li.hotel-inq{
  display: flex
}
.tel_list>li.ovs-inq{
  width:100%
}
.tel_list>li.hotel-inq{
  width:100%
}
.notice-txt{
  font-weight:bold;
  color:#BF1010;
  padding-left: 1.0em;
  position: relative
}
.notice-txt:before{
  content:"※";
  position: absolute;
  top:0;
  left:0
}
.notice-txt>.notice-link{
  display: inline-block;
  margin-left: 0.5em;
  color: #333;
}
.notice-txt>.notice-link a{
  text-decoration: underline
}

#back-to-top{
	position:fixed;
	right:12px;
	bottom:12px;
	z-index:500;
}

/*----------------------------------------------
sp
-----------------------------------------------*/
.sp .breadcrumb{
  padding:1.2vw 0.5vw;
  margin-bottom: 0;
}
.sp .breadcrumb ul.breadlist{
  width:100%;
  margin:auto;
  font-size:0;
  white-space: nowrap;
  overflow: auto;
}
.sp .breadcrumb ul.breadlist li{
  font-size: 10px;
  display: inline-block;
}
.sp .breadcrumb ul.breadlist li a{
  text-decoration: underline;
  position: relative
}
.sp .breadcrumb ul.breadlist li+ li:before {
    content: "＞";
    margin: 0 0.3vw;
}
.sp #inqurybox{
  display: none
}

.sp #back-to-top img{
	width: 50px;
}

.sp .his-top__button {
  display: block;
  color: #fff;
  font-size: min((26vw / 7.5), 14px);
  font-weight: bold;
  line-height: 1;
  text-decoration: none;
  padding: calc(30em / 26) calc(20em / 26);
  background: #0057B8 url(/cmn/icon/icon_arrow_right_white.svg) no-repeat right calc(10em / 26) center / calc(48em / 26);
}


/*** パンくず（bread_crumb.js用）***/
.breadcrumb__inner {
  padding: 0 24px;
  display: grid;
  grid-auto-flow: column;
  justify-content: start;
  gap: 0 5px;
}
.breadcrumb__item + .breadcrumb__item::before {
  top: 0;
  bottom: 0;
  margin: auto 8px;
}
@media (min-width: 741px){
  .breadcrumb__inner {
    gap: 0;
  }
  .breadcrumb__item {
    align-items: center;
  }
}
