@charset "UTF-8";

/* 共通 ベース base
----------------------------------------------- */
body {
  font-size: 16px;
  color: #000;
  position: relative;
}
.container {
  max-width: 1500px;
  width: 90%;
  margin: 0 auto;
}
.container_inner {
  max-width: 1150px;
  width: 100%;
  margin: 0 auto;
}
h2 {
  font-size: 42px;
}
p {
  font-size: 18px;
  line-height: 1.6;
}
img {
  width: unset;
  max-width: 100%;
  height: auto;
}

.bold {
  font-weight: bold;
}
.normal {
  font-weight: normal;
}
.relative {
  position: relative;
}

.a_none {
  pointer-events: none;
}
a img {
  transition: 0.3s ease;
}
a:hover,
a:hover img {
  opacity: 0.7;
  transition: 0.3s ease;
}

.mincho {
  font-family: "Shippori Mincho", serif;
  font-weight: 400;
  font-style: normal;
}

.sp {
  display: none;
}
.pc {
  display: block;
}




@media only screen and (max-width: 1500px) {
  body {
    font-size: 14px;
  }
  .container {
    max-width: 1000px;
  }
  .container_inner {
    max-width: 790px;
  }
  h2 {
    font-size: 29px;
  }
  p {
    font-size: 14px;
    line-height: 1.6;
  }
}

@media only screen and (max-width: 750px) {
  h2 {
    font-size: 43px;
    font-size: 5.7vw;
  }
  p {
    font-size: 18px;
    font-size: 2.4vw;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}




/* header・footer共通
----------------------------------------------- */
.online_area .online_btn {
  display: block;
  color: #545454;
  background-color: #fff;
  text-align: center;
  width: 190px;
  padding: 12px;
  font-size: 10px;
}
.online_area .icon i {
  font-size: 20px;
  color: #fff;
}
.online_area .icon.insta i {
  font-size: 24px;
}
.online_area .icon img {
  width: 21px;
  height: auto;
}



@media only screen and (max-width: 1000px) {

}

@media only screen and (max-width: 750px) {
  .online_area .icon i {
    font-size: 3.8vw;
  }
  .online_area .icon.insta i {
    font-size: 5vw;
  }
}




/* header
----------------------------------------------- */
header {
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  width: 100%;
  z-index: 100;
}
header .container {
  max-width: 1000px;
}
header .header_inner {
  padding: 60px 30px 30px;
  position: relative;
}
header .h_online_area {
  gap: 0 10px;
}
header .h_online_area .icon img {
  width: 24px;
}
header .h_online_area .online_btn {
  display: block;
  font-size: 10px;
  color: #545454;
  border: 1px solid #545454;
  border-radius: 50px;
  text-align: center;
  padding: 8px;
  width: 130px;
  margin-left: 10px;
}
header .h_logo_area {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  width: 70px;
}
.global-nav {
  position: absolute;
  top: 50px;
  right: 0;
  background-color: rgba(239,242,242,0.8);
  padding: 80px 50px 40px 30px;
  border-radius: 20px;
  width: 265px;
  display: none;
  opacity: 0;
  z-index: 200;
}
.global-nav ul li {
  margin-bottom: 10px;
}
.global-nav ul li:nth-of-type(4) {
  margin-bottom: 30px;
}
.global-nav ul li a {
  font-size: 12px;
}
header .h_menu_area .online_area .online_btn {
  color: #fff;
  background-color: #000;
  margin: 40px 0 15px;
}
header .h_menu_area .online_area .icon_area {
  gap: 0 15px;
}
header .h_menu_area .online_area .icon i {
  color: #545454;
}
.hamburger {
  position: absolute;
  right: 0;
  top: 50px;
  width: 62px;
  /* クリックしやすいようにちゃんと幅を指定する */
  height: 62px;
  /* クリックしやすいようにちゃんと高さを指定する */
  cursor: pointer;
  z-index: 300;
}
.hamburger__line {
  position: absolute;
  right: 18px;
  width: 30px;
  height: 1px;
  background-color: #231815;
  transition: all .6s;
}
.hamburger__line--1 {
  top: 15px;
}
.hamburger__line--2 {
  top: 24px;
}
.hamburger__line--3 {
  top: 33px;
}

/* open時 */
.nav-open .global-nav {
  display: block;
  animation-name: fadeIn;
  animation-fill-mode:forwards;
  animation-duration:1s;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}
.nav-open .hamburger__line--1 {
  transform: rotate(45deg);
  top: 26px;
}
.nav-open .hamburger__line--2 {
  width: 0;
  right: 50%;
}
.nav-open .hamburger__line--3 {
  transform: rotate(-45deg);
  top: 26px;
}


@media only screen and (max-width: 1000px) {

}

@media only screen and (max-width: 750px) {
  header .header_inner {
    padding: 5vw 8vw 4vw 4vw;
  }
  header .h_logo_area {
    left: 5%;
    width: 9vw;
  }
  header .h_online_area .online_btn {
    margin-left: auto;
    font-size: 13px;
    font-size: 1.7vw;
    width: 170px;
    width: 23vw;
    padding: 1.3vw 0 1vw;
  }
  header .h_online_area .icon {
    display: none;
  }
  header .h_menu_area .online_area .online_btn {
    width: 300px;
    width: 40vw;
    font-size: 16px;
    font-size: 2.1vw;
    padding: 2vw;
  }
  header .h_menu_area .online_area .icon_area {
    gap: 0 2vw;
  }
  .global-nav {
    top: 2vw;
    right: -25px;
    right: -3.5vw;
    width: 520px;
    width: 68vw;
    padding: 16vw 6vw 6vw 6vw;
    background-color: rgba(239,242,242,0.9);
  }
  .global-nav ul li {
    margin-bottom: 4vw;
  }
  .global-nav ul li:nth-of-type(4) {
    margin-bottom: 8vw;
  }
  .global-nav ul li a {
    font-size: 24px;
    font-size: 3.2vw;
  }
  .hamburger {
    top: 3.5vw;
    right: -25px;
    right: -3.5vw;
    width: 9.5vw;
    height: 9vw;
  }
  .hamburger__line {
    width: 50px;
    width: 6.6vw;
    right: 12px;
    right: 1.6vw;
  }
  .hamburger__line--1 {
    top: 15px;
    top: 2vw;
  }
  .hamburger__line--2 {
    top: 30px;
    top: 4vw;
  }
  .hamburger__line--3 {
    top: 45px;
    top: 6vw;
  }
  .nav-open .hamburger__line--1 {
    top: 4vw;
  }
  .nav-open .hamburger__line--2 {
    width: 0;
    right: 50%;
  }
  .nav-open .hamburger__line--3 {
    top: 4vw;
  }
}

@media only screen and (max-width: 479px) {
  header .header_inner {
    padding: 6vw 10vw 4vw 4vw;
  }
  header .h_logo_area {
    width: 12vw;
  }
  header .h_online_area .online_btn {
    font-size: 2.5vw;
    width: 30vw;
    padding: 1.8vw 0 1.5vw;
  }
  .hamburger {
    top: 4vw;
    width: 11vw;
    height: 10vw;
  }
  .hamburger__line {
    width: 7.5vw;
  }
  .hamburger__line--2 {
    top: 4.5vw;
  }
  .hamburger__line--3 {
    top: 7vw;
  }
}







/* contents
----------------------------------------------- */
/* 共通 */
.wrapper {
  padding-top: 120px;  /* header固定分 */
}
.side {
  position: relative;
}
.side_title {
  position: absolute;
  top: 0;
  right: 20px;
}
.side_title p {
  color: #a0a0a0;
  font-size: 15px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.half_box {
  width: 50%;
}
section {
  padding: 0 0 100px;
}
.link {
  margin-top: -120px;
  padding-top: 120px;
}



/* main_slider */
.main_area {
  padding: 0;
}
.main_area ul li {
  position: relative;
}
.main_area ul li img {
  width: 100%;
}
.main_area ul li p {
  position: absolute;
  left: 3%;
  bottom: 5%;
  color: #fff;
  font-size: 20px;
}


/*@media only screen and (max-width: 1500px) {
  .side_title {
    right: -30px;
  }
  .main_area ul li p {
    font-size: 1vw;
  }
}*/

@media only screen and (max-width: 1500px) {
  .side_title p {
    font-size: 10px;
  }
}

@media only screen and (max-width: 1000px) {
  .side_title {
    right: -30px;
  }
}


@media only screen and (max-width: 750px) {
  .wrapper {
    padding-top: 13.5vw;  /* header固定分 */
  }
  .side_title {
    display: none;
  }
  .main_area ul li p {
    font-size: 17px;
    font-size: 2.3vw;
  }
  .half_box {
    width: 100%;
  }
  section {
    padding: 0 0 12vw;
  }
  .sp_r {
    -webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
  }
  .link {
    margin-top: -18vw;
    padding-top: 18vw;
  }

  /* アコーディオン */
  .more_hide {
    height: 0;
    overflow: hidden;
    transition: all .3s;
  }
  .more_btn {
    text-align: center;
    padding-bottom: 12vw;
  }
  .more_btn button {
    font-size: 27px;
    font-size: 3.6vw;
    display: inline-block;
    border-bottom: 1px solid #000;
    text-align: center;
    cursor: pointer;
    transition: all .3s;
    position: relative;
    background-color: transparent;
    padding: 0 5vw 1vw 3vw;
    letter-spacing: 1px;
  }
  .more_btn button::after {
    content: '\f107';
    font-family: "Font Awesome 5 Free";
    font-weight: 700;
    position: absolute;
    top: 40%;
    right: 5px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    color: #000;
    font-size: 2.5vw;
  }
  .arrow_btn button {
    cursor: pointer;
    transition: all .3s;
    background-color: transparent;
    padding: 4vw 0;
    width: 100%;
    display: block;
  }
  .arrow_btn button span i {
    color: #fff;
    font-size: 5.5vw;
  }
  .arrow_btn button span.down {
    display: block;
  }
  .arrow_btn button span.up {
    display: none;
  }

  .more_hide.is_open {
    margin-bottom: 12vw;
  }
  .more_btn.open button::after {
    content: '\f106';
  }
  .arrow_btn.open button span.down {
    display: none;
  }
  .arrow_btn.open button span.up {
    display: block;
  }
}


@media only screen and (max-width: 479px) {
  .wrapper {
    padding-top: 16.5vw;  /* header固定分 */
  }
}


/* link_area */
.link_area {
  padding: 0 0 60px;
}
.link_area .container {
  max-width: 1200px;
}
.link_area ul {
  width: 80%;
  margin: 30px auto;
  gap: 20px 30px;
}
.link_area ul li {
  width: calc( 100% / 4 - 22.5px );
}
.link_area ul li a {
  font-size: 14px;
  letter-spacing: 0;
  display: block;
  color: #a0a0a0;
  text-align: center;
  border-bottom: 1px solid #a0a0a0;
  position: relative;
  padding: 5px 0 5px 10px;
}
.link_area ul li a::before {
  content: '\f107';
  font-family: "Font Awesome 5 Free";
  font-weight: 700;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  color: #a0a0a0;
}



@media only screen and (max-width: 1500px) {
  .link_area ul li a {
    font-size: 12px;
  }
}

@media only screen and (max-width: 750px) {
  .link_area {
    padding: 0 0 8vw;
  }
  .link_area ul {
    width: 100%;
    margin: 3vw auto;
    gap: 2.6vw 4vw;
  }
  .link_area ul li {
    width: calc( 100% / 2 - 2vw );
  }
  .link_area ul li a {
    font-size: 20px;
    font-size: 2.6vw;
  }
  .link_area ul li a::before {
    font-size: 14px;
    font-size: 1.8vw;
  }
}






/* about_area */
.about_area {

}
.about_area .concept_area {
  margin-bottom: 120px;
}
.about_area .concept_area img {
  width: 420px;
  margin: 90px auto;
}
.about_area .concept_area .vertical_p {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  margin: 0 auto;
  line-height: 2.5;
  font-size: 22.5px;
  letter-spacing: 3px;
}
.about_area .start_area .half_box img {
  width: 100%;
}
.about_area .start_area .start_text {
  padding: 0px 120px;
}
.about_area .start_area .start_text h3.mincho {
  font-size: 19.5px;
  margin-bottom: 45px;
}
.about_area .start_area .start_text p {
  font-size: 16.5px;
  text-align: justify;
}
.about_area .start_area .start_p {
  font-size: 24px;
  text-align: center;
  margin-top: 120px;
}



@media only screen and (max-width: 1500px) {
  .about_area .concept_area {
    margin-bottom: 80px;
  }
  .about_area .concept_area img {
    width: 295px;
    margin: 60px auto;
  }
  .about_area .concept_area .vertical_p {
    font-size: 15px;
  }
  .about_area .start_area .start_text {
    padding: 0px 80px;
  }
  .about_area .start_area .start_text h3.mincho {
    font-size: 13px;
    margin-bottom: 30px;
  }
  .about_area .start_area .start_text p {
    font-size: 11px;
  }
  .about_area .start_area .start_p {
    font-size: 16px;
    margin-top: 80px;
  }
}

@media only screen and (max-width: 750px) {
  .about_area {
    padding: 0 0 0;
  }
  .about_area .concept_area {
    margin-bottom: 10vw;
  }
  .about_area .concept_area img {
    width: 420px;
    width: 56vw;
    margin: 8vw auto;
  }
  .about_area .concept_area .vertical_p {
    writing-mode: unset;
    text-align: center;
    line-height: 1.8;
    letter-spacing: 1px;
    font-size: 23px;
    font-size: 3vw;
  }
  .about_area .start_area .container {
    width: 100%;
  }
  .about_area .start_area .start_text {
    padding: 60px 30px;
    padding: 8vw 4vw;
  }
  .about_area .start_area .start_text h3.mincho {
    font-size: 15px;
    font-size: 2vw;
  }
  .about_area .start_area .start_text p {
    font-size: 22px;
    font-size: 3vw;
  }
  .about_area .start_area .start_p {
    font-size: 18px;
    font-size: 2.4vw;
    margin-top: 30px;
    margin-top: 4vw;
  }
}




/* oinari_area */
.oinari_area {

}
.oinari_area .bg_gray {
  background-color: #eff2f2;
  background-image: url(../images/oinari_bg.png);
  background-repeat: no-repeat;
  background-size: 95%;
  background-position: center;
  border-radius: 30px;
  padding: 90px 180px;
}
.oinari_area .bg_gray .oinari_title {
  margin-bottom: 75px;
}
.oinari_area .bg_gray .oinari_title h2 {
  width: 550px;
  margin: 45px auto 15px;
}
.oinari_area .oinari_box {
  margin-bottom: 45px;
}
.oinari_area .oinari_box .oinari_img {
  width: 50%;
}
.oinari_area .oinari_box .oinari_text {
  width: 50%;
}
.oinari_area .oinari_box .oinari_text p {
  font-size: 20px;
}
.oinari_area .oinari_box .oinari_text p.bold {
  margin-bottom: 30px;
}





@media only screen and (max-width: 1500px) {
  .oinari_area .bg_gray {
    border-radius: 20px;
    padding: 60px 120px;
  }
  .oinari_area .bg_gray .oinari_title {
    margin-bottom: 50px;
  }
  .oinari_area .bg_gray .oinari_title h2 {
    width: 440px;
    margin: 30px auto 10px;
  }
  .oinari_area .oinari_box {
    margin-bottom: 30px;
  }
  .oinari_area .oinari_box .oinari_img img {
    width: 90%;
  }
  .oinari_area .oinari_box .oinari_text p {
    font-size: 14px;
  }
  .oinari_area .oinari_box .oinari_text p.bold {
    margin-bottom: 20px;
  }
}

@media only screen and (max-width: 750px) {
  .oinari_area .bg_gray {
    padding: 50px 0;
    padding: 7vw 0;
  }
  .oinari_area .bg_gray .oinari_title {
    margin-bottom: 4vw;
  }
  .oinari_area .bg_gray .oinari_title > img {
    width: 40px;
    width: 5.5vw;
  }
  .oinari_area .bg_gray .oinari_title h2 {
    width: 615px;
    width: 80vw;
    margin: 4.5vw auto 3vw;
  }
  .oinari_area .bg_gray .oinari_title p {
    font-size: 20px;
    font-size: 2.7vw;
  }
  .oinari_area .oinari_box {
    margin-bottom: 5vw;
  }
  .oinari_area .oinari_box .oinari_img {
    width: 100%;
    margin: 0 auto 4vw;
    text-align: center;
  }
  .oinari_area .oinari_box .oinari_img img.oinari_img01 {
    width: 100%;
  }
  .oinari_area .oinari_box .oinari_text {
    width: 100%;
  }
  .oinari_area .oinari_box .oinari_text p.bold {
    font-size: 35px;
    font-size: 4.6vw;
    text-align: center;
    margin: 2vw auto 4vw;
  }
  .oinari_area .oinari_box .oinari_text p:not(.bold) {
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack: center;
  	-ms-flex-pack: center;
  	justify-content: center;
    font-size: 22px;
    font-size: 3vw;
  }
  .oinari_area .oinari_box .oinari_img img.oinari_img02 {
    width: 310px;
    width: 42vw;
  }
  .oinari_area .bg_gray > p {
    text-align: center;
    font-size: 22px;
    font-size: 3vw;
  }
}



/* shop_area */
.shop_area {
  padding: 0 0 225px;
}
.shop_area h2 {
  width: 95px;
  margin-bottom: 45px;
}
.shop_area .shop_wrap {
  gap: 90px 37px;
}
.shop_area .shop_wrap:first-of-type {
  margin-bottom: 90px;
}
.shop_area .shop_wrap .shop_box {
  width: calc( 100% / 3 - 24.7px );
  position: relative;
  padding-bottom: 30px;
}
.shop_area .shop_wrap .shop_box img {
  margin-bottom: 15px;
}
.shop_area .shop_wrap .shop_box h3 {
  font-size: 22px;
  font-weight: 700;
  min-height: 55px;
  margin-bottom: 15px;
}
.shop_area .shop_wrap .shop_box p {
  font-size: 16px;
}
.shop_area .shop_wrap .shop_box .shop_p {
  margin-bottom: 30px;
}
.shop_area .shop_wrap .shop_box .shop_address dl {
  margin: 15px 0;
}
.shop_area .shop_wrap .shop_box .shop_address dl dt {
  width: 20%;
}
.shop_area .shop_wrap .shop_box .shop_address dl dd {
  width: 80%;
}
.shop_area .shop_wrap .shop_box a.map {
  display: block;
  font-size: 18px;
  /*border-bottom: 1px solid;*/
  text-decoration: underline;
  position: absolute;
  bottom: 0;
  left: 0;
}



@media only screen and (max-width: 1500px) {
  .shop_area {
    padding: 0 0 150px;
  }
  .shop_area h2 {
    width: 65px;
    margin-bottom: 30px;
  }
  .shop_area .shop_wrap {
    gap: 60px 25px;
  }
  .shop_area .shop_wrap:first-of-type {
    margin-bottom: 60px;
  }
  .shop_area .shop_wrap .shop_box {
    width: calc( 100% / 3 - 16.7px );
    padding-bottom: 20px;
  }
  .shop_area .shop_wrap .shop_box img {
    margin-bottom: 10px;
  }
  .shop_area .shop_wrap .shop_box h3 {
    font-size: 15px;
    min-height: 40px;
    margin-bottom: 10px;
  }
  .shop_area .shop_wrap .shop_box p {
    font-size: 11px;
  }
  .shop_area .shop_wrap .shop_box .shop_p {
    margin-bottom: 20px;
  }
  .shop_area .shop_wrap .shop_box .shop_address dl {
    margin: 10px 0;
  }
  .shop_area .shop_wrap .shop_box a.map {
    font-size: 12px;
  }
}

@media only screen and (max-width: 750px) {
  .shop_area {
    padding: 0 0 0;
  }
  .shop_area h2 {
    width: 120px;
    width: 16vw;
    margin: 0 auto 4vw;
  }
  .shop_area .shop_wrap {
    gap: 8vw 0;
  }
  .shop_area .shop_wrap:first-of-type {
    margin-bottom: 8vw;
  }
  .shop_area .shop_wrap .shop_box {
    width: 100%;
    position: unset;
    padding-bottom: 0;
  }
  .shop_area .shop_wrap .shop_box .shop_text {
    position: relative;
  }
  .shop_area .shop_wrap .shop_box h3 {
    font-size: 35px;
    font-size: 4.6vw;
    margin: 2.6vw 0;
  }
  .shop_area .shop_wrap .shop_box p {
    font-size: 22px;
    font-size: 3vw;
  }
  .shop_area .shop_wrap .shop_box .shop_p {
    margin-bottom: 4.6vw;
  }
  .shop_area .shop_wrap .shop_box a.map {
    display: block;
    font-size: 22px;
    font-size: 3vw;
    bottom: unset;
    left: unset;
    top: 0;
    right: 0;
  }
}




/* local_area */
.local_area {

}
.local_area .local_bg img {
  margin: 0 auto;
}
.local_area .local_main {
  text-align: center;
  margin: 120px 0 90px;
}
.local_area .local_main h2 {
  margin-bottom: 75px;
}
.local_area .local_main p {
  font-size: 19.5px;
}
.local_area .local_box {
  width: 50%;
}
.local_area .local_box.unzen {
  background-color: #73c0f9;
  padding: 90px 90px 90px 135px;
}
.local_area .local_box p {
  font-size: 18px;
  text-align: justify;
}
.local_area .local_box h2 {
  max-width: 450px;
  width: 100%;
  margin: 0 auto 30px;
}
.local_area .local_box h3 {
  font-size: 37.5px;
  margin-bottom: 30px;
}
.local_area .local_box .local_about {
  margin: 30px 0;
}
.local_area .local_box .local_about p {
  letter-spacing: 0;
}
.local_area .local_box .local_about_img {
  height: 180px;
  text-align: center;
}
.local_area .local_box .local_inner {
  border-top: 1px solid #545454;
  padding-top: 45px;
  margin-top: 45px;
}
.local_area .local_box .local_inner:first-of-type {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}
.local_area .local_box .unzen_img02 {
  width: 250px;
  margin: 0 auto;
}
.local_area .local_box .unzen_img03 {
  width: 210px;
  margin-bottom: 15px;
}
.local_area .local_box .unzen_img04 {
  width: 260px;
  position: absolute;
  right: -50px;
  top: -50px;
}
.local_area .local_box .unzen_img05 {
  margin-top: 60px;
}
.local_area .local_box a {
  font-size: 18px;
  display: block;
  margin: 30px 0 30px;
  text-decoration: underline;
}
.local_area .local_box.soeda {
  background-color: #c5c5c5;
  padding: 90px 135px 90px 90px;
}
.local_area .local_box .soeda_box {
  margin-bottom: 60px;
}
.local_area .local_box .soeda_box:last-of-type {
  margin-bottom: 0;
}
.local_area .local_box .soeda_box img {
  width: 35%;
  align-self: flex-start;
}
.local_area .local_box .soeda_box .soeda_text {
  width: 61%;
}
.local_area .local_box .soeda_box .soeda_text p:not(.small) {
  margin-bottom: 15px;
}
.local_area .local_box .soeda_box .soeda_text .small {
  font-size: 15px;
  line-height: 1.6;
}


@media only screen and (max-width: 1500px) {
  .local_area .local_main {
    margin: 80px 0 60px;
  }
  .local_area .local_main h2 {
    margin-bottom: 50px;
  }
  .local_area .local_main p {
    font-size: 13px;
  }
  .local_area .local_box.unzen {
    padding: 60px 60px 60px 90px;
  }
  .local_area .local_box p {
    font-size: 12px;
  }
  .local_area .local_box h2 {
    max-width: 305px;
    margin: 0 auto 20px;
  }
  .local_area .local_box h3 {
    font-size: 25px;
    margin-bottom: 20px;
  }
  .local_area .local_box .local_about {
    margin: 20px 0;
  }
  .local_area .local_box .local_about_img {
    height: 120px;
  }
  .local_area .local_box .local_inner {
    padding-top: 30px;
    margin-top: 30px;
  }
  .local_area .local_box .unzen_img02 {
    width: 165px;
  }
  .local_area .local_box .unzen_img03 {
    width: 140px;
    margin-bottom: 10px;
  }
  .local_area .local_box .unzen_img04 {
    width: 170px;
    right: -30px;
    top: -30px;
  }
  .local_area .local_box .unzen_img05 {
    margin-top: 40px;
  }
  .local_area .local_box a {
    font-size: 12px;
    margin: 20px 0 20px;
  }
  .local_area .local_box.soeda {
    padding: 60px 90px 60px 60px;
  }
  .local_area .local_box .soeda_box {
    margin-bottom: 40px;
  }
  .local_area .local_box .soeda_box .soeda_text .small {
    font-size: 10px;
  }
}

@media only screen and (max-width: 750px) {
  .local_area .local_bg img {
    width: 70vw;
  }
  .local_contents .container {
    width: 100%;
  }
  .local_area .local_main {
    margin: 10vw 0 15vw;
  }
  .local_area .local_main h2 {
    margin-bottom: 6vw;
  }
  .local_area .local_box h3 {
    font-size: 42px;
    font-size: 5.6vw;
    margin-bottom: 2vw;
  }
  .local_area .local_main p {
    font-size: 26px;
    font-size: 3.5vw;
  }
  .local_area .local_box {
    width: 100%;
  }
  .local_area .local_box.unzen {
    padding: 10vw 5vw 2vw;
  }
  .local_area .local_box h2 {
    width: 90%;
    margin: 0 auto 4vw;
    text-align: center;
  }
  .local_area .local_box p {
    font-size: 24px;
    font-size: 3.2vw;
  }
  .local_area .local_box .local_about {
    margin: 5vw 0;
  }
  .local_area .local_box .local_about_img {
    height: 220px;
    height: 30vw;
  }
  .local_area .local_box .local_inner {
    padding-top: 6vw;
    margin-top: 6vw;
  }
  .local_area .local_box .unzen_img02 {
    width: 330px;
    width: 44vw;
  }
  .local_area .local_box .unzen_img03 {
    width: 285px;
    width: 38vw;
    margin-bottom: 4vw;
  }
  .local_area .local_box .unzen_img04 {
    width: 340px;
    width: 45vw;
    top: -13vw;
    right: -1vw;
  }
  .local_area .local_box .unzen_img05 {
    margin-top: 0;
  }
  .local_area .local_box.unzen h3 {
    font-size: 50px;
    font-size: 6.6vw;
    margin-bottom: 4vw;
  }
  .local_area .local_box a {
    font-size: 25px;
    font-size: 3.3vw;
    margin: 4vw 0 8vw;
  }
  .local_area .local_box.soeda {
    padding: 10vw 5vw 2vw;
  }
  .local_area .sp_flex {
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    gap: 8vw 6vw;
  }
  .local_area .local_box .soeda_box {
    width: calc( 100% / 2 - 3vw );
    margin-bottom: 0;
  }
  .local_area .local_box .soeda_box img {
    width: 100%;
  }
  .local_area .local_box .soeda_box .soeda_text {
    width: 100%;
  }
  .local_area .local_box .soeda_box .soeda_text p:not(.small) {
    margin: 4vw 0;
  }
  .local_area .local_box .soeda_box .soeda_text .small {
    font-size: 24px;
    font-size: 3.2vw;
    line-height: 1.5;
  }
}




/* onlineshop_area */
.onlineshop_area {

}



@media only screen and (max-width: 1000px) {

}

@media only screen and (max-width: 750px) {

}





/* footer
----------------------------------------------- */
footer {
  padding: 50px 0 30px;
  background-color: #000;
}
footer a {
  color: #fff;
}

footer .container {
  max-width: 1000px;
  padding: 0 60px;
}
footer .footer_address {
  width: 45%;
}
footer .footer_address .f_logo_area {
  margin-bottom: 30px;
}
footer .footer_address .f_logo_area .f_logo {
  width: 70px;
}
footer .footer_address .f_address_area p {
  font-size: 12px;
  color: #fff;
}
footer .footer_menu {
  width: 45%;
}
footer .footer_menu .menu_area ul {
  width: 50%;
  margin-bottom: 20px;
}
footer .footer_menu .menu_area ul li {
  margin-bottom: 15px;
}
footer .footer_menu .menu_area ul li:last-of-type {
  margin-bottom: 0;
}
footer .footer_menu .menu_area ul li a {
  font-size: 12px
}
footer .footer_menu .online_area {
  gap: 20px;
}
footer .copyright {
  margin-top: 50px;
}
footer .copyright p {
  color: #fff;
}


@media only screen and (max-width: 1000px) {
  footer .container {
    padding: 0;
  }
  footer .footer_menu {
    width: 52%;
  }
}

@media only screen and (max-width: 750px) {
  footer {
    padding: 100px 0;
    padding: 13vw 0;
  }
  footer .footer_wrap {
    -webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
  }
  footer .footer_address {
    width: 100%;
  }
  footer .footer_address .f_logo_area {
    margin: 30px 0;
    margin: 4vw 0;
  }
  footer .footer_address .f_logo_area .f_logo {
    width: 109px;
    width: 14.5vw;
  }
  footer .footer_address .f_address_area {
    display: none;
  }
  footer .footer_menu {
    width: 100%;
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -webkit-box-pack: justify;
  	-ms-flex-pack: justify;
  	justify-content: space-between;
  }
  footer .footer_menu .menu_area ul {
    width: 100%;
    margin-bottom: 60px;
    margin-bottom: 8vw;
  }
  footer .footer_menu .menu_area ul li {
    margin-bottom: 10px;
    margin-bottom: 1.4vw;
  }
  footer .footer_menu .menu_area ul li a {
    font-size: 25px;
    font-size: 3.3vw;
  }
  footer .footer_menu .online_area {
    -webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  footer .footer_menu .online_area .online_btn {
    display: none;
  }
  footer .online_area .icon img {
    width: 60px;
    width: 8vw;
  }
  footer .online_area .icon i {
    font-size: 48px;
    font-size: 6.5vw;
  }
  footer .online_area .icon.insta i {
    font-size: 60px;
    font-size: 8vw;
  }
  footer .copyright {
    margin-top: 0;
  }
}



/* page-top
----------------------------------------------- */
#page-top {
  right: 465px;
  z-index: 100;
  transform: rotate(90deg);
}
#page-top a {
  color: #000;
  display: block;
}




@media only screen and (max-width: 1000px) {

}

@media only screen and (max-width: 750px) {

}
