@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 img,
html fieldset {
  border: none;
}
html a:visited {
  text-decoration: none;
}
html p {
  margin-bottom: 12px;
}
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: #333;
  font-size: 1.6em;
  font-family: "Noto Sans JP", sans-serif;
  -webkit-text-size-adjust: none;
  letter-spacing: 1.5px;
  line-height: 1.8;
  height: 100%;
  min-width: 1120px;
  background: #fff;
}
@media (max-width: 480px) {
  body {
    position: relative;
    width: 100%;
    min-width: 100%;
    font-size: 1.6em;
    -webkit-overflow-scrolling: touch;
  }
}

#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: 1100px;
}
@media (max-width: 480px) {
  #header {
    position: absolute;
    min-width: 100%;
    z-index: 10;
  }
}
#header .header {
  position: relative;
  margin: 0 auto;
  padding: 15px 25px 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}
@media (max-width: 480px) {
  #header .header {
    padding: 3vw 4vw 0 6vw;
    max-width: 100%;
    justify-content: space-between;
  }
}
#header .header img {
  display: block;
  width: 100%;
}
#header .header .head-logo {
  position: absolute;
  width: 290px;
  bottom: -20px;
  left: 25px;
}
@media (max-width: 480px) {
  #header .header .head-logo {
    position: static;
    width: 64%;
  }
}
#header .header .head-inquiry {
  display: flex;
  align-items: center;
  gap: 15px;
}
@media (max-width: 480px) {
  #header .header .head-inquiry {
    display: none;
  }
}
#header .header .head-inquiry .tel {
  font-size: 2rem;
  font-weight: bold;
}
#header .header .head-inquiry .btn-inquiry {
  width: 45px;
  height: 45px;
  border-radius: 5px;
  background-color: #333;
  transition: background-color 0.3s;
}
#header .header .head-inquiry .btn-inquiry a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px;
}
#header .header .head-inquiry .btn-inquiry:hover {
  background-color: #bf003c;
}
#header .header .head-inquiry .btn-remote {
  width: 165px;
  height: 45px;
  background-color: #bf003c;
  border-radius: 5px;
  transition: background-color 0.3s;
}
#header .header .head-inquiry .btn-remote:hover {
  background-color: #333;
}
#header .header .head-inquiry .btn-remote a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 1.5rem;
  color: #fff;
  text-decoration: none;
  padding: 15px 0;
}
#header .header #sp_navi {
  display: none;
}
@media (max-width: 480px) {
  #header .header #sp_navi {
    width: 30%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
  }
}
@media (max-width: 480px) {
  #header .header #sp_navi li {
    width: 47%;
  }
}

#gnavi {
  min-width: 1120px;
}
@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: #f5f5f5;
    position: fixed;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    right: -80%;
    top: 0;
  }
}
#gnavi ul {
  display: flex;
  justify-content: flex-end;
  max-width: 1100px;
  margin-left: auto;
  padding: 20px 25px;
}
@media (max-width: 480px) {
  #gnavi ul {
    flex-direction: column;
    max-width: 100%;
    padding: 5% 0;
  }
}
#gnavi ul:after {
  content: "";
  display: block;
  clear: both;
}
#gnavi ul li {
  padding: 0 20px;
}
@media (max-width: 480px) {
  #gnavi ul li {
    border-bottom: 1px solid #666;
    width: 100%;
    float: none;
  }
}
#gnavi ul li a {
  position: relative;
  display: block;
  color: #333;
  text-align: center;
  text-decoration: none;
  letter-spacing: 2px;
  line-height: 1.5;
  transition: color 0.3s;
}
@media (max-width: 480px) {
  #gnavi ul li a {
    font-size: 4.2vw;
    color: #333;
    text-align: left;
    padding: 14px 0;
  }
}
#gnavi ul li a:hover {
  color: #bf003c;
}
#gnavi ul li:nth-child(1) a:after {
  border-left: 1px solid #e2e2e2;
}
@media (max-width: 480px) {
  #gnavi ul li:last-child {
    width: 100%;
    border-bottom: none;
    padding: 0;
    margin: 10% 0 5%;
  }
}
@media (max-width: 480px) {
  #gnavi ul li:last-child a {
    text-align: center;
    color: #fff;
    background-color: #bf003c;
    padding: 5vw 0;
    border-radius: 50px;
  }
}
#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 #555;
    padding: 5px 5%;
    width: 100%;
    background: #222;
  }
  #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.1);
    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 {
  display: flex;
  align-items: center;
  width: 1100px;
  height: 300px;
  margin: 0 auto;
}
@media (max-width: 480px) {
  #contents .contents_header {
    width: 100%;
    height: 55vw;
    padding: 0 3.85vw;
  }
}
#contents .contents_header .head_inner {
  position: relative;
}
@media (max-width: 480px) {
  #contents .contents_header .head_inner {
    margin-top: 15vw;
  }
}
#contents .contents_header .head_inner .title {
  position: absolute;
  font-size: 4rem;
  font-weight: bold;
  text-align: left;
  letter-spacing: 1rem;
  line-height: 1;
  top: 50%;
  transform: translateY(-35%);
  z-index: 1;
}
@media (max-width: 480px) {
  #contents .contents_header .head_inner .title {
    font-size: 5.8vw;
    letter-spacing: 1vw;
  }
}
#contents .contents_header .head_inner .head_bg {
  font-family: "Oswald", sans-serif;
  font-size: 20rem;
  font-weight: bold;
  letter-spacing: -1rem;
  line-height: 1;
  background: linear-gradient(90deg, #c8c9c9 0%, #9e9f9f 80%);
  opacity: 0.2;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-left: -10px;
  padding-right: 10px;
}
@media (max-width: 480px) {
  #contents .contents_header .head_inner .head_bg {
    font-size: 25.7vw;
    letter-spacing: -1vw;
    margin-left: -1vw;
    padding-right: 1vw;
  }
}
#contents .breadcrumbs {
  padding: 5px 0;
}
@media (max-width: 480px) {
  #contents .breadcrumbs {
    margin-bottom: 1vw;
    padding: 0 3.85vw;
  }
}
#contents .breadcrumbs ul {
  margin: 0 auto;
  max-width: 1100px;
}
@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: 12.8vw 0 7vw;
  }
}
#contents .section:last-child {
  padding-bottom: 100px;
}
#contents .section .section_title {
  max-width: 1100px;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1;
  color: #333;
  text-align: center;
  margin: 0 auto 40px;
  letter-spacing: 0.3rem;
}
@media (max-width: 480px) {
  #contents .section .section_title {
    max-width: 100%;
    font-size: 5.6vw;
    letter-spacing: 0.5vw;
  }
}
#contents .section .section_inner {
  margin: 0 auto;
  max-width: 1100px;
}
@media (max-width: 480px) {
  #contents .section .section_inner {
    padding: 0 3.85vw;
    max-width: 100%;
  }
}
#contents .section .section_inner .child_content_section {
  margin-bottom: 20px;
}
#contents .section .section_inner .child_content_section .section_title {
  font-size: 1.8rem;
  border-left: 6px solid #b6c8d3;
  margin-bottom: 30px;
  padding: 10px 15px;
  background: #eef2f4;
}
#contents .section .section_inner .child_content_section .section_inner {
  padding: 0 10px 15px;
  /* .in_content */
}
#contents .section .section_inner .child_content_section .section_inner .in_content {
  padding: 12px 5px 20px;
}
#contents .section .section_inner .child_content_section .section_inner .in_content .title {
  color: #000;
  font-size: 1.6rem;
  margin-bottom: 12px;
  padding: 10px 15px;
  background: #f1f1f1;
}
#contents .section .section_inner .child_content_section .section_inner .in_content .in_content_inner {
  padding: 10px 5px;
}
#contents .pick_text {
  color: #6699CC;
  font-size: 1.9rem;
  margin-bottom: 16px;
}
#contents .pick_text.fc_red {
  color: #ff0000;
}

.footer {
  min-width: 1100px;
  background: #7d0e30;
  position: relative;
}
@media (max-width: 480px) {
  .footer {
    min-width: 100%;
  }
}
.footer #pagetop {
  display: none;
}
@media (max-width: 480px) {
  .footer #pagetop {
    width: 15%;
  }
}
.footer #pagetop:hover {
  opacity: 0.7;
}
@media (max-width: 480px) {
  .footer #pagetop:hover {
    opacity: 1;
  }
}
.footer #pagetop a {
  text-align: center;
  color: #333;
  text-decoration: none;
}
.footer #pagetop a img {
  display: block;
}
@media (max-width: 480px) {
  .footer #pagetop a img {
    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: 95px 0 80px;
}
@media (max-width: 480px) {
  .footer .footer_inner {
    padding: 15vw 0 4vw;
  }
}
.footer .footer_inner .footer-logo {
  width: 370px;
  margin: 0 auto 75px;
}
@media (max-width: 480px) {
  .footer .footer_inner .footer-logo {
    width: 82vw;
    margin-bottom: 10vw;
  }
}
.footer .footer_inner .footer-logo img {
  width: 100%;
}
.footer .footer_inner a {
  display: inline-block;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  padding: 0 20px;
}
@media (max-width: 480px) {
  .footer .footer_inner a {
    font-size: 4vw;
    padding: 0;
  }
}
.footer .footer_inner .footernavi {
  margin: 0 auto 25px;
  max-width: 1100px;
  display: flex;
  justify-content: center;
}
@media (max-width: 480px) {
  .footer .footer_inner .footernavi {
    margin: 0;
    padding: 0px 3.9vw;
    max-width: 100%;
  }
}
.footer .footer_inner .footernavi:after {
  content: "";
  display: block;
  clear: both;
}
@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul {
    width: 82vw;
    -moz-column-count: 2;
         column-count: 2;
  }
}
.footer .footer_inner .footernavi ul li {
  float: left;
}
@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li {
    margin-right: 0;
    float: none;
    padding: 3vw 0;
    width: 100%;
  }
}
.footer .footer_inner .footernavi ul li:after {
  color: #fff;
  font-size: 1.3rem;
  content: "|";
}
@media (max-width: 480px) {
  .footer .footer_inner .footernavi ul li:after {
    content: none;
  }
}
.footer .footer_inner .footernavi ul li:last-child::after {
  content: none;
}
.footer .copy {
  text-align: center;
  padding-bottom: 20px;
}
@media (max-width: 480px) {
  .footer .copy {
    padding: 10px 0 13px;
  }
}
.footer .copy p {
  margin-bottom: 0;
}
.footer .copy img {
  vertical-align: bottom;
  position: relative;
  top: -4px;
  left: 14px;
}
@media (max-width: 480px) {
  .footer .copy img {
    margin: 0 auto;
    display: block;
    top: 2px;
    left: auto;
  }
}
.footer .copy a {
  font-size: 1.3rem;
  color: #fff;
  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;
}
@media (max-width: 480px) {
  .access_map .access_data {
    font-size: 4.1vw;
    letter-spacing: 0.4vw;
  }
}
.access_map .access_data dl {
  padding: 0 5px;
}
@media (max-width: 480px) {
  .access_map .access_data dl {
    padding: 0 1.2vw;
  }
}
.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;
  padding-bottom: 15px;
}
@media (max-width: 480px) {
  .access_map .access_data dl dd {
    padding-left: 0;
    padding-bottom: 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;
  }
}
.access_map .access_data dl dd a {
  color: #333;
}

.privacy_section {
  padding: 50px 0 70px;
}
@media (max-width: 480px) {
  .privacy_section {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
    padding: 30px 0 40px;
  }
}
.privacy_section .privacy_section_inner {
  margin: 0 auto;
  max-width: 1100px;
}
@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 #b4b4b5;
  margin-bottom: 30px;
  padding: 10px 15px;
  background-color: #f7f8f9;
}
@media (max-width: 480px) {
  .privacy_section .privacy_section_inner .privacy_set .privacy_set_title {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
    border-left: 3px solid #b4b4b5;
    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: 7.7vw;
    padding-left: 0;
  }
}

.inquiry_info {
  display: flex;
  text-align: center;
  justify-content: center;
  align-items: center;
  gap: 60px;
}
@media (max-width: 480px) {
  .inquiry_info {
    flex-direction: column;
    width: 80%;
    gap: 0;
    margin: 0 auto;
  }
}
.inquiry_info .tel_area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 425px;
  height: 160px;
  border-radius: 10px;
  border: 1px solid #b4b4b5;
  flex-direction: column;
}
@media (max-width: 480px) {
  .inquiry_info .tel_area {
    width: 100%;
    height: 35vw;
    border-radius: 5px;
    margin-bottom: 5vw;
  }
}
.inquiry_info .fax_area {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 425px;
  height: 160px;
  border-radius: 10px;
  border: 1px solid #b4b4b5;
  font-size: 4.5rem;
  font-family: "arial bold";
  letter-spacing: -1px;
  line-height: 1;
}
@media (max-width: 480px) {
  .inquiry_info .fax_area {
    width: 100%;
    height: 25vw;
    font-size: 7vw;
    font-family: "Noto Sans JP", sans-serif;
    border-radius: 5px;
  }
}
.inquiry_info .fax_area span {
  font-size: 65%;
}
.inquiry_info .no {
  margin-bottom: 10px;
}
.inquiry_info .no a {
  font-size: 4.5rem;
  font-family: "arial bold";
  letter-spacing: -1px;
  line-height: 1;
  text-decoration: none;
}
@media (max-width: 480px) {
  .inquiry_info .no a {
    font-size: 7vw;
    font-family: "Noto Sans JP", sans-serif;
  }
}
.inquiry_info .no a span {
  font-size: 65%;
}
.inquiry_info .time {
  margin-bottom: 0;
}
@media (max-width: 480px) {
  .inquiry_info .time {
    font-size: 4.2vw;
  }
}

.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;
}
@media (max-width: 480px) {
  .attent_block .title {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
  }
}
.attent_block .title:before {
  content: "■";
  font: normal normal normal 18px/1 FontAwesome;
  margin-right: 6px;
}
@media (max-width: 480px) {
  .attent_block .title:before {
    font: normal normal normal 4.5vw/1 FontAwesome;
    margin-right: 2vw;
  }
}
@media (max-width: 480px) {
  .attent_block p {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
  }
}

.thanks_title {
  font-size: 2.3rem;
  text-align: center;
  margin-bottom: 30px;
}
@media (max-width: 480px) {
  .thanks_title {
    font-size: 5.6vw;
    margin-bottom: 7.7vw;
  }
}

.thanks_msg {
  font-size: 1.4rem;
  text-align: center;
  line-height: 2;
}
@media (max-width: 480px) {
  .thanks_msg {
    font-size: 3.9vw;
    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: 25%;
  background: #F2F2F2;
  position: relative;
}
@media (max-width: 480px) {
  #MailForm table th {
    padding: 0 0 3px;
    width: 100%;
    background: none;
  }
}
@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;
  }
}
@media (max-width: 480px) {
  #MailForm table td {
    margin-bottom: 35px;
    padding: 0;
  }
}

#MailForm input,
#MailForm textarea {
  color: #444;
  font-size: 1.5rem;
  letter-spacing: 1px;
  line-height: 1.4;
  border: 1px solid #e1e1e1;
  padding: 10px;
}
@media (max-width: 480px) {
  #MailForm input,
  #MailForm textarea {
    width: 100%;
  }
}
#MailForm select {
  font-size: 1.5rem;
  cursor: pointer;
  border: 1px solid #e1e1e1;
  padding: 10px 27px 10px 13px;
  background: url("../img/select-arrow.png") no-repeat center right 7px/9% #fff;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#MailForm label {
  display: inline-flex;
  align-items: center;
  padding: 2px 8px 2px 0;
  cursor: pointer;
}
@media (max-width: 480px) {
  #MailForm label {
    display: flex;
  }
}
@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 input[type=radio] {
  width: 1.2em;
  height: auto;
  aspect-ratio: 1/1;
  line-height: 1.2;
  margin-right: 5px;
}
#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_text {
  line-height: 1.4;
  margin-bottom: 27px;
}
@media (max-width: 480px) {
  #MailForm .important_text {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
  }
}
#MailForm .important_text li {
  text-indent: -1.1em;
  padding-left: 1em;
}
#MailForm .inquiry_inset {
  margin-bottom: 25px;
}
#MailForm .confirm_txt {
  text-align: center;
}
@media (max-width: 480px) {
  #MailForm .confirm_txt {
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
    text-align: left;
  }
}

.send_btn_inner {
  text-align: center;
  padding: 15px 0 20px;
}
.send_btn_inner .send_btn {
  width: 220px;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 1px;
  cursor: pointer;
  border: 0;
  padding: 15px 0;
  background-color: #333;
  transition: background-color 0.3s;
}
@media (max-width: 480px) {
  .send_btn_inner .send_btn {
    width: 56vw;
    font-size: 3.9vw;
    padding: 15px 10px;
  }
}
.send_btn_inner .send_btn:hover {
  background-color: #bf003c;
}
@media (max-width: 480px) {
  .send_btn_inner .send_btn:hover {
    background-color: #333;
  }
}
.send_btn_inner .submit_btn {
  width: 50%;
}
@media (max-width: 480px) {
  .send_btn_inner .submit_btn {
    margin-bottom: 15px;
    width: 80%;
  }
}

.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 {
  text-align: center;
  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;
}
@media (max-width: 480px) {
  .send_guide_msg {
    font-size: 3.9vw;
  }
}

.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: #bf003c;
  display: inline-block;
}
@media (max-width: 480px) {
  .send_inner .send_btn_inner .send_btn {
    border-radius: 0;
    font-size: 4.6vw;
  }
}

.send_inner .send_btn_inner .btn_return {
  width: 220px;
  background: #797979;
  border-radius: 0;
}
@media (max-width: 480px) {
  .send_inner .send_btn_inner .btn_return {
    width: 56vw;
    margin-bottom: 5vw;
  }
}

.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 {
    text-align: left;
    margin-bottom: 30px;
  }
}

.send_inner .send_error {
  display: inline-block;
  text-align: left;
  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: 2px solid #999;
  width: 100%;
}
@media (max-width: 480px) {
  .table_base table {
    border: 0;
  }
}
.table_base table td,
.table_base table th {
  font-weight: normal;
  border: 1px solid #999;
  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: #bf003c;
  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;
  }
}
@media (max-width: 480px) {
  .table_base table tbody {
    font-size: 4.1vw;
    letter-spacing: 0.4vw;
  }
}
.table_base table tbody th {
  text-align: center;
  width: 28%;
  background: #f5f5f5;
  font-weight: 550;
}
@media (max-width: 480px) {
  .table_base table tbody th {
    text-align: left;
    width: 100%;
  }
}
.table_base table tbody td {
  padding: 15px 40px;
}
@media (max-width: 480px) {
  .table_base table tbody td {
    margin-bottom: 7.5vw;
    padding: 3vw 3vw 0;
  }
}
.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;
}
.table_base.pb0 {
  padding-bottom: 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%;
}

/* .content inquiry */
#contents .section.inquiry {
  width: auto;
  padding: 0;
}
#contents .section.inquiry .content.inquiry {
  background-color: #eeeeee;
  text-align: center;
  padding: 65px 0;
}
#contents .section.inquiry .content.inquiry .content_ttl {
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 35px;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .content_ttl {
    font-size: 5.5vw;
    margin-bottom: 5vw;
  }
}
#contents .section.inquiry .content.inquiry .content_txt {
  font-size: 1.5rem;
  line-height: 1;
  margin-bottom: 35px;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .content_txt {
    width: 82vw;
    font-size: 3.9vw;
    line-height: 1.6;
    letter-spacing: 0.1vw;
    margin: 0 auto 8vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list {
    flex-direction: column;
    gap: 5vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 315px;
  height: 105px;
  background-color: #fff;
  border-radius: 10px;
  color: #333;
  text-decoration: none;
  padding: 0 25px;
  transition: color 0.3s;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame {
    justify-content: flex-start;
    width: 79.5vw;
    height: 23vw;
    border-radius: 5px;
    padding: 0 7vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 15px;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner {
    gap: 5vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .img_area {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 66px;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .img_area {
    width: 12vw;
    height: 14vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .img_area img {
  width: 80%;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .img_area img {
    display: block;
    width: 100%;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .txt {
  font-size: 1.8rem;
  font-weight: 550;
  line-height: 1.4;
  text-align: left;
  letter-spacing: 0.1rem;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .txt {
    font-size: 4.6vw;
    font-weight: 600;
    letter-spacing: 0.1vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .number {
  font-size: 2.5rem;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner .number {
    font-size: 6.7vw;
  }
}
#contents .section.inquiry .content.inquiry .item_list .frame .frame_inner.tel img {
  width: 60%;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .frame .frame_inner.tel img {
    width: auto;
    height: 100%;
  }
}
#contents .section.inquiry .content.inquiry .item_list .mail .frame:hover {
  color: #bf003c;
}
@media (max-width: 480px) {
  #contents .section.inquiry .content.inquiry .item_list .mail .frame:hover {
    color: #333;
  }
}

.txt_c {
  text-align: center;
}

.txt_r {
  text-align: right;
}

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

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

.tel a {
  color: #333;
  text-decoration: none;
  cursor: inherit;
  pointer-events: none;
}
@media (max-width: 480px) {
  .tel a {
    pointer-events: inherit;
  }
}

.fade_hover a {
  transition: 0.8s;
}
@media (max-width: 480px) {
  .fade_hover a {
    transition: none;
  }
}
.fade_hover a:hover {
  opacity: 0.7;
}
@media (max-width: 480px) {
  .fade_hover a:hover {
    opacity: 1;
  }
}

.btn_base {
  margin: 0 auto;
  width: 400px;
}
@media (max-width: 480px) {
  .btn_base {
    width: 90%;
  }
}
.btn_base a {
  display: block;
  height: 100%;
  color: #fff;
  text-align: center;
  text-decoration: none;
}

.everywhere_block {
  max-width: 1100px;
  line-height: 2.2;
  text-align: center;
  margin: 0 auto 50px;
}
@media (max-width: 480px) {
  .everywhere_block {
    max-width: 100%;
    font-size: 3.9vw;
    letter-spacing: 0.4vw;
    line-height: 1.8;
    text-align: left;
    margin: 0 auto 30px;
    padding: 0 20px;
  }
}

.shine {
  position: relative;
  overflow: hidden;
  /* 背景色は指定しない（既存の色を維持） */
}

.shine::before {
  content: "";
  position: absolute;
  top: 0;
  left: -44%;
  width: 100%;
  height: 100%;
  background: linear-gradient(100deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0.8) 50%, rgba(255, 255, 255, 0.4) 60%, rgba(255, 255, 255, 0) 100%);
  transform: skew(-20deg);
  pointer-events: none;
  transition: none;
  /* 初期状態で斜めの光が見えるように配置 */
}

.shine:hover::before {
  animation: shine-move 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes shine-move {
  0% {
    left: -40%;
    opacity: 1;
  }
  80% {
    left: 100%;
    opacity: 1;
  }
  100% {
    left: 120%;
    opacity: 0;
  }
} /*# sourceMappingURL=common.css.map */