@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@200;400;800&family=Noto+Sans+JP:wght@200;400;800&family=Roboto:wght@100;400;700&family=Zen+Maru+Gothic:wght@300;400;700&display=swap");
html {
  scroll-behavior: smooth;
}

body {
  position: relative;
  width: 100vw;
  margin: 0;
  padding: 0;
  font-family: "Zen Maru Gothic", serif;
  font-style: normal;
  font-weight: bold;
  font-size: 1rem;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  font-feature-settings: "pkna" 1;
  color: rgb(117, 76, 36);
  overflow-x: hidden;
  font-weight: 500;
  letter-spacing: 0.2rem;
  background-color: rgb(255, 243, 218);
}

header,
footer,
section {
  width: 100%;
  height: auto;
}

.common_width_layouut_1100 {
  width: 1100px;
  margin: 0 auto;
}

.common_width_layouut_800 {
  width: 800px;
  margin: 0 auto;
}

h2 {
  font-size: 2.4rem;
  font-weight: bold;
  color: rgb(117, 76, 36);
}

h3 {
  font-size: 2rem;
  font-weight: bold;
  color: rgb(117, 76, 36);
}

.h3_right_icon {
  background-position: bottom right;
  background-repeat: no-repeat;
}

.h3_left_icon {
  background-position: bottom left;
  background-repeat: no-repeat;
}

h4 {
  font-size: 1.6rem;
  font-weight: bold;
  color: rgb(117, 76, 36);
}

h5 {
  font-size: 1.4rem;
  font-weight: bold;
  color: rgb(117, 76, 36);
}

body::after {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  /* 背景カラー */
  z-index: 9999;
  /* 一番手前に */
  pointer-events: none;
  /* 他の要素にアクセス可能にするためにポインターイベントは無効に */
  opacity: 0;
  /* 初期値 : 透過状態 */
  /* アニメーション時間は 0.8秒 */
  transition: opacity 0.5s ease;
}

body.fadeout::after {
  opacity: 1;
}

body.fadeout article {
  transform: scale(1.2);
}

@media screen and (min-width: 801px) and (max-width: 1100px) {
  .common_width_layouut_1100 {
    width: 90% !important;
    margin: 0 5% !important;
  }
  .common_width_layouut_800 {
    width: 90% !important;
    margin: 0 5% !important;
  }
}
@media screen and (min-width: 481px) and (max-width: 800px) {
  html {
    overflow-x: hidden;
  }
  .common_width_layouut_1100 {
    width: 90% !important;
    margin: 0 5% !important;
  }
  .common_width_layouut_800 {
    width: 90% !important;
    margin: 0 5% !important;
  }
  h2 {
    font-size: 1.8rem;
  }
  h3 {
    font-size: 1.6rem;
  }
  .h3_right_icon {
    background-position: bottom right;
    background-repeat: no-repeat;
  }
  .h3_left_icon {
    background-position: bottom left;
    background-repeat: no-repeat;
  }
  h4 {
    font-size: 1.4rem;
  }
  h5 {
    font-size: 1.2rem;
  }
}
@media screen and (max-width: 480px) {
  html {
    overflow-x: hidden;
  }
  .common_width_layouut_1100 {
    width: 90% !important;
    margin: 0 5% !important;
  }
  .common_width_layouut_800 {
    width: 90% !important;
    margin: 0 5% !important;
  }
  h2 {
    font-size: 6.2vw;
  }
  h3 {
    font-size: 5.2vw;
  }
  .h3_right_icon {
    background-position: bottom right;
    background-repeat: no-repeat;
  }
  .h3_left_icon {
    background-position: bottom left;
    background-repeat: no-repeat;
  }
  h4 {
    font-size: 4.2vw;
  }
  h5 {
    font-size: 4vw;
  }
}
header {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.2rem 2rem 0.6rem 2.4rem;
  position: relative;
  background-color: rgb(255, 243, 218);
  transition: 1s;
  z-index: 9999;
}
header .logo {
  width: 340px;
  height: auto;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 0 2rem 0 0;
  transition: 1s;
  transform: scale(1);
}
header .logo .logo_img {
  width: 100px;
  height: auto;
  transition: 1s;
}
header .logo .logo_img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 1s;
}
header .logo .logo_text {
  font-weight: 800;
  text-align: center;
}
header .logo .logo_text span {
  font-size: 1.2rem;
  transition: 1s;
}
header .logo .logo_text p {
  font-size: 1.8rem;
  color: rgb(235, 109, 1);
  transition: 1s;
}
header nav {
  width: calc(100% - (340px + (100% - 1280px) / 2 + 3rem));
  display: flex;
  align-items: center;
  position: relative;
}
header nav #menu {
  width: 35px;
  aspect-ratio: 1/0.75;
  display: none;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  position: relative;
}
header nav #menu:hover {
  cursor: pointer;
}
header nav #menu span {
  display: block;
  width: 100%;
  height: 2px;
  border-radius: 1px;
  background-color: rgb(117, 76, 36);
  position: absolute;
  transition: 1s;
}
header nav #menu span:first-child {
  top: 0;
}
header nav #menu span:nth-child(2) {
  margin: 10px 0;
}
header nav #menu span:last-child {
  bottom: 0;
}
header nav .menu_cross span {
  width: 100%;
}
header nav .menu_cross span:first-child {
  transform: rotate(45deg);
  transition: 1s;
  position: absolute;
  top: 11.5px !important;
}
header nav .menu_cross span:nth-child(2) {
  opacity: 0;
  transition: 1s;
  position: absolute;
}
header nav .menu_cross span:last-child {
  transform: rotate(-45deg);
  transition: 1s;
  position: absolute;
  bottom: 11.5px !important;
}
header nav ul {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
header nav ul li {
  width: 14.2857142857%;
  border-left: solid 1px rgb(117, 76, 36);
  font-size: 1rem;
}
header nav ul li:first-child {
  border-left: none;
}
header nav ul li a {
  width: -moz-fit-content;
  width: fit-content;
  display: block;
  text-align: center;
  font-weight: 600;
  margin: 0 auto;
  position: relative;
}
header nav ul li a:hover span {
  width: 100%;
  transition: 0.5s;
}
header nav ul li a span {
  display: block;
  width: 0;
  height: 2px;
  background-color: rgb(235, 109, 1);
  margin: 0 auto;
  transition: 0.5s;
  position: absolute;
  bottom: -0.6rem;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
header .header_img {
  width: calc((100% - 1280px) / 2 + 2rem);
  height: 100px;
  background-image: url("../../img/common/header/leaf.svg");
  background-repeat: no-repeat;
  background-position: center left 3%;
  background-size: 100px;
  transition: 1s;
}

.menu_open {
  right: -2rem;
  transition: 1s;
}

.fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99;
  padding: 0.2rem 2rem 0.4rem;
  transition: 1s;
  box-shadow: rgba(0, 0, 0, 0.1) -4px 9px 25px -6px;
  overflow-x: hidden;
  background-color: rgba(255, 243, 218, 0.9);
}
.fixed .logo {
  transform: scale(0.8);
  transition: 1s;
}
.fixed .header_img {
  transform: scale(0.6);
  transition: 1s;
  height: 80px;
  background-size: 80px;
}

@media screen and (min-width: 1281px) and (max-width: 1470px) {
  .header_img {
    background-image: none !important;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  header {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.2rem 2rem 0.6rem 2.4rem;
    position: relative;
    background-color: rgb(255, 243, 218);
    transition: 1s;
    z-index: 9999;
  }
  header .logo {
    width: 280px;
    height: auto;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 2rem 0 0;
    transition: 1s;
    transform: scale(1);
  }
  header .logo .logo_img {
    width: 90px;
    height: auto;
    transition: 1s;
    margin-right: 10px;
  }
  header .logo .logo_img img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition: 1s;
  }
  header .logo .logo_text {
    font-weight: 800;
    text-align: center;
  }
  header .logo .logo_text span {
    font-size: 1rem;
    transition: 1s;
  }
  header .logo .logo_text p {
    font-size: 1.3rem;
    color: rgb(235, 109, 1);
    transition: 1s;
  }
  header nav {
    width: calc(100% - (340px + (100% - 1280px) / 2 + 3rem));
    display: flex;
    align-items: center;
    position: relative;
  }
  header nav #menu {
    width: 35px;
    aspect-ratio: 1/0.75;
    display: none;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    position: relative;
  }
  header nav #menu:hover {
    cursor: pointer;
  }
  header nav #menu span {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 1px;
    background-color: rgb(117, 76, 36);
    position: absolute;
    transition: 1s;
  }
  header nav #menu span:first-child {
    top: 0;
  }
  header nav #menu span:nth-child(2) {
    margin: 10px 0;
  }
  header nav #menu span:last-child {
    bottom: 0;
  }
  header ul {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  header ul li {
    width: -moz-fit-content !important;
    width: fit-content !important;
    border-left: solid 1px rgb(117, 76, 36);
    font-size: 0.9rem !important;
    padding: 0 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  header ul li:first-child {
    border-left: none;
  }
  header ul li a {
    width: -moz-fit-content;
    width: fit-content;
    display: flex;
    justify-content: center;
    text-align: center;
    font-weight: 600;
  }
}
@media screen and (min-width: 481px) and (max-width: 1200px) {
  header {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0rem 5% 0 5%;
    position: relative;
    background-color: rgb(255, 243, 218);
    transition: 1s;
    z-index: 9999;
  }
  header nav {
    position: absolute;
    right: 2rem;
  }
  header nav #menu {
    display: flex;
    position: absolute;
    z-index: 999;
    right: 0;
  }
  header nav ul {
    width: 35vw;
    height: 100vh;
    position: fixed;
    right: calc(-40vw - 2rem);
    top: 0;
    z-index: -1;
    display: flex;
    justify-content: center;
    flex-flow: column;
    background-color: rgb(255, 255, 255);
    border-top-left-radius: 50vw;
    border-bottom-left-radius: 50vw;
    box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 2px, rgba(0, 0, 0, 0.07) 0px 2px 4px, rgba(0, 0, 0, 0.07) 0px 4px 8px, rgba(0, 0, 0, 0.07) 0px 8px 16px, rgba(0, 0, 0, 0.07) 0px 16px 32px, rgba(0, 0, 0, 0.07) 0px 32px 64px;
  }
  header nav ul li {
    width: -moz-fit-content;
    width: fit-content;
    border-left: none;
    margin: 0 0 1.6rem 0;
  }
}
@media screen and (max-width: 480px) {
  header {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0rem 5% 0 5%;
    position: relative;
    background-color: rgb(255, 243, 218);
    transition: 1s;
    z-index: 9999;
  }
  header .logo {
    width: -moz-fit-content;
    width: fit-content;
    height: auto;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 0 0 0;
    transition: 1s;
    transform: scale(1);
  }
  header .logo .logo_img {
    width: 60px;
    height: auto;
    margin-right: 10px;
    transition: 1s;
  }
  header .logo .logo_img img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    transition: 1s;
  }
  header .logo .logo_text {
    font-weight: 800;
    text-align: center;
    transition: 1s;
  }
  header .logo .logo_text span {
    font-size: 0.8rem;
    transition: 1s;
  }
  header .logo .logo_text p {
    font-size: 1.2rem;
    color: rgb(235, 109, 1);
    transition: 1s;
  }
  header nav {
    position: absolute;
    right: 5%;
  }
  header nav #menu {
    display: flex;
    position: absolute;
    z-index: 999;
    right: 0;
  }
  header nav ul {
    width: 50vw;
    height: 100vh;
    position: fixed;
    right: calc(-55vw - 2rem);
    top: 0;
    z-index: -1;
    display: flex;
    justify-content: center;
    flex-flow: column;
    background-color: rgb(255, 255, 255);
    border-top-left-radius: 50vw;
    border-bottom-left-radius: 50vw;
    box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 2px, rgba(0, 0, 0, 0.07) 0px 2px 4px, rgba(0, 0, 0, 0.07) 0px 4px 8px, rgba(0, 0, 0, 0.07) 0px 8px 16px, rgba(0, 0, 0, 0.07) 0px 16px 32px, rgba(0, 0, 0, 0.07) 0px 32px 64px;
  }
  header nav ul li {
    width: -moz-fit-content;
    width: fit-content;
    border-left: none;
    margin: 0 0 1.6rem 0;
  }
  .fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    padding: 0rem 5% 0rem;
    transition: 1s;
    box-shadow: rgba(0, 0, 0, 0.1) -4px 9px 25px -6px;
    overflow-x: hidden;
    background-color: rgba(255, 243, 218, 0.9);
  }
  .fixed .logo {
    transform: scale(1);
    transition: 1s;
  }
  .fixed .header_img {
    transform: scale(1);
    transition: 1s;
    height: 80px;
    background-size: 80px;
  }
}
#mainvisual_box {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
}
#mainvisual_box .mainvisual_title_box {
  width: 400px;
  height: calc(100vh - 122px);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
#mainvisual_box .mainvisual_title_box h1 {
  font-size: 2.6rem;
  font-weight: bold;
  writing-mode: vertical-rl;
  letter-spacing: 0.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: column;
  position: relative;
}
#mainvisual_box .mainvisual_title_box h1::before {
  content: "";
  width: 100px;
  height: 100px;
  background-image: url("../../img/home/mainvisual/tree_green.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
#mainvisual_box .mainvisual_title_box h1 p {
  padding: 0.8rem;
}
#mainvisual_box .mainvisual_title_box h1 p span {
  color: #ffffff;
  background-color: rgb(117, 76, 36);
  padding: 0.8rem 0 0.4rem;
}
#mainvisual_box .mainvisual_title_box h1 p:first-child {
  margin: -6rem 0 0 1rem;
}
#mainvisual_box .mainvisual_title_box h1 p:last-child {
  margin: 6rem 0.6rem 0 0;
}
#mainvisual_box .mainvisual_img_box {
  width: calc(100% - 400px);
  height: calc(100vh - 122px);
  border-top-left-radius: 50px;
  overflow: hidden;
}
#mainvisual_box .mainvisual_img_box .mainvisual_slider {
  width: 100%;
  height: calc(100vh - 122px);
}
#mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
  width: 100%;
  height: calc(100vh - 122px);
}
#mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
  width: 100%;
  height: calc(100vh - 122px);
  -o-object-fit: cover;
     object-fit: cover;
}
#mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
  width: 80%;
  position: absolute;
  bottom: 15%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.4rem;
  display: none;
  align-items: center;
  justify-content: center;
  background-color: rgb(255, 255, 255);
  padding: 1.2rem 3.6rem;
  border-radius: 25px;
  box-shadow: rgba(0, 0, 0, 0.07) 0px 1px 2px, rgba(0, 0, 0, 0.07) 0px 2px 4px, rgba(0, 0, 0, 0.07) 0px 4px 8px, rgba(0, 0, 0, 0.07) 0px 8px 16px, rgba(0, 0, 0, 0.07) 0px 16px 32px, rgba(0, 0, 0, 0.07) 0px 32px 64px;
}

@media screen and (min-width: 1281px) and (max-width: 1470px) {
  #mainvisual_box .mainvisual_title_box {
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box {
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: calc(100vh - 100px);
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
    width: 80%;
    position: absolute;
    bottom: 20%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    font-size: 2.6rem;
    font-weight: bold;
    letter-spacing: 0.4rem;
    display: none;
    align-items: center;
    justify-content: center;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1.2rem 3.6rem;
    border-radius: 25px;
  }
}
@media screen and (min-width: 1200px) and (max-width: 1280px) {
  #mainvisual_box .mainvisual_title_box {
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box {
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: calc(100vh - 100px);
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (min-width: 1025px) and (max-width: 1199px) {
  #mainvisual_box .mainvisual_title_box {
    display: none;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: calc(100vh - 100px);
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
    display: block;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  #mainvisual_box .mainvisual_title_box {
    display: none;
    height: auto;
  }
  #mainvisual_box .mainvisual_img_box {
    width: 100%;
    height: auto;
    border-bottom-right-radius: 50px;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: auto;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: 100%;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
    display: block;
    width: 60%;
    text-align: center;
  }
}
@media screen and (min-width: 481px) and (max-width: 767px) {
  #mainvisual_box .mainvisual_title_box {
    display: none;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box {
    width: 100%;
    height: auto;
    border-bottom-right-radius: 50px;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: auto;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: 100%;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
    display: block;
    width: 80%;
    text-align: center;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 480px) {
  #mainvisual_box .mainvisual_title_box {
    display: none;
    height: calc(100vh - 100px);
  }
  #mainvisual_box .mainvisual_img_box {
    width: 100%;
    height: auto !important;
    border-bottom-right-radius: 50px;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider {
    width: 100%;
    height: auto !important;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide {
    width: 100%;
    height: auto !important;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide img {
    width: 100%;
    height: auto !important;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #mainvisual_box .mainvisual_img_box .mainvisual_slider .swiper-wrapper .swiper-slide p {
    bottom: 10%;
    display: block;
    width: 80%;
    text-align: center;
    font-size: 1.6rem;
    padding: 0.8rem 1.8rem;
  }
}
#_home_button_box {
  height: 200px;
  padding: 6.2rem 0 1.6rem;
  position: relative;
}
#_home_button_box .logo_design {
  width: 35%;
  aspect-ratio: 1/1;
  position: absolute;
  top: -50px;
  right: 0;
  background-image: url("../../img/common/logo/logo_big.svg");
  background-repeat: no-repeat;
  background-position: center right -100px;
  background-size: 100%;
  z-index: 2;
  opacity: 0.6;
}
#_home_button_box ul {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: center;
  align-items: stretch;
  position: relative;
  z-index: 3;
}
#_home_button_box ul li a {
  display: block;
  min-width: 250px;
  color: #ffffff;
  background-color: rgb(117, 76, 36);
  padding: 0.8rem 1.6rem;
  text-align: center;
  font-size: 1.4rem;
  font-weight: bold;
  border-radius: 15px;
  border: solid 2px rgb(117, 76, 36);
}
#_home_button_box ul li a:hover {
  background-color: rgb(255, 243, 218);
  color: rgb(117, 76, 36);
}
#_home_button_box ul li a .br {
  display: none;
}
#_home_button_box ul li:first-child {
  margin: 0 3.6rem 0 0;
}
#_home_button_box ._home_button_box_bg {
  position: absolute;
  bottom: -228px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
  z-index: 1;
}
#_home_button_box ._home_button_box_bg > svg {
  position: relative;
  display: block;
  width: calc(300% + 1.3px);
  height: 250px;
}
#_home_button_box ._home_button_box_bg > svg > .shape-fill {
  fill: rgb(255, 243, 218);
}

@media screen and (min-width: 481px) and (max-width: 767px) {
  #_home_button_box {
    height: 120px;
    padding: 3.1rem 0 1.6rem;
    position: relative;
    z-index: 2;
  }
  #_home_button_box .logo_design {
    width: 35%;
    aspect-ratio: 1/1;
    position: absolute;
    top: 15vw;
    background-image: url("../../img/common/logo/logo_big.svg");
    background-repeat: no-repeat;
    background-position: center right 0px;
    background-size: 100%;
    z-index: 2;
    opacity: 0.6;
  }
  #_home_button_box ul {
    width: 90%;
    height: auto;
    display: flex;
    justify-content: space-around;
    margin: 0 5%;
    position: relative;
    z-index: 2;
  }
  #_home_button_box ul li {
    width: 48%;
  }
  #_home_button_box ul li a {
    display: block;
    min-width: 100%;
    color: #ffffff;
    background-color: rgb(117, 76, 36);
    padding: 0.8rem 0.8rem;
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    border-radius: 15px;
    border: solid 2px rgb(117, 76, 36);
  }
  #_home_button_box ul li a:hover {
    background-color: rgb(255, 243, 218);
    color: rgb(117, 76, 36);
  }
  #_home_button_box ul li:first-child {
    margin: 0 3.6rem 0 0;
  }
  ._home_button_box_bg {
    position: absolute;
    bottom: -148px !important;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
    z-index: 1;
  }
  ._home_button_box_bg > svg {
    position: relative;
    display: block;
    width: calc(300% + 1.3px);
    height: 250px;
  }
  ._home_button_box_bg > svg > .shape-fill {
    fill: rgb(255, 243, 218);
  }
}
@media screen and (max-width: 480px) {
  #_home_button_box {
    height: 120px;
    padding: 3.1rem 0 1.6rem;
    position: relative;
    z-index: 2;
  }
  #_home_button_box .logo_design {
    width: 35%;
    aspect-ratio: 1/1;
    position: absolute;
    top: 32vw;
    background-image: url("../../img/common/logo/logo_big.svg");
    background-repeat: no-repeat;
    background-position: center right 0px;
    background-size: 100%;
    z-index: 3;
    opacity: 0.6;
  }
  #_home_button_box ul {
    width: 90%;
    height: auto;
    display: flex;
    justify-content: space-around;
    align-items: stretch;
    margin: 0 5%;
    position: relative;
    z-index: 3;
  }
  #_home_button_box ul li {
    width: 49%;
  }
  #_home_button_box ul li a {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: -moz-fit-content;
    min-width: fit-content;
    color: #ffffff;
    background-color: rgb(117, 76, 36);
    padding: 0.8rem 0.8rem;
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    border-radius: 15px;
    border: solid 2px rgb(117, 76, 36);
  }
  #_home_button_box ul li a:hover {
    background-color: rgb(255, 243, 218);
    color: rgb(117, 76, 36);
  }
  #_home_button_box ul li a .br {
    display: block;
  }
  #_home_button_box ul li:first-child {
    margin: 0 2% 0 0;
  }
  ._home_button_box_bg {
    position: absolute;
    bottom: -108px !important;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
    z-index: 1;
  }
  ._home_button_box_bg > svg {
    position: relative;
    display: block;
    width: calc(300% + 1.3px);
    height: 120px !important;
  }
  ._home_button_box_bg > svg > .shape-fill {
    fill: rgb(255, 243, 218);
  }
}
#_home_letter_box {
  width: 100%;
  padding: 7.6rem 0 4.8rem;
  background-color: #ffffff;
  position: relative;
}

#_home_about_box {
  width: 100%;
  padding: 7.6rem 0 4.8rem;
  background-color: #ffffff;
  position: relative;
}
#_home_about_box div {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
#_home_about_box div h2 {
  width: 600px;
  text-align: center;
  padding: 100px 0 0 100px;
  background-image: url("../../img/home/about/leaf.svg");
  background-size: 100px;
  background-position: bottom left;
  background-repeat: no-repeat;
}
#_home_about_box div ._home_about_catch {
  margin: 4.6rem 0;
  position: relative;
  padding: 1.6rem 2.8rem;
  font-size: 2rem;
  line-height: 3.2rem;
  font-weight: bold;
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
}
#_home_about_box div ._home_about_catch .br {
  display: none;
}
#_home_about_box div ._home_about_catch::before, #_home_about_box div ._home_about_catch::after {
  content: "";
  width: 50px;
  height: 50px;
  position: absolute;
}
#_home_about_box div ._home_about_catch::before {
  border-left: solid 2px rgb(117, 76, 36);
  border-top: solid 2px rgb(117, 76, 36);
  border-top-left-radius: 10px;
  top: 0;
  left: 0;
}
#_home_about_box div ._home_about_catch::after {
  border-right: solid 2px rgb(117, 76, 36);
  border-bottom: solid 2px rgb(117, 76, 36);
  border-bottom-right-radius: 10px;
  bottom: 0;
  right: 0;
}
#_home_about_box div ul {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
#_home_about_box div ul li {
  width: 300px;
}
#_home_about_box div ul li a {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
}
#_home_about_box div ul li a:hover {
  cursor: pointer;
}
#_home_about_box div ul li a:hover ._home_about_img_boxs img {
  transform: scale(1.2);
  transition: 1s;
}
#_home_about_box div ul li a:hover .arrow {
  transition: 1s;
  right: -20px;
}
#_home_about_box div ul li a ._home_about_img_boxs {
  width: 100%;
  height: 250px;
  border-radius: 15px;
  overflow: hidden;
}
#_home_about_box div ul li a ._home_about_img_boxs img {
  width: 100%;
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 1s;
}
#_home_about_box div ul li a p {
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 1.8rem 0;
}
#_home_about_box div ul li a p .arrow {
  position: relative;
  display: inline-block;
  color: #000;
  vertical-align: middle;
  text-decoration: none;
  font-size: 15px;
  right: -10px;
  transition: 1s;
}
#_home_about_box div ul li a p .arrow::before, #_home_about_box div ul li a p .arrow::after {
  position: absolute;
  top: 3px;
  bottom: 0;
  left: 0;
  margin: auto;
  content: "";
  vertical-align: middle;
}
#_home_about_box div ul li a p .arrow::before {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgb(117, 76, 36);
}
#_home_about_box div ul li a p .arrow::after {
  left: 8px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
  #_home_about_box div ul li {
    width: calc(33.3333333333% - 20px);
  }
  #_home_about_box div ul li a {
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
  }
  #_home_about_box div ul li a:hover {
    cursor: pointer;
  }
  #_home_about_box div ul li a:hover ._home_about_img_boxs img {
    transform: scale(1.2);
    transition: 1s;
  }
  #_home_about_box div ul li a:hover .arrow {
    transition: 1s;
    right: -20px;
  }
  #_home_about_box div ul li a ._home_about_img_boxs {
    width: 100%;
    height: 250px;
    border-radius: 15px;
    overflow: hidden;
  }
  #_home_about_box div ul li a ._home_about_img_boxs img {
    width: 100%;
    height: 250px;
    -o-object-fit: cover;
       object-fit: cover;
    transition: 1s;
  }
  #_home_about_box div ul li a p {
    font-size: 1.4rem;
    margin: 1.4rem 0 1.6rem;
  }
}
@media screen and (min-width: 481px) and (max-width: 767px) {
  #_home_about_box {
    padding: 7.6rem 0 0rem;
  }
  #_home_about_box div h2 {
    width: -moz-fit-content;
    width: fit-content;
    padding: 80px 0 0 80px;
    background-size: 80px;
  }
  #_home_about_box div ._home_about_catch {
    margin: 4.6rem 0;
    padding: 1.6rem 2rem;
    font-size: 1.2rem;
  }
  #_home_about_box div ul {
    width: 100%;
    flex-flow: column;
  }
  #_home_about_box div ul li {
    width: 100%;
    margin: 0 0 3.6rem 0;
  }
  #_home_about_box div ul li a {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    position: relative;
    width: 100%;
  }
  #_home_about_box div ul li a p {
    width: 80%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0 5%;
    position: absolute;
    bottom: -10%;
    right: 5%;
    background-color: #ffffff;
    padding: 0.8rem 1.6rem;
    border: solid 2px rgb(117, 76, 36);
  }
}
@media screen and (max-width: 480px) {
  #_home_about_box {
    padding: 7.6rem 0 0rem;
  }
  #_home_about_box div h2 {
    width: -moz-fit-content;
    width: fit-content;
    padding: 40px 0 0 40px;
    background-size: 40px;
  }
  #_home_about_box div ._home_about_catch {
    margin: 4.6rem 0;
    padding: 1.6rem 2rem;
    font-size: 1.2rem;
  }
  #_home_about_box div ._home_about_catch .br {
    display: block;
  }
  #_home_about_box div ul {
    width: 100%;
    flex-flow: column;
  }
  #_home_about_box div ul li {
    width: 100%;
    margin: 0 0 3.6rem 0;
  }
  #_home_about_box div ul li a {
    display: flex;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
    position: relative;
    width: 100%;
  }
  #_home_about_box div ul li a p {
    width: 80%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    font-weight: bold;
    margin: 0 5%;
    position: absolute;
    bottom: -10%;
    right: 5%;
    background-color: #ffffff;
    padding: 0.8rem 1.6rem;
    border: solid 2px rgb(117, 76, 36);
  }
}
#_home_recruit_box {
  width: 100%;
  position: relative;
  padding: 200px 0 100px;
}
#_home_recruit_box ._home_recruit_contents {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_text {
  width: calc(42% - (100% - 1100px) / 2);
  margin-left: calc((100% - 1100px) / 2);
  margin-right: 10%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_text h2 {
  width: 100%;
  letter-spacing: 0.6rem;
  text-align: center;
  padding: 100px 0 0 0;
  background-image: url("../../img/home/recruit/clover-1.svg");
  background-position: bottom right;
  background-repeat: no-repeat;
  background-size: 100px;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_text p {
  margin: 3.6rem 0;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.2rem;
  line-height: 2.4rem;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_text p .br {
  display: none;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_text a {
  display: block;
  min-width: 250px;
  color: #ffffff;
  background-color: rgb(117, 76, 36);
  padding: 0.8rem 1.6rem;
  text-align: center;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 15px;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_box {
  width: 50%;
  min-height: 500px;
  position: relative;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div {
  width: 100%;
  height: 500px;
  border-top-left-radius: 50px;
  overflow: hidden;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
     object-fit: cover;
}
#_home_recruit_box ._home_recruit_contents ._home_recruit_item_box span {
  color: #ffffff;
  background-color: #eb6d00;
  position: absolute;
  top: 80px;
  left: -80px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  padding: 1.8rem;
  width: 160px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

._home_recruit_box_bg {
  position: absolute;
  top: -100px;
  left: 0;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  transform: rotate(180deg);
}
._home_recruit_box_bg > svg {
  position: relative;
  display: block;
  width: calc(300% + 1.3px);
  height: 250px;
}
._home_recruit_box_bg > svg .shape-fill {
  fill: #ffffff;
}

@media screen and (min-width: 1100px) and (max-width: 1280px) {
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box {
    width: 50%;
    height: 500px;
    position: relative;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div img {
    height: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text {
    width: 60%;
    margin-left: 0;
    margin-right: 0;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text h2 {
    width: -moz-fit-content;
    width: fit-content;
    padding: 80px 80px 0 80px;
    background-size: 80px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text a {
    font-size: 1.4rem;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box {
    width: 40%;
    min-height: 500px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div img {
    height: 100%;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box span {
    top: 60px;
    left: -60px;
    font-size: 1.2rem;
    padding: 1.2rem;
    width: 120px;
    aspect-ratio: 1/1;
  }
}
@media screen and (min-width: 481px) and (max-width: 767px) {
  #_home_recruit_box {
    width: 100%;
    position: relative;
    padding: 0px 0 250px;
  }
  #_home_recruit_box ._home_recruit_contents {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: column;
    position: relative;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text {
    order: 2;
    width: 80%;
    margin-left: 0;
    margin-right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    position: absolute;
    bottom: -40%;
    left: 10%;
    right: 10%;
    z-index: 1;
    background-color: rgb(255, 243, 218);
    padding: 0.6rem 1.6rem 1.6rem 1.6rem;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text h2 {
    width: -moz-fit-content;
    width: fit-content;
    letter-spacing: 0.6rem;
    text-align: center;
    padding: 80px 80px 0 80px;
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 80px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text p {
    margin: 3.6rem 0;
    font-size: 3.4vw;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.2rem;
    line-height: 2.4rem;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text a {
    padding: 0.8rem 0.8rem;
    font-size: 1rem;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box {
    order: 1;
    width: 100%;
    min-height: 500px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div {
    width: 100%;
    height: 300px;
    border-top-left-radius: 0px;
    overflow: hidden;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box span {
    top: 60%;
    bottom: 0;
    left: 10%;
    font-size: 2.8vw;
    padding: 1.2rem;
    width: 20vw;
    aspect-ratio: 1/1;
    height: 20vw;
    max-width: 120px;
    max-height: 120px;
    z-index: 3;
  }
  ._home_recruit_box_bg {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
    z-index: 2;
  }
  ._home_recruit_box_bg > svg {
    position: relative;
    display: block;
    width: calc(300% + 1.3px);
    height: 120px !important;
  }
  ._home_recruit_box_bg > svg .shape-fill {
    fill: #ffffff;
  }
}
@media screen and (max-width: 480px) {
  #_home_recruit_box {
    width: 100%;
    position: relative;
    padding: 0px 0 250px;
  }
  #_home_recruit_box ._home_recruit_contents {
    width: 100%;
    height: auto;
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-flow: column;
    position: relative;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text {
    order: 2;
    width: 80%;
    margin-left: 0;
    margin-right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    position: absolute;
    bottom: -40%;
    left: 10%;
    right: 10%;
    z-index: 1;
    background-color: rgb(255, 243, 218);
    padding: 0.6rem 1.6rem 1.6rem 1.6rem;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text h2 {
    width: 100%;
    letter-spacing: 0.6rem;
    text-align: center;
    padding: 40px 40px 0 40px;
    background-position: bottom right;
    background-repeat: no-repeat;
    background-size: 40px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text p {
    margin: 2.4rem 0 2.4rem;
    font-size: 4.2vw;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.2rem;
    line-height: 2.4rem;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text p .br {
    display: block;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_text a {
    padding: 0.8rem 0.8rem;
    font-size: 1rem;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box {
    order: 1;
    width: 100%;
    min-height: 500px;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div {
    width: 100%;
    height: 300px;
    border-top-left-radius: 0px;
    overflow: hidden;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box div img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #_home_recruit_box ._home_recruit_contents ._home_recruit_item_box span {
    top: 45%;
    bottom: 0;
    left: 2.5%;
    font-size: 3.2vw;
    padding: 1.2rem;
    width: 25vw;
    aspect-ratio: 1/1;
    height: 25vw;
    max-width: 130px;
    max-height: 130px;
    z-index: 3;
  }
  ._home_recruit_box_bg {
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
    z-index: 2;
  }
  ._home_recruit_box_bg > svg {
    position: relative;
    display: block;
    width: calc(300% + 1.3px);
    height: 120px !important;
  }
  ._home_recruit_box_bg > svg .shape-fill {
    fill: #ffffff;
  }
}
.loop_slider {
  height: 400px;
}
.loop_slider .swiper-wrapper {
  transition-timing-function: linear;
}
.loop_slider .swiper-wrapper .swiper-slide {
  width: 400px;
  height: 300px;
  border-radius: 10px;
  overflow: hidden;
}
.loop_slider .swiper-wrapper .swiper-slide:hover {
  cursor: pointer;
}
.loop_slider .swiper-wrapper .swiper-slide:hover .swiper_img {
  transform: scale(1.2);
  transition: 1s;
}
.loop_slider .swiper-wrapper .swiper-slide img {
  width: 400px;
  height: 300px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: 1s;
}

footer {
  background-color: rgba(255, 255, 255, 0.6);
  height: auto;
}
footer .__footer_width {
  width: calc(100% - (100% - 1100px) / 2);
  margin-left: calc((100% - 1100px) / 2);
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
}
footer .__footer_width .__footer_address {
  width: 45%;
  padding: 5rem 0;
  display: flex;
  flex-flow: column;
  transition: 1s;
}
footer .__footer_width .__footer_address .__footer_logo {
  width: 100%;
  display: flex;
  align-items: center;
}
footer .__footer_width .__footer_address .__footer_logo .logo_img {
  width: 110px;
  height: auto;
}
footer .__footer_width .__footer_address .__footer_logo .logo_img img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
footer .__footer_width .__footer_address .__footer_logo .logo_text {
  font-weight: 800;
  text-align: center;
  margin: 0 0 0 1.2rem;
}
footer .__footer_width .__footer_address .__footer_logo .logo_text span {
  font-size: 1.2rem;
}
footer .__footer_width .__footer_address .__footer_logo .logo_text p {
  font-size: 1.8rem;
  color: rgb(235, 109, 1);
}
footer .__footer_width .__footer_address address {
  width: 90%;
  margin: 3.6rem 0 0 0;
}
footer .__footer_width .__footer_address address ul {
  width: 100%;
}
footer .__footer_width .__footer_address address ul li {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 0.6rem 0;
}
footer .__footer_width .__footer_address address ul li:last-child {
  margin: 0 0 0 0;
}
footer .__footer_width .__footer_address address ul li:last-child .address_title::before {
  width: calc(100% - 85px);
}
footer .__footer_width .__footer_address address ul li .address_title {
  width: 30%;
  position: relative;
}
footer .__footer_width .__footer_address address ul li .address_title::before {
  content: "";
  width: calc(100% - 45px);
  height: 0.5px;
  background-color: rgb(117, 76, 36);
  position: absolute;
  top: 50%;
  right: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  z-index: 0;
}
footer .__footer_width .__footer_address address ul li .address_title p {
  position: relative;
  z-index: 1;
}
footer .__footer_width .__footer_address address ul li .address_contents {
  width: calc(70% - 20px);
  margin: 0 0 0 20px;
}
footer .__footer_width .__footer_address address ul li .address_contents br {
  display: none;
}
footer .__footer_width .__footer_map {
  width: 55%;
  height: auto;
  transition: 1s;
}
footer .__footer_width nav {
  width: 1100px;
  border-top: solid 1px rgb(117, 76, 36);
  margin-top: 1.4rem;
  padding: 3.6rem 0;
  transition: 1s;
}
footer .__footer_width nav ul {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
footer .__footer_width nav ul li {
  width: 14.2857142857%;
  border-right: solid 1px rgb(117, 76, 36);
  display: flex;
  align-items: center;
  font-weight: bold;
}
footer .__footer_width nav ul li a {
  width: 100%;
  display: block;
  padding: 0.6rem 0 0.6rem 0.6rem;
  text-align: center;
}
footer .__footer_width nav ul li:last-child {
  border-right: none;
}
footer .copyright {
  width: 100%;
  height: auto;
  padding: 1.6rem 0;
  background-color: rgb(117, 76, 36);
  color: rgb(255, 243, 218);
  font-size: 0.6rem;
  text-align: center;
  -moz-text-align-last: center;
       text-align-last: center;
}
footer .copyright .br {
  display: none;
}

@media screen and (min-width: 1025px) and (max-width: 1280px) {
  footer {
    background-color: rgba(255, 255, 255, 0.6);
    height: auto;
  }
  footer .__footer_width {
    width: 100%;
    margin-left: 0;
    flex-flow: wrap;
    flex-wrap: wrap;
  }
  footer .__footer_width .__footer_address {
    order: 3;
    width: 55%;
    margin-left: 5%;
    height: 350px;
    padding: 4.2rem 0 5rem;
    display: flex;
    flex-flow: column;
    transition: 1s;
  }
  footer .__footer_width .__footer_address address {
    margin: 1.6rem 0 0 0;
  }
  footer .__footer_width .__footer_address address .address_contents br {
    display: none;
  }
  footer .__footer_width .__footer_map {
    width: 100%;
    height: 350px;
    order: 1;
    transition: 1s;
  }
  footer .__footer_width nav {
    order: 3;
    width: 35%;
    margin: unset;
    margin-right: 5%;
    border-top: none;
    margin-top: 1.4rem;
    padding: 3.6rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    transition: 1s;
  }
  footer .__footer_width nav::before {
    content: "メニュー";
    width: 100%;
    padding: 0 0 0.8rem 0;
    border-bottom: solid 1.5px rgb(117, 76, 36);
    text-align: left;
    font-weight: bold;
  }
  footer .__footer_width nav ul {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  footer .__footer_width nav ul li {
    width: 50%;
    border-right: none;
    display: flex;
    align-items: center;
    font-weight: bold;
  }
  footer .__footer_width nav ul li a {
    width: 100%;
    display: block;
    padding: 0.6rem 0 0.6rem 0.6rem;
    text-align: left;
  }
  footer .__footer_width nav ul li a::before {
    content: "●";
    margin: 0 10px 0 0;
    color: rgb(235, 109, 1);
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  footer {
    background-color: rgba(255, 255, 255, 0.6);
    height: auto;
  }
  footer .__footer_width {
    width: 100%;
    margin-left: 0;
    flex-flow: wrap;
    flex-wrap: wrap;
  }
  footer .__footer_width .__footer_address {
    order: 3;
    width: 52%;
    margin-left: 5%;
    height: 350px;
    padding: 4.2rem 0 5rem;
    display: flex;
    flex-flow: column;
    transition: 1s;
  }
  footer .__footer_width .__footer_address address {
    margin: 1.6rem 0 0 0;
  }
  footer .__footer_width .__footer_address address .address_contents br {
    display: block !important;
  }
  footer .__footer_width .__footer_map {
    width: 100%;
    height: 350px;
    order: 1;
    transition: 1s;
  }
  footer .__footer_width nav {
    order: 3;
    width: 38%;
    margin: unset;
    margin-right: 5%;
    border-top: none;
    margin-top: 1.4rem;
    padding: 3.6rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    transition: 1s;
  }
  footer .__footer_width nav::before {
    content: "メニュー";
    width: 100%;
    padding: 0 0 0.8rem 0;
    border-bottom: solid 1.5px rgb(117, 76, 36);
    text-align: left;
    font-weight: bold;
  }
  footer .__footer_width nav ul {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }
  footer .__footer_width nav ul li {
    width: 50%;
    border-right: none;
    display: flex;
    align-items: center;
    font-weight: bold;
    font-size: 0.9rem;
  }
  footer .__footer_width nav ul li a {
    width: 100%;
    display: block;
    padding: 0.6rem 0 0.6rem 0.6rem;
    text-align: left;
  }
  footer .__footer_width nav ul li a::before {
    content: "●";
    margin: 0 10px 0 0;
    color: rgb(235, 109, 1);
  }
}
@media screen and (min-width: 481px) and (max-width: 767px) {
  footer {
    background-color: rgba(255, 255, 255, 0.6);
    height: auto;
  }
  footer .__footer_width {
    width: 100%;
    margin-left: 0;
    flex-flow: wrap;
    flex-wrap: wrap;
  }
  footer .__footer_width .__footer_address {
    order: 3;
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    height: auto;
    padding: 4.2rem 0 0rem;
    display: flex;
    flex-flow: column;
    transition: 1s;
  }
  footer .__footer_width .__footer_address .__footer_logo {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_img {
    width: 90px;
    height: auto;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_img img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text {
    font-weight: 800;
    text-align: center;
    margin: 0 0 0 1.2rem;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text span {
    font-size: 1rem;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text p {
    font-size: 1.6rem;
    color: rgb(235, 109, 1);
  }
  footer .__footer_width .__footer_address address {
    margin: 1.6rem 5% 0 5%;
  }
  footer .__footer_width .__footer_address address .address_contents br {
    display: block !important;
  }
  footer .__footer_width .__footer_map {
    width: 100%;
    height: 350px;
    order: 1;
    transition: 1s;
  }
  footer .__footer_width nav {
    order: 3;
    width: 90%;
    margin: unset;
    margin-right: 5%;
    margin-left: 5%;
    border-top: none;
    margin-top: 0;
    padding: 3.6rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    transition: 1s;
  }
  footer .__footer_width nav::before {
    content: "メニュー";
    width: 100%;
    padding: 0 0 0.8rem 0;
    border-bottom: solid 1.5px rgb(117, 76, 36);
    text-align: left;
    font-weight: bold;
  }
  footer .__footer_width nav ul {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 1.6rem;
  }
  footer .__footer_width nav ul li {
    width: 50%;
    border-right: none;
    display: flex;
    align-items: center;
    font-weight: bold;
  }
  footer .__footer_width nav ul li a {
    width: 100%;
    display: block;
    padding: 0.6rem 0 0.6rem 0.6rem;
    text-align: left;
  }
  footer .__footer_width nav ul li a::before {
    content: "●";
    margin: 0 10px 0 0;
    color: rgb(235, 109, 1);
  }
}
@media screen and (max-width: 480px) {
  footer {
    background-color: rgba(255, 255, 255, 0.6);
    height: auto;
  }
  footer .__footer_width {
    width: 100%;
    margin-left: 0;
    flex-flow: wrap;
    flex-wrap: wrap;
  }
  footer .__footer_width .__footer_address {
    order: 3;
    width: 90%;
    margin-left: 5%;
    margin-right: 5%;
    height: auto;
    padding: 4.2rem 0 0rem;
    display: flex;
    flex-flow: column;
    justify-content: center;
    transition: 1s;
  }
  footer .__footer_width .__footer_address .__footer_logo {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_img {
    width: 90px;
    height: auto;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_img img {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text {
    font-weight: 800;
    text-align: center;
    margin: 0 0 0 1.2rem;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text span {
    font-size: 1rem;
  }
  footer .__footer_width .__footer_address .__footer_logo .logo_text p {
    font-size: 1.6rem;
    color: rgb(235, 109, 1);
  }
  footer .__footer_width .__footer_address address {
    margin: 1.6rem 0 0 0;
  }
  footer .__footer_width .__footer_address address .address_title {
    font-size: 0.9rem;
  }
  footer .__footer_width .__footer_address address .address_contents {
    font-size: 0.9rem;
  }
  footer .__footer_width .__footer_address address .address_contents br {
    display: block !important;
  }
  footer .__footer_width .__footer_map {
    width: 100%;
    height: 350px;
    order: 1;
    transition: 1s;
  }
  footer .__footer_width nav {
    order: 3;
    width: 90%;
    margin: unset;
    margin-right: 5%;
    margin-left: 5%;
    border-top: none;
    margin-top: 0;
    padding: 3.6rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    transition: 1s;
  }
  footer .__footer_width nav::before {
    content: "メニュー";
    width: 100%;
    padding: 0 0 0.8rem 0;
    border-bottom: solid 1.5px rgb(117, 76, 36);
    text-align: left;
    font-weight: bold;
  }
  footer .__footer_width nav ul {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 1.6rem;
  }
  footer .__footer_width nav ul li {
    width: 50%;
    border-right: none;
    display: flex;
    align-items: center;
    font-weight: bold;
  }
  footer .__footer_width nav ul li a {
    width: 100%;
    display: block;
    padding: 0.6rem 0 0.6rem 0.6rem;
    text-align: left;
  }
  footer .__footer_width nav ul li a::before {
    content: "●";
    margin: 0 10px 0 0;
    color: rgb(235, 109, 1);
  }
  .copyright {
    width: 100%;
    height: auto;
    padding: 1.6rem 0;
    background-color: rgb(117, 76, 36);
    color: rgb(255, 243, 218);
    font-size: 0.6rem;
    line-height: 1.2rem;
    text-align: center;
    -moz-text-align-last: center;
         text-align-last: center;
  }
  .copyright .br {
    display: block !important;
  }
}/*# sourceMappingURL=style.css.map */