@charset "UTF-8";
/*-------------------------------------------------------------------------------------------------------
*********************************************************************************************************
*********************************************************************************************************
******
****** PCスタイル
******
*********************************************************************************************************
*********************************************************************************************************
-------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------
******************************************************************************
** common
*****************************************************************************
----------------------------------------------------------------------------*/
body {
  width: 100%;
  min-width: 124rem;
}

img {
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: #231815;
}

picture {
  display: block;
}

picture img {
  display: block;
}

/*----------------------------------------------------------------------------
******************************************************************************
** common class
******************************************************************************
----------------------------------------------------------------------------*/
.sp {
  display: none !important;
}

a[href*="tel:"] {
  pointer-events: none;
}

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

.container_100 {
  width: 100%;
  padding: 0 2rem;
}

.container_100 .container {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}

.anker {
  margin-top: -10rem;
  padding-top: 10rem;
  display: block;
}

/*----------------------------------------------------------------------------
******************************************************************************
** header
******************************************************************************
----------------------------------------------------------------------------*/
.hd_100 {
  width: 100%;
  padding-top: 2.3rem;
  padding-bottom: 2.7rem;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100.fixed {
  padding-top: 2rem;
  padding-bottom: 2rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100.fixed .hd .hd_logo {
  width: 16rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100.fixed .hd .menu {
  padding-top: 21.7rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd {
  width: 100%;
}

.hd_100 .hd .hd_logo {
  width: 24rem;
  margin: 0 auto;
  position: relative;
  z-index: 102;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .hd_logo a {
  width: 100%;
  padding-top: 37.7%;
  display: block;
  background: url(../images/common/hd_logo.svg) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

@media all and (-ms-high-contrast: none) {
  .hd_100 .hd .hd_logo a {
    background: url(../images/common/hd_logo.png) no-repeat center/contain;
  }
}

.hd_100 .hd .hd_logo.active {
  width: 24rem;
}

.hd_100 .hd .hd_logo.active a {
  background: url(../images/common/hd_logo_w.svg) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

@media all and (-ms-high-contrast: none) {
  .hd_100 .hd .hd_logo.active a {
    background: url(../images/common/hd_logo_w.png) no-repeat center/contain;
  }
}

.hd_100 .hd .menu {
  width: 100%;
  padding-top: 21.7rem;
  padding-bottom: 8.3rem;
  background-color: #231815;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -101;
  -webkit-transition: .2s;
  transition: .2s;
  pointer-events: none;
}

.hd_100 .hd .menu.open {
  opacity: 1;
  z-index: 101;
  -webkit-transition: opacity .2s;
  transition: opacity .2s;
  pointer-events: auto;
}

.hd_100 .hd .menu nav {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}

.hd_100 .hd .menu nav .menu_list02 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 6.4rem;
}

.hd_100 .hd .menu nav .menu_list02 li {
  width: 42rem;
  margin-right: 7.3rem;
  border-bottom: .2rem solid #fff;
  margin-top: 3rem;
}

.hd_100 .hd .menu nav .menu_list02 li:nth-of-type(-n + 2) {
  margin-top: 0;
}

.hd_100 .hd .menu nav .menu_list02 li:nth-of-type(2n) {
  margin-right: 0;
}

.hd_100 .hd .menu nav .menu_list02 li a {
  padding-left: 2.1rem;
  padding-bottom: 2.4rem;
  display: block;
  position: relative;
}

.hd_100 .hd .menu nav .menu_list02 li a::before {
  content: "";
  width: 3.4rem;
  height: 3.4rem;
  background: url(../images/common/arrow01_w.png) no-repeat center/contain;
  position: absolute;
  top: 1.4rem;
  right: 1.8rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_list02 li a span {
  font-size: 3.6rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  display: block;
}

.hd_100 .hd .menu nav .menu_list02 li a:hover::before {
  right: .8rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_contact01 {
  width: 100%;
  margin-top: 7.3rem;
}

.hd_100 .hd .menu nav .menu_contact01 a {
  width: 29.4rem;
  height: 7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: solid .4rem #fff;
  -webkit-transition: .2s;
  transition: .2s;
  margin: 0 auto;
}

.hd_100 .hd .menu nav .menu_contact01 a span {
  font-family: "lato";
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  padding-left: 3.7rem;
  position: relative;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_contact01 a span::before {
  content: "";
  width: 2.4rem;
  height: 1.8rem;
  background: url(../images/common/mail_icon_w.png) no-repeat center/contain;
  position: absolute;
  top: .3rem;
  left: 0;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_contact01 a:hover {
  background-color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_contact01 a:hover span {
  color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_contact01 a:hover span::before {
  background: url(../images/common/mail_icon_b.png) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu nav .menu_sns01 {
  margin-top: 6rem;
}

.hd_100 .hd .menu_trigger {
  width: 5.4rem;
  height: 5.4rem;
  background-color: #231815;
  border: solid .2rem #231815;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 4rem;
  cursor: pointer;
  -webkit-transition: .2s;
  transition: .2s;
  z-index: 102;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.hd_100 .hd .menu_trigger span {
  width: 2.9rem;
  height: .2rem;
  display: block;
  background-color: #fff;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu_trigger span:nth-of-type(1) {
  top: 1.9rem;
}

.hd_100 .hd .menu_trigger span:nth-of-type(2) {
  bottom: 1.8rem;
}

.hd_100 .hd .menu_trigger:hover {
  background-color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu_trigger:hover span {
  background-color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu_trigger.active span {
  top: 50%;
  bottom: auto;
  -webkit-transition: .2s;
  transition: .2s;
}

.hd_100 .hd .menu_trigger.active span:nth-of-type(1) {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

.hd_100 .hd .menu_trigger.active span:nth-of-type(2) {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}

/*----------------------------------------------------------------------------
******************************************************************************
** top
******************************************************************************
----------------------------------------------------------------------------*/
.mv {
  padding: 0;
  margin-top: 14rem;
}

.mv .container {
  max-width: initial;
  max-width: auto;
  position: relative;
}

.mv .container .slider01 {
  width: 100%;
  position: relative;
}

.mv .container .slider01 li {
  width: 100%;
}

.mv .container .slider01 li a,
.mv .container .slider01 li span {
  width: 100%;
  padding-top: 40.625%;
  position: relative;
  display: block;
}

.mv .container .slider01 li a img,
.mv .container .slider01 li span img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.mv .container .slider01 .slick-arrow {
  width: 3.55rem;
  height: 3.55rem;
  background: url(../images/common/slick_arrow.png) no-repeat center/contain;
  position: absolute;
  top: auto;
  right: 4.2rem;
  bottom: 4.2rem;
  -webkit-transform: translate(0);
          transform: translate(0);
}

.mv .container .slider01 .slick-arrow.slick-prev {
  display: none !important;
}

.mv .container .mv_list01 {
  margin-top: -10.6rem;
  position: relative;
  z-index: 3;
}

.mv .container .slider_meter {
  position: absolute;
  bottom: 9.5rem;
  right: 10.5rem;
  z-index: 2;
}

.mv .container .slider_meter .active,
.mv .container .slider_meter .total {
  font-family: 'Lato';
  font-size: 1.4rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  display: inline-block;
}

.mv .container .slider_meter .active {
  margin-right: 1rem;
}

.mv .container .slider_meter .meter {
  width: 7rem;
  height: .2rem;
  background-color: #231815;
  display: inline-block;
  position: relative;
  top: -.5rem;
}

.mv .container .slider_meter .meter::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.mv .container .slider_meter .meter.on::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition: linear 6s;
  transition: linear 6s;
}

.mv .container .slider_meter .total {
  margin-left: 1rem;
}

.common_nav_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.common_nav_list01 li {
  display: inline-block;
  margin-right: 2.5rem;
}

.common_nav_list01 li:last-of-type {
  margin-right: 0;
}

.common_nav_list01 li a {
  display: block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_nav_list01 li a:hover {
  opacity: .7;
  -webkit-transition: .2s;
  transition: .2s;
}

/*----------------------------------------------------------------------------
******************************************************************************
** top
******************************************************************************
----------------------------------------------------------------------------*/
.common_ttl01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.common_ttl01 .en {
  font-family: 'Lato';
  font-size: 6.2rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  display: inline-block;
  padding: .7rem 1.4rem 1.1rem;
  background-color: #231815;
  margin-right: 1.8rem;
}

.common_ttl01 .jp {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.08em;
  display: inline-block;
  padding-top: .8rem;
}

.common_btn01 {
  width: 100%;
}

.common_btn01 a,
.common_btn01 span {
  font-family: 'Lato';
  font-size: 2.2rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  display: inline-block;
  position: relative;
  padding-right: 3rem;
}

.common_btn01 a::before,
.common_btn01 span::before {
  content: "";
  width: 10.4rem;
  height: 1.3rem;
  background: url(../images/common/common_btn01_arrow01.png) no-repeat center/contain;
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_btn01 a:hover,
.common_btn01 span:hover {
  -webkit-transition: .2s;
  transition: .2s;
}

.common_btn01 a:hover::before,
.common_btn01 span:hover::before {
  right: -1rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_btn01.large a,
.common_btn01.large span {
  padding-right: 4.3rem;
  padding-bottom: .2rem;
}

.common_btn01.large a::before,
.common_btn01.large span::before {
  content: "";
  width: 12.3rem;
  height: 1.4rem;
  background: url(../images/common/common_btn01_arrow02.png) no-repeat center/contain;
}

.index01 {
  padding-top: 5.4rem;
  padding-bottom: 5rem;
  overflow: hidden;
}

.index01 .container {
  max-width: 140rem;
  position: relative;
}

.index01 .container .index01_ttl01 {
  max-width: 120rem;
  margin: 0 auto;
}

.index01 .container .index01_list01 {
  max-width: 120rem;
  margin: 4rem auto 0;
}

.index01 .container .index01_slider01 {
  width: 100%;
  overflow: visible !important;
  position: relative;
  padding-bottom: 6.8rem !important;
  margin-top: 4.7rem;
}

.index01 .container .index01_slider01 .swiper-wrapper > li {
  padding-right: 2.85714286%;
}

.index01 .container .index01_slider01 .swiper-wrapper > li a .slide-box {
  width: 93.181818%;
  padding: 2.1rem 6.81818182% 1.5rem;
}

.index01 .container .index01_slider01 .swiper-button-prev,
.index01 .container .index01_slider01 .swiper-button-next {
  width: 4.8rem;
  height: 4.8rem;
  top: 11.6rem !important;
  -webkit-transform: translateY(0) !important;
          transform: translateY(0) !important;
  margin-top: 0 !important;
  left: 29.7142857%;
}

.index01 .container .index01_slider01 .swiper-button-prev::after,
.index01 .container .index01_slider01 .swiper-button-next::after {
  display: none;
}

.index01 .container .index01_slider01 .swiper-button-next {
  -webkit-transform: translateY(0) scale(-1, 1) !important;
          transform: translateY(0) scale(-1, 1) !important;
  left: auto;
  right: 29.7142857%;
}

.index01 .container .index01_slider01 .swiper-scrollbar {
  width: 120rem !important;
  height: .8rem !important;
  background-color: #231815;
  bottom: 0 !important;
  left: 50% !important;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 100;
}

.index01 .container .index01_slider01 .swiper-scrollbar .swiper-scrollbar-drag {
  background-color: #b4b0b0;
}

.index01 .container .index01_btn01 {
  width: auto;
  position: absolute;
  top: 4.2rem;
  right: 10rem;
}

.swiper02 {
  width: 100%;
  overflow: hidden !important;
  position: relative;
  padding-bottom: 4.9rem !important;
}

.swiper02 .swiper-button-prev,
.swiper02 .swiper-button-next {
  width: 4.8rem;
  height: 4.8rem;
  top: 19.3rem !important;
  -webkit-transform: translateY(0) !important;
          transform: translateY(0) !important;
  margin-top: 0 !important;
  left: 1.8rem;
}

.swiper02 .swiper-button-prev::after,
.swiper02 .swiper-button-next::after {
  display: none;
}

.swiper02 .swiper-button-next {
  -webkit-transform: translateY(0) scale(-1, 1) !important;
          transform: translateY(0) scale(-1, 1) !important;
  left: auto;
  right: 1.8rem;
}

.swiper02 .swiper-scrollbar {
  width: 120rem !important;
  height: .8rem !important;
  background-color: #231815;
  bottom: 0 !important;
  left: 50% !important;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 100;
}

.swiper02 .swiper-scrollbar .swiper-scrollbar-drag {
  background-color: #b4b0b0;
}

.common_news_list01 {
  width: 100%;
}

.common_news_list01 > li {
  width: 100%;
}

.common_news_list01 > li a {
  display: block;
}

.common_news_list01 > li a .slide-img {
  width: 100%;
}

.common_news_list01 > li a .slide-img figure {
  width: 100%;
  padding-top: 63.63636363%;
  position: relative;
  overflow: hidden;
}

.common_news_list01 > li a .slide-img figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .4s;
  transition: .4s;
}

.common_news_list01 > li a .slide-box {
  width: 41rem;
  margin: -2.5rem auto 0;
  background-color: #f6f6f6;
  padding: 2.1rem 3rem 1.5rem;
  position: relative;
  z-index: 2;
}

.common_news_list01 > li a .slide-box .day {
  width: 100%;
  font-family: "lato";
  color: #988a87;
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.1em;
}

.common_news_list01 > li a .slide-box .ttl {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-top: 0;
}

.common_news_list01 > li a .slide-box .list01 {
  margin-top: .9rem;
}

.common_news_list01 > li a:hover .slide-img figure img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: .4s;
  transition: .4s;
}

.common_news_tag_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.common_news_tag_list01 li {
  display: inline-block;
  margin-right: .7rem;
}

.common_news_tag_list01 li a {
  border: solid .3rem #231815;
  background-color: #fff;
  display: block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list01 li a span {
  font-family: "lato";
  font-size: 2.2rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  padding: .8rem 1.4rem .6rem;
  display: inline-block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list01 li a:hover {
  background-color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list01 li a:hover span {
  color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list02 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.common_news_tag_list02 li {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 1rem;
}

.common_news_tag_list02 li span,
.common_news_tag_list02 li a {
  font-family: "lato";
  font-size: 1.4rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  border: solid .1rem #231815;
  background-color: #231815;
  padding: .7rem .9rem;
  display: block;
  cursor: pointer;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list02 li span:hover,
.common_news_tag_list02 li a:hover {
  color: #231815;
  background-color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_news_tag_list02.small li {
  display: inline-block;
  margin-right: .7rem;
  margin-bottom: .7rem;
}

.common_news_tag_list02.small li span,
.common_news_tag_list02.small li a {
  font-size: 1.2rem;
  padding: .5rem .5rem;
}

.index02 {
  padding-top: 11.1rem;
  padding-bottom: 5rem;
}

.index02 .container {
  max-width: 157rem;
}

.index02 .container .index02_ttl01 {
  max-width: 120rem;
  margin: 0 auto;
}

.index02 .container .index02_ttl01 .en {
  letter-spacing: 0.05em;
}

.index02 .container .index02_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 7rem;
}

.index02 .container .index02_list01 li {
  width: 31.5923567%;
}

.index02 .container .index02_list01 li a {
  width: 100%;
  display: block;
  -webkit-transition: .2s;
  transition: .2s;
}

.index02 .container .index02_list01 li a .list01_img01 {
  width: 100%;
  padding-top: 63.7096774%;
  position: relative;
  overflow: hidden;
  margin-top: -.7rem;
}

.index02 .container .index02_list01 li a .list01_img01 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .6s;
  transition: .6s;
}

.index02 .container .index02_list01 li a .list01_txt01 {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.1em;
  margin-top: 2.2rem;
  text-align: center;
}

.index02 .container .index02_list01 li a .list01_btn01 {
  text-align: right;
  margin-top: .3rem;
}

.index02 .container .index02_list01 li a .list01_btn01 span:hover {
  pointer-events: none;
}

.index02 .container .index02_list01 li a:hover {
  -webkit-transition: .2s;
  transition: .2s;
}

.index02 .container .index02_list01 li a:hover .list01_ttl01 .en::before {
  -webkit-animation: rotate 10s linear 0s infinite;
          animation: rotate 10s linear 0s infinite;
}

.index02 .container .index02_list01 li a:hover .list01_img01 img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: .6s;
  transition: .6s;
}

.index02 .container .index02_list01 li a:hover .list01_btn01 span:before {
  right: -1rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.index02 .container .index02_btn01 {
  margin-top: 6.5rem;
}

.common_course_ttl01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.common_course_ttl01 .en {
  width: 11.5rem;
  height: 11.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}

.common_course_ttl01 .en::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.common_course_ttl01 .en.what::before {
  background: url(../images/top/index02_what02.svg) no-repeat center/contain;
}

@media all and (-ms-high-contrast: none) {
  .common_course_ttl01 .en.what::before {
    background: url(../images/top/index02_what02.png) no-repeat center/contain;
  }
}

.common_course_ttl01 .en.who::before {
  background: url(../images/top/index02_who02.svg) no-repeat center/contain;
}

@media all and (-ms-high-contrast: none) {
  .common_course_ttl01 .en.who::before {
    background: url(../images/top/index02_who02.png) no-repeat center/contain;
  }
}

.common_course_ttl01 .en.how::before {
  background: url(../images/top/index02_how02.svg) no-repeat center/contain;
}

@media all and (-ms-high-contrast: none) {
  .common_course_ttl01 .en.how::before {
    background: url(../images/top/index02_how02.png) no-repeat center/contain;
  }
}

.common_course_ttl01 .jp {
  width: calc(100% - 14rem);
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  padding-top: 2.4rem;
  padding-bottom: 2.2rem;
  position: relative;
}

.common_course_ttl01 .jp::before {
  content: "";
  width: 107%;
  max-width: 108.6rem;
  height: .3rem;
  background-color: #231815;
  position: absolute;
  bottom: 0;
  right: 0;
}

@-webkit-keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

.common_btn02 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.common_btn02 a,
.common_btn02 > span {
  min-width: 25.2rem;
  height: 6rem;
  margin: 0 auto;
  border: solid .3rem #231815;
  padding: 1rem 4.1rem 1.2rem;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: .2s;
  transition: .2s;
  cursor: pointer;
}

.common_btn02 a span,
.common_btn02 > span span {
  font-family: "lato";
  font-size: 2.2rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  display: inline-block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_btn02 a span.jp,
.common_btn02 > span span.jp {
  font-family: YakuHanJP, "Noto Sans JP";
  font-weight: 700;
  letter-spacing: 0.1em;
  padding-bottom: .4rem;
}

.common_btn02 a:hover,
.common_btn02 > span:hover {
  background-color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_btn02 a:hover > span,
.common_btn02 > span:hover > span {
  color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.index03 {
  padding-top: 8.9rem;
  padding-bottom: 7rem;
}

.index03 .container .index03_ttl01 .en {
  padding-right: .4rem;
}

.index03 .container .index03_block01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 10rem 0 6rem;
}

.index03 .container .index03_block01 .block01_box {
  width: 48.1rem;
}

.index03 .container .index03_block01 .block01_box.block01_box01 {
  margin-top: 4.3rem;
}

.index03 .container .index03_block01 .block01_box.block01_box01 a {
  padding-top: 4rem;
}

.index03 .container .index03_block01 .block01_box.block01_box02 {
  margin-top: -7.3rem;
}

.index03 .container .index03_block01 .block01_box.block01_box02 a {
  padding-top: 5rem;
}

.index03 .container .index03_block01 .block01_box.block01_box02 a .box_ttl01 {
  padding-top: 1.3rem;
  right: 2.8rem;
}

.index03 .container .index03_block01 .block01_box a {
  width: 100%;
  display: block;
  padding-left: 4rem;
  position: relative;
}

.index03 .container .index03_block01 .block01_box a .box_ttl01 {
  padding: 1.7rem .8rem .9rem .6rem;
  border-right: solid .3rem #221614;
  border-left: solid .3rem #221614;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 3rem;
  z-index: 2;
}

.index03 .container .index03_block01 .block01_box a .box_ttl01 span {
  font-size: 2.939rem;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  letter-spacing: 0.1em;
  display: inline-block;
}

.index03 .container .index03_block01 .block01_box a .box_img01 {
  width: 100%;
  padding-top: 95.2380952%;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.index03 .container .index03_block01 .block01_box a .box_img01 img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: .6s;
  transition: .6s;
}

.index03 .container .index03_block01 .block01_box a .box_inner01 {
  width: 35rem;
  padding: 2.5rem 3.2rem 2.8rem;
  background-color: #f6f6f6;
  margin-top: -9rem;
  position: relative;
  left: -4rem;
  z-index: 2;
}

.index03 .container .index03_block01 .block01_box a .box_inner01 .inner01_txt01 {
  width: 100%;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}

.index03 .container .index03_block01 .block01_box a .box_inner01 .inner01_btn01 {
  text-align: right;
  position: relative;
  right: -1.6rem;
}

.index03 .container .index03_block01 .block01_box a:hover .box_img01 img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: .6s;
  transition: .6s;
}

.index03 .container .index03_block01 .block01_box a:hover .box_inner01 .inner01_btn01 span:before {
  right: -1rem;
  -webkit-transition: .2s;
  transition: .2s;
}

/*----------------------------------------------------------------------------
******************************************************************************
** common_institution
******************************************************************************
----------------------------------------------------------------------------*/
.no-webp .sub_mv.stay .container {
  background: url(../images/stay/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.eat .container {
  background: url(../images/eat/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.play .container {
  background: url(../images/play/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.news .container {
  background: url(../images/news/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.course .container {
  background: url(../images/course/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.access .container {
  background: url(../images/access/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.information .container {
  background: url(../images/information/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.about .container {
  background: url(../images/about/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.information .container {
  background: url(../images/information/mv_pc.jpg) no-repeat center/cover;
}

.no-webp .sub_mv.contact .container, .no-webp .sub_mv.confirm .container, .no-webp .sub_mv.thanks .container {
  background: url(../images/contact/mv_pc.jpg) no-repeat center/cover;
}

.sub_mv {
  width: 100%;
  padding: 0;
  margin-top: 14rem;
}

.sub_mv .container {
  width: 100%;
  max-width: auto;
  max-width: initial;
  height: 40rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 12.9rem;
}

.sub_mv .container .mv_ttl01 .en {
  display: block;
  text-align: center;
}

.sub_mv .container .mv_ttl01 .en span {
  font-family: "lato";
  font-size: 6.2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  background-color: #211714;
  padding: .8rem 3.4rem 1rem 4.2rem;
  display: inline-block;
}

.sub_mv .container .mv_ttl01 .jp {
  display: block;
  margin-top: 2rem;
  text-align: center;
}

.sub_mv .container .mv_ttl01 .jp span {
  font-size: 2.8rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  padding: .6rem 3rem .8rem;
  background-color: #211714;
  display: inline-block;
}

.sub_mv.stay .container {
  background: -webkit-image-set(url(../images/stay/mv_pc.webp) 1x, url(../images/stay/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/stay/mv_pc.webp) 1x, url(../images/stay/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.eat .container {
  background: -webkit-image-set(url(../images/eat/mv_pc.webp) 1x, url(../images/eat/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/eat/mv_pc.webp) 1x, url(../images/eat/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.play .container {
  background: -webkit-image-set(url(../images/play/mv_pc.webp) 1x, url(../images/play/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/play/mv_pc.webp) 1x, url(../images/play/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.news .container {
  background: -webkit-image-set(url(../images/news/mv_pc.webp) 1x, url(../images/news/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/news/mv_pc.webp) 1x, url(../images/news/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.course .container {
  background: -webkit-image-set(url(../images/course/mv_pc.webp) 1x, url(../images/course/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/course/mv_pc.webp) 1x, url(../images/course/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.access .container {
  background: -webkit-image-set(url(../images/access/mv_pc.webp) 1x, url(../images/access/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/access/mv_pc.webp) 1x, url(../images/access/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.information .container {
  background: -webkit-image-set(url(../images/information/mv_pc.webp) 1x, url(../images/information/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/information/mv_pc.webp) 1x, url(../images/information/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.about .container {
  background: -webkit-image-set(url(../images/about/mv_pc.webp) 1x, url(../images/about/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/about/mv_pc.webp) 1x, url(../images/about/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.information .container {
  background: -webkit-image-set(url(../images/information/mv_pc.webp) 1x, url(../images/information/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/information/mv_pc.webp) 1x, url(../images/information/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.sub_mv.contact .container, .sub_mv.confirm .container, .sub_mv.thanks .container {
  background: -webkit-image-set(url(../images/contact/mv_pc.webp) 1x, url(../images/contact/mv_pc@2x.webp) 2x) no-repeat center/cover;
  background: image-set(url(../images/contact/mv_pc.webp) 1x, url(../images/contact/mv_pc@2x.webp) 2x) no-repeat center/cover;
}

.breadcrumb {
  width: 100%;
  padding: 2.2rem 1rem;
}

.breadcrumb ul {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.breadcrumb ul li {
  margin-right: 3.5rem;
  position: relative;
}

.breadcrumb ul li::before {
  content: "";
  width: .8rem;
  height: .8rem;
  border-top: solid .2rem #231815;
  border-right: solid .2rem #231815;
  position: absolute;
  top: .9rem;
  right: -2rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.breadcrumb ul li:last-of-type {
  margin-right: 0;
}

.breadcrumb ul li:last-of-type::before {
  display: none;
}

.breadcrumb ul li a,
.breadcrumb ul li span {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  display: inline-block;
}

.breadcrumb ul li a {
  -webkit-transition: .2s;
  transition: .2s;
}

.breadcrumb ul li a:hover {
  opacity: .7;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_txt01 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.1em;
}

/*----------------------------------------------------------------------------
******************************************************************************
** course
******************************************************************************
----------------------------------------------------------------------------*/
.course01 {
  padding-top: 5.5rem;
  padding-bottom: 10rem;
}

.course01 .container .box01_ttl01 {
  top: 10rem;
}

.course01 .container .course01_block02 {
  margin-top: 5.9rem;
}

.course01 .container .course01_block03 {
  margin-top: 5.5rem;
}

.course_detail01 {
  padding-top: 7.6rem;
  padding-bottom: 10rem;
}

.course_detail01 .container .course_detail01_block01 .block01_box {
  margin-top: 0;
}

.course_detail01 .container .course_detail01_block01 .block01_box .box01_ttl01 .ttl01 {
  padding-left: 0;
}

.course_detail01 .container .course_detail01_list01 {
  margin-top: 8rem;
}

.course_detail01 .container .course_detail01_list01 > li {
  width: 100%;
}

.course_detail01 .container .course_detail01_list01 > li > a {
  width: 100%;
  min-height: 42rem;
  display: block;
  padding: 4rem 4rem 1rem 63rem;
  background-color: #f6f6f6;
  position: relative;
}

.course_detail01 .container .course_detail01_list01 > li > a .list01_img01 {
  width: 59rem;
  position: absolute;
  top: 0;
  left: 0;
}

.course_detail01 .container .course_detail01_list01 > li > a .list01_img01 figure {
  width: 100%;
  padding-top: 71.1864407%;
  position: relative;
}

.course_detail01 .container .course_detail01_list01 > li > a .list01_img01 figure img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.course_detail01 .container .course_detail01_list01 > li > a .list01_box02 {
  margin-top: 2rem;
}

.course_detail01 .container .course_detail01_list01 > li > a .list01_box02 .box02_btn01 {
  margin-top: 2.7rem;
  text-align: right;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 3rem 0;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time {
  padding: 4.7rem 0;
  position: relative;
  margin: 0 10rem;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time::before, .course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time::after {
  content: "";
  width: .3rem;
  height: 3.3rem;
  background: url(../images/common/moving_area_item01_pc.png) no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time::after {
  top: auto;
  bottom: 0;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 {
  width: 9.6rem;
  height: 9.6rem;
  border-radius: 50%;
  background: #c69d68;
  display: block;
  margin: 0 auto;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01 {
  display: block;
  position: relative;
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.car::before {
  content: "";
  width: 3.8rem;
  height: 2.9rem;
  background: url(../images/common/common_ttl05_icon_car.svg) no-repeat center/contain;
  position: absolute;
  top: 2.3rem;
  left: 50%;
  z-index: 2;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media all and (-ms-high-contrast: none) {
  .course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.car::before {
    background: url(../images/common/common_ttl05_icon_car.png) no-repeat center/contain;
  }
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.bicycle::before {
  content: "";
  width: 4.51288rem;
  height: 3.4404rem;
  background: url(../images/common/common_ttl05_icon_bicycle.svg) no-repeat center/contain;
  position: absolute;
  top: 1.8rem;
  left: 50%;
  z-index: 2;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media all and (-ms-high-contrast: none) {
  .course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.bicycle::before {
    background: url(../images/common/common_ttl05_icon_bicycle.png) no-repeat center/contain;
  }
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.foot::before {
  content: "";
  width: 2.73148rem;
  height: 3.80032rem;
  background: url(../images/common/common_ttl05_icon_foot.svg) no-repeat center/contain;
  position: absolute;
  top: 1.5rem;
  left: 50%;
  z-index: 2;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

@media all and (-ms-high-contrast: none) {
  .course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_img01.foot::before {
    background: url(../images/common/common_ttl05_icon_foot.png) no-repeat center/contain;
  }
}

.course_detail01 .container .course_detail01_list01 > li .moving_time_block .moving_time .time_box01 .box01_txt01 {
  width: 100%;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  padding-top: 5.7rem;
}

.course_detail01 .container .course_detail01_list01 > li:last-of-type .moving_time_block {
  display: none;
}

.course_detail01 .container .course_detail01_btn01 {
  margin-top: 8rem;
}

.common_course_block01 .block01_box {
  margin-top: 10rem;
}

.common_course_block01 .block01_box:first-of-type {
  margin-top: 2.7rem;
}

.common_course_box01 {
  width: 100%;
  position: relative;
}

.common_course_box01 .box01_ttl01 {
  width: 56rem;
  margin-left: auto;
}

.common_course_box01 .box01_inner01 {
  width: 100%;
  min-height: 32.1rem;
}

.common_course_box01 .box01_inner01 .box01_img01 {
  width: 60rem;
  position: absolute;
  top: 0;
  left: 0;
}

.common_course_box01 .box01_inner01 .box01_img01 picture {
  width: 100%;
  padding-top: 66.666666%;
  position: relative;
  display: block;
}

.common_course_box01 .box01_inner01 .box01_img01 picture img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.common_course_box01 .box01_inner01 .box01_txt01 {
  width: 56rem;
  margin-top: 1.9rem;
  margin-left: auto;
}

.common_course_box01 .box01_inner01 .box01_btn01 {
  width: 56rem;
  margin-top: 5rem;
  margin-left: auto;
}

.common_course_box01 .box01_inner02 {
  padding: 5.1rem 4rem;
  background-color: #f6f6f6;
  margin-top: 6rem;
  display: none;
}

.common_course_box01 .box01_btn01 {
  margin-top: 4rem;
}

.common_course_box01.detail .box01_inner01 {
  margin-top: 5rem;
  min-height: 29rem;
}

.common_course_box01.detail .box01_inner01 .box01_txt01 {
  margin-top: 0;
}

.common_course_box01.detail .box01_inner02 {
  margin-top: 6rem;
  padding: 4rem 4rem 6rem;
  background-color: #f6f6f6;
  display: block;
}

.common_course_box01.detail .box01_inner02 .inner02_txt01 {
  width: 100%;
  text-align: center;
  margin-top: 1.8rem;
}

.common_course_box01.detail .box01_inner02 .inner02_list01 {
  margin-top: 2.1rem;
}

.common_ttl06 {
  width: 100%;
  min-height: 5rem;
  background: url(../images/common/common_ttl06_bg.png) repeat top left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  padding-bottom: .2rem;
}

.common_ttl06 .ttl01 {
  font-size: 2.4rem;
  color: #fff;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.1em;
  display: inline-block;
}

.common_ttl05 {
  width: 100%;
  min-height: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 3rem;
  padding-bottom: .2rem;
  background: url(../images/common/common_ttl05_bg.png) repeat top left;
}

.common_ttl05 .ttl01 {
  font-size: 2.4rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
  padding-left: 4.1rem;
}

.common_ttl05 .ttl01.car {
  padding-left: 4.6rem;
}

.common_ttl05 .ttl01.car::before {
  content: "";
  width: 3.2rem;
  height: 2.5rem;
  background: url(../images/common/common_ttl05_icon_car.svg) no-repeat center/contain;
  position: absolute;
  top: .05rem;
  left: .1rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.car::before {
    background: url(../images/common/common_ttl05_icon_car.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.bicycle {
  padding-left: 4.6rem;
}

.common_ttl05 .ttl01.bicycle::before {
  content: "";
  width: 3.8rem;
  height: 2.7rem;
  background: url(../images/common/common_ttl05_icon_bicycle.svg) no-repeat center/contain;
  position: absolute;
  top: 0;
  left: -.6rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.bicycle::before {
    background: url(../images/common/common_ttl05_icon_bicycle.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.foot {
  padding-left: 4.6rem;
}

.common_ttl05 .ttl01.foot::before {
  content: "";
  width: 2.3rem;
  height: 3.2rem;
  background: url(../images/common/common_ttl05_icon_foot.svg) no-repeat center/contain;
  position: absolute;
  top: -.4rem;
  left: .4rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.foot::before {
    background: url(../images/common/common_ttl05_icon_foot.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.couple::before {
  content: "";
  width: 3rem;
  height: 3.5rem;
  background: url(../images/common/common_ttl05_icon_couple.svg) no-repeat center/contain;
  position: absolute;
  top: -.5rem;
  left: .0;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.couple::before {
    background: url(../images/common/common_ttl05_icon_couple.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.family {
  padding-left: 4.3rem;
}

.common_ttl05 .ttl01.family::before {
  content: "";
  width: 3.8rem;
  height: 3.2rem;
  background: url(../images/common/common_ttl05_icon_family.svg) no-repeat center/contain;
  position: absolute;
  top: -.2rem;
  left: -.35rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.family::before {
    background: url(../images/common/common_ttl05_icon_family.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.group {
  padding-left: 4.7rem;
}

.common_ttl05 .ttl01.group::before {
  content: "";
  width: 3.7rem;
  height: 3.3rem;
  background: url(../images/common/common_ttl05_icon_group.svg) no-repeat top left/contain;
  position: absolute;
  top: -.3rem;
  left: -.4rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.group::before {
    background: url(../images/common/common_ttl05_icon_group.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.art {
  padding-left: 4.6rem;
}

.common_ttl05 .ttl01.art::before {
  content: "";
  width: 3.5rem;
  height: 3.3rem;
  background: url(../images/common/common_ttl05_icon_art.svg) no-repeat center/contain;
  position: absolute;
  top: -.2rem;
  left: -.3rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.art::before {
    background: url(../images/common/common_ttl05_icon_art.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.activity {
  padding-left: 4.3rem;
}

.common_ttl05 .ttl01.activity::before {
  content: "";
  width: 3.8rem;
  height: 3.8rem;
  background: url(../images/common/common_ttl05_icon_activity.svg) no-repeat center/contain;
  position: absolute;
  top: -.5rem;
  left: -.8rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.activity::before {
    background: url(../images/common/common_ttl05_icon_activity.png) no-repeat center/contain;
  }
}

.common_ttl05 .ttl01.pet {
  padding-left: 4.5rem;
}

.common_ttl05 .ttl01.pet::before {
  content: "";
  width: 3.5rem;
  height: 3.1rem;
  background: url(../images/common/common_ttl05_icon_pet.svg) no-repeat center/contain;
  position: absolute;
  top: -.2rem;
  left: -.3rem;
  z-index: 2;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl05 .ttl01.pet::before {
    background: url(../images/common/common_ttl05_icon_pet.png) no-repeat center/contain;
  }
}

.common_institution01 {
  padding-top: 7.6rem;
  padding-bottom: 0;
}

.common_institution01 .container {
  position: relative;
}

.common_institution01 .container .institution01_img01 {
  width: 72rem;
}

.common_institution01 .container .institution01_img01 picture {
  width: 100%;
  padding-top: 63.888888%;
  position: relative;
}

.common_institution01 .container .institution01_img01 picture img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.common_institution01 .container .institution01_block01 {
  width: 57rem;
  padding: 3.2rem 4rem;
  background-color: #f6f6f6;
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 2;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.common_institution02 {
  padding-top: 9.8rem;
  padding-bottom: 12rem;
}

.common_institution02 .container .institution02_list01 {
  margin-top: 5.1rem;
}

.common_institution02 .container .institution02_list01 > li {
  width: 39rem;
  margin-top: 6rem;
  margin-right: 1.5rem;
}

.common_institution02 .container .institution02_list01 > li:nth-of-type(-n + 3) {
  margin-top: 0;
}

.common_institution02 .container .institution02_list01 > li:nth-of-type(3n) {
  margin-right: 0;
}

.common_institution02 .container .institution02_list01 > li > a .list01_img01 {
  width: 22rem;
}

.common_institution02 .container .institution02_list01 > li > a .list01_box01 {
  width: calc(100% - 22rem);
  padding-left: 1.5rem;
  padding-right: 0;
}

.common_institution02 .container .institution02_list01 > li > a .list01_box01 .box01_list01 li {
  margin-right: .5rem;
  margin-bottom: .5rem;
}

.common_institution02 .container .institution02_list01 > li > a .list01_box01 .box01_list01 li span {
  font-size: 1.2rem;
}

.common_institution02 .container .institution02_btn01 {
  margin-top: 10rem;
}

.common_institution03 {
  padding-top: 7.6rem;
  padding-bottom: 12rem;
}

.common_institution03 .container .institution03_list01 > li {
  width: 39rem;
  margin-top: 6rem;
  margin-right: 1.5rem;
}

.common_institution03 .container .institution03_list01 > li:nth-of-type(-n + 3) {
  margin-top: 0;
}

.common_institution03 .container .institution03_list01 > li:nth-of-type(3n) {
  margin-right: 0;
}

.common_institution03 .container .institution03_list01 > li > a .list01_img01 {
  width: 22rem;
}

.common_institution03 .container .institution03_list01 > li > a .list01_box01 {
  width: calc(100% - 22rem);
  padding-left: 1.5rem;
  padding-right: 0;
}

.common_institution03 .container .institution03_list01 > li > a .list01_box01 .box01_list01 li {
  margin-right: .5rem;
  margin-bottom: .5rem;
}

.common_institution03 .container .institution03_list01 > li > a .list01_box01 .box01_list01 li span {
  font-size: 1.2rem;
}

.common_ttl02 {
  width: 100%;
  min-height: 8rem;
  background-color: #231815;
  text-align: center;
  padding: 1rem;
}

.common_ttl02 .ttl {
  font-size: 4.2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
}

.common_ttl02 .ttl.car {
  padding-left: 8rem;
}

.common_ttl02 .ttl.car::before {
  content: "";
  width: 5.6rem;
  height: 4.4rem;
  background: url(../images/common/common_ttl05_icon_car.svg) no-repeat center/contain;
  position: absolute;
  top: .8rem;
  left: .8rem;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl02 .ttl.car::before {
    background: url(../images/common/common_ttl05_icon_car.png) no-repeat center/contain;
  }
}

.common_ttl02 .ttl.train {
  padding-left: 3.6rem;
}

.common_ttl02 .ttl.train::before {
  content: "";
  width: 3.8rem;
  height: 5.4rem;
  background: url(../images/common/common_ttl05_icon_train.svg) no-repeat center/contain;
  position: absolute;
  top: .3rem;
  left: -2.5rem;
}

@media all and (-ms-high-contrast: none) {
  .common_ttl02 .ttl.train::before {
    background: url(../images/common/common_ttl05_icon_train.png) no-repeat center/contain;
  }
}

.common_ttl02.small {
  min-height: 6rem;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1.3rem 2rem 1.3rem 2.3rem;
}

.common_ttl02.small .rute_roma {
  width: 2.4rem;
  height: 2.4rem;
  font-family: "lato";
  font-size: 1.4rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-left: .1rem;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  margin-top: .5rem;
  margin-right: 1.2rem;
}

.common_ttl02.small .ttl {
  width: calc(100% - 3.6rem);
  font-size: 2.4rem;
}

.common_institution_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.common_institution_list01 > li {
  width: 36rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 2rem;
  margin-right: 2rem;
}

.common_institution_list01 > li:nth-of-type(-n + 3) {
  margin-top: 0;
}

.common_institution_list01 > li:nth-of-type(3n) {
  margin-right: 0;
}

.common_institution_list01 > li a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.common_institution_list01 > li a:hover .list01_img01 .wrapper img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: .4s;
  transition: .4s;
}

.common_institution_list01 > li a:hover .list01_box01::before {
  right: .5rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_institution_list01 > li .list01_img01 {
  width: 20rem;
}

.common_institution_list01 > li .list01_img01 .wrapper {
  width: 100%;
  padding-top: 100%;
  display: block;
  position: relative;
  overflow: hidden;
}

.common_institution_list01 > li .list01_img01 .wrapper img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: .4s;
  transition: .4s;
}

.common_institution_list01 > li .list01_box01 {
  width: calc(100% - 20rem);
  padding: 2rem 1rem 1.9rem 1.85rem;
  background-color: #ffffff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.common_institution_list01 > li .list01_box01::before {
  content: "";
  width: 1.8rem;
  height: .7rem;
  background: url(../images/common/common_institution_list01_arrow01.png) no-repeat center/contain;
  position: absolute;
  bottom: 1rem;
  right: 1.5rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_num01 {
  width: 100%;
  padding-left: 0.15rem;
  margin-bottom: .55rem;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_num01 .rute_roma {
  width: 2.4rem;
  height: 2.4rem;
  font-family: "lato";
  font-size: 1.4rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-left: .1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #211614;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_ttl01 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.1em;
  word-break: break-all;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_txt01 {
  width: 100%;
  font-size: 1.4rem;
  color: #988a87;
  font-weight: 700;
  line-height: 1.61538462;
  letter-spacing: 0.1em;
  margin-top: .3rem;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_txt02 {
  width: 100%;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
  margin-top: .5rem;
}

.common_institution_list01 > li .list01_box01 .box01_wrapper01 .box01_list01 {
  margin-top: 1.2rem;
}

.common_institution_detail01 {
  padding-top: 7.5rem;
  padding-bottom: 10rem;
}

.common_institution_detail01 .container .institution_detail01_block01 {
  width: 100%;
  min-height: 42rem;
  display: block;
  padding: 4rem 0 1rem 63rem;
  position: relative;
}

.common_institution_detail01 .container .institution_detail01_block01 .block01_img01 {
  width: 59rem;
  position: absolute;
  top: 0;
  left: 0;
}

.common_institution_detail01 .container .institution_detail01_block01 .block01_img01 figure {
  width: 100%;
  padding-top: 71.1864407%;
  position: relative;
}

.common_institution_detail01 .container .institution_detail01_block01 .block01_img01 figure img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.common_institution_detail01 .container .institution_detail01_block01 .block01_txt01 {
  margin-top: 2rem;
}

.common_institution_detail01 .container .institution_detail01_block02 {
  margin-top: 7.3rem;
}

.common_institution_detail01 .container .institution_detail01_block02 .block02_list01 {
  width: 98rem;
  margin: 3.9rem auto 0;
}

.common_institution_detail01 .container .institution_detail01_block03 {
  margin-top: 7.2rem;
}

.common_institution_detail01 .container .institution_detail01_block03 .block03_box01 {
  margin-top: 4rem;
}

.common_institution_detail01 .container .institution_detail01_block03 .block03_box01 .box01_btn {
  width: auto;
  margin: 0 auto;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 1rem;
}

.common_institution_detail01 .container .institution_detail01_block03 .block03_box01 .box01_btn a {
  min-width: auto;
  width: 25rem;
  padding-right: 2rem;
  padding-left: 2rem;
  margin: 1rem 1rem 0 0;
}

.common_institution_detail01 .container .institution_detail01_block03 .block03_box01 .box01_btn a:nth-of-type(4n), .common_institution_detail01 .container .institution_detail01_block03 .block03_box01 .box01_btn a:last-of-type {
  margin-right: 0;
}

.common_institution_detail01 .container .institution_detail01_block03 .block03_box01 .box01_btn a span {
  font-family: YakuHanJP, "Noto Sans JP";
  font-weight: 700;
}

.common_institution_detail01 .container .institution_detail01_btn01 {
  margin: 10rem auto 0;
}

.common_institution_box01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: .5rem;
}

.common_institution_box01 .box01_ttl01 {
  font-size: 1.4rem;
  color: #988a87;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  padding-top: .8rem;
  margin-top: 1.5rem;
  margin-right: 1.5rem;
}

.common_institution_box01 .box01_list01 {
  width: auto;
  margin-top: 1.5rem;
}

.common_detail01_box01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.common_detail01_box01 .box01_ttl01 {
  font-size: 1.3rem;
  color: #988a87;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.1em;
  margin-right: 1rem;
}

.common_detail01_box01 .box01_ttl02 {
  font-family: "lato";
  font-size: 1.6rem;
  color: #988a87;
  font-weight: 900;
  line-height: 1.4;
  letter-spacing: 0.1em;
  padding-top: .5rem;
  margin-right: 1.4rem;
}

.common_detail01_box01 .box01_list01 {
  width: auto;
}

.common_detail01_box01 .box01_list01 li {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 1rem;
}

.common_detail01_box01 .box01_list01 li span {
  font-size: 1.4rem;
  padding: .8rem 1rem;
}

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

.common_ttl03 .ttl {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.3125;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
  padding-bottom: 1.4rem;
}

.common_ttl03 .ttl::before {
  content: "";
  width: 22rem;
  height: .3rem;
  background-color: #231815;
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.common_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.common_list01 dt {
  width: 30rem;
  min-height: 6rem;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.625;
  letter-spacing: 0.1em;
  padding: .5rem 3rem;
  background-color: #716d6c;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
}

.common_list01 dt:first-of-type {
  margin-top: 0;
}

.common_list01 dd {
  width: calc(100% - 30rem);
  padding: .5rem .5rem .5rem 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
  word-wrap: break-word;
}

.common_list01 dd:first-of-type {
  margin-top: 0;
}

.common_detail_btn01 {
  width: 42rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  position: relative;
}

.common_detail_btn01 .prev,
.common_detail_btn01 .next {
  position: absolute;
  top: 1.1rem;
}

.common_detail_btn01 .prev a,
.common_detail_btn01 .next a {
  width: 7.5rem;
  display: block;
  position: relative;
  padding-left: .3rem;
  padding-bottom: .3rem;
}

.common_detail_btn01 .prev a::before,
.common_detail_btn01 .next a::before {
  content: "";
  width: 9rem;
  height: 1.2rem;
  background: url(../images/common/common_btn01_arrow01.png) no-repeat center/contain;
  position: absolute;
  right: 0;
  bottom: 0;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .prev a span,
.common_detail_btn01 .next a span {
  font-family: 'Lato';
  font-size: 1.6rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  display: inline-block;
}

.common_detail_btn01 .prev a:hover,
.common_detail_btn01 .next a:hover {
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .prev a:hover::before,
.common_detail_btn01 .next a:hover::before {
  right: -1rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .prev {
  left: 0;
}

.common_detail_btn01 .prev a {
  padding-left: 0;
  padding-right: .3rem;
  text-align: right;
}

.common_detail_btn01 .prev a::before {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  right: auto;
  left: 0;
}

.common_detail_btn01 .prev a:hover::before {
  left: -1rem;
}

.common_detail_btn01 .next {
  right: 0;
}

.common_detail_btn01 .back {
  margin: 0 auto;
}

.common_detail_btn01 .back a {
  width: 18rem;
  height: 6rem;
  border: solid 0.3rem #231815;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .back a span {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .back a:hover {
  background-color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_detail_btn01 .back a:hover span {
  color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

/*----------------------------------------------------------------------------
******************************************************************************
** news
******************************************************************************
----------------------------------------------------------------------------*/
.news01 {
  padding-top: 9.3rem;
  padding-bottom: 10.1rem;
}

.news01 .container {
  max-width: 140rem;
}

.news01 .container .news01_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.news01 .container .news01_list01 > li {
  width: 31.4285714%;
  margin-top: 6rem;
  margin-right: 2.85714286%;
}

.news01 .container .news01_list01 > li:nth-of-type(3n) {
  margin-right: 0;
}

.news01 .container .news01_list01 > li:nth-of-type(-n + 3) {
  margin-top: 0;
}

.news01 .container .wp-pagenavi {
  margin-top: 10rem;
}

.wp-pagenavi {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
  width: 4rem;
  height: 4rem;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-right: .5rem;
  border: solid .1rem #231815;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: .2s;
  transition: .2s;
}

.wp-pagenavi a.current,
.wp-pagenavi span.current {
  color: #fff;
  background-color: #231815;
}

.wp-pagenavi a:hover {
  color: #fff;
  background-color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

/*----------------------------------------------------------------------------
******************************************************************************
** news_detail
******************************************************************************
----------------------------------------------------------------------------*/
.news_detail01 {
  padding-top: 6.4rem;
  padding-bottom: 10rem;
}

.news_detail01 .container {
  max-width: 100rem;
}

.news_detail01 .container .news_detail01_box01 {
  margin-top: 2rem;
}

.news_detail01 .container .news_detail01_block01 {
  margin-top: 4rem;
}

.news_detail01 .container .news_detail01_btn01 {
  margin-top: 10rem;
}

.common_ttl04 {
  width: 100%;
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.47619048;
  letter-spacing: 0.1em;
  padding-bottom: 1rem;
  border-bottom: .2rem solid #231815;
}

.editor_area {
  width: 100%;
}

.editor_area h2 {
  width: 100%;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0.1em;
  margin-top: 3rem;
}

.editor_area h3 {
  width: 100%;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.47368421;
  letter-spacing: 0.1em;
  padding-left: 2rem;
  margin-top: 3rem;
  position: relative;
}

.editor_area h3::before {
  content: "";
  width: .4rem;
  height: 105%;
  background-color: #231815;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.editor_area h4 {
  width: 100%;
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.555555;
  letter-spacing: 0.1em;
  padding: 1.2rem 3rem;
  background-color: #716d6c;
  margin-top: 3rem;
}

.editor_area p {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2.25;
  letter-spacing: 0.1em;
  margin-top: 2rem;
}

.editor_area ul {
  width: 100%;
  margin-top: 2rem;
}

.editor_area ul li {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.625;
  padding-left: 3.05rem;
  position: relative;
  margin-top: 1rem;
}

.editor_area ul li:first-of-type {
  margin-top: 0;
}

.editor_area ul li::before {
  content: "●";
  font-size: 1.4rem;
  position: absolute;
  top: 0.3rem;
  left: .05rem;
}

.editor_area figure {
  margin-top: 3rem;
}

/*----------------------------------------------------------------------------
******************************************************************************
** access
******************************************************************************
----------------------------------------------------------------------------*/
.access01 {
  padding-top: 7.4rem;
  padding-bottom: 9.8em;
}

.access01 .container .access01_block01 .box01_wrapper .box01_map01,
.access01 .container .access01_block01 .box01_wrapper .box01_map02 {
  width: 58rem;
}

.access01 .container .access01_block01 .box01_wrapper .box01_map01 .wrapper,
.access01 .container .access01_block01 .box01_wrapper .box01_map02 .wrapper {
  padding-top: 62.0689655%;
}

.access01 .container .access01_block02 {
  margin-top: 9.8rem;
}

.access01 .container .access01_block02 .box01_wrapper .box01_map01,
.access01 .container .access01_block02 .box01_wrapper .box01_map02 {
  width: 58rem;
}

.access01 .container .access01_block02 .box01_wrapper .box01_map01 .wrapper,
.access01 .container .access01_block02 .box01_wrapper .box01_map02 .wrapper {
  padding-top: 62.0689655%;
}

.common_access_block01 {
  width: 100%;
}

.common_access_block01 .block01_box01 {
  width: 100%;
  margin-top: 7.2rem;
}

.common_access_block01 .block01_box01 .box01_wrapper {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 6rem;
}

.common_access_block01 .block01_box01 .box01_wrapper .box01_map01,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map02 {
  width: 100%;
  margin-top: 0;
}

.common_access_block01 .block01_box01 .box01_wrapper .box01_map01 .wrapper,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map02 .wrapper {
  width: 100%;
  padding-top: 38.333333%;
  position: relative;
}

.common_access_block01 .block01_box01 .box01_wrapper .box01_map01 .wrapper iframe,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map01 .wrapper img,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map02 .wrapper iframe,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map02 .wrapper img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.common_access_block01 .block01_box01 .box01_wrapper .box01_map01 .map01_txt01,
.common_access_block01 .block01_box01 .box01_wrapper .box01_map02 .map01_txt01 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.625;
  margin-top: 1.35rem;
}

/*----------------------------------------------------------------------------
******************************************************************************
** information
******************************************************************************
----------------------------------------------------------------------------*/
.information01 {
  padding-top: 7.4rem;
  padding-bottom: 12rem;
}

.information01 .container .information01_block01 {
  width: 100%;
}

.information01 .container .information01_block01 .block01_img01 {
  width: 100%;
  margin-top: 6rem;
}

.information01 .container .information01_block01 .block01_box01 {
  width: 68rem;
  padding: 3.7rem 11rem;
  background-color: #f6f6f6;
  position: relative;
  z-index: 2;
  margin: -16rem auto 0;
}

.information01 .container .information01_block01 .block01_box01 ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.information01 .container .information01_block01 .block01_box01 ul li {
  width: 15rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_ttl01 {
  width: 11.2rem;
  height: 3.5rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  line-height: 1;
  letter-spacing: 0.1em;
  background-color: #716d6c;
  padding-bottom: .1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  margin: 0 auto;
  padding-left: 0.3rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 {
  width: 11.4rem;
  margin: 2rem auto 0;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper {
  width: 100%;
  padding-top: 100%;
  border-radius: 50%;
  background-color: #c69d68;
  position: relative;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper .weather {
  width: 4.2rem;
  height: 4.3rem;
  background-color: #f00;
  text-align: center;
  position: absolute;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper .weather.before {
  top: 1.6rem;
  left: 2.4rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper .weather.after {
  bottom: 1.1rem;
  right: 1.8rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper .and.sometimes {
  width: 5.3rem;
  height: 5.3rem;
  background: url(../images/common/wether_somtime.png) no-repeat center/contain;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box01 .box01_wrapper .and.after {
  width: 2.5rem;
  height: 2.2rem;
  background: url(../images/common/wether_after.png) no-repeat center/contain;
  position: absolute;
  bottom: 3rem;
  left: 2.3rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_txt01 {
  width: 100%;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 1.1rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box02 {
  width: 100%;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: .5rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box02 .max {
  font-size: 2.2rem;
  color: #c42f28;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
  padding-right: 2.4rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box02 .max::before {
  content: "/";
  color: #231815;
  position: absolute;
  top: -.1rem;
  right: .6rem;
}

.information01 .container .information01_block01 .block01_box01 ul li .list01_box02 .min {
  font-size: 2.2rem;
  color: #3b35b3;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
}

.information01 .container .information01_block02 {
  margin-top: 10.2rem;
}

.information01 .container .information01_block02 .block01_box01 {
  margin-top: 7.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.information01 .container .information01_block02 .block01_box01:nth-of-type(n + 2) {
  margin-top: 9rem;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 {
  width: 62rem;
  margin-top: 8rem;
  margin-left: 0;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 .swiper-wrapper {
  width: 100%;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 .swiper-wrapper li {
  padding-right: 0;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 .swiper-wrapper li figure {
  width: 100%;
  padding-top: 69.5652174%;
  position: relative;
  display: block;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 .swiper-wrapper li figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}

.information01 .container .information01_block02 .block01_box01 .box01_slider01 .swiper-scrollbar {
  width: 100% !important;
}

.information01 .container .information01_block02 .block01_box01 .box01_list01 {
  width: 53rem;
  margin-top: 8rem;
}

.information01 .container .information01_block02 .block01_box01 .box01_list01 dt {
  width: 14rem;
  padding-left: 2rem;
}

.information01 .container .information01_block02 .block01_box01 .box01_list01 dd {
  width: calc(100% - 14rem);
  padding-left: 2rem;
}

.information01 .container .information01_block02 .block01_box01 .box01_list01 dd p {
  line-height: 1.625;
}

/*----------------------------------------------------------------------------
******************************************************************************
** about
******************************************************************************
----------------------------------------------------------------------------*/
.common_history_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.common_history_list01 li {
  width: 23rem;
  margin-top: 1.9rem;
}

.common_history_list01 li:nth-of-type(-n + 5) {
  margin-top: 0;
}

.common_history_list01 li a {
  width: 100%;
  height: 6.3rem;
  padding: 1rem 1rem 1rem 1.6rem;
  background-color: #c69d68;
  display: block;
  position: relative;
}

.common_history_list01 li a::before {
  content: "";
  width: 2.8rem;
  height: 2.8rem;
  background: url(../images/common/arrow01_w.png) no-repeat center/contain;
  display: inline-block;
  position: absolute;
  top: 1.8rem;
  right: 1.3rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_history_list01 li a .en {
  font-family: "lato";
  font-size: 4.2rem;
  color: #fff;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.035em;
  display: inline-block;
  margin-right: .4rem;
}

.common_history_list01 li a .jp {
  font-size: 2.2rem;
  color: #fff;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  position: relative;
  top: -.4rem;
}

.common_history_list01 li a:hover::before {
  right: .3rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_about_txt01 {
  font-size: 2.2rem;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
  padding: .6rem 2rem .8rem;
  background-color: #211714;
  display: inline-block;
}

.common_history_box01 {
  width: 100%;
  padding-top: 5.1rem;
  position: relative;
}

.common_history_box01::before {
  content: "";
  width: .3rem;
  height: 100%;
  background-color: #211714;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
}

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

.common_history_box01 .box01_ttl01 {
  width: 100%;
  text-align: center;
  position: relative;
  z-index: 2;
}

.common_history_box01 .box01_ttl01::after {
  content: "";
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  background-color: #fff;
  border: solid .6rem #a87b40;
  position: absolute;
  top: -5.1rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: 1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.common_history_box01 .box01_ttl01 .ttl01 {
  height: 5.6rem;
  font-family: "lato";
  font-size: 4.2rem;
  color: #fff;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.035em;
  padding: .6rem 2.5rem;
  background-color: #c69d68;
  display: inline-block;
}

.common_history_list02 {
  width: 50%;
  position: relative;
  padding-top: 2.5rem;
  margin-top: 2.1rem;
}

.common_history_list02 .separate {
  padding-top: 3.45rem;
  position: relative;
}

.common_history_list02 .separate::before {
  content: "";
  width: 58rem;
  height: .3rem;
  background: url(../images/common/history_separate02.png) no-repeat center/contain;
  position: absolute;
  top: 1.6rem;
}

.common_history_list02::before {
  content: "";
  width: 58rem;
  height: .3rem;
  background-color: #211714;
  position: absolute;
  top: 0;
  z-index: 3;
}

.common_history_list02::after {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-color: #c69d68;
  border-radius: 50%;
  position: absolute;
  top: 0;
  z-index: 3;
}

.common_history_list02 .list01_ttl01 {
  width: 100%;
  font-size: 3rem;
  font-weight: 900;
  line-height: 1.333333;
  letter-spacing: 0.1em;
  margin-bottom: 1.8rem;
}

.common_history_list02 .list01_ttl02 {
  width: 100%;
  font-size: 2.2rem;
  font-weight: 900;
  line-height: 1.625;
  letter-spacing: 0.1em;
}

.common_history_list02 .list01_txt01 {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.25;
  letter-spacing: 0.1em;
  margin-top: .3rem;
}

.common_history_list02 .list01_img01 {
  width: 21.7rem;
  text-align: center;
}

.common_history_list02.left {
  float: left;
  margin-right: auto;
  padding-right: 3.35rem;
}

.common_history_list02.left::before {
  left: 0;
}

.common_history_list02.left::after {
  right: 0;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
}

.common_history_list02.left .separate::before {
  left: 0;
}

.common_history_list02.right {
  float: right;
  padding-left: 3.35rem;
}

.common_history_list02.right::before {
  right: 0;
}

.common_history_list02.right::after {
  left: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.common_history_list02.right .separate::before {
  right: 0;
}

.common_history_list02.fukidashi {
  width: 56rem;
  padding: 3rem;
  background-color: #f6f6f6;
}

.common_history_list02.fukidashi .list01_ttl02 {
  line-height: 1.333333;
}

.common_history_list02.fukidashi .list01_txt01 {
  margin-top: 1.5rem;
}

.common_history_list02.fukidashi::before {
  content: "";
  width: 3.4rem;
  height: 4.3rem;
  background: url(../images/common/fukidashi.png) no-repeat center/contain;
  position: absolute;
  top: .65rem;
  right: 3.85rem;
  left: auto;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  z-index: 3;
}

.common_history_list02.fukidashi::after {
  display: none;
}

.about01 {
  padding-top: 7.5rem;
  padding-bottom: 3.5rem;
}

.about01 .container .about01_block01 {
  width: 100%;
}

.about01 .container .about01_block01 .block01_img01 {
  width: 100%;
  margin-top: 6rem;
}

.about01 .container .about01_block01 .block01_img01 img {
  margin: 0 auto;
}

.about01 .container .about01_block01 .block01_ttl02 {
  margin-top: 7.2rem;
}

.about01 .container .about01_block01 .block01_txt01 {
  margin-top: 4rem;
  line-height: 2.125em;
  text-align: center;
}

.about01 .container .about01_block01 .block01_box01 {
  margin-top: 5.9rem;
  padding-top: 1.7rem;
  padding-left: 3rem;
  position: relative;
}

.about01 .container .about01_block01 .block01_box01 .box01_txt01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.about01 .container .about01_block01 .block01_box01 .box01_img01 {
  width: 43.2rem;
}

.about01 .container .about01_block01 .block01_box02 {
  margin-top: -22.9rem;
  padding-top: 2.1rem;
  padding-right: 42.7rem;
  position: relative;
  z-index: 2;
}

.about01 .container .about01_block01 .block01_box02 .box02_txt01 {
  position: absolute;
  top: 0;
  right: 41.6rem;
  z-index: 2;
}

.about01 .container .about01_block01 .block01_box02 .box02_img01 {
  width: 36.8rem;
  display: block;
  margin-left: auto;
}

.about01 .container .about01_block01 .block01_box03 {
  margin-top: -38rem;
  padding-left: 2rem;
  padding-bottom: 1.7rem;
  position: relative;
  z-index: 3;
}

.about01 .container .about01_block01 .block01_box03 .box03_txt01 {
  white-space: nowrap;
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 2;
}

.about01 .container .about01_block01 .block01_box03 .box03_img01 {
  width: 40rem;
  margin-left: auto;
}

.about01 .container .about01_block02 {
  width: 100%;
  margin-top: 14.9rem;
}

.about01 .container .about01_block02 .block02_list01 {
  margin-top: 6.1rem;
}

.about01 .container .about01_block02 .block02_box01 {
  margin-top: 11.7rem;
}

.about01 .container .about01_block02 .block02_box01 .box01_list01 {
  margin-top: 5.6rem;
}

.about01 .container .about01_block02 .block02_box01 .box01_list02 {
  margin-top: 10rem;
}

.about01 .container .about01_block02 .block02_box01 .box01_list04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box01 .box01_list04 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box01 .box01_list04 .list01_img01 {
  margin-top: -3rem;
}

.about01 .container .about01_block02 .block02_box01 .box01_list05 {
  margin-top: 6rem;
}

.about01 .container .about01_block02 .block02_box02 .box02_list01 {
  margin-top: 3.2rem;
}

.about01 .container .about01_block02 .block02_box02 .box02_list02 {
  margin-top: 7.6rem;
}

.about01 .container .about01_block02 .block02_box02 .box02_list05 {
  margin-top: 4rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list01 {
  margin-top: 3.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.about01 .container .about01_block02 .block02_box03 .box03_list01 .list01_txt01 {
  margin-bottom: 1rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list01 .list01_img01 {
  margin: 0 1.5rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list02 {
  margin-top: 8rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list03 {
  margin-top: 3rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list07 {
  margin-top: 7rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list08 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box03 .box03_list08 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list08 .list01_img01 {
  margin-top: -3rem;
}

.about01 .container .about01_block02 .block02_box03 .box03_list10 {
  margin-top: 3rem;
}

.about01 .container .about01_block02 .block02_box04 .box04_list01 {
  margin-top: 2.45rem;
}

.about01 .container .about01_block02 .block02_box04 .box04_list02 {
  margin-top: 6rem;
}

.about01 .container .about01_block02 .block02_box04 .box04_list04 {
  margin-top: 6rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list01 {
  margin-top: 3.1rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list02 {
  margin-top: 1.8rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.about01 .container .about01_block02 .block02_box05 .box05_list03 .list01_txt01 {
  margin-bottom: 1rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list03 .list01_img01 {
  margin: 0 1.5rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list07 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box05 .box05_list07 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box05 .box05_list07 .list01_img01 {
  margin-top: -3rem;
}

.about01 .container .about01_block02 .block02_box06 .box06_list01 {
  margin-top: 2.3rem;
}

.about01 .container .about01_block02 .block02_box06 .box06_list02 {
  margin-top: 5.05rem;
}

.about01 .container .about01_block02 .block02_box07 .box07_list01 {
  margin-top: 2.3rem;
}

.about01 .container .about01_block02 .block02_box07 .box07_list02 {
  margin-top: 10.4rem;
}

.about01 .container .about01_block02 .block02_box08 .box08_list01 {
  margin-top: 2rem;
}

.about01 .container .about01_block02 .block02_box08 .box08_list02 {
  margin-top: 5.2rem;
}

.about01 .container .about01_block02 .block02_box09 .box09_list01 {
  margin-top: 1.85rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box09 .box09_list01 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box09 .box09_list01 .list01_img01 {
  margin-top: -3rem;
}

.about01 .container .about01_block02 .block02_box09 .box09_list02 {
  margin-top: 5.2rem;
}

.about01 .container .about01_block02 .block02_box09 .box09_list04 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box09 .box09_list04 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box09 .box09_list04 .list01_img01 {
  margin-top: -3rem;
}

.about01 .container .about01_block02 .block02_box10 .box10_list01 {
  margin-top: 2.35rem;
}

.about01 .container .about01_block02 .block02_box10 .box10_list02 {
  margin-top: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.about01 .container .about01_block02 .block02_box10 .box10_list02 .list01_txt01 {
  width: 31.5rem;
}

.about01 .container .about01_block02 .block02_box10 .box10_list02 .list01_img01 {
  margin-top: -3rem;
}

/*----------------------------------------------------------------------------
******************************************************************************
** contact
******************************************************************************
----------------------------------------------------------------------------*/
.contact01 {
  padding-top: 5.5rem;
  padding-bottom: 10rem;
}

.contact01 .container .contact01_txt01 {
  text-align: center;
  margin-bottom: 5rem;
}

.contact01 .container .contact_form {
  padding: 4rem 10rem 8rem;
  background-color: #f6f6f6;
}

.contact01 .container .form_btn01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 8rem;
}

.contact01 .container .form_btn01 button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 40rem;
  height: 8rem;
  padding-bottom: .4rem;
  background-color: #c69d68;
  border: solid 2px #c69d68;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 1rem;
  -webkit-transition: .2s;
  transition: .2s;
}

.contact01 .container .form_btn01 button.back {
  background-color: #aaa;
  border: solid 2px #aaa;
}

.contact01 .container .form_btn01 button span {
  font-size: 2.2rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  display: inline-block;
  -webkit-transition: .2s;
  transition: .2s;
}

.contact01 .container .form_btn01 button:hover {
  background-color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.contact01 .container .form_btn01 button:hover.back {
  background-color: #fff;
}

.contact01 .container .form_btn01 button:hover.back span {
  color: #aaa;
}

.contact01 .container .form_btn01 button:hover span {
  color: #c69d68;
  -webkit-transition: .2s;
  transition: .2s;
}

.contact01.confirm dt {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.contact01.confirm dt.required::before {
  top: 3.1rem;
}

.common_form {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.common_form dt {
  width: 27rem;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-top: 3.8rem;
  border-bottom: .1rem solid #dddddd;
}

.common_form dt.required {
  position: relative;
}

.common_form dt.required::before {
  content: "必須";
  width: 7rem;
  height: 3.2rem;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  padding-bottom: .4rem;
  background-color: #b12626;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 3.9rem;
  right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.common_form dd {
  width: calc(100% - 27rem);
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding: 3rem 0 3rem  3rem;
  border-bottom: .1rem solid #dddddd;
}

.common_form dd.radio {
  padding: 3.9rem 0 3.9rem  3rem;
}

.common_form dd input[type="text"],
.common_form dd input[type="email"] {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border: solid .1rem #231815;
  padding: 1.2rem 1rem;
}

.common_form dd input[type="text"].herf,
.common_form dd input[type="email"].herf {
  width: 40rem;
}

.common_form dd textarea {
  width: 100%;
  min-height: 20rem;
  font-size: 1.6rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  border: solid .1rem #231815;
  padding: 1.2rem 1rem;
}

.common_form dd .mwform-radio-field {
  margin-right: 1.7rem;
}

.common_form dd .mwform-radio-field:last-of-type {
  margin-right: 0;
}

.common_form dd .mwform-radio-field label input {
  display: none;
}

.common_form dd .mwform-radio-field label input:checked + span::after {
  display: block;
}

.common_form dd .mwform-radio-field label span {
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-left: 2.9rem;
  position: relative;
}

.common_form dd .mwform-radio-field label span::before {
  content: "";
  width: 2rem;
  height: 2rem;
  border: solid .2rem #2d2220;
  background-color: #fff;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: .3rem;
  left: 0;
}

.common_form dd .mwform-radio-field label span::after {
  content: "";
  width: 1.2rem;
  height: 1.2rem;
  border: solid .2rem #b12626;
  background-color: #b12626;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: .7rem;
  left: .4rem;
  display: none;
}

/*----------------------------------------------------------------------------
******************************************************************************
** footer
******************************************************************************
----------------------------------------------------------------------------*/
.common_bunner_area {
  padding-bottom: 11.6rem;
}

.common_bunner_area .container .bunner01 {
  width: 100%;
  text-align: center;
}

.common_bunner_area .container .bunner01 a {
  display: inline-block;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_bunner_area .container .bunner01 a:hover {
  opacity: .7;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 {
  width: 100%;
  padding-top: 7rem;
  position: relative;
}

.ft_100::before {
  content: "";
  width: 100%;
  height: 7rem;
  background: -webkit-image-set(url(../images/common/footer_item01.webp) 1x, url(../images/common/footer_item01@2x.webp) 2x) repeat-x left;
  background: image-set(url(../images/common/footer_item01.webp) 1x, url(../images/common/footer_item01@2x.webp) 2x) repeat-x left;
  position: absolute;
  top: 0;
  left: 0;
}

.ft_100 .ft01 {
  width: 100%;
  padding: 2.1rem 0 3.9rem;
  background-color: #231815;
  -webkit-box-shadow: 0 -2.8rem 1.6rem .8rem #231815;
          box-shadow: 0 -2.8rem 1.6rem .8rem #231815;
}

.ft_100 .ft01 .ft01_block01 {
  width: 100%;
  max-width: 120rem;
  margin: 0 auto;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 3.5rem;
  padding-left: 5.8rem;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li:not(.contact) {
  margin-right: 4.6rem;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li:not(.contact) a {
  font-size: 2em;
  font-weight: 700;
  color: #fff;
  line-height: 1.4;
  letter-spacing: 0.1em;
  display: inline-block;
  padding-right: 4.8rem;
  position: relative;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li:not(.contact) a::before {
  content: "";
  width: 2.6rem;
  height: 2.6rem;
  background: url(../images/common/arrow01_w.png) no-repeat center/contain;
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li:not(.contact) a:hover::before {
  right: 0;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact {
  position: relative;
  left: -.5rem;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a {
  width: 21rem;
  height: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: solid .3rem #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a span {
  font-family: "lato";
  font-size: 1.6rem;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.08em;
  padding-left: 2.9rem;
  position: relative;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a span::before {
  content: "";
  width: 1.7rem;
  height: 1.2rem;
  background: url(../images/common/mail_icon_w.png) no-repeat center/contain;
  position: absolute;
  top: .3rem;
  left: 0;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a:hover {
  background-color: #fff;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a:hover span {
  color: #231815;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_nav01 li.contact a:hover span::before {
  background: url(../images/common/mail_icon_b.png) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

.ft_100 .ft01 .ft01_block01 .ft_sns01 {
  margin-top: 2.9rem;
}

.ft_100 .ft02 {
  width: 100%;
  text-align: center;
  padding: 2.8rem 0 3.7rem;
}

.ft_100 .ft02 .copy {
  width: 100%;
  font-size: 1.6rem;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

.common_sns_list01 {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.common_sns_list01 li a {
  width: 3.8rem;
  height: 3.8rem;
  display: block;
}

.common_sns_list01 li.instagram a {
  background: url(../images/common/instagram_icon_w.png) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

.common_sns_list01 li.instagram a:hover {
  background: url(../images/common/instagram_icon_b.png) no-repeat center/contain;
  -webkit-transition: .2s;
  transition: .2s;
}

.pagetop {
  position: fixed;
  right: 3.7rem;
  bottom: 2rem;
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
  opacity: 0;
  z-index: -100;
  pointer-events: none;
}

.pagetop.show {
  opacity: 1;
  z-index: 100;
  pointer-events: auto;
}

.pagetop span {
  font-size: 1.6rem;
  font-family: "lato";
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.08em;
  display: block;
  padding-top: 1.9rem;
  position: relative;
}

.pagetop span::before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  border-top: .2rem solid #231815;
  border-right: .2rem solid #231815;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%) rotate(-45deg);
          transform: translate(-50%) rotate(-45deg);
}

.pagetop:hover {
  opacity: 0.7;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

/**webp非対応デバイス用class
.no-webp {
  
}
**/
/**background webp
background: image-set(url(../webp) 1x, url(../@2x.webp) 2x) no-repeat center / cover;
**/
/**IE用css
@media all and (-ms-high-contrast: none) {
  
}
**/
.max_temp {
  display: inline-block !important;
}

.min_temp {
  display: inline-block !important;
}

.rain_s {
  display: block !important;
}

#weather-wrapper {
  max-width: initial;
  max-width: auto;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

#weather-wrapper #weather1 {
  overflow: hidden;
  font-size: 1em;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1 !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 15rem;
  position: relative;
}

#weather-wrapper #weather1::before {
  content: "今日";
  width: 11.2rem;
  height: 3.5rem;
  font-size: 2.4rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: .1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #716d6c;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  padding-bottom: .2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

#weather-wrapper #weather1 .w_bg {
  display: none;
}

#weather-wrapper #weather1 .sep {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
}

#weather-wrapper #weather1 .sep ul {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  margin-top: 2rem;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}

#weather-wrapper #weather1 .sep ul li {
  width: 100%;
  text-align: center;
}

#weather-wrapper #weather1 .sep ul li:nth-of-type(1) {
  display: none;
}

#weather-wrapper #weather1 .sep ul li span {
  font-size: 2.2rem;
  font-weight: 700;
  position: relative;
  padding-right: 2.2rem;
}

#weather-wrapper #weather1 .sep ul li span::before {
  content: "℃";
  position: absolute;
  bottom: 0;
  right: 0;
}

#weather-wrapper #weather1 .sep ul li span i {
  display: none;
}

#weather-wrapper #weather1 .sep ul li span.max_temp {
  color: #c42f28;
  margin-right: 1.4rem;
}

#weather-wrapper #weather1 .sep ul li span.max_temp::after {
  content: "/";
  color: #231815;
  position: absolute;
  top: -0.1rem;
  right: -1.9rem;
}

#weather-wrapper #weather1 .sep ul li span.min_temp {
  color: #3b35b3;
  margin-left: 1.4rem;
}

#weather-wrapper #weather1 .sep img {
  width: 10rem;
  display: block;
  margin: 3.5rem auto 0;
  position: relative;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

#weather-wrapper #weather1 .sep .weather-box {
  width: 100%;
  margin: 0;
  line-height: 1;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}

#weather-wrapper #weather1 .sep .weather-box .snow {
  margin: 0;
}

#weather-wrapper #weather1 .sep .weather-box .snow .rain_s {
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
}

#weather-wrapper #weather1 .sep .weather-box .snow .rain_s .d_rain {
  margin: 0;
}

#weather-wrapper #weather2 {
  -webkit-box-sizing: border-box !important;
          box-sizing: border-box !important;
  line-height: 1 !important;
  max-width: initial;
  max-width: auto;
  width: 30rem;
  position: relative;
}

#weather-wrapper #weather2 ul li {
  width: 10rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-line-pack: start;
      align-content: flex-start;
  padding: 0;
  font-size: 10px;
  text-align: center;
  margin: 0 !important;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  position: relative;
}

#weather-wrapper #weather2 ul li .date {
  width: 9rem;
  height: 2.6rem;
  font-size: 1.6rem;
  color: #fff;
  font-weight: 700;
  letter-spacing: .1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #716d6c;
  padding-bottom: .2rem;
  margin: 0 auto;
}

#weather-wrapper #weather2 ul li img {
  width: 5rem;
  display: block;
  margin: .5rem auto 0;
  position: relative;
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}

#weather-wrapper #weather2 ul li .w_temp {
  width: 100%;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  margin-top: 1.5rem;
}

#weather-wrapper #weather2 ul li .w_temp span {
  font-size: 1.6rem;
  font-weight: 700;
  position: relative;
}

#weather-wrapper #weather2 ul li .w_temp span i {
  display: none;
}

#weather-wrapper #weather2 ul li .w_temp span.max_temp {
  color: #c42f28;
  margin-right: 1rem;
}

#weather-wrapper #weather2 ul li .w_temp span.max_temp::after {
  content: "/";
  color: #231815;
  position: absolute;
  top: -0.1rem;
  right: -1.4rem;
}

#weather-wrapper #weather2 ul li .w_temp span.min_temp {
  color: #3b35b3;
  margin-left: 1rem;
}

#weather-wrapper #weather2 ul li .rain_s {
  width: 100%;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  font-size: 1.6rem !important;
  font-weight: 700;
  text-align: center;
}

#weather-wrapper #weather2 ul li .rain_s .d_rain {
  margin: 0;
}

#weather-wrapper #weather2 .weather-c-name {
  position: absolute;
  bottom: 0;
  right: .6rem;
}
/*# sourceMappingURL=pc.css.map */