@charset "UTF-8";

/* header
----------------------------------------------------------------- */
.p-header {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 99;
  /*overflow-x: hidden;
  min-height: 172px;*/
}

.is-rev .p-header .p-header__logo {
  color: #fff;
}

.p-header__inner {
  position: relative;
  width: 100%;
}

.p-header__title {
  display: none;
}

.p-header__container {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.p-header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
}

.p-header__menu {
  position: fixed;
  top: 0;
  z-index: 101;
}

.p-header__toggle {
  border: 1px solid #000;
  background-color: #fff;
}


.p-header__toggle.is-open {
  border: 1px solid #fff;
  background-color: transparent;
}

.is-rev .p-header__toggle {
  background-color: transparent;
}

.is-rev .p-header__toggle .p-header__hamburger span {
  background: #fff;
}

/* p-navHeader
 ----------------------------------------------------------------- */
.p-navHeader {
  width: 100%;
  z-index: 99;
}

.p-navHeader__title {
  display: none;
}

.p-navHeader__inner {
  position: relative;
  width: 100%;
}

.p-navHeader__container {
  position: relative;
}

.p-navHeader__logo {
  color: #fff;
  text-decoration: none;
}


/* p-gnav
-------------------------------------------------------------------------- */
.p-gnav__title {
  color: #fff;
  line-height: 1;
  font-weight: 700;
  vertical-align: baseline;
}

.p-gnav__item {
  position: relative;
}

.p-gnav__link {
  color: #fff;
  text-decoration: none;
}

.p-gnav__icon {
  font-size: 0;
  text-align: left;
}

.p-gnav__contact {
  color: #fff;
  text-align: center;
}

/* p-navMenu
 ----------------------------------------------------------------- */
.is-rev .p-navMenu .p-navMenu__link {
  color: #fff;
}

.is-rev .p-navMenu .p-navMenu__button {
  color: #fff;
}

.p-navMenu__list {
  font-weight: 700;
}

.p-navMenu__link {
  text-decoration: none;
}

.p-navMenu__button {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  cursor: pointer;
  text-decoration: none;
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 1;
  outline: none;
}

/* p-navContact
 ----------------------------------------------------------------- */
.p-navContact {
  width: 100%;
  position: absolute;
  left: 0;
  -webkit-transition: .3s ease;
  transition: .3s ease;
  z-index: 2;
  font-family: 'Noto Sans JP', sans-serif;
}

.p-navContact--nav {
  background-color: #fff;
}

.p-navContact--nav .p-navContact__name, .p-navContact--nav .p-navContact__label, .p-navContact--nav .p-navContact__number, .p-navContact--nav .p-navContact__text {
  color: #5d330d;
}

.p-navContact__inner {
  position: relative;
}

.p-navContact__list {
  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;
}

.p-navContact__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 50%;
}

.p-navContact__item:last-child {
  border-right: none;
}

.p-navContact__name {
  color: #fff;
  font-weight: 700;
  line-height: 1;
}

.p-navContact__number {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-weight: 700;
}

.p-navContact__label {
  display: inline-block;
}

.p-navContact__text {
  color: #fff;
  text-align: center;
  font-weight: 400;
}

/* p-formContact
 ----------------------------------------------------------------- */
.p-formContact {
  width: 100%;
  margin: 15px 0 30px;
  -webkit-transition: .3s ease;
  transition: .3s ease;
  z-index: 2;
  font-family: 'Noto Sans JP', sans-serif;
}

.p-formContact--nav {
  background-color: #fff;
}

.p-formContact--nav .p-formContact__name, .p-formContact--nav .p-formContact__label, .p-formContact--nav .p-formContact__number, .p-formContact--nav .p-formContact__text {
  color: #5d330d;
}

.p-formContact__inner {
  position: relative;
}

.p-formContact__list {
  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;
}

.p-formContact__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 50%;
}

.p-formContact__item:last-child {
  border-right: none;
}

.p-formContact__name {
  color: #5d330d;
  font-weight: 700;
  line-height: 1;
}

.p-formContact__number {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #5d330d;
  font-weight: 700;
}

.p-formContact__label {
  display: inline-block;
}

.p-formContact__text {
  color: #5d330d;
  text-align: center;
  font-weight: 400;
}

.p-navCompany {
  color: #fff;
  text-align: center;
}

.p-navCompany__logo {
  text-decoration: none;
}

.p-navCompany__en {
  display: block;
}

.p-navCompany__jp {
  display: inline-block;
  color: #fff;
}

.p-navCompany__tel {
  color: #fff;
}

.p-closeButton {
  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;
  padding: 0;
  margin: 0;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
  text-decoration: none;
  color: #fff;
  font-weight: 500;
  border: 1px solid #fff;
  background: none;
  outline: none;
  cursor: pointer;
}

.p-closeButton__icon {
  display: block;
  position: relative;
}

.p-closeButton__icon::after, .p-closeButton__icon::before {
  position: absolute;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  background: #fff;
}

.p-closeButton__label {
  line-height: 1;
  -webkit-transform: translateY(10%);
          transform: translateY(10%);
}

/* p-breadcrumbs
-------------------------------------------------------------------------- */
.p-breadcrumbs__item {
  position: relative;
}

.p-breadcrumbs__item::after {
  position: absolute;
  right: 0;
  top: 50%;
  content: '/';
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.p-breadcrumbs__item:last-child::after {
  display: none;
}

.p-breadcrumbs__link {
  color: #000;
  display: block;
  font-weight: normal;
  text-decoration: none;
}

/* footer
----------------------------------------------------------------- */
.p-footer {
background-color: #f8f1e3;
}

.p-footer__copy {
text-align: center;
font-weight: 700;
background-color: #fff;
}

.p-footer__coltop .f-5thimage {
width: 110px;
}

.p-footer__logo {
    text-decoration: none;
}

.p-footer__en {
    display: block;
}

.p-footer__jp {
    display: inline-block;
}

.p-footer__sponsor img {
    width: 100%;
    height: auto;
}

.p-footer__banner {
    display: block;
}

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

.p-footer__copyright {
    text-align: center;
    background-color: #fff;
}

/* p-sitemap
----------------------------------------------------------------- */
.p-sitemap__label {
    display: block;
    width: 100%;
    font-weight: 700;
    line-height: 1;
}

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

.p-sitemap__item {
    line-height: 1;
}

.p-sitemap__link {
text-decoration: none;
}

.p-sitemap__link:hover {
text-decoration: underline;
}

/* p-pageTop
----------------------------------------------------------------- */
.p-pageTop {
    display: block;
    opacity: 0;
    visibility: hidden;
    position: fixed;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    z-index: 98;
}

.p-pageTop.is-show {
    opacity: 1;
    -webkit-transition: .3s ease;
    transition: .3s ease;
    visibility: visible;
}

.p-pageTop__link {
    position: relative;
    display: block;
    background: #fff;
}

.p-pageTop__icon {
    position: absolute;
    content: '';
    display: block;
    top: 40%;
    left: 50%;
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: translate(-50%) rotate(-45deg);
            transform: translate(-50%) rotate(-45deg);
}
