@charset "UTF-8";
.carousel {
  margin-bottom: 4rem; }

/* Since positioning the image, we need to help out the caption */
.carousel-caption {
  bottom: 3rem;
  z-index: 10; }

/* Declare heights because of positioning of img element */
.carousel-item {
  height: 42rem; }
.carousel-item img {
  height: 65rem!important;
  width: auto!important;
}  @media (min-width: 767px) {
    .carousel-item {
      height: 40rem; }
    .carousel-item img {
      width: 100%!important;
      height: auto!important;} }
  @media (min-width: 1199px) {
    .carousel-item {
      height: 45rem; }
    .carousel-item img {
      width: 100%!important;
      height: auto!important;} }

  @media (max-width: 767px) {
    .carousel-item .btn-green {
      padding: 15px 40px; } }

.carousel-item > img {
  position: absolute;
  top: -10%;
  left: 0;
  height: auto;
  width: 100%; }

.bd-placeholder-img {
  font-size: 1.125rem;
  text-anchor: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.carousel-control-prev,
.carousel-control-next {
  height: 50px;
  top: 50%;
  transform: translateY(-50%) translateX(0);
  -webkit-transform: translateY(-50%) translateX(0); }

.carousel-item .carousel-btn {
  bottom: 15%;
  right: 0;
  text-align: right;
  z-index: 2; }
@media (min-width: 767px) {
.carousel-item .carousel-btn {
  bottom: 31%;
  right: 0;
  text-align: right;
  z-index: 2; }
}

.carousel-item p.credit {
  padding: 5px 15px;
  background-color: rgba(0, 0, 0, 0.4);
  color: #fff;
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.3rem;
  font-family: 'Noto Serif JP', serif; }

@media (min-width: 768px) {
  .bd-placeholder-img-lg {
    font-size: 3.5rem; } }

.gothic {
  font-family: 'Noto Sans JP', serif;
  font-weight: 300; }

br.pc {
  display: block; }

br.sp {
  display: none; }

h1 {
  font-size: 2.8rem;
  line-height: 1.4; }

h1.logo {
  font-size: 1.4rem;
  font-weight: normal; }

h1.logo a {
  color: #333333;
  text-decoration: none; }

h1.logo a span {
  vertical-align: -2px; }

li.nav-item {
  margin-right: 1rem; }

a.nav-link {
  color: #555555; }

.relative {
  position: relative; }

.hero {
  padding-top: 6rem;
  padding-bottom: 6rem;
  margin-top: -3.6rem;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  color: #ffffff; }

.hero.preeco {
  background-color: #017709 !important; }

.hero.first {
  background-color: #947300 !important; }

.hero h1 {
  font-size: 3.2rem;
  margin-bottom: 1.6rem; }

.hero-img {
  position: absolute;
  top: -70px; }

.hero-img p {
  position: absolute;
  bottom: -10px;
  padding: 5px 10px;
  background-color: rgba(0, 0, 0, 0.3);
  font-size: 1.3rem;
  width: 100%;
  font-family: 'Noto Serif JP', serif; }

h1 {
font-family: 'Noto Serif JP', serif;
}
h2 {
font-family: 'Noto Serif JP', serif;
}
h1.hero-title {
font-size: 4rem;
line-height: 1.5;
border-bottom: 5px solid #fc000d;
padding-bottom: 1rem;
display: inline-block;
margin-bottom: 3rem;
}
h1.theme-title {
font-size: 4.5rem;
color: #001a8c;
line-height: 1.3;
margin-bottom: -1rem!important;
}
h2.style-title {
font-size: 2.5rem;
font-weight: normal;
margin-bottom: 3rem;
position: relative;
padding-left: 2rem;
}
h2.style-title span {
font-size: 3.5rem;
padding-right: 1rem;
font-weight: bold;
}
h2.style-title:before {
content: "■";
position: absolute;
top: 50%;
left: -3.5rem;
font-size: 4rem;
display: block;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
}

.blue {
color: #001a8c;
}
.white {
color: #fff;
}
.bg-blue {
background-color: #001a8c;
}
.bg-white {
background-color: #fff;
}
.bg-gray {
background-color: #f8f8f8;
}


.choice-item {
background-color: #fff;
color: #001a8c;
}
.choice-item-info {
padding: 2rem 1rem;
box-sizing: content-box;
}
.choice-item-btn {
text-align: center;
padding-top: 1rem;
}
.info-btn {
background-color: #001a8c;
color: #fff;
text-align: center;
padding: 1.5rem;
display: block;
text-decoration: none;
margin-bottom: 1rem;
}
.info-btn:hover {
color: #fff;
opacity: 0.8;
}
.info-btn:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: 1rem;
}
.tour-btn {
background-color: #d81515;
color: #fff;
text-align: center;
padding: 1.5rem;
display: block;
text-decoration: none;
margin-bottom: 1rem;
}
.tour-btn:hover {
color: #fff;
opacity: 0.8;
}
.tour-btn:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: 1rem;
}
.disabled-btn {
background-color: #999!important;
pointer-events:none;
}

.bg-blue-btn {
background-color: #001a8c;
padding: 2rem 2rem 2rem 5rem;
position: relative;
}
.bg-blue-btn:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: 1rem;
position: absolute;
display: block;
top: 50%;
left: 2rem;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
font-size: 3rem;
}
a .bg-blue-btn {
color: #fff;
text-decoration: none;
}

footer {
  background-color: #f8f8f8; }

ul.footer-link li {
  list-style: none; }
@media (max-width: 766px) {
  ul.footer-link li {
    display: block;
    width: 100%;
    text-align: left;
    margin-bottom: 1rem;
  }
}
ul.footer-link li a {
  text-decoration: none;
  color: #333;
  margin-right: 2rem; }

ul.footer-nav li {
  list-style: none;
  float: left;
  display: inline-block;
  margin-right: 1em; }

ul.footer-nav li a {
  text-decoration: none;
  color: #333; }

.gadgetDeptPref {
  display: none;
}


.gadgetDeptTitle,.gadgetDeptArea,.pageGuideTop,.pageGuideBottom {
display: none;
}
.searchEffList {
--bs-gutter-x: 1.5rem;
--bs-gutter-y: 0;
display: flex;
flex: 1 0 100%;
flex-wrap: wrap;
margin-top: calc(var(--bs-gutter-y) * -1);
margin-right: calc(var(--bs-gutter-x) / -2);
margin-left: calc(var(--bs-gutter-x) / -2);
box-sizing: border-box; }
#FORCIAGadgetlist_1Wrap {
padding-left: 1.2rem;
padding-right: 1.2rem;
}
.tour-price {
background-color: #fc9094;
color: #fff;
padding: 0.5rem 1.5rem;
font-size: 2rem;
font-weight: bold;
display: inline-block;
}
.tour-detail-title a {
color: #333;
text-decoration: none;
}
.tour-season {
background-color: #f8f8f8;
padding: 0.8rem 1.3rem;
display: inline-block;
}
.btn-pink {
background-color: #fc9094;
color: #fff;
padding: 2rem 3rem 2rem 5.5rem;
display: inline-block;
text-decoration: none;
font-size: 2rem;
position: relative;
}
.btn-pink:hover {
color: #fff;
}
.btn-pink:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: 1rem;
position: absolute;
display: block;
top: 50%;
left: 3rem;
-webkit-transform: translateY(-50%);
-moz-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
font-size: 3rem;
}
.search-title {
background-color: #D81515;
padding: 1.5rem 2rem;
color: #fff;
font-size: 2rem;
border-radius: 10px 10px 0 0;
margin-bottom: 0;
}
.search-box {
border-radius: 0 0 10px 10px;
background-color: #FAE4E6;
padding-top: 3rem;
}
.search-box dt {
background-color: #FAE4E6;
color: #D81515;
padding-top: 0.5rem;
}
a.button02 {
background-color: #CF0000!important;
}
.v-center {
display: flex;
justify-content: center;
align-items: center;
}
.img-border {
border: 1px solid #ccc;
}
a.content-footer-link {
font-size: 3rem;
color: #001a8c;
text-decoration: none;
font-family: 'Noto Serif JP', serif;
}
a.content-footer-link:before {
content: "\f105";
font-family: "Font Awesome 5 Free";
font-weight: 900;
margin-right: 1rem;
}
a.content-footer-link span {
font-size: 4rem;
margin-right: 1rem;
}

a.navbar-brand {
color: #333;
font-size: 1.5rem;
}
.footer-fixed {
position: fixed;
bottom: 20px;
right: 0;
}
.footer-fixed-inner {
width: 100%;
padding-right: 1rem;
padding-left: 1rem;
margin-right: auto;
margin-left: auto;
text-align: right;
}
.footer-fixed-sp {
position: fixed;
width: 100%;
bottom: 0;
left: 0;
}
.footer-fixed-inner-sp {
width: 100%;
padding-right: 1rem;
padding-left: 1rem;
margin-right: auto;
margin-left: auto;
text-align: right;
}
.btn-arrow {
color: #001a8c;
text-decoration: none;
}
.btn-arrow:before {
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 1.6rem;
content: "\f105";
margin-right: 12px;
color: #fff;
background: #001a8c;
margin: 0 10px 0 0;
padding: 0px 10px;
border-radius: 5px;
display: inline-block;
}

