@charset "UTF-8";
@font-face {
  font-family: "Arial Black";
  font-style: normal;
  font-weight: 400;
  display: swap;
  src: local("Arial Black"), url("ariblk_0.ttf") format("ttf");
}
html {
  font-size: 62.5%;
  min-height: 100%;
  overflow-y: scroll;
  background: #fff;
}

@media (max-width: 480px) {
  html {
    width: 100%;
    height: 100%;
  }
}
html body,
html dd,
html div,
html dl,
html dt,
html fieldset,
html form,
html h1,
html h2,
html h3,
html h4,
html h5,
html h6,
html input,
html li,
html ol,
html p,
html td,
html textarea,
html th,
html ul {
  padding: 0;
  margin: 0;
}

html article,
html aside,
html details,
html figcaption,
html figure,
html footer,
html header,
html hgroup,
html menu,
html nav,
html section {
  display: block;
  padding: 0;
  margin: 0;
}

html address,
html caption,
html em,
html strong,
html th {
  font-style: normal;
}

html caption,
html th {
  text-align: left;
}

html hr,
html legend {
  display: none;
}

html h1,
html h2,
html h3,
html h4,
html h5,
html h6 {
  font-size: 100%;
}

html ol,
html ul {
  list-style: none;
}

html a {
  text-decoration: none;
  color: inherit;
}

html a img,
html fieldset {
  border: none;
}

html a:visited {
  text-decoration: none;
}

html p {
  margin-bottom: 12px;
}

html img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  display: block;
}

html * {
  box-sizing: border-box;
}

html * {
  box-sizing: border-box;
}

html blockquote,
html dl,
html ol,
html pre,
html table,
html ul {
  margin-bottom: 0;
}

html table {
  border-collapse: collapse;
  border-spacing: 0;
}

body {
  color: #47362e;
  font-size: 1.5em;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: none;
  letter-spacing: 1.5px;
  line-height: 1.8;
  height: 100%;
  min-width: 1040px;
  background-size: cover;
}

@media (max-width: 480px) {
  body {
    position: relative;
    width: 100%;
    min-width: 100%;
    font-size: 1.5em;
    -webkit-overflow-scrolling: touch;
  }
}
.wrap {
  width: 1020px;
  max-width: 100%;
  margin: 0 auto;
}

@media (max-width: 480px) {
  .wrap {
    padding: 0 4%;
  }
}
.wrap.w1200 {
  width: 1200px;
  max-width: 100%;
}

.wrap.w1100 {
  width: 1100px;
  max-width: 100%;
}

.wrap.w1000 {
  width: 1000px;
  max-width: 100%;
}

.wrap.w900 {
  width: 900px;
  max-width: 100%;
}

.wrap.w800 {
  width: 800px;
  max-width: 100%;
}

.wrap.w700 {
  width: 700px;
  max-width: 100%;
}

.wrap.w600 {
  width: 600px;
  max-width: 100%;
}

#page {
  margin: 0 auto;
  width: auto;
}

@media (max-width: 480px) {
  #page {
    position: relative;
    width: 100%;
    margin: 0 auto;
  }
}
@media (max-width: 480px) {
  #page.open {
    transition: all 0.2s;
    position: fixed;
    transform: translate3d(-80%, 0, 0);
  }
}
#header {
  min-width: 1020px;
}

@media (max-width: 480px) {
  #header {
    min-width: 100%;
  }
}
#header .header {
  margin: 0 auto;
  padding: 5px 0;
  max-width: 1020px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  #header .header {
    padding: 15px 2%;
    max-width: 100%;
  }
}
#header .header img {
  display: block;
}

@media (max-width: 480px) {
  #header .header img {
    width: 100%;
  }
}
@media (max-width: 480px) {
  #header .header .head-logo {
    width: 60%;
  }
}
@media (max-width: 480px) {
  #header .header .head-inquiry {
    display: none;
  }
}
#header .header #sp_navi {
  display: none;
}

@media (max-width: 480px) {
  #header .header #sp_navi {
    width: 30%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
@media (max-width: 480px) {
  #header .header #sp_navi li {
    width: 47%;
  }
}
#gnavi {
  box-shadow: 0 3px 3px 0 rgba(0, 0, 0, 0.5);
  min-width: 1040px;
}

@media (max-width: 480px) {
  #gnavi {
    font-size: 1.1rem;
    border-top: inherit;
    border-bottom: inherit;
    padding: 20px 5%;
    height: 100%;
    width: 80%;
    min-width: 80%;
    background: #fff;
    position: fixed;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    right: -80%;
    top: 0;
  }
}
#gnavi ul {
  margin: 0 auto;
  max-width: 1020px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  #gnavi ul {
    padding: 5% 0;
    max-width: 100%;
  }
}
#gnavi ul:after {
  content: "";
  display: block;
  clear: both;
}

#gnavi ul li {
  width: 19.125%;
}

@media (max-width: 480px) {
  #gnavi ul li {
    border-bottom: 1px solid #082a4f;
    width: 100%;
  }
}
#gnavi ul li:nth-child(5) {
  width: 23.5%;
}

@media (max-width: 480px) {
  #gnavi ul li:nth-child(5) {
    width: 100%;
  }
}
#gnavi ul li a {
  width: 100%;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
  text-decoration: none;
  letter-spacing: 2px;
  line-height: 1.5;
  padding: 17px 0;
  background-color: #082a4f;
  display: block;
  position: relative;
  z-index: 1;
}

@media (max-width: 480px) {
  #gnavi ul li a {
    color: #333333;
    text-align: left;
    padding: 14px 0;
    background: #fff;
  }
}
#gnavi ul li a.navi_inquiry {
  background: #f4a109;
}

@media (max-width: 480px) {
  #gnavi ul li a.navi_inquiry {
    padding: 14px 0;
    background: #fff;
  }
}
#gnavi ul li a:before {
  height: 100%;
  width: 100%;
  content: " ";
  position: absolute;
  background: rgba(255, 255, 255, 0);
  left: -1px;
  top: 0;
  z-index: -1;
  transition: 0.7s;
}

#gnavi ul li a:hover:before {
  background: rgba(255, 255, 255, 0.3);
}

#gnavi ul li a:after {
  border-right: 1px solid rgba(255, 255, 255, 0.2196078431);
  height: 100%;
  width: 100%;
  display: inline-block;
  content: " ";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

@media (max-width: 480px) {
  #gnavi ul li a:after {
    content: none;
  }
}
#gnavi ul li:nth-child(1) a:after {
  border-left: 1px solid rgba(255, 255, 255, 0.2196078431);
}

#gnavi ul li.navi_slide {
  cursor: pointer;
  position: relative;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide {
    border-bottom: 0;
    cursor: default;
  }
}
#gnavi ul li.navi_slide:hover ul {
  display: block;
}

#gnavi ul li.navi_slide a {
  cursor: default;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide a {
    cursor: default;
  }
}
#gnavi ul li.navi_slide ul {
  border-bottom: 3px solid #bce2e8;
  border-radius: 0 0 4px 4px;
  padding: 0 14px;
  height: inherit;
  width: 100%;
  background: rgba(255, 255, 255, 0.95);
  display: none;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  overflow: hidden;
  z-index: 5000;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul {
    font-size: 1.3rem;
    border-bottom: inherit;
    border-radius: 0 0 4px 4px;
    margin-left: 0;
    margin-bottom: 20px;
    padding: 0;
    height: inherit;
    width: 100%;
    background: #222;
    display: block;
    position: inherit;
    zoom: 1;
  }
}
#gnavi ul li.navi_slide ul li {
  color: #595757;
  text-align: center;
  border-bottom: 1px solid #cccccc;
  margin: 0;
  width: 100%;
  float: none;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li {
    border-bottom: 1px dashed #666;
  }
}
#gnavi ul li.navi_slide ul li:last-child {
  border: 0;
}

#gnavi ul li.navi_slide ul li a {
  color: #444;
  cursor: pointer;
  font-size: 1.2rem;
  text-align: left;
  text-decoration: none;
  text-shadow: inherit;
  letter-spacing: 1px;
  box-shadow: none;
  margin: 0 auto;
  padding: 12px 0;
  background: none;
  display: block;
  position: inherit;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li a {
    color: #fff;
    text-align: left;
    text-decoration: none;
    text-shadow: inherit;
    letter-spacing: 1px;
    box-shadow: none;
    margin: 0 auto;
    padding: 15px 5%;
    background: none;
    display: block;
    position: inherit;
  }
}
#gnavi ul li.navi_slide ul li a:after,
#gnavi ul li.navi_slide ul li a:before {
  border: 0;
  content: " ";
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li a:after,
  #gnavi ul li.navi_slide ul li a:before {
    content: none;
  }
}
#gnavi ul li.navi_slide ul li a:hover {
  color: #660000;
  box-shadow: inherit;
}

@media (max-width: 480px) {
  #gnavi ul li.navi_slide ul li a:hover {
    color: #fff;
  }
}
#gnavi ul li.navi_slide ul li a:hover:before {
  box-shadow: inherit;
  background: none;
}

@media (max-width: 480px) {
  #gnavi #close {
    color: #fff;
    font-size: 1.5rem;
    border: 1px solid #082a4f;
    padding: 5px 5%;
    width: 100%;
    background: #f4a109;
  }
  #gnavi #close span {
    font-size: 1.5rem;
    font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
  }
}
@media (max-width: 480px) {
  #drawer_underlay {
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.5);
    position: absolute;
    top: 0;
    left: 0;
  }
}
@media (max-width: 480px) {
  #gnavi.open {
    transition: all 0.2s;
    transform: translate3d(-100%, 0, 0);
  }
}
#contents {
  background: #fff;
}

#contents .contents-header {
  height: 200px;
  display: flex;
  align-items: center;
  background: url(../img/contents-header-bg.png) center top/cover no-repeat;
  position: relative;
  overflow: hidden;
}

#contents .contents-header .contents-header__in .contents-header__ttl {
  font-size: 1.5em;
}

@media (max-width: 480px) {
  #contents .contents-header {
    height: 100px;
    background-image: url(../img/contents-header-bg.png);
  }
}
#contents .breadcrumbs {
  padding: 5px 0;
  background: #d9d9d9;
}

@media (max-width: 480px) {
  #contents .breadcrumbs {
    padding: 5px 10px;
  }
}
#contents .breadcrumbs ul {
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  #contents .breadcrumbs ul {
    max-width: 100%;
  }
}
#contents .breadcrumbs ul:after {
  content: "";
  display: block;
  clear: both;
}

#contents .breadcrumbs ul li {
  font-size: 1.3rem;
  margin-right: 5px;
  float: left;
}

#contents .breadcrumbs ul li a {
  color: #111;
  margin-right: 4px;
  display: inline-block;
}

#contents .breadcrumbs ul li a:hover {
  text-decoration: none;
}

#contents .section {
  padding: 80px 0 40px;
}

@media (max-width: 480px) {
  #contents .section {
    padding: 30px 0 20px;
  }
}
#pagetop {
  display: none;
  width: 60px;
}

@media (max-width: 480px) {
  #pagetop {
    width: 12%;
    background-color: transparent;
  }
}
#pagetop a {
  transition: opacity 0.3s;
  text-align: center;
  color: #333333;
  text-decoration: none;
  color: #fff;
}

@media (min-width: 480px) {
  #pagetop a:hover {
    opacity: 0.7;
  }
}
#pagetop a img {
  display: block;
}

@media (max-width: 480px) {
  #pagetop a img {
    width: 100%;
  }
}
#pagetop img {
  display: block;
}

#pagetop img.only_pc {
  display: block;
}

@media (max-width: 480px) {
  #pagetop img.only_pc {
    display: none;
  }
}
#pagetop img.only_sp {
  display: none;
}

@media (max-width: 480px) {
  #pagetop img.only_sp {
    display: block;
  }
}
#pagetop.fixed {
  right: 0;
  bottom: 50px;
  display: block;
  z-index: 100;
}

@media (max-width: 480px) {
  #pagetop.fixed {
    right: 9px;
    bottom: 50px;
    display: block;
  }
}
.footer {
  min-width: 1020px;
  background: #fff;
  position: relative;
}

@media (max-width: 480px) {
  .footer {
    min-width: 100%;
  }
}
.footer #pagetop.fixed {
  right: 3%;
  bottom: 50px;
  display: block;
  z-index: 10000;
  transform: translate3d(0, 0, 0);
}

@media (max-width: 480px) {
  .footer #pagetop.fixed {
    right: 9px;
    bottom: 50px;
    display: block;
    z-index: 10000;
    transform: translate3d(0, 0, 0);
  }
}
.footer .footer_inner {
  padding: 25px 0 0;
}

@media (max-width: 480px) {
  .footer .footer_inner {
    padding: 25px 15px 0;
  }
}
.footer .footer_inner a {
  color: #333333;
  text-decoration: none;
}

.footer .footer_inner .footernavi {
  border-bottom: 1px solid #ccc;
  padding-bottom: 30px;
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi {
    margin: 0;
    max-width: 100%;
  }
}
.footer .footer_inner .footernavi:after {
  content: "";
  display: block;
  clear: both;
}

.footer .footer_inner .footernavi ul {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
.footer .footer_inner .footernavi li {
  padding: 0 40px;
  position: relative;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi li {
    width: 50%;
    padding: 0 10px 0 15px;
    margin-bottom: 5px;
  }
}
.footer .footer_inner .footernavi li:after {
  width: 1px;
  height: 12px;
  background: #082a4f;
  position: absolute;
  content: "";
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi li:after {
    width: 15px;
    height: auto;
    color: #082a4f;
    background: none;
    content: "≫";
    top: 50%;
    left: 0;
  }
}
.footer .footer_inner .footernavi li:first-child::before {
  width: 1px;
  height: 12px;
  background: #082a4f;
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi li:first-child::before {
    content: none;
  }
}
.footer .footer_inner .footernavi li a {
  font-size: 1.4rem;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi li a {
    display: block;
    padding: 3px 5px;
  }
}
.footer .footer_inner .footernavi li a:hover {
  text-decoration: underline;
}

@media (max-width: 480px) {
  .footer .footer_inner .footernavi li a:hover {
    text-decoration: none;
  }
}
.footer .footer_inner .footer_info {
  text-align: center;
  padding: 30px 0;
  margin: 0 auto;
  max-width: 1020px;
}

.footer .footer_inner .footer_info .footerlogo {
  margin-bottom: 5px;
}

.footer .footer_inner .footer_info .address,
.footer .footer_inner .footer_info .tel {
  font-size: 1.4rem;
  margin-bottom: 0;
}

@media (max-width: 480px) {
  .footer .footer_inner .footer_info {
    text-align: left;
    padding: 30px 0;
    background: none;
  }
  .footer .footer_inner .footer_info .footerlogo {
    text-align: center;
  }
  .footer .footer_inner .footer_info .footerlogo img {
    width: 60%;
    margin: 0 auto;
  }
  .footer .footer_inner .footer_info .address,
  .footer .footer_inner .footer_info .tel {
    font-size: 1.3rem;
    text-align: center;
  }
}
.footer .copy {
  text-align: center;
  padding: 10px 0;
}

@media (max-width: 480px) {
  .footer .copy {
    padding: 10px 0 13px;
  }
}
.footer .copy img {
  width: 86px;
  margin: 0 auto;
}

.footer .copy a {
  font-size: 1.3rem;
  color: #333333;
  text-decoration: none;
}

@media (max-width: 480px) {
  .footer .copy a {
    font-size: 2vw;
  }
}
.access_map {
  padding: 0 10px;
  width: 100%;
}

@media (max-width: 480px) {
  .access_map {
    padding: 0 10px;
    width: 100%;
  }
}
.access_map .map_set {
  border: 1px dotted #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.25);
  margin-bottom: 23px;
  height: 450px;
  width: 100%;
}

@media (max-width: 480px) {
  .access_map .map_set {
    box-shadow: inherit;
    height: 200px;
    width: 100%;
  }
}
@media (max-width: 480px) {
  .access_map .map_set .guide {
    font-size: 1rem;
    padding: 13px 10px;
  }
}
.access_map .access_data {
  padding: 15px 0 0;
}

.access_map .access_data dl {
  padding: 0 5px;
}

.access_map .access_data dl:after {
  content: "";
  display: block;
  clear: both;
}

.access_map .access_data dl dt {
  font-weight: bold;
  float: left;
}

@media (max-width: 480px) {
  .access_map .access_data dl dt {
    float: none;
  }
}
.access_map .access_data dl dd {
  padding-left: 80px;
}

@media (max-width: 480px) {
  .access_map .access_data dl dd {
    padding-left: 0;
    margin-bottom: 12px;
  }
}
.access_map .access_data dl dd .postal_code {
  margin-right: 1.5rem;
}

@media (max-width: 480px) {
  .access_map .access_data dl dd .postal_code {
    margin-right: 0;
    display: block;
  }
}
.access_map .access_data dl dd a {
  color: #333333;
}

.privacy_section {
  padding: 50px 0 70px;
}

@media (max-width: 480px) {
  .privacy_section {
    padding: 30px 0 40px;
  }
}
.privacy_section .privacy_section_inner {
  margin: 0 auto;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner {
    padding: 0 10px;
    max-width: 100%;
  }
}
.privacy_section .privacy_section_inner .privacy_set {
  margin-bottom: 20px;
}

.privacy_section .privacy_section_inner .privacy_set .privacy_set_title {
  font-size: 1.6rem;
  border-left: 6px solid #082a4f;
  margin-bottom: 30px;
  padding: 10px 15px;
  background-color: #f7f8f9;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_title {
    border-left: 3px solid #082a4f;
    margin-bottom: 20px;
  }
}
.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner {
  padding: 0 10px 15px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner {
    padding: 0 5px 15px;
  }
}
.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner ul.privacy_list li {
  margin-bottom: 10px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner ul.privacy_list li {
    text-indent: -45px;
    margin-bottom: 10px;
    padding-left: 35px;
  }
}
.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dt {
  margin-bottom: 4px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dt {
    margin-bottom: 10px;
  }
}
.privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dd {
  margin-bottom: 15px;
  padding-left: 40px;
}

@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_inner dl.privacy_item dd {
    margin-bottom: 30px;
    padding-left: 0;
  }
}
.inquiry_info_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 50px;
}

@media (max-width: 480px) {
  .inquiry_info_inner {
    display: block;
  }
}
.inquiry_info_inner .inquiry_info {
  text-align: center;
}

@media (max-width: 480px) {
  .inquiry_info_inner .inquiry_info {
    width: 100%;
    margin-bottom: 15px;
  }
}
.inquiry_info_inner .inquiry_info .no {
  margin-bottom: 10px;
  font-size: 5rem;
  letter-spacing: 0.02em;
  line-height: 1;
  text-decoration: none;
}

@media (max-width: 480px) {
  .inquiry_info_inner .inquiry_info .no {
    font-size: 2.8rem;
    font-family: "Noto Sans JP", sans-serif;
  }
}
.inquiry_info_inner .inquiry_info .no span {
  font-size: 0.5em;
  margin-right: 0.5em;
}

.inquiry_info_inner .inquiry_info .time {
  margin-bottom: 0;
}

.kinds_list {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  .kinds_list {
    margin-top: 10px;
  }
}
@media (max-width: 480px) {
  .kinds_list li {
    background-color: #fff;
    border: 1px solid #e1e1e1;
    padding: 0 1em;
    display: flex;
    align-items: center;
    width: 100%;
    border-radius: 5px;
  }
  .kinds_list li label {
    display: block;
    width: 100%;
  }
}
.kinds_list li:not(:last-child) {
  padding-right: 11px;
}

@media (max-width: 480px) {
  .kinds_list li:not(:last-child) {
    padding-right: 0;
    margin-bottom: 1em;
  }
}
.attent_block {
  margin-bottom: 20px;
}

.attent_block .title {
  font-size: 1.6rem;
  text-shadow: 0.3px 0 0 #000;
  border-bottom: 1px solid #333;
  margin: 0 0 10px;
  padding: 5px 0;
}

.attent_block .title:before {
  content: "■";
  font: normal normal normal 18px/1 FontAwesome;
  margin-right: 6px;
}

.attent_block a {
  text-decoration: underline;
  color: #0050a7;
}

@media (min-width: 480px) {
  .attent_block a:hover {
    text-decoration: none;
  }
}
.thanks_title {
  font-size: 1.9rem;
  text-align: center;
  margin-bottom: 30px;
}

.thanks_msg {
  text-align: center;
  line-height: 2;
}

@media (max-width: 480px) {
  .thanks_msg {
    text-align: left;
  }
}
.thanks_msg p {
  margin-bottom: 20px;
}

#MailForm span.any,
#MailForm span.required {
  color: #fff;
  font-size: 85%;
  border-radius: 3px;
  margin-right: 5px;
  padding: 2px 4px;
}

#MailForm span.required {
  background: #9b0000;
}

#MailForm span.any {
  background: #999;
}

#MailForm table {
  border: 2px solid #999;
  margin: 0 0 25px;
  width: 100%;
}

@media (max-width: 480px) {
  #MailForm table {
    border: 0;
  }
}
#MailForm table td,
#MailForm table th {
  font-weight: normal;
  border: 1px solid #999;
  padding: 25px;
}

@media (max-width: 480px) {
  #MailForm table td,
  #MailForm table th {
    border: 0;
    width: 100%;
    display: block;
  }
}
#MailForm table th {
  padding-left: 75px;
  width: 30%;
  background: #fef5e7;
  position: relative;
}

@media (max-width: 480px) {
  #MailForm table th {
    padding: 0 0 3px;
    width: 100%;
    background: none;
    font-size: 1.6rem;
  }
}
@media (max-width: 480px) {
  #MailForm table th:before {
    color: #666666;
    font: normal normal normal 14px/1 FontAwesome;
    line-height: 1;
    margin-right: 5px;
    content: "■";
  }
}
#MailForm table th span {
  position: absolute;
  left: 25px;
}

@media (max-width: 480px) {
  #MailForm table th span {
    left: auto;
    right: 5px;
  }
}
#MailForm table td {
  background: #fff;
}

@media (max-width: 480px) {
  #MailForm table td {
    margin-bottom: 35px;
    padding: 0;
    background: none;
  }
}
#MailForm input,
#MailForm textarea {
  color: #444;
  font-size: 1.5rem;
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 1px;
  line-height: 1.4;
  border: 1px solid #e1e1e1;
  padding: 10px;
}

@media (max-width: 480px) {
  #MailForm input,
  #MailForm textarea {
    width: 100%;
    border-radius: 5px;
  }
}
@media (max-width: 480px) {
  #MailForm .kinds_list input {
    width: auto;
    margin-right: 1em;
  }
}
#MailForm select {
  font-size: 1.5rem;
  border: 1px solid #e1e1e1;
  padding: 12px 27px 12px 13px;
  cursor: pointer;
  background: url("../img/select-arrow.png") no-repeat center right 7px/9% #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

@media all and (-ms-high-contrast: none) {
  #MailForm select {
    background: none;
    padding-right: 13px;
  }
}
@media (max-width: 480px) {
  #MailForm select {
    border-radius: 5px;
  }
}
#MailForm label {
  padding: 2px 10px;
  cursor: pointer;
}

@media (max-width: 480px) {
  #MailForm label {
    font-size: 1.5rem;
    padding: 10px;
  }
}
@media (max-width: 480px) {
  #MailForm input[type=submit],
  #MailForm input[type=button] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
  }
}
@media (max-width: 480px) {
  #MailForm input[type=submit]::-webkit-search-decoration,
  #MailForm input[type=button]::-webkit-search-decoration {
    display: none;
  }
}
@media (max-width: 480px) {
  #MailForm input[type=submit]:focus,
  #MailForm input[type=button]:focus {
    outline-offset: -2px;
  }
}
#MailForm .form3 {
  vertical-align: middle;
  width: 3%;
}

#MailForm .form25 {
  width: 25%;
}

@media (max-width: 480px) {
  #MailForm .form25 {
    width: 100%;
  }
}
#MailForm .form45 {
  width: 45%;
}

@media (max-width: 480px) {
  #MailForm .form45 {
    width: 100%;
  }
}
#MailForm .form60 {
  width: 60%;
}

@media (max-width: 480px) {
  #MailForm .form60 {
    width: 100%;
  }
}
#MailForm .form90 {
  width: 93%;
}

@media (max-width: 480px) {
  #MailForm .form90 {
    width: 100%;
  }
}
#MailForm .focus {
  background: #ffe7e0;
}

#MailForm .important_list {
  margin-bottom: 27px;
  font-size: 0.9em;
}

#MailForm .important_list li {
  text-indent: -1.1em;
  padding-left: 1.1em;
  color: #333333;
}

@media (max-width: 480px) {
  #MailForm .important_list li:first-child {
    margin-bottom: 10px;
  }
}
#MailForm .important_text {
  line-height: 1.4;
  margin-bottom: 27px;
}

#MailForm .inquiry_inset {
  margin-bottom: 25px;
}

@media (max-width: 480px) {
  #MailForm .inquiry_inset {
    padding: 15px 4%;
    background: #f2f0ef;
  }
}
#MailForm .confirm_txt {
  text-align: center;
}

@media (max-width: 480px) {
  #MailForm .confirm_txt {
    text-align: left;
  }
}
.send_btn_inner {
  padding: 30px 0 0;
}

@media (max-width: 480px) {
  .send_btn_inner {
    padding-top: 0;
  }
}
.send_btn_inner button {
  min-height: 62px;
  line-height: 1.4;
  padding-top: 10px 30px;
  color: #fff;
  width: 400px;
  display: block;
  margin: 0 auto;
  font-size: 1.7rem;
  letter-spacing: 1.5px;
  padding: 15px 47px 16px;
  line-height: 1;
  cursor: pointer;
  outline: none;
  font-family: "Noto Sans JP", sans-serif;
  background: #082a4f;
  border: 2px solid #082a4f;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  transition: 0.5s;
}

@media (max-width: 480px) {
  .send_btn_inner button {
    width: 90%;
    min-height: 48px;
    margin: 0 auto;
    transition: unset;
  }
}
.send_btn_inner button:hover {
  color: #082a4f;
  background: #fff;
}

@media (max-width: 480px) {
  .send_btn_inner button:hover {
    color: #fff;
    background: #082a4f;
  }
}
@media (max-width: 480px) {
  .send_btn_inner button.submit_btn {
    margin: 20px auto;
  }
}
.inputarea li {
  margin: 0 15px 0 0;
  float: left;
}

@media (max-width: 480px) {
  .inputarea li {
    margin: 0 15px 0 0;
    float: left;
  }
}
#thanks p {
  line-height: 300px;
  text-align: center;
}

#contents .inquiry-info {
  margin: 0;
  overflow: hidden;
}

#contents .inquiry-info li {
  margin-right: 15px;
  float: left;
}

.send_inner {
  padding: 12px 0 20px;
}

.send_inner .send_step_msg {
  font-size: 1.4rem;
  text-align: center;
  margin-bottom: 15px;
}

.send_guide_msg {
  color: #444;
  text-align: center;
  padding: 0 0 15px;
}

.send_inner .send_btn_inner {
  text-align: center;
}

.send_inner .send_btn_inner .send_btn {
  color: #fff;
  font-size: 2rem;
  letter-spacing: 1px;
  cursor: pointer;
  border: 0;
  margin: 0 10px;
  padding: 15px 30px;
  background: #ff9900;
  display: inline-block;
}

.send_inner .send_btn_inner .btn_return {
  background: #797979;
}

.send_confirm_table {
  padding: 17px 0 30px;
}

.send_confirm_table table {
  border-collapse: collapse;
  margin: 0 auto;
  width: 90%;
}

@media (max-width: 480px) {
  .send_confirm_table table {
    width: 100%;
  }
}
.send_confirm_table table td,
.send_confirm_table table th {
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 1.5;
  border: 1px solid #ccc;
  padding: 17px 20px;
  background: #fff;
}

@media (max-width: 480px) {
  .send_confirm_table table td,
  .send_confirm_table table th {
    border: 0 solid #ccc;
    padding: 17px 20px;
    background: #fff;
    display: block;
  }
}
.send_confirm_table table th {
  width: 40%;
  background: #f5f5f5;
}

@media (max-width: 480px) {
  .send_confirm_table table th {
    text-align: left;
    margin-bottom: 5px;
    padding: 10px 15px;
    width: 100%;
    background: #f5f5f5;
  }
}
@media (max-width: 480px) {
  .send_confirm_table table td {
    margin-bottom: 30px;
  }
}
.send_inner .send_error {
  padding: 15px 0 30px;
}

.send_inner .send_error li {
  font-size: 1.4rem;
  padding: 5px 0;
}

.send_inner .send_error li:before {
  color: #c2c2c2;
  font-size: 85%;
  font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
  margin-right: 8px;
  content: "●";
}

.send_inner .send_error li span {
  color: #ff3333;
  margin-right: 5px;
  display: inline-block;
}

.table_base {
  padding: 0 0 25px;
}

.table_base table {
  border-top: 1px solid #082a4f;
  width: 100%;
}

@media (max-width: 480px) {
  .table_base table {
    border: 0;
  }
}
.table_base table td,
.table_base table th {
  font-weight: normal;
  border-bottom: 1px solid #082a4f;
  padding: 25px 16px;
}

@media (max-width: 480px) {
  .table_base table td,
  .table_base table th {
    font-weight: normal;
    border: 0;
    padding: 12px;
    display: block;
  }
}
.table_base table td span.map_jump {
  margin-left: 10px;
  position: relative;
  top: -2px;
}

.table_base table td span.map_jump a {
  color: #fff;
  font-size: 0.9rem;
  text-decoration: none;
  border-radius: 3px;
  padding: 2px 6px;
  background: #082a4f;
  display: inline-block;
}

.table_base table td span.map_jump a:hover {
  opacity: 0.7;
}

@media (max-width: 480px) {
  .table_base table td span.map_jump a:hover {
    opacity: 1;
  }
}
.table_base table tbody th {
  font-size: 1.6rem;
  text-align: left;
  width: 28%;
  background: #b6c8d3;
}

@media (max-width: 480px) {
  .table_base table tbody th {
    color: #333333;
    width: 100%;
    background: #f1f1f1;
  }
}
.table_base table tbody td {
  padding: 25px 40px;
}

@media (max-width: 480px) {
  .table_base table tbody td {
    padding: 12px;
  }
}
.table_base table dd {
  border-bottom: 1px dotted #ccc;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

.table_base table dd:last-child {
  margin-bottom: 0;
  padding: 0;
  border: 0;
}

.content_inner {
  padding: 10px 0 25px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media (max-width: 480px) {
  .content_inner {
    padding: 0 0 25px;
    display: block;
  }
}
.content_inner .images img {
  width: 100%;
}

.content_inner.w_margin410 .images {
  width: 410px;
}

@media (max-width: 480px) {
  .content_inner.w_margin410 .images {
    width: 100%;
  }
}
.content_inner.w_margin410 .msg {
  width: 570px;
}

@media (max-width: 480px) {
  .content_inner.w_margin410 .msg {
    width: 100%;
  }
}
.content_inner.w_margin450 .images {
  width: 450px;
}

@media (max-width: 480px) {
  .content_inner.w_margin450 .images {
    width: 100%;
  }
}
.content_inner.w_margin450 .msg {
  width: 530px;
}

@media (max-width: 480px) {
  .content_inner.w_margin450 .msg {
    width: 100%;
  }
}
/* .image_list */
.image_list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.image_list li img {
  width: 100%;
  display: block;
}

.image_list li span {
  padding: 15px 0 0;
  display: block;
}

.image_list.two_image li {
  width: 45%;
}

.image_list.two_image li:nth-child(odd) {
  margin-right: 4%;
}

.image_list.three_image li {
  width: 30%;
}

.image_list.three_image li:not(:nth-child(3n)) {
  margin-right: 3%;
}

.t-center {
  text-align: center;
}

.t-right {
  text-align: right;
}

@media (max-width: 480px) {
  .sp-t-left {
    text-align: left;
  }
}
.t-bold {
  font-weight: bold;
}

.t-500 {
  font-weight: 500;
}

.t-normal {
  font-weight: normal;
}

.only_pc {
  display: block;
}

@media (max-width: 480px) {
  .only_pc {
    display: none;
  }
}
.only_sp {
  display: none;
}

@media (max-width: 480px) {
  .only_sp {
    display: block;
  }
}
.inline-b {
  display: inline-block;
}

.tel {
  color: #333333;
  text-decoration: none;
  cursor: inherit;
  pointer-events: none;
}

@media (max-width: 480px) {
  .tel {
    pointer-events: inherit;
  }
}
.fade_hover {
  transition: opacity 0.3s;
}

@media (min-width: 480px) {
  .fade_hover:hover {
    opacity: 0.7;
  }
}
.btn_base {
  margin: 0 auto;
  width: 350px;
}

@media (max-width: 480px) {
  .btn_base {
    width: 90%;
  }
}
.btn_base a {
  color: #fff;
  font-size: 1.6rem;
  font-weight: normal;
  text-align: center;
  text-decoration: none;
  padding: 14px 30px;
  background: #f4a109;
  border: 2px solid #f4a109;
  display: block;
  position: relative;
  transition: 0.7s;
}

.btn_base a::after {
  width: 7px;
  height: 12px;
  background: url(../img/arrow01-01.png) center/contain no-repeat;
  position: absolute;
  content: "";
  top: 50%;
  right: 30px;
  transition: 0.7s;
  transform: translate(0, -50%);
}

.btn_base a:hover {
  color: #f4a109;
  background: #fff;
}

.btn_base a:hover::after {
  background: url(../img/arrow01-02.png) center/contain no-repeat;
}

@media (max-width: 480px) {
  .btn_base a {
    font-size: 1.3rem;
    text-align: center;
    padding: 8px 0;
  }
  .btn_base a::after {
    right: 20px;
  }
  .btn_base a:hover {
    color: #fff;
    background: #f4a109;
  }
  .btn_base a:hover::after {
    background: url(../img/arrow01-01.png) center/contain no-repeat;
  }
}
.everywhere_block {
  text-align: center;
  line-height: 2.2;
  margin: 0 auto 50px;
  max-width: 1020px;
}

@media (max-width: 480px) {
  .everywhere_block {
    text-align: left;
    line-height: 1.8;
    margin: 0 auto 30px;
    padding: 0 20px;
    max-width: 100%;
  }
}
@media (max-width: 480px) {
  .pc_only {
    display: none;
  }
}

.sp_only {
  display: none;
}
@media (max-width: 480px) {
  .sp_only {
    display: block;
  }
}


#header {
  background: transparent;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  transition: 0.4s;
  position: relative;
}
#header .header_pc {
  z-index: 11;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 110px;
  padding: 0 clamp(20px, 6.25vw, 30px);
}
@media (max-width: 480px) {
  #header .header_pc {
    height: 90px;
  }
}
@media (max-width: 480px) {
  #header .header_pc {
    padding: 0 60px 0 10px;
  }
}
#header .header_pc .header_logo {
  width: -moz-fit-content;
  width: fit-content;
}
#header .header_pc .header_logo a {
  display: flex;
  flex-direction: column;
  text-align: center;
  transition: 0.4s all;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(24px, 6.25vw, 30px);
}
@media (max-width: 480px) {
  #header .header_pc .header_logo a {
    font-size: 18px;
  }
}
#header .header_pc .header_logo a:hover {
  opacity: 0.7;
}
#header .header_pc .header_logo a .title_space {
  display: none;
}
@media (max-width: 374px) {
  #header .header_pc .header_logo a .title_space {
    display: block;
  }
}
#header .header_pc .header_top {
  display: flex;
  -moz-column-gap: 30px;
       column-gap: 30px;
  align-items: center;
}
@media (max-width: 480px) {
  #header .header_pc .header_top {
    -moz-column-gap: 15px;
         column-gap: 15px;
  }
}
#header .header_pc .header_top a {
  transition: 0.4s all;
}
#header .header_pc .header_top a:hover {
  opacity: 0.7;
  transform: translateY(-10px);
}
#header .header_pc .header_top .insta_btn {
  max-width: 51px;
  width: 100%;
}
@media (max-width: 480px) {
  #header .header_pc .header_top .insta_btn {
    max-width: 29px;
  }
}
#header .header_pc .header_top .insta_btn img {
  width: 100%;
}
#header .header_pc .header_top .x_btn {
  max-width: 45px;
  width: 100%;
}
@media (max-width: 480px) {
  #header .header_pc .header_top .x_btn {
    max-width: 29px;
  }
}
#header .header_pc .header_top .top_btn {
  margin: 0;
}
#header .header_pc .header_top .top_btn a {
  width: 208px;
  height: 73px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #e2501e;
  border-radius: 50vh;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
@media (max-width: 480px) {
  #header .header_pc .header_top .top_btn a {
    width: 35px;
    height: 35px;
    -moz-column-gap: 3px;
         column-gap: 3px;
    border-radius: 4px;
  }
}
#header .header_pc .header_top .top_btn a img {
  width: 30px;
  height: auto;
}
@media (max-width: 480px) {
  #header .header_pc .header_top .top_btn a img {
    width: 20px;
  }
}
#header .header_pc .header_top .top_btn a span {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: normal;
  letter-spacing: 0.02em;
}
@media (max-width: 480px) {
  #header .header_pc .header_top .top_btn a span {
    display: none;
  }
}
#header .header_pc .header_contact {
  position: absolute;
  top: 0;
  max-width: 144px;
  width: 100%;
  right: 30px;
  background: #e2501e;
  height: 156px;
  border-bottom-left-radius: 50vh;
  border-bottom-right-radius: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  row-gap: 14px;
  transition: 0.4s all;
}
#header .header_pc .header_contact:hover {
  background: #c8461a;
}
@media (max-width: 1200px) {
  #header .header_pc .header_contact {
    max-width: 120px;
    right: 20px;
  }
}
@media (max-width: 480px) {
  #header .header_pc .header_contact {
    position: relative;
    flex-direction: row;
    -moz-column-gap: 8px;
         column-gap: 8px;
    padding: 10px 20px;
    max-width: -moz-fit-content;
    max-width: fit-content;
    left: -70px;
    height: auto;
    border-radius: 50vh;
  }
}
#header .header_pc .header_contact figure {
  max-width: 43px;
  width: 100%;
  margin: 0 auto;
}
@media (max-width: 1200px) {
  #header .header_pc .header_contact figure {
    max-width: 35px;
  }
}
@media (max-width: 480px) {
  #header .header_pc .header_contact figure {
    max-width: 20px;
  }
}
#header .header_pc .header_contact figure img {
  width: 100%;
}
#header .header_pc .header_contact p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  line-height: normal;
  color: #fff;
  letter-spacing: 0.02em;
  margin: 0;
}
@media (max-width: 1200px) {
  #header .header_pc .header_contact p {
    font-size: 1.4rem;
  }
}
@media (max-width: 480px) {
  #header .header_pc .header_contact p {
    font-size: 2.7083333333vw;
  }
}
#header .header_item {
  padding-top: 25px;
  border-top: 1px solid #d9d9d9;
  display: flex;
  align-items: center;
  flex-direction: column;
  margin: 0 auto;
}
@media (max-width: 480px) {
  #header .header_item {
    display: none;
  }
}
#header .header_item .header_address {
  display: flex;
  align-items: center;
  -moz-column-gap: 18px;
       column-gap: 18px;
}
#header .header_item .header_address .header_btn {
  display: flex;
  align-items: center;
  -moz-column-gap: 10px;
       column-gap: 10px;
}
#header .header_item .header_address .header_btn .address_head {
  padding: 2px 14.5px;
  border-radius: 5px;
  border: 2px solid #e2501e;
  color: #e2501e;
  font-family: "Roboto", sans-serif;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: normal;
}
@media (max-width: 1200px) {
  #header .header_item .header_address .header_btn .address_head {
    font-size: 1.8rem;
  }
}
#header .header_item .header_address .header_btn .address_body {
  font-family: "Roboto", sans-serif;
  font-weight: 600;
  font-size: 3rem;
  color: #e2501e;
  line-height: normal;
  letter-spacing: 0.02em;
}
@media (max-width: 1200px) {
  #header .header_item .header_address .header_btn .address_body {
    font-size: 2.4rem;
  }
}
#header .header_item .header_address .fax {
  pointer-events: none;
}
#header .header_item .header_nav .main_ul {
  display: flex;
  align-items: center;
  padding: 0;
  list-style: none;
}
#header .header_item .header_nav .main_ul li {
  padding: 0 clamp(25px, 1.6666666667vw, 32px);
  border-right: 1px dashed #8a8a8a;
  line-height: 1;
}
@media (max-width: 1366px) {
  #header .header_item .header_nav .main_ul li {
    padding: 0 clamp(1rem, 1.8301610542vw, 2.5rem);
  }
}
@media (max-width: 1170px) {
  #header .header_item .header_nav .main_ul li {
    padding: 0 10px;
  }
}
#header .header_item .header_nav .main_ul li:last-of-type {
  border-right: unset;
  padding-right: 0;
}
#header .header_item .header_nav .main_ul li a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  font-weight: 500;
  line-height: 1;
}
@media (max-width: 1366px) {
  #header .header_item .header_nav .main_ul li a {
    font-size: clamp(1.3rem, 1.0980966325vw, 1.5rem);
  }
}
#header .header_item .header_nav .main_ul li a:hover {
  text-decoration: underline;
}
#header .header_item .header_nav .main_ul li:last-of-type {
  margin-right: 0;
}
#header .header_item .header_nav .main_ul .parent {
  position: relative;
  float: left;
}
#header .header_item .header_nav .main_ul .parent:hover ul {
  transition: 0.4s all;
  display: block !important;
  position: absolute !important;
  opacity: 1;
  top: 104%;
}
#header .header_item .header_nav .main_ul .parent .child {
  opacity: 0;
  display: none;
  margin: 0;
  width: 100%;
  transition: 0.4s;
  z-index: 1;
}
#header .header_item .header_nav .main_ul .parent .child li {
  width: 100%;
}
#header .header_item .header_nav .main_ul .parent .child li a {
  background: #e2501e;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 207px;
  height: 70px;
  transition: 0.4s all;
  padding: 0 20px;
  font-weight: 500;
  margin: 0;
  line-height: normal;
  text-align: start;
}
#header .header_item .header_nav .main_ul .parent .child li a:hover {
  background: #fff;
  color: #e2501e;
  text-decoration: none;
}
#header .header_item .header_nav .main_ul .parent .child li a::after {
  display: none;
}

#burger {
  height: 110px;
  background: #fff;
  display: none;
  margin-bottom: 0;
}
@media (max-width: 480px) {
  #burger {
    display: contents;
  }
}
#burger .nav-container {
  max-width: 100%;
  width: 100%;
  margin: 0 auto;
}
#burger .nav-container nav {
  width: 100%;
}
#burger .nav-container nav .nav-mobile {
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  background: transparent;
  height: 60px;
  width: 60px;
}
@media (max-width: 480px) {
  #burger .nav-container nav .nav-mobile {
    display: block;
    z-index: 101;
    top: 10px;
  }
}
#burger .nav-container nav .nav-mobile #nav-toggle {
  position: absolute;
  left: 14px;
  top: 24px;
  cursor: pointer;
  padding: 10px 35px 16px 0px;
}
#burger .nav-container nav .nav-mobile #nav-toggle span,
#burger .nav-container nav .nav-mobile #nav-toggle span:before,
#burger .nav-container nav .nav-mobile #nav-toggle span:after {
  cursor: pointer;
  border-radius: 1px;
  height: 3px;
  width: 32px;
  background: #e2501e;
  position: absolute;
  display: block;
  content: "";
  transition: all 300ms ease-in-out;
}
#burger .nav-container nav .nav-mobile #nav-toggle span:before {
  top: -10px;
}
#burger .nav-container nav .nav-mobile #nav-toggle span:after {
  bottom: -10px;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span {
  background-color: transparent;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:before, #burger .nav-container nav .nav-mobile #nav-toggle.active span:after {
  top: 0;
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:before {
  transform: rotate(45deg);
}
#burger .nav-container nav .nav-mobile #nav-toggle.active span:after {
  transform: rotate(-45deg);
}
@media (max-width: 480px) {
  #burger .nav-container nav ul {
    display: none;
  }
  #burger .nav-container nav ul.nav-list {
    z-index: 1;
    position: absolute;
    width: 100%;
    height: auto;
    top: 110px;
    max-height: calc(100vh - 110px);
    overflow: auto;
  }
}
@media (max-width: 480px) and (max-width: 480px) {
  #burger .nav-container nav ul.nav-list {
    top: 90px;
    max-height: 200vh;
    height: 200vh;
    left: 0;
    background: rgba(255, 255, 255, 0.8);
  }
}
@media (max-width: 480px) and (max-width: 480px) {
  #burger .nav-container nav ul.nav-list {
    padding-bottom: 80px;
  }
}
@media (max-width: 480px) {
  #burger .nav-container nav ul.nav-list .header_logo {
    width: -moz-fit-content;
    width: fit-content;
  }
  #burger .nav-container nav ul.nav-list .header_logo a {
    display: flex;
    flex-direction: column;
    text-align: center;
    transition: 0.4s all;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: bold;
    font-size: clamp(24px, 6.25vw, 30px);
  }
  #burger .nav-container nav ul.nav-list .header_logo a:hover {
    opacity: 0.7;
  }
  #burger .nav-container nav ul.nav-list .burger_tel a,
  #burger .nav-container nav ul.nav-list .burger_fax p {
    padding: 0.5em;
    font-size: 1.8rem;
    text-align: center;
    font-weight: 500;
    font-family: "Roboto", sans-serif;
    color: #fff;
    margin: 0;
    line-height: 1;
  }
  #burger .nav-container nav ul li {
    position: relative;
    float: none;
    z-index: 1;
    border-bottom: 1px solid rgba(255, 255, 255, 0.4392156863);
  }
  #burger .nav-container nav ul li a,
  #burger .nav-container nav ul li a:visited {
    display: block;
    padding: 20px;
    background: #e2501e;
    color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    text-decoration: none;
    font-weight: 500;
  }
  #burger .nav-container nav ul li a:hover,
  #burger .nav-container nav ul li a:visited:hover {
    background: #e2501e;
    color: #fff;
  }
  #burger .nav-container nav ul li a:not(:only-child):after,
  #burger .nav-container nav ul li a:visited:not(:only-child):after {
    padding-left: 4px;
    content: " ▾";
  }
  #burger .nav-container nav ul li ul.nav-dropdown {
    position: static;
    z-index: 1;
  }
  #burger .nav-container nav ul li ul.nav-dropdown li {
    min-width: 190px;
  }
  #burger .nav-container nav ul li ul.nav-dropdown li a {
    padding: 15px 15px 15px 30px;
    font-size: 0.8em;
    background: #c8461a;
    color: #fff;
  }
}

#footer {
  margin-top: -12px;
  background: url(../img/top_bg004.jpg) no-repeat;
  background-size: cover;
}
#footer .inner {
  max-width: calc(1020px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: clamp(70px, 7.3206442167vw, 100px) 6% clamp(60px, 6.588579795vw, 90px);
}
#footer .inner .footer_flex {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 480px) {
  #footer .inner .footer_flex {
    flex-direction: column;
  }
}
#footer .inner .footer_flex .logo_area {
  max-width: 442px;
  width: 100%;
}
@media (max-width: 480px) {
  #footer .inner .footer_flex .logo_area {
    text-align: center;
  }
}
#footer .inner .footer_flex .logo_area .logo {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: normal;
  font-size: clamp(24px, 6.25vw, 30px);
  margin-bottom: clamp(20px, 1.8301610542vw, 25px);
}
#footer .inner .footer_flex .logo_area .logo_top {
  margin-bottom: clamp(15px, 1.4641288433vw, 20px);
}
#footer .inner .footer_flex .logo_area .logo_top P {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.786;
  color: #47362e;
  letter-spacing: 0.02em;
}
#footer .inner .footer_flex .logo_area .logo_mid {
  margin-bottom: clamp(10px, 1.0980966325vw, 15px);
}
#footer .inner .footer_flex .logo_area .logo_mid p {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.786;
  color: #47362e;
  letter-spacing: 0.02em;
}
#footer .inner .footer_flex .logo_area .logo_bottom {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.786;
  color: #ed1919;
  font-size: 1.4rem;
  letter-spacing: 0.02em;
}
#footer .inner .footer_flex .link_area {
  display: flex;
  -moz-column-gap: clamp(40px, 3.6603221083vw, 50px);
       column-gap: clamp(40px, 3.6603221083vw, 50px);
  max-width: 462px;
  width: 100%;
}
@media (max-width: 480px) {
  #footer .inner .footer_flex .link_area {
    display: grid;
    max-width: 280px;
    margin: 0 auto;
    grid-template-columns: repeat(2, 1fr);
    justify-content: center;
    -moz-column-gap: 20px;
    column-gap: 45px;
  }
}
#footer .inner .footer_flex .link_area a {
  transition: 0.4s all;
}
#footer .inner .footer_flex .link_area a:hover {
  color: #e2501e !important;
}
#footer .inner .footer_flex .link_area ul li {
  padding: 5px 0;
}
#footer .inner .footer_flex .link_area ul li .link_child {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.02em;
  color: #47362e;
  text-align: center;
}
#footer .inner .footer_flex .link_area ul li .link_child i {
  font-size: 12px;
  padding-right: 5px;
}
@media (max-width: 480px) {
  #footer .inner .footer_flex .link_area ul li .link_child {
    text-align: start;
    font-size: 1.4rem;
  }
}
#footer .inner .footer_flex .link_area ul li .link_parent {
  font-weight: bold;
  margin: 0;
}
#footer .copy {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 13px;
  line-height: normal;
  letter-spacing: 0.02em;
  color: #47362e;
  padding: clamp(10px, 1.4641288433vw, 20px) 0;
  border-top: 1px solid #ad9138;
}

.pagetop_block {
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 10009;
}
.pagetop_block #pagetop {
  width: 60px;
  height: 60px;
  margin-left: auto;
}
.pagetop_block #pagetop a {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  text-decoration: none;
  background: #e2501e;
  color: #fff;
}
.pagetop_block #pagetop a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f0d8";
  font-size: 16px;
  line-height: 1;
  font-weight: bold;
}

#s08 {
  background: url(../img/top_bg003.jpg) no-repeat;
  background-size: cover;
  padding: clamp(50px, 5.4904831625vw, 75px) 0 clamp(70px, 7.3206442167vw, 100px);
  -webkit-clip-path: ellipse(100% 95% at 50% 95%);
          clip-path: ellipse(100% 95% at 50% 95%);
  overflow: hidden;
  position: relative;
}
@media (max-width: 480px) {
  #s08 {
    -webkit-clip-path: ellipse(200% 95% at 50% 95%);
            clip-path: ellipse(200% 95% at 50% 95%);
  }
}
#s08::after {
  content: "";
  position: absolute;
  background: url(../img/top_bg001.svg) no-repeat;
  background-size: contain;
  width: 232px;
  height: 226px;
  right: -48px;
  top: 20%;
}
@media (max-width: 480px) {
  #s08::after {
    width: 130px;
    height: 140px;
    top: 0;
  }
}
#s08::before {
  content: "";
  position: absolute;
  background: url(../img/top_bg001.svg) no-repeat;
  background-size: contain;
  width: 246px;
  height: 240px;
  left: -48px;
  bottom: -20px;
}
@media (max-width: 480px) {
  #s08::before {
    width: 130px;
    height: 140px;
    top: 20%;
  }
}
#s08 .s08_inner {
  position: relative;
}
@media (max-width: 480px) {
  #s08 .s08_inner::after {
    content: "";
    position: absolute;
    background: url(../img/top_bg001.svg) no-repeat;
    background-size: contain;
    width: 246px;
    width: 130px;
    height: 140px;
    right: -30px;
    bottom: -20px;
  }
}
#s08 .inner {
  position: relative;
  z-index: 1;
  max-width: calc(1100px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 0 6%;
}
#s08 .inner .sub_title {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: clamp(20px, 1.6105417277vw, 22px);
  line-height: 1.8;
  letter-spacing: 0.05em;
  margin-bottom: 0;
}
#s08 .inner .title_jp {
  text-align: center;
  margin-bottom: 13px;
}
#s08 .inner .effect {
  margin-bottom: clamp(20px, 2.196193265vw, 30px);
}
#s08 .inner .content {
  text-align: center;
  margin-bottom: 20px;
}
#s08 .inner .content:last-of-type {
  margin-bottom: clamp(40px, 2.196193265vw, 30px);
}
@media (max-width: 480px) {
  #s08 .inner .text_start {
    text-align: start;
  }
}
#s08 .inner .grid_box {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: clamp(20px, 1.756954612vw, 24px);
       column-gap: clamp(20px, 1.756954612vw, 24px);
}
@media (max-width: 480px) {
  #s08 .inner .grid_box {
    grid-template-columns: 1fr;
    row-gap: clamp(30px, 3.2942898975vw, 45px);
  }
}
#s08 .inner .grid_box .btn1 {
  position: relative;
  pointer-events: none;
}
#s08 .inner .grid_box .btn1::after {
  content: "";
  position: absolute;
  background: url(../img/illust_021.svg) no-repeat;
  background-size: contain;
  width: 105px;
  height: 103px;
  top: -66px;
  left: -45px;
}
@media (max-width: 480px) {
  #s08 .inner .grid_box .btn1::after {
    width: 70px;
    height: 70px;
    left: -6%;
    top: -12%;
  }
}
@media (max-width: 480px) {
  #s08 .inner .grid_box .btn1 {
    pointer-events: all;
  }
}
#s08 .inner .grid_box .btn3 {
  position: relative;
}
#s08 .inner .grid_box .btn3::after {
  content: "";
  position: absolute;
  background: url(../img/illust_022.svg) no-repeat;
  background-size: contain;
  width: 142px;
  height: 118px;
  bottom: -33px;
  right: -113px;
}
@media (max-width: 480px) {
  #s08 .inner .grid_box .btn3::after {
    right: -6%;
    bottom: -70px;
    width: 120px;
    height: 100px;
    display: none;
  }
}
#s08 .inner .grid_box .grid_col {
  transition: 0.4s all;
}
#s08 .inner .grid_box .grid_col:hover {
  transform: translateY(-10px);
}
#s08 .inner .grid_box p {
  margin-bottom: 0;
}
#s08 .inner .grid_box .fax {
  pointer-events: none;
}

.title_jp {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  line-height: 1.385;
  font-size: clamp(26px, 2.196193265vw, 30px);
  letter-spacing: 0.05em;
  color: #47362e;
  margin-bottom: clamp(15px, 1.6105417277vw, 22px);
}
@media (max-width: 480px) {
  .title_jp {
    font-size: 5.4166666667vw;
  }
}

.effect {
  max-width: 92px;
  width: 100%;
  margin: 0 auto clamp(30px, 2.9282576867vw, 40px) auto;
}
.effect img {
  width: 100%;
}

.s_end {
  position: relative;
  padding-bottom: 120px;
}
@media (max-width: 480px) {
  .s_end {
    padding-bottom: 80px;
  }
}
.s_end::after {
  content: "";
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  background: url(../img/illust_020.svg) no-repeat;
  background-size: contain;
  width: 230px;
  height: 120px;
  z-index: 100;
}
@media (max-width: 480px) {
  .s_end::after {
    width: clamp(180px, 47.9166666667vw, 230px);
    height: clamp(100px, 25vw, 120px);
  }
}

#footer {
  position: relative;
}
@media (max-width: 480px) {
  #footer::after {
    content: "";
    right: 0;
    top: -63px;
    position: absolute;
    background: url(../img/illust_022.svg) no-repeat;
    background-size: contain;
    width: 120px;
    height: 100px;
  }
}

#page {
  background: url(../img/top_bg002.jpg);
  background-size: cover;
  background-repeat: repeat-y;
}
@media (max-width: 480px) {
  #page {
    background: url(../img/sp_top_bg002.jpg);
    background-size: cover;
    background-repeat: repeat-y;
  }
}

#laboWrap {
  max-width: calc(1100px + 12%);
  width: 100%;
  margin: 0 auto;
  padding: 40px 6% 0 6%;
}

.labo_area .labo_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media (max-width: 480px) {
  .labo_area .labo_list {
    grid-template-columns: 1fr;
  }
}
.labo_area .labo_list a {
  display: block;
  border-radius: 20px;
  border: 1px solid #d9d9d9;
  transition: 0.4s all;
}
.labo_area .labo_list a:hover {
  transform: translateY(-10px);
}
.labo_area .labo_list a figure {
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
}
.labo_area .labo_list a figure img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  border-top-left-radius: 20px;
  aspect-ratio: 16/12;
  border-top-right-radius: 20px;
  -o-object-fit: cover;
     object-fit: cover;
}
.labo_area .labo_list a .box {
  padding: 15px;
  border-bottom-left-radius: 20px;
  border-bottom-right-radius: 20px;
  background: #fff;
}
.labo_area .labo_list a .box .labo_title {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  font-size: 1.8rem;
  left: 1.778;
  color: #47362e;
  margin-bottom: 10px;
}
.labo_area .labo_list a .box .labo_category {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}
.labo_area .labo_list a .box .labo_category span {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: bold;
  border: 1px solid #47362e;
  line-height: 2.286;
  padding: 0 15px;
  letter-spacing: 0.02em;
  border-radius: 50vh;
  background: #f7ebbf;
}
.labo_area .labo_list a .labo_time {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 1, 4rem;
  line-height: 2.286;
  letter-spacing: 0.02em;
}

.works_detail_repetition_img {
  margin-bottom: 20px;
}/*# sourceMappingURL=common.css.map */