@charset "UTF-8";
html, body, #wrapper {
  width: 100%;
  max-height: 100%; }

body {
  -webkit-text-size-adjust: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  line-height: 1.8;
  word-break: break-word;
  font-display: swap;
  font-weight: 400;
  color: #424243;
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif;
  font-size: 14px;
  /*transform: rotate( .03deg);*/ }

h1, h2, h3, h4, h5, h6, p, span, em, b, i, dl, dt, dd, ol, ul, li, tr, th, td, div {
  letter-spacing: 0.05em;
  font-feature-settings: "palt" 1;
  /*-webkit-text-stroke-width: 0.25px;*/ }

ul li, ol li {
  display: inline-block;
  vertical-align: top;
  font-size: 0.875rem;
  line-height: 1.575rem; }

p, p a, div, ul, ol, li, li a, dl, dt, dt a, dd, dd a, section, span, em, i, strong, b {
  box-sizing: border-box;
  /*text-align: justify; text-justify: inter-ideograph;*/ }

i {
  font-style: normal; }

.flexImg {
  overflow: hidden;
  position: relative;
  border: solid 1px #ccc; }
  .flexImg img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    font-family: 'object-fit: cover;'; }
  .flexImg.ab {
    height: 0;
    padding: 100%; }
    .flexImg.ab img {
      position: absolute;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      right: 0;
      margin: auto;
      z-index: 10; }

.jpG {
  font-family: "YakuHanJP", "Noto Sans JP", sans-serif; }

.jpM {
  font-family: "YakuHanMP", "Noto Serif JP", sans-serif; }

.en {
  font-family: "Roboto", sans-serif; }

.en02 {
  font-family: "Overpass", sans-serif; }

.en03 {
  font-family: "Montserrat", sans-serif; }

.en04 {
  font-family: "Roboto Condensed", sans-serif; }

.en05 {
  font-family: "Barlow Condensed", sans-serif;
  font-weight: 400; }

#wrapper {
  text-align: center;
  overflow-x: hidden;
  min-width: 1100px; }

.inner {
  width: 1200px;
  margin: auto; }

section {
  /* text-align:left;*/ }

@media only screen and (max-width: 767px) {
  #wrapper {
    min-width: 100%; }

  main {
    /*padding-top: calc(100vh - 173px);*/ }

  .inner {
    width: 100%; } }
.cta {
  background: #606062;
  color: #f8f8f8;
  padding: 40px 0 50px; }
  .cta .tit {
    font-size: 24px;
    font-weight: 600;
    margin: 0 auto 30px; }
  .cta .contactWrap .mailSec .mail {
    width: 480px;
    height: 70px;
    margin: 0 auto 30px; }
    .cta .contactWrap .mailSec .mail a {
      background: #f0851a;
      color: #fff;
      width: 100%;
      height: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.25));
      position: relative; }
      .cta .contactWrap .mailSec .mail a i {
        line-height: 0;
        width: 35px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        left: 30px; }
      .cta .contactWrap .mailSec .mail a em {
        font-size: 25px;
        font-weight: 600; }
  .cta .contactWrap .telSec .t {
    font-size: 18px;
    font-weight: 500; }
  .cta .contactWrap .telSec .division {
    font-size: 24px;
    font-weight: 600; }
  .cta .contactWrap .telSec .tel a {
    display: flex;
    justify-content: center;
    align-items: center; }
    .cta .contactWrap .telSec .tel a span {
      font-size: 13px;
      margin-right: 1em;
      display: none; }
    .cta .contactWrap .telSec .tel a i {
      width: 38px;
      line-height: 0;
      margin-right: 1em; }
    .cta .contactWrap .telSec .tel a em {
      font-size: 40px; }
    .cta .contactWrap .telSec .tel a small {
      font-size: 11px;
      line-height: 1.5;
      text-align: left;
      margin-left: 1em; }

.title {
  display: flex;
  flex-direction: column;
  margin-bottom: 20px; }
  .title i {
    width: 155px;
    margin: 0 auto 20px;
    /*opacity: 0.8;*/ }
  .title em {
    font-size: 38px;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0; }
  .title + .read {
    font-size: 1rem;
    line-height: 1.8rem;
    display: block;
    margin-bottom: 40px; }

.fukidashiLine {
  position: relative; }
  .fukidashiLine::before, .fukidashiLine::after {
    content: "";
    height: 1px;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 10;
    top: 100%; }
  .fukidashiLine::before {
    width: 100%;
    background: #f0851a; }
  .fukidashiLine::after {
    width: 22px;
    background: #f2f2f2; }
  .fukidashiLine em {
    position: relative;
    padding-bottom: 5px;
    display: flex;
    justify-content: center;
    align-items: center; }
    .fukidashiLine em::after {
      content: "";
      width: 22px;
      height: 1px;
      position: absolute;
      z-index: 20;
      transform: rotate(55deg);
      top: calc(100% + 9px);
      left: calc(100% / 2 - 15px);
      background: #f0851a; }

.phSetWrap {
  display: flex;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  width: 100%; }
  .phSetWrap .phSet {
    text-align: left; }
    .phSetWrap .phSet .t {
      display: flex;
      justify-content: center;
      align-items: center;
      margin: 0 0 auto 0;
      display: inline-flex;
      line-height: 1.5; }
  .phSetWrap .phSet.before, .phSetWrap .phSet.before1, .phSetWrap .phSet.before2 {
    width: 35%;
    position: relative; }
    .phSetWrap .phSet.before .t, .phSetWrap .phSet.before1 .t, .phSetWrap .phSet.before2 .t {
      background: #868689;
      color: #fff;
      padding: 6px 20px;
      font-size: 16px; }
    .phSetWrap .phSet.before .img-caption, .phSetWrap .phSet.before1 .img-caption, .phSetWrap .phSet.before2 .img-caption {
      background: transparent;
      color: #000;
      padding: 6px 20px 6px 0; }
    .phSetWrap .phSet.before::before, .phSetWrap .phSet.before1::before, .phSetWrap .phSet.before2::before {
      content: "\f054";
      font-family: "Font Awesome 5 Pro";
      color: #f0851a;
      font-weight: 600;
      font-size: 50px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: 10;
      left: calc(100% + 15px);
      padding-top: .5em; }
  .phSetWrap .phSet.before1 {
    width: 25%;
    margin: -25% 0 0; }
    .phSetWrap .phSet.before1::before {
      transform: rotate(90deg);
      top: inherit;
      bottom: 15%;
      left: 50%;
      font-size: 25px; }
    .phSetWrap .phSet.before1::after {
      position: absolute;
      content: "\f054";
      top: inherit;
      bottom: -3%;
      left: 22.5%;
      transform: rotate(-90deg);
      font-family: "Font Awesome 5 Pro";
      color: #f0851a;
      font-weight: 600;
      font-size: 25px; }
  .phSetWrap .phSet.before2 {
    width: 25%;
    margin: 25% 0 0 -25%; }
  .phSetWrap .phSet.after {
    /*width: 52%;*/
    width: 600px; }
    .phSetWrap .phSet.after .t {
      background: #f0851a;
      padding: 7px 25px;
      padding-left: 15px;
      font-size: 18px; }
      .phSetWrap .phSet.after .t em {
        width: 165px;
        line-height: 1;
        margin-right: 1.5em; }
      .phSetWrap .phSet.after .t span {
        font-weight: 600;
        color: #fff; }

@media print, screen and (min-width: 768px) {
  .phSetWrap .phSet.before1 {
    width: 25%;
    margin: -25% 0 0 5%; }
    .phSetWrap .phSet.before1 .flexImg > img {
      max-height: 170px;
      object-fit: contain;
      object-position: left; }
    .phSetWrap .phSet.before1::before {
      transform: rotate(90deg);
      top: inherit;
      bottom: -15%;
      left: 25%; }
  .phSetWrap .phSet.before2 {
    width: 25%;
    margin: 25% 0 0 -36%; } }
@media only screen and (max-width: 767px) {
  /*.cta{ padding: 30px 0 35px;
  .tit { @include fs(16,1.6); margin: 0 auto 30px;}
  ul { width: 100%;
  li{ width: 50%;
  a{ @include flexCol; align-items: center;}
  .t{ @include fs(10);}
  }
  li.tel { border-right:1px solid rgba($subColor,.25);
  a {}
  i { width:37px; margin-bottom: 10px;}
  .t {}
  em { @include fs(28,1.5);}
  small { @include fs(9);}
  }
  li.mail {
  a {}
  i { width: 34px; margin: 6px auto 16px;}
  .t {}
  .link { width: 150px; height: 40px; box-shadow: 5px 5px 6px 0px rgba($subColor,.15); margin-top: 14px;
  em { @include fs(11,1); }
  i { @include fs(10,1); width: auto; margin: 0; right: 12px;}
  }
  }
  }
  }*/
  .cta {
    padding: 30px 0 35px; }
    .cta .tit {
      font-size: 16px;
      margin: 0 auto 30px; }
    .cta .contactWrap .mailSec .mail {
      width: 90%;
      height: 50px;
      margin: 0 auto 30px; }
      .cta .contactWrap .mailSec .mail a {
        filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.25)); }
        .cta .contactWrap .mailSec .mail a i {
          line-height: 0;
          width: 24px;
          left: 15px; }
        .cta .contactWrap .mailSec .mail a em {
          font-size: 18px; }
    .cta .contactWrap .telSec .t {
      font-size: 15px; }
    .cta .contactWrap .telSec .division {
      font-size: 16px; }
    .cta .contactWrap .telSec .tel a {
      flex-wrap: wrap; }
      .cta .contactWrap .telSec .tel a span {
        font-size: 13px;
        margin-right: 0em;
        width: 100%; }
      .cta .contactWrap .telSec .tel a i {
        width: 30px;
        line-height: 0;
        margin-right: 1em; }
      .cta .contactWrap .telSec .tel a em.en {
        font-size: 36px;
        letter-spacing: .025em; }
      .cta .contactWrap .telSec .tel a small {
        font-size: 10px;
        line-height: 1.5;
        margin-left: 1em; }

  .title i {
    width: 125px;
    margin: 0 auto 5px; }
  .title em {
    font-size: 1.375rem;
    line-height: 2.0625rem; }
  .title + .read {
    font-size: 0.8125rem;
    line-height: 1.4625rem;
    margin-bottom: 20px; }

  .fukidashiLine::after {
    width: 16px; }
  .fukidashiLine em {
    padding-bottom: 5px; }
    .fukidashiLine em::after {
      width: 16px;
      height: 1px;
      top: calc(100% + 7px);
      left: calc(100% / 2 - 11px); }

  .phSetWrap {
    width: 100%;
    flex-wrap: wrap; }
    .phSetWrap .phSet.before, .phSetWrap .phSet.before1, .phSetWrap .phSet.before2 {
      width: 80%;
      margin: 0 auto 45px; }
      .phSetWrap .phSet.before .t, .phSetWrap .phSet.before1 .t, .phSetWrap .phSet.before2 .t {
        padding: 4px 0px;
        font-size: 14px;
        width: 100%; }
      .phSetWrap .phSet.before::before, .phSetWrap .phSet.before1::before, .phSetWrap .phSet.before2::before {
        content: "\f078";
        font-size: 36px;
        position: relative;
        top: auto;
        left: auto;
        bottom: auto;
        right: auto;
        transform: none;
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        z-index: 10;
        top: calc(100% + 25px);
        padding-top: 0em;
        text-align: center;
        line-height: 0; }
    .phSetWrap .phSet.before1 {
      width: 80%;
      margin: 0 auto 80px; }
      .phSetWrap .phSet.before1::before {
        padding: 30px 0 0; }
      .phSetWrap .phSet.before1::after {
        font-size: 36px;
        bottom: -20px;
        left: 45%; }
    .phSetWrap .phSet.after {
      /*width: 52%;*/
      width: 100%; }
      .phSetWrap .phSet.after .t {
        padding: 7px 0px 4px;
        padding-left: 15px;
        font-size: 16px;
        flex-direction: column;
        width: 100%; }
        .phSetWrap .phSet.after .t em {
          width: 130px;
          margin: 0 auto 2px;
          position: relative;
          left: -5%; } }
a, a:link, a:visited {
  color: #f8f8f8;
  text-decoration: none;
  outline: none;
  transition: 0.5s;
  display: inline-block; }
  a.link-txt, a:link.link-txt, a:visited.link-txt {
    color: #f0851a; }

a:hover {
  /*color:rgba($mainColor,0.5);*/
  text-decoration: none;
  opacity: 0.6; }

a img {
  transition: 0.5s; }

a:hover img {
  opacity: 0.6; }

*::selection {
  background: #1d1d1f;
  color: #f8f8f8; }

@media print, screen and (min-width: 768px) {
  #spbar, #spmenu {
    display: none !important; }

  #mm-menu {
    display: none !important; }

  .spMenu span {
    display: none; } }
@media print, screen and (min-width: 768px) {
  .sp, .spOnly, .tbOnly {
    display: none !important; }

  .pc, .pc-tb {
    display: inline-block !important;
    vertical-align: top !important; }

  .pc-sp {
    display: inline-block !important;
    vertical-align: top !important; }

  /* スマホのみtellink有効（init.jsにも要設定） */
  a[href^="tel:"] {
    cursor: default; } }
@media only screen and (max-width: 767px) {
  .pc, .tbOnly, .pc-tb {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; }

  .sp, .spOnly {
    display: inline-block !important;
    vertical-align: top !important; }

  .pc-sp {
    display: inline-block !important;
    vertical-align: top !important; } }
@media screen and (min-width: 768px) and (max-width: 1149px) {
  .pc, .spOnly {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; }

  .sp, .tbOnly, .pc-tb {
    display: inline-block !important;
    vertical-align: top !important; }

  .pc-sp {
    display: none !important;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0; } }

/*# sourceMappingURL=common.css.map */
