@charset "UTF-8";
/*!===========================
このcssはSassから生成されていますので、
直接編集しないようご注意ください。
===========================*/
@keyframes zoomout {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes left-right {
  0% {
    width: 0;
    opacity: 0;
  }
  100% {
    width: 100%;
    opacity: 1;
  }
}
@keyframes left-right-out {
  0% {
    transform: scale(1, 1);
    transform-origin: right 0px;
  }
  100% {
    transform: scale(0, 1);
    transform-origin: right 0px;
  }
}
@keyframes slideup {
  0% {
    transform: translateY(50px);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes vertical {
  0% {
    height: 0px;
    bottom: auto;
    top: 50px;
  }
  49.9% {
    bottom: auto;
    top: 50px;
  }
  50% {
    height: 60px;
    top: auto;
    bottom: 0;
  }
  100% {
    height: 0px;
    top: auto;
    bottom: 0;
  }
}
/* スクロールアニメーション基本設定
============================== */
.iv, .ivo {
  transform: translateY(50px);
  opacity: 0;
}

.fadeinup {
  transition: all 0.5s ease-in;
  transform: translateY(0px);
  opacity: 1 !important;
}

html {
  font-family: "Noto Sans JP", YuGothic, "Yu Gothic", Meiryo, "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 500;
  font-feature-settings: "palt";
  font-size: 62.5%;
  color: #333;
  background-color: #fff;
  /*body:not(#top) {
     background-color: $color-base-bg-sub;
   }*/
}

body {
  line-height: 1.95;
  font-size: 1.6em;
}
a {
  color: #7A6A56;
}
a:hover {
  text-decoration: none;
  opacity: 0.8;
}

figure {
  text-align: center;
}

img {
  flex-shrink: 0;
  max-width: 100% !important;
  height: auto !important;
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  .col img {
    width: 100%;
  }
  *::-ms-backdrop,
  #pttl img {
    width: 100%;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
  font-weight: bold;
}

hr {
  clear: both;
  border: none;
  margin: 2.5em 0;
  border-top: 1px solid;
}

table:not([class]) {
  font-size: 1.4rem;
  line-height: 1.4;
  width: 100%;
  border: none;
  border-collapse: collapse;
}
table:not([class]) > tbody > tr > th,
table:not([class]) > tbody > tr > td {
  padding: 15px 20px;
  border: 1px solid #ccc;
}
table:not([class]) > tbody > tr > th {
  color: #333;
  text-align: left;
  background: #595757;
  width: 25%;
  min-width: 80px;
}
table:not([class]) .bg-green {
  color: #FFF;
  background: #3c6c59;
}
table:not([class]) .bg-gray {
  color: #333;
  background: #F7F7F7;
}
table:not([class]) .bg-orange {
  color: #FFF;
  background: #ff931e;
}
table:not([class]) .w100 {
  min-width: 100px !important;
}
table:not([class]) .w120 {
  min-width: 120px !important;
}
table:not([class]) .w150 {
  min-width: 150px !important;
}
table:not([class]) .w180 {
  min-width: 180px !important;
}
table:not([class]) .w200 {
  min-width: 200px !important;
}
table:not([class]).list > tbody > tr > th {
  width: auto;
}
table:not([class]) > caption {
  font-weight: bold;
  text-align: inherit;
}

/* ==================================================
layout
================================================== */
footer > *,
#content > * {
  padding-left: 20px;
  padding-right: 20px;
}

#fadd-wrap > *,
#content > * > *,
#breadcrumb > * {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* body:not(#top) main {
	margin: 0 auto;
	padding: 0 0 0 280px;
	max-width: $width-site;
	#content {
		max-width: 900px;
	}
	@media (max-width: 1000px) {
		padding: 0;
		#content {
			margin: 0 auto;
		}
	}
}*/
main {
  letter-spacing: 0.1em;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
main > * {
  width: 100%;
}
main > aside {
  padding: 50px 20px 50px 20px;
  width: calc(50% - 320px);
  min-width: 300px;
}
main > aside > * {
  margin-left: auto;
  max-width: 320px;
}
main > aside + #content {
  width: calc(50% + 320px);
  max-width: 960px;
  /*@media (max-width: 1280px) {
               width: calc(100% - 320px);
           }*/
}
main > aside + #content > * {
  padding-left: 20px;
}
main > aside + #content > * > * {
  /*max-width: 664px;
  margin-left: 0;*/
}
@media (max-width: 1280px) {
  main > aside + #content {
    width: calc(100% - 320px);
  }
}
@media (max-width: 900px) {
  main > aside {
    order: 1;
    width: 100%;
    padding: 50px 0 0;
    margin-bottom: 0;
  }
  main > aside > * {
    max-width: none;
  }
  main > aside + #content {
    width: 100%;
  }
}

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

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

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

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

.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignleft,
.alignright {
  max-width: 52% !important;
  margin-bottom: 10px;
}
.alignleft br + img,
.alignright br + img {
  margin-top: 5px;
}

.alignleft {
  float: left;
  margin-right: 40px;
}

.alignright {
  float: right;
  margin-left: 40px;
}

.mtop0 {
  margin-top: 0 !important;
}

.mtop05em {
  margin-top: 0.5em !important;
}

.mtop1em {
  margin-top: 1em !important;
}

.mtop2em {
  margin-top: 2em !important;
}

.mtop3em {
  margin-top: 3em !important;
}

.mtop4em {
  margin-top: 4em !important;
}

.mbottom4em {
  margin-bottom: 4em !important;
}

.ptop0 {
  padding-top: 0 !important;
}

.ptop05em {
  padding-top: 0.5em !important;
}

.ptop1em {
  padding-top: 1em !important;
}

.ptop2em {
  padding-top: 2em !important;
}

.ptop3em {
  padding-top: 3em !important;
}

.ptop4em {
  padding-top: 4em !important;
}

.col {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  position: relative;
}
.col > * {
  width: calc(50% - 20px);
}
.col > *:nth-child(n+3) {
  margin-top: 2em;
}
.col.derection-row {
  flex-direction: row;
}
.col.derection-row-re {
  flex-direction: row-reverse;
}
.col.col3::before, .col.col4::before, .col.col5::before {
  content: "";
  display: block;
  height: 0;
  order: 1;
}
.col.col3::after, .col.col4::after, .col.col5::after {
  content: "";
  display: block;
  height: 0;
}
.col.col3::before {
  width: calc(33.3333333333% - 20px);
}
.col.col3::after {
  width: calc(33.3333333333% - 20px);
}
.col.col3 > * {
  width: calc(33.3333333333% - 20px);
}
.col.col3 > *:nth-child(-n+3) {
  margin-top: 0;
}
.col.col3 > *:nth-child(n+4) {
  margin-top: 2em;
}
.col.col4::before {
  width: calc(25% - 20px);
}
.col.col4::after {
  width: calc(25% - 20px);
}
.col.col4 > * {
  width: calc(25% - 20px);
}
.col.col4 > *:nth-child(-n+4) {
  margin-top: 0;
}
.col.col4 > *:nth-child(n+5) {
  margin-top: 2em;
}
.col.col5::before {
  width: calc(20% - 20px);
}
.col.col5::after {
  width: calc(20% - 20px);
}
.col.col5 > * {
  width: calc(20% - 20px);
}
.col.col5 > *:nth-child(-n+5) {
  margin-top: 0;
}
.col.col5 > *:nth-child(n+6) {
  margin-top: 2em;
}
.col.w40w55 > *:nth-child(1) {
  width: 41%;
}
.col.w40w55 > *:nth-child(2) {
  width: 55%;
}
.col.w55w40 > *:nth-child(1) {
  width: 55%;
}
.col.w55w40 > *:nth-child(2) {
  width: 41%;
}
.btn {
  color: #7A6A56;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: left;
  letter-spacing: 0.1em;
  line-height: 1.2;
  display: inline-block;
  /*display: inline-flex;
   justify-content: flex-start;
   align-items: flex-start;
   flex-direction: column;*/
  width: 100%;
  position: relative;
  /*&::after {
  	content: '\f061';
     color: #fff;
  	font-family: "Font Awesome 5 Pro";
     font-size: 3.0rem;
  	font-weight: 900;
  	position: absolute;
  	top: calc(50% - 0.65em);
  	right: 1.0em;
     z-index: 2;
  }*/
}
.btn .ico {
  padding: 10px 40px 10px 0;
  display: inline-block;
  position: relative;
}
.btn .ico::before {
  content: "";
  background: #7A6A56;
  border-radius: 4em;
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: calc(50% - 15px);
  right: 0;
  z-index: 1;
}
.btn .ico::after {
  content: "";
  width: 18px;
  height: 7px;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: skew(45deg);
  position: absolute;
  top: calc(50% - 5px);
  right: 9px;
  z-index: 2;
}
.btn.white {
  color: #fff;
}
.btn.white .ico::before {
  background: #fff;
}
.btn.white .ico::after {
  border-bottom: 1px solid #7A6A56;
  border-right: 1px solid #7A6A56;
}
.btn.w130 {
  min-width: 130px;
}
.btn.w280 {
  min-width: 280px;
}
.btn a,
.btn input[type=submit],
.btn input[type=button] {
  /*margin: 0;
    padding: 1.2em 2.0em 1.2em 0.5em;
    color: #fff;
    text-align: center;
    text-decoration: none;
    background: $color-primary;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    cursor: pointer;
    position: relative;
    z-index: 2;*/
}
.btn input[type=submit],
.btn input[type=button] {
  border: none;
}
.btn:hover::after {
  /*right: 5px;
  transition: all .3s;*/
}

.btn-area {
  margin: 3em auto 0 !important;
  max-width: 720px !important;
}
.btn-area.right {
  text-align: right;
}
.btn-area.center {
  text-align: center;
}

.table-wrap {
  overflow-x: auto;
}

.txt-large {
  font-size: 130% !important;
}

.txt-mid {
  font-size: 90% !important;
}

.txt-small {
  font-size: 75% !important;
}

.txt-bold {
  font-weight: bold;
}

.txt-white {
  color: #fff;
}

.txt-black {
  color: #333;
}

.txt-pink {
  color: #b3002e;
}

.txt-red {
  color: #E50003;
}

.txt-skyblue {
  color: #7A6A56;
}

.txt-blue {
  color: #0766a6;
}

.txt-green {
  color: #8cc701;
}

.txt-yellow {
  color: #ffff00;
}

.list-kome li,
.list-square li,
.list-circle li,
.list-no li {
  padding: 0 0 0 30px !important;
  position: relative;
}
.list-kome li:nth-child(n+2),
.list-square li:nth-child(n+2),
.list-circle li:nth-child(n+2),
.list-no li:nth-child(n+2) {
  margin-top: 0.5em !important;
}
.list-kome li::before,
.list-square li::before,
.list-circle li::before,
.list-no li::before {
  text-align: center;
  width: 30px;
  position: absolute;
  top: 0;
  left: 0;
}

.list-kome li::before {
  content: "※";
}

.list-square li::before {
  content: "■";
  color: #7A6A56;
}

.list-circle li::before {
  content: "●";
  color: #7A6A56;
  font-size: 80%;
  top: 0.35em;
}

.list-no {
  counter-reset: no;
}
.list-no > li {
  counter-increment: no;
}
.list-no > li::before {
  content: counter(no) ".";
}

/* ==================================================
header
================================================== */
body:not(#top) header {
  /*padding: 10px 0 10px 20px;
  background: rgba(255,255,255,1.0);
  .wrap {
  	.gnav-area {
  		.nav-area-gnavi {}
  	}
  }
  @media (max-width: 950px) {}*/
}

header {
  margin: 0;
  padding: 15px 0 15px 20px;
  background: rgb(122, 106, 86);
  width: 100%;
  top: 0;
  left: 0;
  z-index: 999;
}
header a {
  text-decoration: none;
}
header * {
  transition: all 0.2s;
}
header.fixed {
  padding: 10px 0 10px 20px;
  background: rgba(122, 106, 86, 0.9);
  border: none;
  position: fixed;
  top: 0;
}
header .wrap {
  margin: 0 auto;
  padding: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1600px;
  position: relative;
}
header .wrap .title-area {
  width: 27.5%;
}
header .wrap .title-area .logo-tit {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  max-width: 200px;
}
header .wrap .title-area .logo-tit a {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
}
header .wrap .title-area .logo-tit img {
  width: 100%;
}
header .wrap .gnav-area {
  padding: 0 20px 0 0;
  width: 70%;
}
header .wrap .gnav-area .nav-area-gnavi ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
header .wrap .gnav-area .nav-area-gnavi ul li:nth-child(n+2) {
  margin: 0 0 0 1.2em;
}
header .wrap .gnav-area .nav-area-gnavi ul li a {
  color: #fff;
  font-size: 1.4rem;
}
@media (max-width: 900px) {
  header {
    padding: 0 0 0 20px;
    height: 50px;
  }
  header .wrap {
    height: 100%;
  }
  header .wrap .title-area {
    width: 70%;
  }
  header .wrap .title-area .logo-tit {
    max-width: 200px;
  }
  header .wrap .gnav-area {
    padding: 0;
    width: 30%;
  }
  header.fixed {
    padding: 0 0 0 20px;
    background: rgba(122, 106, 86, 0.9);
    position: fixed;
    top: 0;
  }
}

.drawer-hamburger {
  display: none;
}

#hmenu-wrap {
  background: none;
  display: flex;
  flex-direction: column-reverse;
  width: 100%;
  position: static;
  z-index: 9999;
}

.drawer--right .drawer-nav {
  right: -100%;
}

@media (max-width: 900px) {
  .drawer-hamburger {
    margin: 0;
    padding: 0 12px;
    background: #7A6A56;
    display: block;
    width: 30px;
    height: 50px;
    position: absolute;
    top: 0;
    right: 0 !important;
  }
  .drawer-hamburger:hover {
    background: #7A6A56;
  }
  .drawer--right.drawer-open .drawer-hamburger {
    background: #7A6A56;
    z-index: 10000;
  }
  .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon::before {
    background-color: #fff;
  }
  .drawer--right.drawer-open .drawer-hamburger .drawer-hamburger-icon::after {
    background-color: #fff;
    width: 100%;
  }
  .drawer--right.drawer-open .drawer-hamburger .sr-only .open {
    display: none;
  }
  .drawer--right.drawer-open .drawer-hamburger .sr-only .close {
    display: block;
  }
  .drawer-hamburger-icon {
    margin-top: -7px;
    background-color: #fff;
  }
  .drawer-hamburger-icon::before {
    background-color: #fff;
    top: -8px;
  }
  .drawer-hamburger-icon::after {
    background-color: #fff;
    top: 8px;
  }
  .sr-only,
  .sr-only-close {
    color: #fff;
    font-size: 1.1rem;
    clip: inherit;
    width: auto;
    height: auto;
    left: 0;
    right: 0;
    bottom: 8.5%;
  }
  .sr-only .open {
    display: block;
  }
  .sr-only .close {
    display: none;
  }
  .drawer--right .drawer-nav {
    right: -100%;
  }
  #hmenu-wrap {
    margin: 50px 0 0;
    padding: 0 0 3em;
    background: rgba(122, 106, 86, 0.95);
    display: flex;
    flex-direction: column;
    width: 100%;
    position: fixed;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    touch-action: auto !important;
  }
  #hmenu-wrap .nav-area-gnavi {
    margin: 0;
    padding: 0;
  }
  #hmenu-wrap .nav-area-gnavi .logo {
    display: block;
    text-align: center;
  }
  #hmenu-wrap .nav-area-gnavi .logo img {
    margin: 0 auto;
    width: 70%;
    max-width: 230px !important;
  }
  #hmenu-wrap .nav-area-gnavi ul {
    margin: 1em auto 0;
    display: block;
    max-width: 550px;
  }
  #hmenu-wrap .nav-area-gnavi ul li {
    padding: 0;
    font-size: 1.6rem;
    line-height: 1.2;
    text-align: left;
    width: 100%;
    position: relative;
  }
  #hmenu-wrap .nav-area-gnavi ul li a {
    padding: 1.2em 0 1.2em 35px;
    color: #fff;
    font-size: 1.6rem;
    border-bottom: 1px solid #fff;
    display: block;
  }
  #hmenu-wrap .nav-area-gnavi ul li a::before {
    content: "\f054";
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    position: absolute;
    top: calc(50% - 0.6em);
    left: 15px;
  }
  #hmenu-wrap .nav-area-gnavi ul li a:hover {
    color: inherit;
  }
  #hmenu-wrap .nav-area-gnavi ul li a:hover::after {
    display: none;
  }
  #hmenu-wrap .nav-area-gnavi ul li:nth-child(n+2) {
    margin: 0;
    padding: 0;
    border-left: none;
  }
}
/* ==================================================
footer
================================================== */
footer {
  padding: 0;
  position: relative;
}
footer a {
  text-decoration: none;
}
footer .pagetop {
  padding: 0 !important;
  display: inline-block;
  width: 70px;
  position: absolute;
  top: 40%;
  right: 2.5%;
  z-index: 997;
  transition: none;
}
footer .pagetop.fixed {
  position: fixed;
  top: inherit;
  bottom: 5.5em;
  right: 2.5%;
}
footer .footer-wrap {
  margin: 0 auto;
  padding: 0 !important;
  position: relative;
}
footer .footer-wrap .wrap {
  margin: 0 auto;
  padding: 0;
  background: #7A6A56;
  overflow: hidden;
}
footer .footer-wrap .wrap .contact-area {
  padding: 8em 20px;
  background: url("../img/common/footer-btn-bg.jpg") center center/cover no-repeat;
}
footer .footer-wrap .wrap .contact-area .contact-list {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 600px;
}
footer .footer-wrap .wrap .contact-area .contact-list .list-item:nth-child(n+2) {
  margin: 0 0 0 6em;
}
footer .footer-wrap .wrap .contact-area .contact-list .list-item .btn {
  font-size: 2rem;
}
footer .footer-wrap .wrap .fnav-area {
  margin: 0 auto;
  padding: 3em 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  max-width: 1200px;
}
footer .footer-wrap .wrap .fnav-area .fnav-wrap {
  width: 65%;
}
footer .footer-wrap .wrap .fnav-area .fnav-wrap .fnav-list {
  display: flex;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: wrap;
  max-width: 650px;
}
footer .footer-wrap .wrap .fnav-area .fnav-wrap .fnav-list .list-item {
  font-size: 1.5rem;
  line-height: 1.4;
  width: calc(25% - 10px);
}
footer .footer-wrap .wrap .fnav-area .fnav-wrap .fnav-list .list-item:nth-child(n+5) {
  margin: 0.5em 0 0;
}
footer .footer-wrap .wrap .fnav-area .fnav-wrap .fnav-list .list-item a {
  color: #fff;
}
footer .footer-wrap .wrap .fnav-area .visit-wrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 30%;
}
footer .footer-wrap .wrap .company-area {
  margin: 0 auto;
  padding: 3em 20px;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  max-width: 1200px;
  position: relative;
}
footer .footer-wrap .wrap .company-area::before {
  content: "";
  background: rgba(255, 255, 255, 0.5);
  width: 200%;
  height: 1px;
  position: absolute;
  top: 0;
  left: -50%;
}
footer .footer-wrap .wrap .company-area .company-wrap {
  width: 60%;
}
footer .footer-wrap .wrap .company-area .company-wrap .add {
  margin: 1em 0 0;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.6;
}
footer .footer-wrap .wrap .company-area .company-wrap .tel {
  font-size: 1.4rem;
  line-height: 1.6;
}
footer .footer-wrap .wrap .company-area .company-wrap .tel a {
  color: #fff;
}
footer .footer-wrap .wrap .company-area .other-wrap {
  width: 40%;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list {
  display: flex;
  justify-content: flex-end;
  align-items: stretch;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item {
  width: 20px;
  height: 20px;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item:nth-child(n+2) {
  margin: 0 0 0 15px;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item a {
  display: block;
  width: 100%;
  height: 100%;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item a.sns-x {
  background: url("../img/common/ico-sns-x.svg") center center/contain no-repeat;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item a.sns-facebook {
  background: url("../img/common/ico-sns-facebook.svg") center center/contain no-repeat;
}
footer .footer-wrap .wrap .company-area .other-wrap .sns-list .list-item a.sns-instagram {
  background: url("../img/common/ico-sns-indtagram.svg") center center/contain no-repeat;
}
footer .footer-wrap .wrap .company-area .other-wrap .copyright {
  margin: 2em 0 0;
  color: #fff;
  font-size: 1.2rem;
  text-align: right;
}
/* ==================================================
aside
================================================== */
main > aside {
  position: relative;
}

/* ==================================================
main
================================================== */
body:not(#top) #content > * {
  padding-top: 60px;
}
body:not(#top) #content > * > *:nth-child(n+2) {
  margin-top: 3em;
}
body:not(#top) #content > * h2:nth-child(n+2),
body:not(#top) #content > * h3:nth-child(n+2),
body:not(#top) #content > * h4:nth-child(n+2) {
  margin-top: 2.5em;
}
body:not(#top) #content > * h5:nth-child(n+2),
body:not(#top) #content > * h6:nth-child(n+2),
body:not(#top) #content > * p:nth-child(n+2),
body:not(#top) #content > * ul:nth-child(n+2),
body:not(#top) #content > * ol:nth-child(n+2),
body:not(#top) #content > * dl:nth-child(n+2),
body:not(#top) #content > * table:nth-child(n+2) {
  margin-top: 2em;
}
body:not(#top) #content > * h1:not([class]) {
  color: #7A6A56;
  font-size: 3.2rem;
}
body:not(#top) #content > * h2:not([class]) {
  color: #7A6A56;
  font-size: 2.8rem;
}
body:not(#top) #content > * h3:not([class]) {
  font-size: 2.4rem;
}
body:not(#top) #content > * h4:not([class]) {
  font-size: 2rem;
}
body:not(#top) #content > * h5:not([class]) {
  font-size: 1.8rem;
}
body:not(#top) #content > * ul:not([class]) > *:nth-child(n+2),
body:not(#top) #content > * ol:not([class]) > *:nth-child(n+2) {
  margin-top: 0.5em;
}
body:not(#top) #content > * ul:not([class]) > li,
body:not(#top) #content > * ol:not([class]) > li {
  position: relative;
  padding-left: 30px;
}
body:not(#top) #content > * ul:not([class]) > li::before,
body:not(#top) #content > * ol:not([class]) > li::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 30px;
  text-align: center;
}
body:not(#top) #content > * ul:not([class]) > li::before {
  content: "●";
  top: 0.6em;
  font-size: 8px;
}
body:not(#top) #content > * ol:not([class]) {
  counter-reset: no;
}
body:not(#top) #content > * ol:not([class]) > li {
  counter-increment: no;
}
body:not(#top) #content > * ol:not([class]) > li::before {
  content: counter(no) ".";
}

#breadcrumb {
  padding-top: 1em !important;
  position: relative;
  z-index: 10;
}
#breadcrumb ul.breadcrumb-list {
  padding: 0.5em 0;
  font-size: 1.2rem;
  letter-spacing: 0.1em;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex-wrap: wrap;
}
#breadcrumb li {
  color: #000;
  display: inline-block;
}
#breadcrumb li a {
  color: #7A6A56;
}
#breadcrumb li:not(:last-child)::after {
  content: "";
  display: inline-block;
  position: relative;
  top: -0.2em;
  width: 0.4em;
  height: 0.4em;
  margin: 0 0.6em;
  border: solid;
  border-width: 1px 1px 0 0;
  transform: rotate(45deg);
}
@media (max-width: 1000px) {
  #breadcrumb {
    padding-top: 1.5em !important;
  }
}

/* sub common
============================== */
/* sub
============================== */
#sub .sub-main {
  padding: 0 !important;
}

/* top
============================== */
#top {
  /* main image slide slick.js
  ============================== */
}
#top .slick-slide {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
}
#top .slick-dots {
  margin: 0 !important;
  bottom: 20px !important;
}
#top .slick-dots li {
  min-height: inherit !important;
}
#top .slick-dots li button::before {
  color: #fff !important;
  font-size: 12px !important;
  opacity: 1 !important;
  background: #fff;
  border: 1px solid #7A6A56 !important;
  border-radius: 100%;
}
#top .slick-dots li.slick-active button::before {
  color: #7A6A56 !important;
  background: #7A6A56 !important;
}
#top .slick-dotted.slick-slider {
  margin-bottom: 0 !important;
}
#top .top-main {
  padding: 0 !important;
}
#top .top-main .wrap {
  padding: 0 !important;
  max-width: inherit !important;
  position: relative;
}
#top .top-main .wrap .top-main-kv {
  background: #e3b300;
}
#top .top-main .wrap .top-main-kv .photo {
  margin: 0 auto;
  width: 100%;
}
#top .top-main .wrap .top-main-kv .photo img {
  width: 100%;
}
#top .top-main .wrap .top-main-area {
  margin: 0 auto;
  padding: 0;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  letter-spacing: 0.2em;
  max-width: 1100px;
  position: relative;
  transition: 0.3s;
  animation: fadein 0.3s;
}
#top .top-main .wrap .top-main-area .main-title {
  font-size: 2.4rem;
}
#top .top-main .wrap .top-main-area .main-date {
  margin: 1em 0 0;
  font-size: 3.4rem;
}
#top .top-main .wrap .top-main-area .main-txt01 {
  margin: 0.5em 0 0;
  font-size: 6rem;
}
#top .top-main .wrap .top-main-area .main-txt02 {
  font-size: 4rem;
}
#top .top-benefit {
  padding-top: 3em;
  padding-bottom: 3em;
  background: #FDFAF5;
}
#top .top-benefit .title-h01 {
  margin: 0 auto;
  padding: 0 0 0.5em;
  color: #7A6A56;
  font-size: 2.4rem;
  text-align: center;
  border-bottom: 1px solid #7A6A56;
  display: table;
}
#top .top-benefit .wrap {
  max-width: 850px;
}
#top .top-benefit .wrap .benefit-txt {
  margin: 3em 0 0;
  font-size: 2rem;
  text-align: center;
}
#top .top-benefit .wrap .flyer-box {
  margin: 3em 0 0;
  padding: 2em;
  background: #fff;
  border: 1px solid #7A6A56;
  display: flex;
  justify-content: space-around;
  align-items: center;
}
#top .top-benefit .wrap .flyer-box .title {
  color: #7A6A56;
  font-size: 1.6rem;
  text-align: center;
  min-width: 170px;
}
#top .top-benefit .wrap .flyer-box .flyer-list {
  font-size: 1.4rem;
}
#top .top-shop-menu {
  padding-top: 3em;
  padding-bottom: 3em;
}
#top .top-shop-menu .wrap .shop-menu-list {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  max-width: 900px;
}
#top .top-shop-menu .wrap .shop-menu-list::before {
  content: "";
  display: block;
  width: calc(33.3333333333% - 15px);
  height: 0;
  order: 1;
}
#top .top-shop-menu .wrap .shop-menu-list::after {
  content: "";
  display: block;
  width: calc(33.3333333333% - 15px);
  height: 0;
}
#top .top-shop-menu .wrap .shop-menu-list .list-item {
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  width: calc(33.3333333333% - 15px);
}
#top .top-shop-menu .wrap .shop-menu-list .list-item:nth-child(n+4) {
  margin: 1.5em 0 0;
}
#top .top-shop-menu .wrap .shop-menu-list .list-item a {
  text-decoration: none;
}
#top .top-shop-menu .wrap .shop-menu-list .list-item a .no {
  margin: 0 10px 0 0;
  padding: 0.5em;
  color: #fff;
  background: #595757;
  border-radius: 0.3em;
  display: inline-block;
}
#top .top-shop {
  padding: 0;
}
#top .top-shop .wrap {
  max-width: inherit;
  overflow-x: visible;
}
#top .top-shop .wrap .shop-wrap {
  padding: 3em 20px;
}
#top .top-shop .wrap .shop-wrap:nth-child(odd) {
  background: #F2F0EE;
}
#top .top-shop .wrap .shop-wrap .shop-list {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
  max-width: 1100px;
}
#top .top-shop .wrap .shop-wrap .shop-list .list-item {
  width: calc(50% - 2vw);
}
#top .top-shop .wrap .shop-wrap .shop-list .list-item img:nth-child(n+2) {
  margin: 1em 0 0;
}
#top .top-shop .wrap .shop-wrap .shop-list .list-item .map {
  margin: 1em 0 0;
  border: 1px solid #ccc;
  width: 100%;
  position: relative;
  padding-top: 56.25%;
}
#top .top-shop .wrap .shop-wrap .shop-list .list-item .map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#top .top-form {
  padding-top: 3em;
  padding-bottom: 3em;
  background: #FAFAFB;
}
#top .top-form .title-h01 {
  font-size: 4rem;
  text-align: center;
}
#top .top-form .wrap {
  margin-top: 3em;
}
#top .top-form .wrap .form-area {
  margin: 3em auto 0;
  max-width: 800px;
}
#top .top-form .wrap .form-area iframe {
  width: 100%;
}
#top .f-fix-area,
#top .f-fix-area02,
#top .h-fix-area {
  margin: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.2);
  width: 100%;
  position: static;
  bottom: 10px;
  left: 0;
  transition: 0.3s;
}
#top .f-fix-area .fix-list,
#top .f-fix-area02 .fix-list,
#top .h-fix-area .fix-list {
  margin: 0 auto;
  width: 100%;
  max-width: 1100px;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
#top .f-fix-area .fix-list .list-item,
#top .f-fix-area02 .fix-list .list-item,
#top .h-fix-area .fix-list .list-item {
  width: 50%;
  line-height: 1.2;
}
#top .f-fix-area .fix-list .list-item a,
#top .f-fix-area02 .fix-list .list-item a,
#top .h-fix-area .fix-list .list-item a {
  padding: 0.8em 0.5em;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
#top .f-fix-area .fix-list .list-item img,
#top .f-fix-area02 .fix-list .list-item img,
#top .h-fix-area .fix-list .list-item img {
  width: 100%;
  max-width: 342px !important;
}
#top .f-fix-area .fix-list .list-item.tel,
#top .f-fix-area02 .fix-list .list-item.tel,
#top .h-fix-area .fix-list .list-item.tel {
  background: #000;
}
#top .f-fix-area .fix-list .list-item.mail,
#top .f-fix-area02 .fix-list .list-item.mail,
#top .h-fix-area .fix-list .list-item.mail {
  background: #ea8000;
}
#top .f-fix-area .fix-list .list-item.mail img,
#top .f-fix-area02 .fix-list .list-item.mail img,
#top .h-fix-area .fix-list .list-item.mail img {
  max-width: 320px !important;
}
#top .f-fix-area .fix-list .list-item.mail.txt-w img,
#top .f-fix-area02 .fix-list .list-item.mail.txt-w img,
#top .h-fix-area .fix-list .list-item.mail.txt-w img {
  max-width: 342px !important;
}
#top .f-fix-area .fix-list .list-item.mail.green,
#top .f-fix-area02 .fix-list .list-item.mail.green,
#top .h-fix-area .fix-list .list-item.mail.green {
  background: rgb(30, 165, 57);
  background: linear-gradient(90deg, rgb(30, 165, 57) 0%, rgb(121, 208, 57) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#1ea539", endColorstr="#79d039", GradientType=1);
}
#top .f-fix-area.fixed,
#top .f-fix-area02.fixed,
#top .h-fix-area.fixed {
  width: 100%;
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 998;
  animation: fadein 0.3s;
}
#top .f-fix-area02 {
  margin: 3em 0 0;
}

/* wp pager
============================== */
.wp-pagenavi {
  margin-top: 0 !important;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.wp-pagenavi > * {
  margin-top: 5px;
  margin-left: 10px;
  padding: 1em !important;
  color: #fff !important;
  font-size: 1.3rem;
  line-height: 1;
  background: #7A6A56 !important;
  border: 1px solid #7A6A56 !important;
}
.wp-pagenavi > *:first-child {
  margin-left: 0;
}
.wp-pagenavi a,
.wp-pagenavi .pages,
.wp-pagenavi .extend {
  color: #7A6A56 !important;
  text-decoration: none;
  background: #fff !important;
}
.wp-pagenavi a:hover {
  color: #fff !important;
  background: #7A6A56 !important;
  opacity: 1;
}

/* contact recruit
============================== */
#top-contact,
#recruit {
  margin: 4em 0 0;
  padding: 6em 20px 4em !important;
  background: #f5f5f5;
  clip-path: polygon(0 50px, 100% 0, 100% calc(100% - 0px), 0 100%);
}
#top-contact .title,
#recruit .title {
  font-size: 4rem;
  font-weight: bold;
}
#top-contact .intro-area,
#recruit .intro-area {
  margin: 2em 0 0;
}
#top-contact .flow-area .flow-list,
#recruit .flow-area .flow-list {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  max-width: 750px;
}
#top-contact .flow-area .flow-list li,
#recruit .flow-area .flow-list li {
  padding: 0 0 0.8em;
  color: #ccc;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
  border-bottom: 3px solid #ccc;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: calc(33.3333333333% - 15px);
}
#top-contact .flow-area .flow-list li .eng,
#recruit .flow-area .flow-list li .eng {
  font-family: "Alata", Arial, "Arial Black", Verdana, "sans-serif";
  font-size: 1.4rem;
}
#top-contact .flow-area .flow-list li .jpn,
#recruit .flow-area .flow-list li .jpn {
  margin-top: 0.4em !important;
}
#top-contact .flow-area .flow-list li.active,
#recruit .flow-area .flow-list li.active {
  color: #7A6A56;
  border-bottom: 3px solid #7A6A56;
}
#top-contact .form-area,
#recruit .form-area {
  margin-top: 3em;
  padding: 2em 2em 3em;
  background: #fff;
}
#top-contact .form-area .form-wrap,
#recruit .form-area .form-wrap {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
#top-contact .form-area .form-wrap p,
#recruit .form-area .form-wrap p {
  letter-spacing: 0;
}
#top-contact .form-area .form-wrap dl,
#recruit .form-area .form-wrap dl {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#top-contact .form-area .form-wrap dl:nth-child(n+2),
#recruit .form-area .form-wrap dl:nth-child(n+2) {
  margin-top: 0 !important;
}
#top-contact .form-area .form-wrap dl dt,
#recruit .form-area .form-wrap dl dt {
  padding: 1em 0.5em;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0;
  background: #f5f5f5;
  border-bottom: 1px solid #ddd;
  display: flex;
  align-items: center;
  width: 30%;
  position: relative;
}
#top-contact .form-area .form-wrap dl dt .required-mark,
#recruit .form-area .form-wrap dl dt .required-mark {
  margin-left: 1em;
  padding: 0.3em 0.5em;
  color: #fff;
  font-size: 1.1rem;
  font-weight: normal;
  text-align: center;
  line-height: 1.2;
  background: #BE1515;
  border-radius: 0.3em;
  min-width: 35px;
  position: absolute;
  right: 15px;
  top: calc(50% - 0.9em);
}
#top-contact .form-area .form-wrap dl dt.required,
#recruit .form-area .form-wrap dl dt.required {
  padding: 1em 3em 1em 1em;
}
#top-contact .form-area .form-wrap dl dd,
#recruit .form-area .form-wrap dl dd {
  padding: 1em 0.5em;
  border-bottom: 1px solid #ddd;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 70%;
}
#top-contact .form-area .form-wrap dl dd .txt-atn,
#recruit .form-area .form-wrap dl dd .txt-atn {
  margin-top: 1em !important;
  font-size: 1.3rem;
  width: 100%;
}
#top-contact .form-area .form-wrap dl dd .txt-atn-red,
#recruit .form-area .form-wrap dl dd .txt-atn-red {
  margin-top: 1em !important;
  color: #FF0000;
  font-size: 1.3rem;
  width: 100%;
}
#top-contact .form-area .form-wrap dl dd .wpcf7-form-control-wrap,
#recruit .form-area .form-wrap dl dd .wpcf7-form-control-wrap {
  width: 100%;
}
#top-contact .form-area .form-wrap dl .w50,
#recruit .form-area .form-wrap dl .w50 {
  width: 50% !important;
}
#top-contact .form-area .form-wrap dl .horizontal-item,
#recruit .form-area .form-wrap dl .horizontal-item {
  margin-left: 0 !important;
  margin-right: 10px !important;
}
#top-contact .form-area .form-wrap dl .error,
#recruit .form-area .form-wrap dl .error {
  margin-top: 0.5em !important;
  color: #B70000 !important;
  font-size: 1.6rem !important;
  font-weight: bold !important;
  display: block !important;
  width: 100% !important;
}
#top-contact .form-area input[type=text],
#top-contact .form-area input[type=email],
#top-contact .form-area input[type=url],
#top-contact .form-area input[type=tel],
#top-contact .form-area input[type=number],
#top-contact .form-area textarea,
#recruit .form-area input[type=text],
#recruit .form-area input[type=email],
#recruit .form-area input[type=url],
#recruit .form-area input[type=tel],
#recruit .form-area input[type=number],
#recruit .form-area textarea {
  padding: 15px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  width: 100%;
  max-width: 100%;
}
#top-contact .form-area select,
#recruit .form-area select {
  padding: 10px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
}
#top-contact .form-area textarea,
#recruit .form-area textarea {
  width: 100%;
  min-height: 200px;
}
#top-contact .form-area input[type=radio],
#top-contact .form-area input[type=checkbox],
#recruit .form-area input[type=radio],
#recruit .form-area input[type=checkbox] {
  margin: 10px 0 10px 10px;
}
#top-contact .form-area label:hover,
#recruit .form-area label:hover {
  cursor: pointer !important;
}
#top-contact .form-area .btn,
#recruit .form-area .btn {
  font-size: 1.8rem;
  min-width: 300px;
}
#top-contact .form-area .btn input[type=submit],
#recruit .form-area .btn input[type=submit] {
  padding: 1.3em 2em 1.3em 1em;
}
#top-contact .form-area .btn.back a,
#top-contact .form-area .btn.back input[type=submit],
#top-contact .form-area .btn.back input[type=button],
#recruit .form-area .btn.back a,
#recruit .form-area .btn.back input[type=submit],
#recruit .form-area .btn.back input[type=button] {
  padding: 1em 2em 1em 1em;
  font-size: 1.6rem;
  background: #555;
}
#top-contact .submit,
#recruit .submit {
  text-align: center;
}
#top-contact .submit input,
#recruit .submit input {
  padding: 1.2em;
  color: #FFF;
  font-size: 1.8rem;
  background: #7A6A56;
  border: 1px solid #7A6A56;
  min-width: 250px;
  cursor: pointer;
}
#top-contact .submit input:hover,
#recruit .submit input:hover {
  background: #9fdd0c;
  border: 1px solid #9fdd0c;
  opacity: 0.8;
}
#top-contact .submit input.dis,
#recruit .submit input.dis {
  background: #ccc;
  border: 1px solid #ccc;
}
#top-contact .submit input.dis:hover,
#recruit .submit input.dis:hover {
  opacity: 1;
}
#top-contact .submit-back,
#top-contact .back,
#recruit .submit-back,
#recruit .back {
  text-align: center;
}
#top-contact .submit-back input,
#top-contact .back input,
#recruit .submit-back input,
#recruit .back input {
  padding: 1em;
  color: #000;
  font-size: 1.6rem;
  background: #fff;
  border: 1px solid #000;
  min-width: 160px;
  cursor: pointer;
}
#top-contact .submit-back input:hover,
#top-contact .back input:hover,
#recruit .submit-back input:hover,
#recruit .back input:hover {
  color: #666;
  border: 1px solid #666;
  opacity: 0.8;
}
#top-contact .privacy-box,
#recruit .privacy-box {
  margin-top: 3em;
  padding: 1em;
  border: 1px solid #ccc;
  max-height: 300px;
  overflow-y: scroll;
}
#top-contact .thanks-area,
#recruit .thanks-area {
  margin-left: auto;
  margin-right: auto;
  padding: 4em 0;
  max-width: 800px;
  text-align: center;
}
#top-contact .thanks-area h2,
#recruit .thanks-area h2 {
  text-align: center;
}

.form-area .c-form {
  display: flex;
  flex-direction: column;
  gap: 2em;
}
.form-area .c-form__group {
  display: flex;
}
.form-area .c-form__label {
  font-weight: 600;
  flex: 0.25;
}
.form-area .c-form__label .c-form__required {
  background-color: #c93e3e;
  color: #fff;
  font-size: 12px;
  padding: 0.15em 0.5em 0.25em;
  border-radius: 3px;
  line-height: 1;
}
.form-area .c-form__label .c-form__optional {
  background-color: #938f8f;
  color: #fff;
  font-size: 12px;
  padding: 0.15em 0.5em 0.25em;
  border-radius: 3px;
  line-height: 1;
}
.form-area .c-form__control {
  flex: 1;
}
.form-area .wpcf7-radio {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.form-area .wpcf7-select {
  width: 50%;
  color: #3e3a39;
}
.form-area .wpcf7-submit {
  background-color: #7a6a56;
}/*# sourceMappingURL=common.css.map */