@charset "UTF-8";
@media all and (max-width: 767px) {
  .u-pc-only {
    display: none !important;
  }
  .u-tab-only {
    display: none !important;
  }
  .u-pc2-only {
    display: none !important;
  }
}

@media screen and (min-width: 768px), print {
  .u-sp-only {
    display: none !important;
  }
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .u-pc2-only {
    display: none !important;
  }
}

@media (min-width: 1100px) {
  .u-sptab-only {
    display: none !important;
  }
  .u-tab-only {
    display: none !important;
  }
}

body.modal-open {
  overflow: hidden;
}

.menudiv.fixed {
  padding-top: 45px;
}

.menumaildiv {
  width: 100%;
  border-right: none;
  border-left: none;
}

.menumaildiv a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 95px;
  gap: 7px;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.menumaildiv a p {
  margin: 0;
  padding: 0;
  letter-spacing: 0.1em;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.menumaildiv a:hover {
  background: #fff;
}

.menumaildiv a:hover p {
  color: #F5371E;
}

.p-top01 {
  position: relative;
}

.p-top01-inner {
  position: relative;
}

.p-top01__bg {
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: 0;
  opacity: 0;
  pointer-events: none;
}

.p-top01__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.p-top01 .redbg {
  position: relative;
  z-index: 1;
}

.p-top01.act .p-top01__bg {
  opacity: 1;
}

.p-top01 .company {
  font-family: YakuHanMP, "Noto Serif JP", serif;
  font-size: 15px;
  letter-spacing: 0.15em;
  max-width: 289px;
  height: 68px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-top01 .company svg {
  width: 10px;
  height: 18px;
}

.p-top02 {
  position: relative;
}

.p-top02__bg {
  position: fixed;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: -1;
  opacity: 0;
  pointer-events: none;
}

.p-top02__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

.p-top02.act .p-top02__bg {
  opacity: 1;
}

.p-slider-item {
  width: 100%;
  max-width: 220px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-slider-item__photo {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 202px;
  height: 202px;
  margin: 0 auto;
  border: solid 1px #F5371E;
  border-radius: 50%;
  padding: 7px;
  z-index: 1;
}

.p-slider-item__photo figure {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  border: solid 1px #F5371E;
  border-radius: 50%;
  z-index: 1;
  overflow: hidden;
}

.p-slider-item__photo img {
  display: block;
  z-index: 0;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.p-slider-item__txt {
  text-align: center;
  border-top: 1px solid #F5381e;
  padding-top: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f5381e;
  color: #f5381e;
  margin: 25px 0 0;
  font-size: 13px;
  letter-spacing: 0.2em;
}

.p-slider-item__txt.type2 {
  letter-spacing: 0em;
}

.p-slider-item__txt2 {
  margin: 25px 0 0;
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.2em;
  color: #f5381e;
}

.p-slider-item__txt2 span {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0.15em;
  margin-top: 15px;
}

.p-slider-item:hover {
  display: block;
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

@media all and (max-width: 767px) {
  .p-slider-item__txt.type2 {
    line-height: 1.3;
  }
}

.hrefvoicebox {
  max-width: 410px;
  width: 100%;
}

.newsflex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.innernewstop ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.innernewstop ul li a time {
  letter-spacing: 0.1em;
  font-size: 12px;
  color: #3C3C3C;
  font-family: "Noto Sans JP", sans-serif;
}

.innernewstop ul li a span {
  white-space: nowrap;
}

.innernewstop ul li a p {
  letter-spacing: 0.05em;
  font-size: 14px;
  color: #3C3C3C;
  font-family: "Noto Sans JP", sans-serif;
}

.footfirst .contactli a:after,
.footsec .contactli a:after {
  display: none;
}

.footfirst li > a,
.footsec li > a {
  position: relative;
}

.footfirst li > a:after,
.footsec li > a:after {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  left: -40px;
  top: 50%;
  width: 25px;
  height: 1px;
  background: #fff;
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  -webkit-transition: 0.2s;
  transition: 0.2s;
  -webkit-transform-origin: left center;
          transform-origin: left center;
}

.footfirst li > a:hover:after,
.footsec li > a:hover:after {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}

@-webkit-keyframes scroll-left {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes scroll-left {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

.voiceflex .innervoicetop {
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.voiceflex .innervoice {
  height: 100%;
}

.voiceflex .innervoicebox {
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.voiceflex .swiper-slide {
  height: auto;
}

.u-contact svg {
  stroke: #fff;
}

.u-noren {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 2;
}

.u-noren:after, .u-noren:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  height: 100%;
  width: 1px;
  background: #F5371E;
  z-index: 10;
}

.u-noren:after {
  left: 7px;
}

.u-noren:before {
  right: 7px;
}

.u-noren__txt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  gap: 22px;
}

.u-noren__txt .txt {
  font-size: 30px;
  letter-spacing: 0.1em;
}

.u-noren__txt .txt2 {
  font-size: 11px;
  letter-spacing: 0.2em;
  display: inline-block;
  position: relative;
}

.u-noren__txt .txt2:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin: -0.5px 0 0;
  left: -20px;
  height: 1px;
  width: 12px;
  opacity: 0.5;
  background: #fff;
}

.u-noren__txt .txt2:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  margin: -0.5px 0 0;
  right: -20px;
  height: 1px;
  width: 12px;
  opacity: 0.5;
  background: #fff;
}

.u-noren.grey:after, .u-noren.grey:before {
  background: #fff;
}

.u-noren.grey .u-noren__txt {
  color: #F5371E;
}

.u-noren.grey .u-noren__txt .txt2:after, .u-noren.grey .u-noren__txt .txt2:before {
  background: #F5371E;
}

@media all and (max-width: 767px) {
  .u-noren {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 22.66667vw;
    width: 100%;
    background: url(/wp-content/themes/cominka/img/bg_noren_red_sp.png) bottom center;
    background-size: contain;
  }
  .u-noren:after, .u-noren:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 1.06667vw;
    width: 1px;
    background: #F5371E;
    z-index: 10;
  }
  .u-noren:after {
    left: 7px;
  }
  .u-noren:before {
    right: 7px;
  }
  .u-noren.grey {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_sp.png) bottom center;
    background-size: contain;
  }
  .u-noren.grey2 {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_02_sp.png) bottom center;
    background-size: contain;
  }
  .u-noren.grey2:after, .u-noren.grey2:before {
    height: 1.06667vw;
    background: #F5371E;
  }
  .u-noren__txt {
    gap: 2.66667vw;
  }
  .u-noren__txt .txt {
    font-size: 20px;
    font-size: 5.33333vw;
  }
  .u-noren__txt .txt2 {
    font-size: 10px;
    font-size: 2.66667vw;
  }
}

@media screen and (min-width: 768px), print {
  .u-noren {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 115px;
    background: url(/wp-content/themes/cominka/img/bg_noren_red_pc.png) center;
    background-size: 1440px auto;
  }
  .u-noren:after, .u-noren:before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    height: 5px;
    width: 1px;
    background: #F5371E;
    z-index: 10;
  }
  .u-noren:after {
    width: 95px;
    left: 16px;
    background: none;
    color: #F5371E;
    border-left: 1px solid #F5371E;
    border-right: 1px solid #F5371E;
  }
  .u-noren:before {
    right: 16px;
  }
  .u-noren.grey {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_pc.png) center;
    background-size: 1440px auto;
  }
  .u-noren.grey:after {
    background: none;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .u-noren.grey2 {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_02_pc.png) center;
    background-size: 1440px auto;
  }
  .u-noren.grey2::before {
    background: #F5371E;
  }
  .u-noren.grey2:after {
    background: none;
    border-left: 1px solid #F5371E;
    border-right: 1px solid #F5371E;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .u-noren:after {
    border-right: none;
    left: 7px;
  }
  .u-noren:before {
    right: 7px;
  }
  .u-noren.grey {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_pc.png) center;
    background-size: 1440px auto;
  }
  .u-noren.grey:after {
    border-right: none;
  }
  .u-noren.grey2 {
    background: url(/wp-content/themes/cominka/img/bg_noren_grey_02_pc.png) center;
    background-size: 1440px auto;
  }
  .u-noren.grey2:after {
    border-right: none;
  }
}

.breaddiv {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.2em;
}

.breaddiv a {
  font-size: 11px;
  letter-spacing: 0.2em;
}

.p-service-item__link {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.p-service-item__link span {
  font-size: 12px;
  letter-spacing: 0.2em;
  font-family: "Noto Sans JP", sans-serif;
  color: #F5371E;
}

.linkboxwhite a.more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-pagenav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 80px;
  margin: 70px auto 0;
}

.p-pagenav-item span {
  font-size: 12px;
  letter-spacing: 0.2em;
  font-family: "Noto Sans JP", sans-serif;
  color: #F5371E;
}

.p-pagenav-item svg {
  stroke: #F5371E;
  fill: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
  top: 1px;
}

.p-pagenav-item a:hover svg {
  stroke: #fff;
  fill: #F5371E;
}

.p-pagenav-item__back {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 14px;
}

.p-pagenav-item__next {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 14px;
}

.modalbtn {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Noto Sans JP", sans-serif;
  width: 140px;
  font-size: 12px;
  text-align: center;
  margin: 30px auto 0;
  padding: 12px 0;
  position: relative;
  letter-spacing: 2px;
  -webkit-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
  max-width: 170px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #fff;
  border: 1px solid #f5381e;
  color: #f5381e;
  -webkit-box-shadow: 5px 6px 0px -1px #f5381e;
          box-shadow: 5px 6px 0px -1px #f5381e;
}

.modalbtn span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  display: inline-block;
  padding: 0 0 1px;
}

.modalbtn svg {
  stroke: #F5371E;
  position: absolute;
  right: 28px;
}

body.modal-open {
  overflow: hidden;
}

.modal {
  display: none;
  position: fixed;
  z-index: 8887;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(245, 56, 30, 0.9);
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}

.modal-top {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: show 0.4s linear 0s;
          animation: show 0.4s linear 0s;
}

.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: show 0.4s linear 0s;
          animation: show 0.4s linear 0s;
}

.modal-content__inner {
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 5px;
}

.modal .modalClose {
  position: absolute;
  top: -60px;
  right: -8px;
  border-radius: 0px;
  width: 60px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  margin: 0px 0 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform-origin: center;
          transform-origin: center;
}

.modal .modalClose span {
  background: #fff;
  height: 1px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0%;
  -webkit-transform-origin: center;
          transform-origin: center;
  z-index: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.modal .modalClose span:first-of-type {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transform-origin: center;
          transform-origin: center;
}

.modal .modalClose span:last-of-type {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.modal .modalClose svg {
  position: relative;
  z-index: 1;
}

@media all and (max-width: 767px) {
  .modal-content {
    width: 88vw;
    height: auto;
    max-height: 80%;
  }
  .modal-content__inner {
    height: 100%;
    padding: 8vw 5.33333vw 8vw 5.33333vw;
    overflow-y: auto;
  }
  .modal .modalClose {
    position: absolute;
    top: -6.4vw;
    right: -2.13333vw;
    width: 13.33333vw;
    height: 13.33333vw;
    margin: -8vw 0vw 0vw 0vw;
  }
}

@media screen and (min-width: 768px), print {
  .modal-top {
    max-width: 430px;
    width: 90%;
  }
  .modal-content {
    margin: 20px auto 0;
    max-width: 430px;
    width: 90%;
    max-height: 630px;
  }
  .modal-content__inner {
    max-height: 630px;
    overflow-y: auto;
  }
  .modal .modalClose:hover span:first-of-type {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .modal .modalClose:hover span:last-of-type {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

@-webkit-keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.p-philosophy01 {
  position: relative;
}

.p-philosophy01:after, .p-philosophy01:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background: #F5371E;
  z-index: 0;
}

.p-philosophy01:after {
  left: 7px;
}

.p-philosophy01:before {
  right: 7px;
}

.p-philosophy01.no .p-philosophy01__inner {
  opacity: 0;
}

@media all and (max-width: 767px) {
  .p-philosophy01 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: -webkit-sticky;
    position: sticky;
    top: 50px;
    height: 65.6vw;
    z-index: -1;
  }
  .p-philosophy01.no {
    opacity: 0;
  }
  .p-philosophy01__inner {
    /*
      &:before{
        content : "";
        display : block;
        position :absolute;
        width : 100%;
        @include h_vw(150);
        @include top_vw(-150);
        background: rgba(245, 55, 30, 0.2);
        z-index: 2;
      }
      */
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
  }
  .p-philosophy01__bg {
    position: relative;
    overflow: hidden;
    top: -22.66667vw;
    height: calc(100% + 1.06667vw);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    z-index: -1;
  }
  .p-philosophy01__bg.act {
    position: fixed;
    top: 50px;
  }
  .p-philosophy01__bg img {
    width: calc(100% + 3vw);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
  }
}

@media screen and (min-width: 768px), print {
  .p-philosophy01 {
    height: 620px;
  }
  .p-philosophy01:after, .p-philosophy01:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    width: 1px;
    background: #F5371E;
    z-index: 10;
  }
  .p-philosophy01:after {
    width: 95px;
    left: 16px;
    background: none;
    color: #F5371E;
    border-left: 1px solid #F5371E;
    border-right: 1px solid #F5371E;
  }
  .p-philosophy01:before {
    right: 16px;
  }
  .p-philosophy01__inner {
    width: 100%;
    height: 750px;
    position: fixed;
    top: -15px;
    background: url(/wp-content/themes/cominka/img/img_philosophy_01.jpg) center center no-repeat;
    background-size: cover;
    z-index: -1;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p-philosophy01 {
    height: 390px;
  }
  .p-philosophy01:after {
    border-right: none;
    left: 7px;
  }
  .p-philosophy01:before {
    right: 7px;
  }
  .p-philosophy01__inner {
    width: 100%;
    height: 524px;
    position: fixed;
    top: 35px;
    background: url(/wp-content/themes/cominka/img/img_philosophy_01.jpg) center center no-repeat;
    background-size: cover;
    z-index: -1;
  }
}

.p-philosophy-bg {
  position: relative;
}

.p-philosophy-bg:after, .p-philosophy-bg:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background: #F5371E;
  z-index: 1;
}

.p-philosophy-bg:after {
  left: 7px;
}

.p-philosophy-bg:before {
  right: 7px;
}

@media all and (max-width: 767px) {
  .p-philosophy-bg {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: -webkit-sticky;
    position: sticky;
    top: 50px;
    height: 80vw;
    z-index: -1;
  }
  .p-philosophy-bg figure {
    position: relative;
    display: block;
    top: -34.66667vw;
  }
  .p-philosophy-bg figure.type2 {
    top: -44vw;
  }
}

@media screen and (min-width: 768px), print {
  .p-philosophy-bg {
    width: 100%;
    height: 650px;
    position: relative;
  }
  .p-philosophy-bg:after, .p-philosophy-bg:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 100%;
    width: 1px;
    background: #F5371E;
    z-index: 10;
  }
  .p-philosophy-bg:after {
    width: 95px;
    left: 16px;
    background: none;
    color: #F5371E;
    border-left: 1px solid #F5371E;
    border-right: 1px solid #F5371E;
  }
  .p-philosophy-bg:before {
    right: 16px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p-philosophy-bg:after {
    border-right: none;
    left: 7px;
  }
  .p-philosophy-bg:before {
    right: 7px;
  }
}

.p-philosophy02 {
  position: relative;
  background-color: #F5371E;
  color: #fff;
}

.p-philosophy02:after, .p-philosophy02:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background: #fff;
  z-index: 10;
}

.p-philosophy02:after {
  left: 7px;
}

.p-philosophy02:before {
  right: 7px;
}

.p-philosophy02__txt {
  line-height: 2;
  letter-spacing: 0.05em;
}

.p-philosophy02__txt2 {
  line-height: 2;
  letter-spacing: 0em;
}

.p-philosophy02__tit {
  display: block;
  position: relative;
}

.p-philosophy02__tit:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 0.5;
  top: 50%;
  left: 0;
  z-index: 0;
}

.p-philosophy02__tit .txt {
  position: relative;
  z-index: 1;
  background-color: #F5371E;
  display: inline-block;
  letter-spacing: 0.15em;
}

.p-philosophy02__tit .txt2 {
  letter-spacing: 0.25em;
}

.p-philosophy02__tit2 {
  letter-spacing: 0.15em;
}

.p-philosophy02.no .p-philosophy02__bg {
  opacity: 0;
  z-index: -2;
}

@media all and (max-width: 767px) {
  .p-philosophy02 {
    overflow: hidden;
    z-index: 2;
    padding: 16vw 10.66667vw 21.33333vw 10.66667vw;
  }
  .p-philosophy02__txt {
    margin: 0vw -2.66667vw 0vw 0vw;
    font-size: 14px;
    font-size: 3.73333vw;
    font-weight: 500;
  }
  .p-philosophy02__txt2 {
    margin: 10.66667vw -6.66667vw 0vw 0vw;
    font-size: 15px;
    font-size: 4vw;
    font-weight: 500;
  }
  .p-philosophy02__tit {
    margin: 16vw 0vw 0vw 0vw;
    display: block;
    position: relative;
  }
  .p-philosophy02__tit .txt {
    padding: 0vw 2.66667vw 0vw 0vw;
    font-size: 30px;
    font-size: 8vw;
  }
  .p-philosophy02__tit .txt2 {
    display: block;
    position: absolute;
    bottom: -6.66667vw;
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-philosophy02__tit2 {
    margin: 20vw 0vw 0vw 0vw;
    font-size: 35px;
    font-size: 9.33333vw;
  }
  .p-philosophy02__photo {
    position: relative;
    display: block;
  }
  .p-philosophy02__photo.type1 {
    margin: 25.33333vw 0vw 0vw 0vw;
    width: 84.53333vw;
    right: -4.8vw;
  }
  .p-philosophy02__photo.type2 {
    margin: 18.66667vw 0vw 0vw 0vw;
    width: 64.53333vw;
    left: -2.66667vw;
  }
}

@media screen and (min-width: 768px), print {
  .p-philosophy02 {
    padding: 110px 0px 150px 96px;
  }
  .p-philosophy02:after {
    width: 95px;
    left: 16px;
    background: none;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .p-philosophy02:before {
    right: 16px;
  }
  .p-philosophy02__inner {
    max-width: 1010px;
    margin: 0 auto;
    padding: 0 50px;
  }
  .p-philosophy02__txt {
    text-align: center;
    font-size: 20px;
    letter-spacing: 0.1em;
    line-height: 2.4;
  }
  .p-philosophy02__txt2 {
    margin: 60px 70px 0 0;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
    line-height: 2.1;
    letter-spacing: 0.12em;
    font-size: 16px;
  }
  .p-philosophy02__txt2 .space {
    width: 45px;
    height: 10px;
    display: inline-block;
  }
  .p-philosophy02__tit {
    margin: 150px auto 0;
    max-width: 1010px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
  }
  .p-philosophy02__tit:after {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
    opacity: 1;
    -webkit-transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
    transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
  }
  .p-philosophy02__tit.act:after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .p-philosophy02__tit .txt {
    font-size: 48px;
    letter-spacing: 0.15em;
  }
  .p-philosophy02__tit .txt2 {
    z-index: 1;
    background-color: #F5371E;
    padding: 0 20px;
    display: inline-block;
    font-size: 18px;
    letter-spacing: 0.25em;
    font-weight: 500;
  }
  .p-philosophy02__tit2 {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
    line-height: 2;
    letter-spacing: 0.15em;
    font-size: 52px;
  }
  .p-philosophy02-box {
    max-width: 890px;
    margin: 60px auto 0;
    padding: 0 0 0 30px;
    min-height: 500px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-philosophy02-box2 {
    margin: 120px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 68px;
  }
  .p-philosophy02__photo.type1 {
    max-width: 620px;
  }
  .p-philosophy02__photo.type2 {
    max-width: 320px;
    margin: 270px 0 0;
  }
  .p-philosophy02__bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100vh;
    background: url(/wp-content/themes/cominka/img/bg_philosophy_01.jpg) top center no-repeat;
    background-size: cover;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p-philosophy02 {
    padding: 110px 0px 150px 0px;
  }
  .p-philosophy02:after {
    border-right: none;
    left: 7px;
  }
  .p-philosophy02:before {
    right: 7px;
  }
  .p-philosophy02-box {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .p-philosophy02__tit2 {
    font-size: 40px;
  }
  .p-philosophy02__txt {
    font-size: 16px;
  }
  .p-philosophy02__txt2 {
    margin: 60px 30px 0 0;
    line-height: 2.1;
    letter-spacing: 0.12em;
    font-size: 14px;
  }
  .p-philosophy02__txt2 .space {
    width: 10px;
    height: 10px;
    display: inline-block;
  }
  .p-philosophy02-box2 {
    margin: 100px 0 0;
    gap: 60px;
  }
  .p-philosophy02__photo.type2 {
    margin: 220px 0 0;
  }
}

.p-philosophy03 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  background-color: #F5371E;
  color: #fff;
}

.p-philosophy03:after, .p-philosophy03:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background: #fff;
  z-index: 10;
}

.p-philosophy03:after {
  left: 7px;
}

.p-philosophy03:before {
  right: 7px;
}

.p-philosophy03__txt2 {
  line-height: 2;
  letter-spacing: 0em;
}

.p-philosophy03__tit {
  display: block;
  position: relative;
}

.p-philosophy03__tit:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 0.5;
  top: 50%;
  left: 0;
  z-index: 0;
}

.p-philosophy03__tit .txt {
  position: relative;
  z-index: 1;
  background-color: #F5371E;
  display: inline-block;
  letter-spacing: 0.15em;
}

.p-philosophy03__tit .txt2 {
  letter-spacing: 0.25em;
}

.p-philosophy03__tit2 {
  letter-spacing: 0.15em;
}

.p-philosophy03__bg {
  z-index: -2;
}

.p-philosophy03.no .p-philosophy03__bg {
  opacity: 0;
}

@media all and (max-width: 767px) {
  .p-philosophy03 {
    z-index: 10;
    padding: 1.33333vw 10.66667vw 21.33333vw 10.66667vw;
  }
  .p-philosophy03__txt2 {
    margin: 9.33333vw 4vw 0vw 0vw;
    font-size: 15px;
    font-size: 4vw;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
    line-height: 2;
    letter-spacing: 0.15em;
  }
  .p-philosophy03__tit {
    margin: 16vw 0vw 0vw 0vw;
    display: block;
    position: relative;
  }
  .p-philosophy03__tit .txt {
    padding: 0vw 2.66667vw 0vw 0vw;
    font-size: 30px;
    font-size: 8vw;
  }
  .p-philosophy03__tit .txt2 {
    display: block;
    position: absolute;
    bottom: -6.66667vw;
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-philosophy03__tit2 {
    margin: 0vw 0vw 0vw 0vw;
    font-size: 24px;
    font-size: 6.4vw;
    letter-spacing: 0.1em;
    line-height: 1.8;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-orientation: upright;
  }
  .p-philosophy03__tit2 span {
    letter-spacing: 0.05em;
  }
  .p-philosophy03-box {
    margin: 21.33333vw -2.66667vw 0vw 0vw;
    min-height: 141.33333vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .p-philosophy03__photo {
    position: relative;
    display: block;
  }
  .p-philosophy03__photo.type1 {
    margin: 25.33333vw 0vw 0vw 0vw;
    width: 69.33333vw;
    left: -2.66667vw;
  }
  .p-philosophy03__photo.type2 {
    margin: 18.66667vw 0vw 0vw 0vw;
    width: 69.33333vw;
    left: 12.26667vw;
  }
}

@media screen and (min-width: 768px), print {
  .p-philosophy03 {
    padding: 145px 0px 150px 96px;
  }
  .p-philosophy03:after {
    width: 95px;
    left: 16px;
    background: none;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .p-philosophy03:before {
    right: 16px;
  }
  .p-philosophy03__inner {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 50px;
  }
  .p-philosophy03__tit {
    margin: 0px auto 0;
    max-width: 1010px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
  }
  .p-philosophy03__tit:after {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
    opacity: 1;
    -webkit-transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
    transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
  }
  .p-philosophy03__tit.act:after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .p-philosophy03__tit .txt {
    font-size: 48px;
    letter-spacing: 0.15em;
  }
  .p-philosophy03__tit .txt2 {
    z-index: 1;
    background-color: #F5371E;
    padding: 0 20px;
    display: inline-block;
    font-size: 18px;
    letter-spacing: 0.25em;
    font-weight: 500;
  }
  .p-philosophy03__tit2 {
    margin: 80px 0 0;
    font-size: 28px;
    letter-spacing: 0.15em;
    line-height: 1.7;
  }
  .p-philosophy03__txt2 {
    margin: 38px 0 0;
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 2.2;
  }
  .p-philosophy03-box {
    padding: 0 0 0 102px;
  }
  .p-philosophy03-box2 {
    margin: 100px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 122px;
  }
  .p-philosophy03__photo.type1 {
    max-width: 480px;
    margin: 80px 0 0;
  }
  .p-philosophy03__photo.type2 {
    max-width: 480px;
  }
  .p-philosophy03__bg {
    position: fixed;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100vh;
    background: url(/wp-content/themes/cominka/img/bg_philosophy_02.jpg) top center no-repeat;
    background-size: cover;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p-philosophy03 {
    padding: 145px 0px 150px 0;
  }
  .p-philosophy03:after {
    border-right: none;
    left: 7px;
  }
  .p-philosophy03:before {
    right: 7px;
  }
  .p-philosophy03-box {
    padding: 0 0 0 40px;
  }
  .p-philosophy03-box2 {
    margin: 100px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 80px;
  }
}

.p-philosophy04 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  background-color: #F5371E;
  color: #fff;
}

.p-philosophy04:after, .p-philosophy04:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 1px;
  background: #fff;
  z-index: 10;
}

.p-philosophy04:after {
  left: 7px;
}

.p-philosophy04:before {
  right: 7px;
}

.p-philosophy04__tit {
  display: block;
  position: relative;
}

.p-philosophy04__tit:after {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 1px;
  background: #fff;
  opacity: 0.5;
  top: 50%;
  left: 0;
  z-index: 0;
}

.p-philosophy04__tit .txt {
  position: relative;
  z-index: 1;
  background-color: #F5371E;
  display: inline-block;
  letter-spacing: 0.15em;
}

.p-philosophy04__tit .txt2 {
  letter-spacing: 0.25em;
}

.p-philosophy04__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.p-philosophy04__list li {
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  font-weight: 500;
}

.p-philosophy04__list li span {
  position: relative;
  display: inline-block;
  padding: 0 0 30px;
  line-height: 1;
}

.p-philosophy04__list li span:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 23px;
  right: 2px;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #fff;
}

@media all and (max-width: 767px) {
  .p-philosophy04 {
    padding: 1.33333vw 10.66667vw 26.66667vw 10.66667vw;
  }
  .p-philosophy04__list {
    width: 100%;
    margin: 24vw 0vw 0vw 0vw;
    min-height: 106.66667vw;
  }
  .p-philosophy04__list li {
    line-height: 2.6;
    letter-spacing: 0.18em;
    font-size: 18px;
    font-size: 4.8vw;
  }
  .p-philosophy04__list li span {
    position: relative;
    top: -1.06667vw;
    font-size: 18px;
    font-size: 4.8vw;
    padding: 0vw 0vw 2.66667vw 0vw;
  }
  .p-philosophy04__list li span {
    padding: 0vw 0vw 4vw 0vw;
    line-height: 1;
  }
  .p-philosophy04__list li span:after {
    bottom: 2.66667vw;
    right: 0.53333vw;
    width: 0.8vw;
    height: 0.8vw;
  }
  .p-philosophy04__tit {
    margin: 16vw 0vw 0vw 0vw;
    display: block;
    position: relative;
  }
  .p-philosophy04__tit .txt {
    padding: 0vw 2.66667vw 0vw 0vw;
    font-size: 30px;
    font-size: 8vw;
  }
  .p-philosophy04__tit .txt2 {
    display: block;
    position: absolute;
    bottom: -6.66667vw;
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-philosophy04__photo {
    position: relative;
    display: block;
  }
  .p-philosophy04__photo.type1 {
    margin: 10.66667vw -3.2vw 0vw -3.2vw;
    width: 85.33333vw;
  }
}

@media screen and (min-width: 768px), print {
  .p-philosophy04 {
    padding: 145px 0px 150px 96px;
  }
  .p-philosophy04:after {
    width: 95px;
    left: 16px;
    background: none;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
  .p-philosophy04:before {
    right: 16px;
  }
  .p-philosophy04__inner {
    max-width: 1010px;
    margin: 0 auto;
    padding: 0 50px;
  }
  .p-philosophy04__tit {
    margin: 0px auto 0;
    max-width: 1010px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: relative;
  }
  .p-philosophy04__tit:after {
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transform-origin: left;
            transform-origin: left;
    opacity: 1;
    -webkit-transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
    transition: 0.6s cubic-bezier(0, 0.588, 0.32, 0.866);
  }
  .p-philosophy04__tit.act:after {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .p-philosophy04__tit .txt {
    font-size: 48px;
    letter-spacing: 0.15em;
  }
  .p-philosophy04__tit .txt2 {
    z-index: 1;
    background-color: #F5371E;
    padding: 0 20px;
    display: inline-block;
    font-size: 18px;
    letter-spacing: 0.25em;
    font-weight: 500;
  }
  .p-philosophy04__list {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    margin: 100px 0 0;
    min-height: 480px;
  }
  .p-philosophy04__list li {
    line-height: 4.8;
    letter-spacing: 0.18em;
    font-size: 22px;
  }
  .p-philosophy04__photo {
    display: block;
    max-width: 738px;
    margin: 100px auto 0;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .p-philosophy04 {
    padding: 145px 0px 150px 0px;
  }
  .p-philosophy04:after {
    border-right: none;
    left: 7px;
  }
  .p-philosophy04:before {
    right: 7px;
  }
}

#pi_tracking_opt_in_div {
  position: fixed !important;
  bottom: 0 !important;
  top: auto !important;
  opacity: 1 !important;
  background-color: rgba(60, 60, 60, 0.9) !important;
  color: #fff !important;
  font-family: "Noto Sans JP", sans-serif !important;
  gap: 20px;
}

#pi_tracking_opt_in_div #pi_tracking_opt_in_yes {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-transform: uppercase;
  font-family: "Noto Sans JP", sans-serif !important;
  padding: 7px 10px !important;
  color: #fff !important;
  background: #F5371E;
  border: solid 1px #F5371E;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

#pi_tracking_opt_in_div #pi_tracking_opt_in_no {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-transform: uppercase;
  font-family: "Noto Sans JP", sans-serif !important;
  padding: 7px 10px !important;
  color: #fff !important;
  border: solid 1px #fff;
}

@media all and (max-width: 767px) {
  #pi_tracking_opt_in_div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    font-size: 12px !important;
    font-size: 3.2vw !important;
    line-height: 1.8;
    padding: 1.33333vw 1.33333vw 4vw 1.33333vw !important;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_yes {
    display: block;
    width: 26.66667vw !important;
    font-size: 12px !important;
    font-size: 3.2vw !important;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_no {
    display: block;
    width: 26.66667vw !important;
    font-size: 12px !important;
    font-size: 3.2vw !important;
  }
}

@media screen and (min-width: 768px), print {
  #pi_tracking_opt_in_div {
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 13px !important;
    letter-spacing: 0.05em;
  }
  #pi_tracking_opt_in_div br {
    display: none !important;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_yes {
    width: 120px;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_yes:hover {
    background: #fff;
    color: #F5371E !important;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_no {
    width: 120px;
  }
  #pi_tracking_opt_in_div #pi_tracking_opt_in_no:hover {
    background: #fff;
    color: #3C3C3C !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  #pi_tracking_opt_in_div {
    height: 70px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0 30px !important;
    line-height: 1.8 !important;
  }
}

@media all and (max-width: 767px) {
  header > div {
    padding: 0 15px;
  }
  .headlogo {
    width: 134px;
    position: relative;
    top: -2px;
  }
  #humOpen {
    position: absolute;
    right: 20px;
    top: 18px;
    width: 28px;
  }
  .padleftright {
    padding: 0 15px;
  }
  .firstvisualdiv {
    height: 187.2vw;
    background: none;
    pointer-events: none;
  }
  .firstvisualdiv.no {
    opacity: 0;
  }
  .firstvisualdiv .innerborderdiv {
    position: fixed;
    top: 0;
    width: 100%;
    height: 197.33333vw;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(/wp-content/themes/cominka/img/firstvisual_sp.jpg);
  }
  .redbg {
    padding: 13.33333vw 10.66667vw 18.66667vw 10.66667vw;
  }
  .leftwhitediv {
    width: 0;
  }
  .padleftright {
    padding: 0;
  }
  .topgreetingdiv {
    margin: 0;
  }
  /*ごあいさつ*/
  .innergreeting {
    margin: 0vw 0vw 5.33333vw 0vw;
  }
  .innergreeting h2 {
    letter-spacing: 0.3em;
    font-size: 13px;
    font-size: 3.46667vw;
    padding: 1.6vw 3.46667vw 1.6vw 4vw;
  }
  .support {
    margin: 0vw -5.33333vw 0vw 0vw;
    font-size: 17px;
    font-size: 4.53333vw;
    line-height: 2.2;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .supportabout {
    margin: 6.66667vw -5.33333vw 0vw 0vw;
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 2.25;
    letter-spacing: 0.05em;
    font-weight: 500;
  }
  .supportabout .txt {
    left: 0;
    top: -1.33333vw;
    font-weight: 500;
    letter-spacing: 0.05em;
  }
  .omotenashidiv {
    margin: 16vw 0vw 0vw 0vw;
  }
  .omotenashidiv:after {
    content: "";
    position: absolute;
    height: 1px;
    width: 100%;
    opacity: 0.5;
    background: #fff;
    top: -5.33333vw;
    left: 0;
  }
  .greetingbox {
    margin: 0vw 0vw 13.33333vw 0vw;
    -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
            writing-mode: unset;
    text-orientation: unset;
    height: auto;
  }
  .omotenashidiv:before {
    display: none;
  }
  .omotenaship {
    font-size: 12px;
    font-size: 3.2vw;
    margin: 0vw 0vw 4vw 0vw;
    font-weight: 500;
  }
  .omotenashidiv {
    padding: 0;
  }
  .sadou {
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.5;
    font-weight: 500;
  }
  .padlink {
    padding: 0;
  }
  .p-top01 .company {
    font-size: 15px;
    font-size: 4vw;
    width: 67.2vw;
    height: 16vw;
    max-width: none;
  }
  .p-top01 .company svg {
    width: 2.4vw;
    height: 4.26667vw;
  }
  /*TOP サービス*/
  .secvisualdiv {
    height: 92vw;
  }
  .leftreddiv {
    width: 0px;
  }
  .servicetopbgdiv {
    padding: 18.66667vw 7.46667vw 17.33333vw 7.46667vw;
  }
  .servicetopdiv h2 {
    margin: 0vw -5.33333vw 0vw -5.33333vw;
    font-size: 25px;
    font-size: 6.66667vw;
    padding: 0vw 0vw 8vw 0vw;
  }
  .servicetopdiv h2 span {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .servicep {
    margin: 0vw 0vw 10.66667vw 0vw;
    font-size: 13px;
    font-size: 3.46667vw;
    letter-spacing: 0.05em;
  }
  .swiper {
    padding: 9.33333vw 0vw 21.33333vw 0vw;
    margin: calc(50% - 50vw);
  }
  .yajirushidiv {
    top: 25%;
  }
  .onayamibox h3 {
    font-size: 13.2px;
    font-size: 3.52vw;
    padding: 2.66667vw 0vw 2.66667vw 0vw;
  }
  .onayamibox p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    padding: 8.53333vw 0vw 0vw 0vw;
    font-size: 17px;
    font-size: 4.53333vw;
    height: 65.86667vw;
  }
  .morediv {
    font-size: 11.4px;
    font-size: 3.04vw;
  }
  .serviceaboutdiv {
    background: #fff;
    border-radius: 6.66667vw 6.66667vw 6.66667vw 6.66667vw;
    padding: 8vw 8vw 13.33333vw 8vw;
  }
  .serviceaboutdiv h3.ourh3 {
    font-size: 14px;
    font-size: 3.73333vw;
    margin: 0vw 0vw 13.33333vw 0vw;
  }
  .ourflex {
    max-width: none;
    padding: 0vw 0vw 18.66667vw 0vw;
  }
  .ourflex:last-child {
    padding: 0vw 0vw 0vw 0vw;
  }
  .ourimg {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin: 0vw 0vw 8vw 0vw;
    padding: 0vw 0vw 0vw 0vw;
    gap: 2.66667vw;
  }
  .innerourimg {
    width: 48vw;
    display: block;
    max-width: none;
  }
  .innerourbor h4 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 15px;
    font-size: 4vw;
    min-height: 48vw;
    padding: 5.33333vw 2.66667vw 5.33333vw 2.66667vw;
    letter-spacing: 0.1em;
  }
  .topourflex {
    gap: 0;
  }
  .ourabout h3 {
    line-height: 1.5em;
    font-size: 20px;
    font-size: 5.33333vw;
    padding: 3.2vw 0vw 3.2vw 0vw;
    margin: 0vw 0vw 4.26667vw 0vw;
    letter-spacing: 0.1em;
    text-align: center;
  }
  .ourabout p.ourtext {
    font-size: 14px;
    font-size: 3.73333vw;
    margin: 0vw -1.33333vw 2.66667vw 0vw;
    letter-spacing: 0.05em;
  }
  .ourlink p {
    font-size: 12px;
    font-size: 3.2vw;
    margin: 0vw 7.2vw 0vw 0vw;
    letter-spacing: 0.2em;
  }
  .ouryajirushi {
    width: 5.33333vw;
    height: 5.33333vw;
    right: 0vw;
    top: 0.8vw;
  }
  /*TOP お客様の声*/
  .p-top02 {
    padding: 93.33333vw 0vw 0vw 0vw;
  }
  .voicetopbgdiv {
    padding: 0vw 0vw 20vw 0vw;
  }
  .voicetextdiv {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 18.66667vw 7.46667vw 14.66667vw 7.46667vw;
  }
  .voicetextdiv h2 {
    margin: 0vw -5.33333vw 0vw -5.33333vw;
    font-size: 25px;
    font-size: 6.66667vw;
    padding: 0vw 0vw 8vw 0vw;
  }
  .voicetextdiv h2 span {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .voicetextdiv .voicep {
    font-size: 13px;
    font-size: 3.46667vw;
    letter-spacing: 0.05em;
    line-height: 2em;
    margin: 0vw 0vw 13.86667vw 0vw;
  }
  .swiper2 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 8vw 0vw 8vw 0vw;
    margin: calc(50% - 50vw);
    z-index: 1;
  }
  .innervoice {
    background: #fff;
  }
  .innervoicebox {
    position: relative;
    border-radius: 0;
    padding: 6.4vw 6.4vw 12vw 6.4vw;
  }
  .innervoicebox .ourmorediv {
    position: absolute;
    bottom: 5.86667vw;
    right: 6.4vw;
  }
  .innervoicebox h3 {
    font-size: 13px;
    font-size: 3.46667vw;
    letter-spacing: 0.1em;
    margin: 0vw 0vw 5.33333vw 0vw;
  }
  .innervoicebox h4 {
    font-size: 12px;
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    padding: 0vw 0vw 5.33333vw 0vw;
  }
  .innervoicebox h4 span {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .innervoicebox h3:before, .innervoicebox h3:after {
    width: 35%;
  }
  .innervoicebox p.clientp {
    font-size: 15px;
    font-size: 4vw;
    line-height: 2;
  }
  /*TOP メンバー*/
  .membertopbgdiv {
    padding: 0vw 0vw 16vw 0vw;
  }
  .membertopdiv {
    padding: 14.93333vw 5.33333vw 5.33333vw 5.33333vw;
  }
  .membertopdiv h2 {
    margin: 0vw -5.33333vw 0vw -5.33333vw;
    font-size: 25px;
    font-size: 6.66667vw;
    padding: 0vw 0vw 8vw 0vw;
  }
  .membertopdiv h2 span {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .memberp {
    margin: 0vw 0vw 2.66667vw 0vw;
    font-size: 13px;
    font-size: 3.46667vw;
    letter-spacing: 0.05em;
  }
  .p-slider {
    width: 78.13333vw;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .p-slider-item {
    display: none;
    width: 33.6vw;
    margin: 8vw 0vw 8vw 0vw;
  }
  .p-slider-item:nth-of-type(-n+4) {
    display: block;
  }
  .p-slider-item__photo {
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 36.8vw;
    height: 36.8vw;
    margin: 0vw -1.6vw 0vw -1.6vw;
    padding: 1.06667vw 1.06667vw 1.06667vw 1.06667vw;
    z-index: 1;
  }
  .p-slider-item__photo figure {
    width: 100%;
    height: auto;
    /*
        @include w_vw(130);
        @include h_vw(130);
        */
  }
  .p-slider-item__txt {
    padding: 2.13333vw 0vw 2.13333vw 0vw;
    margin: 5.33333vw 0vw 0vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-slider-item__txt2 {
    margin: 4.8vw 0vw 0vw 0vw;
    font-size: 18px;
    font-size: 4.8vw;
    letter-spacing: 0.2em;
  }
  .p-slider-item__txt2 span {
    font-size: 11px;
    font-size: 2.93333vw;
    letter-spacing: 0.15em;
    margin: 4.8vw 0vw 0vw 0vw;
  }
  .newstopbgdiv {
    padding: 18.66667vw 7.46667vw 18.66667vw 7.46667vw;
  }
  .newstopbgdiv.newspage {
    padding: 18.66667vw 10.66667vw 16vw 10.66667vw;
  }
  .newstopdiv {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0;
    border-radius: 6.66667vw 6.66667vw 6.66667vw 6.66667vw;
    padding: 14.93333vw 8vw 14.93333vw 8vw;
  }
  .newstopdiv h2 {
    font-size: 25px;
    font-size: 6.66667vw;
    padding: 0vw 0vw 16vw 0vw;
  }
  .newstopdiv h2 span {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .innernewstop ul li {
    margin: 0vw 0vw 7.46667vw 0vw;
    padding: 0vw 0vw 7.46667vw 0vw;
  }
  .innernewstop ul li a {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .innernewstop ul li a time {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .innernewstop ul li a span {
    font-size: 10px;
    font-size: 2.66667vw;
  }
  .innernewstop ul li a p {
    margin: 4.26667vw 0vw 0vw 0vw;
    font-size: 14px;
    font-size: 3.73333vw;
    line-height: 1.8;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  .innernewstop {
    padding: 0;
  }
  .linkbox.linkboxwhite a {
    max-width: 42.66667vw;
  }
  .linkbox a {
    font-size: 13px;
    font-size: 3.46667vw;
    padding: 4.8vw 5.33333vw 5.33333vw 5.33333vw;
    letter-spacing: 0.2em;
  }
  .linkbox svg {
    display: block;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1.6vw;
    height: 3.2vw;
  }
  /*footer */
  .footerdiv {
    padding: 0;
  }
  .footertopdiv {
    padding: 13.33333vw 10.66667vw 5.33333vw 10.66667vw;
  }
  .sitemapdiv p.sitep {
    font-size: 11px;
    font-size: 2.93333vw;
    margin: 0vw 0vw 6.66667vw 0vw;
    letter-spacing: 0.1em;
    position: relative;
  }
  .sitemapdiv p.sitep span {
    display: inline-block;
    background: #f5381e;
    font-weight: 700;
    z-index: 1;
    padding: 0 15px 0 0;
  }
  .sitemapdiv p.sitep:after {
    display: none;
  }
  .sitemapdiv p.sitep:before {
    content: "";
    display: block;
    background: #fff;
    top: 50%;
    left: 0;
    height: 1px;
    width: 100%;
    position: absolute;
  }
  .siteflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .footfirst {
    width: 34.66667vw;
    padding-left: 0;
    margin-right: 0;
  }
  .footfirst ul li {
    margin: 0;
  }
  .footfirst ul li a {
    display: block;
    position: relative;
    left: 6.66667vw;
    padding: 4vw 0vw 4vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .footfirst ul li a:before {
    content: "";
    display: block;
    background: #fff;
    opacity: 0.5;
    top: 50%;
    left: -6.66667vw;
    height: 1px;
    width: 4vw;
    position: absolute;
  }
  .footfirst ul li a:after {
    display: none;
  }
  .footsec {
    width: 42.66667vw;
  }
  .footsec ul li {
    margin: 0;
  }
  .footsec ul li a {
    display: block;
    position: relative;
    left: 6.66667vw;
    padding: 4vw 0vw 4vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .footsec ul li a:before {
    content: "";
    display: block;
    background: #fff;
    top: 50%;
    opacity: 0.5;
    left: -6.66667vw;
    height: 1px;
    width: 4vw;
    position: absolute;
  }
  .footsec ul li a:after {
    display: none;
  }
  .footservice {
    margin: 17.33333vw 0vw 0vw 0vw;
  }
  .footservice p.servicesp {
    margin: 0vw 0vw 0vw 0vw;
    font-size: 11px;
    font-size: 2.93333vw;
    letter-spacing: 0.1em;
    position: relative;
  }
  .footservice p.servicesp span {
    display: inline-block;
    background: #f5381e;
    z-index: 1;
    padding: 0 15px 0 0;
    font-weight: 700;
  }
  .footservice p.servicesp:after {
    display: none;
  }
  .footservice p.servicesp:before {
    content: "";
    display: block;
    background: #fff;
    top: 50%;
    left: 0;
    height: 1px;
    width: 100%;
    position: absolute;
  }
  .omotenaship {
    padding: 0;
  }
  .serviceinnerflex {
    width: 49.33333vw;
    margin: 10.66667vw auto 0vw;
    padding: 0;
  }
  .serviceaboutdiv .ourflex a .ourlink p {
    padding: 0vw 0vw 0.26667vw 0vw;
  }
  .serviceaboutdiv .ourflex a svg {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    width: 5.33333vw;
    height: 5.6vw;
  }
  .footaidiv {
    margin: 0;
  }
  .footaidiv p {
    font-size: 12px;
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    margin: 0vw -8vw 2.66667vw 0vw;
    position: relative;
    font-weight: 700;
  }
  .footaidiv p:before {
    content: "";
    display: block;
    background: #fff;
    top: 50%;
    height: 1px;
    opacity: 0.5;
    width: 4vw;
    left: -6.4vw;
    position: absolute;
  }
  .footsite {
    margin: 11.2vw 0vw 0vw 0vw;
  }
  .footsite p {
    font-size: 12px;
    font-size: 3.2vw;
    letter-spacing: 0.1em;
    margin: 0vw -8vw 2.66667vw 0vw;
    position: relative;
    font-weight: 700;
  }
  .footsite p:before {
    content: "";
    display: block;
    background: #fff;
    top: 50%;
    height: 1px;
    opacity: 0.5;
    width: 4vw;
    left: -6.4vw;
    position: absolute;
  }
  .footsite a,
  .footaidiv a {
    width: 100%;
    height: 15.2vw;
  }
  .footsns {
    margin: 17.33333vw auto 0vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 33.06667vw;
  }
  .footsns a {
    margin: 0;
    width: 5.33333vw;
  }
  .footsns a.ig {
    margin: 0;
    width: 6.93333vw;
  }
  .footsns a.tik {
    margin: 0;
    width: 5.33333vw;
  }
  .footcopy {
    margin: 6.93333vw 0vw 0vw 0vw;
  }
  .footcopy p {
    margin: 0vw 0vw 0vw 0vw;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 10px;
    font-size: 2.66667vw;
    -webkit-transform: scale(0.8);
            transform: scale(0.8);
    letter-spacing: 0.1em;
  }
  .u-contact {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 6.4vw auto 0vw;
    width: 49.06667vw;
    height: 15.2vw;
    gap: 4vw;
    border: solid 1px #fff;
  }
  .u-contact svg {
    display: block;
    width: 5.06667vw;
    height: 3.46667vw;
  }
  .u-contact p {
    position: relative;
    top: -0.13333vw;
    color: #fff;
    font-size: 14px;
    font-size: 3.73333vw;
    letter-spacing: 0.1em;
    font-weight: 700;
  }
  .l-header.grey {
    background: #F4F4F4;
  }
  .l-header.grey .l-header-close span {
    background: #000;
  }
  .l-header-close {
    position: absolute;
    top: 20px;
    right: 0px;
    width: 28px;
    height: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .l-header-close span {
    width: 100%;
    height: 1px;
    background: #fff;
  }
  .l-header-nav {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0.5s;
    transition: opacity 0.5s, visibility 0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 32vw 8vw 20vw 8vw;
    top: 0;
    position: fixed;
    background: #f5381e;
    min-height: 100svh;
    height: 100%;
    width: 100%;
    overflow-y: scroll;
    z-index: 1000;
  }
  .l-header-nav.act {
    opacity: 1;
    visibility: visible;
  }
  .l-header-nav-close {
    position: fixed;
    top: 8vw;
    right: 8vw;
    width: 11.2vw;
    height: 11.2vw;
    cursor: pointer;
  }
  .l-header-nav-close:before, .l-header-nav-close:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 11.2vw;
    height: 1px;
    background-color: #fff;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  .l-header-nav-close:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .l-header-nav-close:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .l-header-nav__logo {
    display: block;
    position: absolute;
    top: 8vw;
    left: 8vw;
    width: 13.33333vw;
  }
  .l-header-nav-box {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 0vw 17.86667vw 4vw 17.86667vw;
  }
  .l-header-nav-menu li {
    margin: 0;
  }
  .l-header-nav-menu li a {
    display: block;
    position: relative;
    left: 0vw;
    padding: 4vw 0vw 4vw 0vw;
    font-size: 14px;
    font-size: 3.73333vw;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  .l-header-nav-menu li a:before {
    content: "";
    display: block;
    background: #fff;
    opacity: 0.5;
    top: 50%;
    left: -9.33333vw;
    height: 1px;
    width: 5.33333vw;
    position: absolute;
  }
  .l-header-nav .u-contact {
    margin: 6.66667vw 0vw 0vw 0vw;
    width: 45.33333vw;
    height: 13.86667vw;
  }
  .l-header-nav .footservice {
    margin: 12vw 0vw 0vw 0vw;
  }
  .l-header-nav .footsite p,
  .l-header-nav .footaidiv p {
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .l-header-nav .footsite a,
  .l-header-nav .footaidiv a {
    width: 45.33333vw;
    height: 13.86667vw;
  }
  .l-header-nav-sns {
    margin: 5.33333vw 0vw 0vw 0vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 33.06667vw;
    gap: 5.33333vw;
  }
  .l-header-nav-sns a {
    margin: 0;
    width: 5.33333vw;
  }
  .l-header-nav-sns a.ig {
    margin: 0;
    width: 6.93333vw;
  }
  .l-header-nav-sns a.tik {
    margin: 0;
    width: 5.33333vw;
  }
  footer:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 8px;
    width: calc(100% - 16px);
    height: 1px;
    background: #fff;
    z-index: 100;
  }
  /*下層コンテンツ*/
  .linkbox a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 53.33333vw;
  }
  .mainsec {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    overflow: hidden;
    margin: 50px 0 0 !important;
  }
  .mainsec.philosophy {
    overflow: visible;
  }
  .breaddiv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    white-space: nowrap;
    overflow-x: auto;
    letter-spacing: 0.1em;
    top: 0;
  }
  .breaddiv a {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    white-space: nowrap;
    letter-spacing: 0.1em;
  }
  .breaddiv svg {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .breaddiv span {
    padding: 0vw 1.33333vw 0vw 1.33333vw;
    white-space: nowrap;
  }
  .redbg.u-menufit {
    padding: 0;
  }
  .u-servicepage {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 2.66667vw 10.66667vw 26.66667vw 10.66667vw;
  }
  .u-servicepage .serviceaboutdiv {
    background: none;
    padding: 0;
  }
  .u-servicepage .ourflex {
    max-width: none;
    padding: 18.66667vw 0vw 0vw 0vw;
  }
  .u-servicepage .ourimg {
    gap: 0;
  }
  .p-service-item__link {
    margin: 5.33333vw 0vw 0vw 0vw;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    height: 5.86667vw;
    padding: 0vw 0vw 0vw 0vw;
    gap: 2.66667vw;
  }
  .p-service-item__link span {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-service-item__link svg {
    position: relative;
    top: 0.26667vw;
    width: 5.33333vw;
    height: 5.6vw;
    stroke: #F5371E;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p-service-item .ourimg {
    margin: 0vw 0vw 13.33333vw 0vw;
  }
  .p-service-item .ourimg .innerourimg {
    width: 56.53333vw;
    margin: 0vw 0vw 0vw 4.8vw;
    max-width: none;
  }
  .p-service-item .innerourbor h4 {
    border-radius: 6px;
    font-size: 16px;
    font-size: 4.26667vw;
  }
  .p-service-item .ourabout h3 {
    padding: 0vw 0vw 5.33333vw 0vw;
    font-size: 24px;
    font-size: 6.4vw;
    letter-spacing: 0.1em;
  }
  .p-service-item .ourabout .txt {
    margin: 0vw 0vw 2.13333vw 0vw;
    font-family: YakuHanMP, "Noto Serif JP", serif;
    font-weight: 700;
    font-size: 16px;
    font-size: 4.26667vw;
    letter-spacing: 0.1em;
  }
  .p-service-item .ourabout .ourtext {
    font-size: 16px;
    font-size: 4.26667vw;
    letter-spacing: 0.05em;
  }
  /*下層ページ　blog*/
  .newsflex .whitenews {
    padding: 6.13333vw 6.13333vw 8vw 6.13333vw;
  }
  .newsflex .newspagebox {
    margin: 0vw 0vw 9.33333vw 0vw;
  }
  .newsflex p.newsaboutp {
    margin: 8vw 0vw 0vw 0vw;
    padding: 0vw 0vw 8vw 0vw;
    font-size: 15px;
    font-size: 4vw;
  }
  .newsflex .timepagediv {
    margin: 6.13333vw 0vw 0vw 0vw;
  }
  .newsflex .timepagediv time {
    font-size: 15px;
    font-size: 4vw;
  }
  .newsflex .timepagediv .catboxdiv p {
    font-size: 12.32px;
    font-size: 3.28533vw;
    padding: 0.8vw 4vw 0.8vw 4vw;
  }
  .linkboxwhite a.more svg {
    width: 3.73333vw;
    height: 2.13333vw;
    margin: 0.13333vw 0vw 0vw 0vw;
    right: 8vw;
  }
  .newspagetop .linkbox a {
    margin: 6.66667vw auto 0vw;
    max-width: 53.33333vw;
  }
  .singletimediv time {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .singletimediv p {
    font-size: 10px;
    font-size: 2.66667vw;
    padding: 0.8vw 4vw 0.8vw 4vw;
  }
  .singlenewspage {
    /*
    .mainimg{
      @include ma_vw(0,-28,40,-28);
    }
    */
  }
  .singlenewspage h2 {
    font-size: 18px;
    font-size: 4.8vw;
    margin: 0vw 0vw 10.66667vw 0vw;
  }
  .singlenewspage img {
    margin: 0vw 0vw 10.66667vw 0vw;
  }
  .newscontent p {
    font-size: 15px;
    font-size: 4vw;
    padding: 0vw 0vw 5.33333vw 0vw;
  }
  .newscontent ul li {
    font-size: 15px;
    font-size: 4vw;
    margin: 0vw 0vw 5.33333vw 0vw;
  }
  .p-pagenav {
    gap: 21.33333vw;
    margin: 10.66667vw auto 0vw;
  }
  .p-pagenav-item span {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .p-pagenav-item svg {
    top: 0.26667vw;
    display: block;
    width: 5.33333vw;
    height: 5.6vw;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  .p-pagenav-item__back {
    gap: 3.73333vw;
  }
  .p-pagenav-item__next {
    gap: 3.73333vw;
  }
  /*下層ページ　voice*/
  .voicesingle {
    background-image: url(/wp-content/themes/cominka/img/bg_washibg.png);
    background-repeat: repeat;
    background-size: 770px auto;
  }
  .interviewdiv {
    padding: 5.33333vw 8vw 2.66667vw 8vw;
    border-radius: 6.66667vw 6.66667vw 6.66667vw 6.66667vw;
  }
  .interviewdiv h2 {
    font-size: 12px;
    font-size: 3.2vw;
    margin: 0vw 0vw 8vw 0vw;
    padding: 0;
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    width: auto;
  }
  .interviewdiv div h3 {
    font-size: 16px;
    font-size: 4.26667vw;
    padding: 2.66667vw 0vw 5.33333vw 10.13333vw;
    margin: 0vw 0vw 5.33333vw 0vw;
    line-height: 1.8;
  }
  .interviewdiv div h3:before {
    top: 50%;
    margin: -6.66667vw 0vw 0vw 0vw;
    width: 5.06667vw;
    height: 10.13333vw;
    background-image: url(/wp-content/themes/cominka/img/ico_cup.png);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .interviewdiv div p {
    font-size: 14px;
    font-size: 3.73333vw;
    margin: 0vw 0vw 16vw 0vw;
  }
  .voicepagetop {
    padding: 0vw 0vw 11.2vw 0vw;
  }
  .voicepagetop.voicesingle .voicetextdiv {
    padding: 18.66667vw 7.46667vw 18.66667vw 7.46667vw;
  }
  .voicepagetop .voicetextdiv {
    padding: 18.66667vw 7.46667vw 0vw 7.46667vw;
  }
  .voicepagetop .innervoice {
    background-color: #f5381e;
  }
  .voicepagetop .innervoicebox {
    border-radius: 8px;
  }
  .voicepagetop .innervoicebox h4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .voicepagetop .voiceinnerflex a {
    width: 100%;
    margin: 0vw 0vw 8vw 0vw;
  }
  .voicepagetop .voiceinnerflex a .ofdiv {
    margin: 0vw 0vw 6.66667vw 0vw;
  }
  .voicesingle {
    padding: 0;
  }
  .voicesingle .aboutcomdiv {
    padding: 0;
  }
  .voicesingle .interviewdiv {
    margin: 16vw 0vw 0vw 0vw;
  }
  .voicesingle .voicetextdiv .aboutcomdiv {
    padding: 0vw 3.2vw 0vw 3.2vw;
  }
  .voicesingle .voicetextdiv .aboutcomdiv img {
    display: block;
    width: auto;
    margin: 0vw -10.66667vw 0vw -10.66667vw;
  }
  .voicesingle .voicetextdiv .aboutcomdiv .voicebar {
    margin: 8vw 0vw 0vw 0vw;
    display: inline-block;
    -webkit-writing-mode: unset;
        -ms-writing-mode: unset;
            writing-mode: unset;
  }
  .voicesingle .voicetextdiv .aboutcomdiv .voicebar .innervoicebar h4 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    border-radius: 4px;
    letter-spacing: 0.1em;
    font-size: 13px;
    font-size: 3.46667vw;
    padding: 1.6vw 5.33333vw 1.6vw 5.33333vw;
  }
  .voicesingle .voicetextdiv .aboutcomdiv .namecom {
    margin: 8vw 0vw 0vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.8;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .voicesingle .voicetextdiv .aboutcomdiv .namecom span {
    font-size: 11px;
    font-size: 2.93333vw;
    line-height: 1.8;
  }
  .voicesingle .voicetextdiv .aboutcomdiv .aboutcom {
    margin: 6.4vw 0vw 0vw 0vw;
    font-size: 16px;
    font-size: 4.26667vw;
  }
  .voicesingle .voicetextdiv .p-pagenav-item {
    margin: 16vw auto 0vw;
  }
  /*下層ページ　company*/
  .companyinnertable {
    padding: 8vw 10.66667vw 21.33333vw 10.66667vw;
    margin: 0vw 0vw 0vw 0vw;
  }
  .companyinnertable table th {
    display: block;
    width: 100%;
    padding: 0;
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 5.86667vw 0vw 0vw 0vw;
  }
  .companyinnertable table td {
    display: block;
    width: 100%;
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 2.13333vw 0vw 5.86667vw 0vw;
  }
  .companyinnertable .sectable {
    margin: 8vw 0vw 0vw 0vw;
    width: 100%;
  }
  .historyaboutdiv {
    padding: 19.46667vw 10.66667vw 19.46667vw 10.66667vw;
  }
  .historyaboutdiv .hiswhitediv {
    padding: 13.33333vw 8vw 13.33333vw 8vw;
    border-radius: 6.66667vw 6.66667vw 6.66667vw 6.66667vw;
  }
  .companybottomdiv h2 {
    font-size: 25px;
    font-size: 6.66667vw;
    margin: 0vw 0vw 12vw 0vw;
  }
  .companybottomdiv h2 span {
    display: block;
    font-size: 11px;
    font-size: 2.93333vw;
    padding: 0vw 0vw 5.33333vw 0vw;
  }
  .companybottomdiv table th {
    display: block;
    width: 100%;
    padding: 0;
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 5.86667vw 0vw 0vw 0vw;
  }
  .companybottomdiv table td {
    display: block;
    width: 100%;
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 2.13333vw 0vw 5.86667vw 0vw;
  }
  /*下層ページ　member*/
  .membertopbgdiv.memberpage {
    background-image: url(/wp-content/themes/cominka/img/bg_washibg.png);
    background-repeat: repeat;
    background-size: 770px auto;
    padding: 0vw 0vw 5.33333vw 0vw;
  }
  .membertopbgdiv.memberpage .linkbox.linkboxwhite a {
    margin: 0vw auto 16vw;
    max-width: 53.33333vw;
  }
  .membertopbgdiv .membertopdiv {
    padding: 14.93333vw 7.46667vw 0vw 7.46667vw;
  }
  .memberboxdiv {
    margin: 0vw 0vw 6.66667vw 0vw;
  }
  .innermemberlist {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  .innermemberlist figure {
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 36.8vw;
    height: 36.8vw;
    margin: 0vw -1.6vw 5.33333vw -1.6vw;
    padding: 1.2vw 1.2vw 1.2vw 1.2vw;
    border: solid 1px #F5371E;
    border-radius: 50%;
    z-index: 1;
  }
  .innermemberlist figure img {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    border: solid 1px #F5371E;
    border-radius: 50%;
    width: 100%;
    height: auto;
  }
  .innermemberlist .specialistm {
    min-width: 32.53333vw;
  }
  .memberinnerborder {
    padding: 6.66667vw 5.33333vw 8vw 5.33333vw;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .memberinnerborder .memberimgbox {
    width: 53.86667vw;
    margin: 0vw auto 0vw;
  }
  .memberinnerborder .memberimgbox h3 {
    font-size: 15px;
    font-size: 4vw;
    margin: 0vw 0vw 5.33333vw 0vw;
  }
  .memberinnerborder .memberimgbox h4 {
    font-size: 25px;
    font-size: 6.66667vw;
  }
  .memberinnerborder .memberimgbox h4 span {
    margin: 5.33333vw 0vw 0vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
  }
  .memberinnerborder .membertextbox {
    width: 100%;
    margin: 5.33333vw 0vw 0vw 0vw;
  }
  .memberinnerborder .membertextbox h4 {
    margin: 0vw 0vw 5.33333vw 0vw;
    font-size: 13px;
    font-size: 3.46667vw;
  }
  .memberinnerborder .membertextbox p.redprofile {
    font-size: 13px;
    font-size: 3.46667vw;
  }
  .memberinnerborder .membertextbox p:not([class]) {
    font-size: 14px;
    font-size: 3.73333vw;
    max-height: 26.66667vw;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }
  .memberinnerborder .membertextbox__link {
    margin: 7.2vw auto 0vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 2.66667vw;
  }
  .memberinnerborder .membertextbox__link span {
    display: inline-block;
    font-size: 12px;
    font-size: 3.2vw;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    color: #F5371E;
    letter-spacing: 0.2em;
    line-height: 1.7;
    padding: 0vw 0vw 0.53333vw 0vw;
  }
  .memberinnerborder .membertextbox__link svg {
    display: block;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    width: 5.6vw;
    height: 5.6vw;
  }
  .membertextbox.act p:not([class]) {
    overflow: visible;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: inherit;
  }
  .membertextbox.act .membertextbox__link svg {
    -webkit-transform: rotate(-180deg);
            transform: rotate(-180deg);
  }
  .memberul {
    margin: 13.33333vw 0vw 0vw 0vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2.66667vw;
  }
  .memberul li {
    width: 46%;
    margin: 0vw 0vw 16vw 0vw;
  }
  .memberlist .lineh {
    width: 34.13333vw;
    margin: 0vw auto 4.53333vw;
  }
  .memberlist .specialistm {
    padding: 1.06667vw 0vw 1.06667vw 0vw;
    margin: 0vw 0vw 4.53333vw 0vw;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 1.4;
  }
  .memberlist h4 {
    font-size: 18px;
    font-size: 4.8vw;
  }
  .memberlist h4 span {
    margin: 4vw 0vw 0vw 0vw;
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .modalbtn {
    width: 32.53333vw;
    margin: 5.33333vw auto 0vw;
    padding: 2.66667vw 0vw 2.66667vw 0vw;
  }
  .modalbtn span {
    font-size: 11px;
    font-size: 2.93333vw;
    letter-spacing: 0.1em;
  }
  .modalbtn svg {
    display: block;
    right: 5.33333vw;
    width: 1.6vw;
    height: 2.4vw;
  }
  .modal-content__inner {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1.33333vw 1.33333vw 1.33333vw 1.33333vw;
  }
  .modal-content .popimg figure {
    display: block;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 29.33333vw;
    height: 29.33333vw;
    margin: 0vw 0vw 0vw 0vw;
    padding: 0.93333vw 0.93333vw 0.93333vw 0.93333vw;
    border: solid 1px #F5371E;
    border-radius: 50%;
    z-index: 1;
  }
  .modal-content .popimg figure img {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    border: solid 1px #F5371E;
    border-radius: 50%;
    width: 100%;
    height: auto;
  }
  .modal-content .poptext h3 {
    padding: 1.33333vw 0vw 0vw 0vw;
    margin: 0vw 0vw 4vw 0vw;
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .modal-content .poptext h4 {
    font-size: 22px;
    font-size: 5.86667vw;
  }
  .modal-content .poptext h4 span {
    margin: 0vw -5.33333vw 0vw 0vw;
    padding: 4vw 0vw 0vw 0vw;
    font-size: 11px;
    font-size: 2.93333vw;
  }
  .modal-content .popbottomtext p {
    font-size: 14px;
    font-size: 3.73333vw;
    padding: 4vw 0vw 6.66667vw 0vw;
  }
  .modal-content .daihyoubox {
    padding: 4vw 5.33333vw 5.33333vw 5.33333vw;
  }
  .modal-content .daihyoubox h3 {
    margin: 2.66667vw 0vw 0vw 0vw;
    font-size: 13px;
    font-size: 3.46667vw;
  }
  .modal-content .daihyoubox p {
    font-size: 12px;
    font-size: 3.2vw;
    padding: 2.66667vw 0vw 0vw 0vw;
  }
  .modal-content .hitokotodiv img {
    display: block;
    width: 6.66667vw;
    margin: 0vw 2.66667vw 0vw 0vw;
  }
  .modal-content .hitokotodiv:before, .modal-content .hitokotodiv:after {
    display: none;
  }
  .popflex {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 8vw 8vw 8vw 8vw;
  }
  /*下層ページ　contact*/
  .contacttopbgdiv {
    padding: 18.66667vw 7.46667vw 18.66667vw 7.46667vw;
  }
  .contacttopbgdiv .contactwhite {
    border-radius: 13.33333vw 13.33333vw 13.33333vw 13.33333vw;
    padding: 16vw 8vw 16vw 8vw;
  }
  .contacttopbgdiv .contactp {
    font-size: 16px;
    font-size: 4.26667vw;
    padding: 0vw 0vw 9.33333vw 0vw;
    line-height: 2;
    font-weight: 500;
  }
  .contacttopbgdiv label {
    font-size: 12px;
    font-size: 3.2vw;
  }
  .contacttopbgdiv .cflex {
    margin: 0vw 0vw 8vw 0vw;
  }
  .contacttopbgdiv .cdiv {
    margin: 0vw 0vw 8vw 0vw;
  }
  .contacttopbgdiv .cdiv p {
    margin: 0vw 0vw 2.66667vw 0vw;
  }
  .contacttopbgdiv .inputc {
    font-size: 16px;
    font-size: 4.26667vw;
    padding: 3.2vw 4vw 3.2vw 4vw;
  }
  .contacttopbgdiv .cflex div.fname {
    width: 100%;
    margin: 0vw 0vw 0vw 0vw;
  }
  .contacttopbgdiv .cflex div.sname {
    width: 100%;
  }
  .contacttopbgdiv .cflex div.sname p {
    margin: 0vw 0vw 0vw 0vw;
  }
  .contacttopbgdiv .send {
    width: 53.33333vw;
    font-size: 12px;
    font-size: 3.2vw;
    background-image: url(/wp-content/themes/cominka/img/ico_arrow.png);
    background-repeat: no-repeat;
    background-position: right 8vw center;
    background-size: 1.6vw auto;
    font-weight: 400;
  }
  /*下層ページ　philosophy*/
  .mainsec.philosophy {
    /*
    &:before{
      content : "";
      display : block;
      position :absolute;
      width : 100%;
      @include h_vw(79);
      height : calc(54px + 21.06667vw);
      top: 0;
      background: rgba(245, 55, 30, 0.2);
      z-index: 0;
    }
    */
  }
}

@media screen and (min-width: 768px), print {
  .menulogo.white {
    /*  filter: invert(1);*/
  }
  .u-fixlogo {
    position: fixed;
    top: 0;
    left: 0;
    width: 56px;
    display: block;
    z-index: 2;
  }
  .u-fixlogo.white {
    -webkit-filter: invert(1);
            filter: invert(1);
  }
  .u-menu {
    width: 35px;
    height: 20px;
    margin: 0 auto 40px;
    cursor: pointer;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .u-menu span {
    width: 100%;
    height: 1px;
    background: #F5371E;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  /* ホバー時 */
  .u-menu:hover span:nth-child(1),
  .u-menu:hover span:nth-child(3) {
    width: 40.31px;
    position: absolute;
    left: -2.66px;
    top: 50%;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  .u-menu:hover span:nth-child(1) {
    -webkit-transform: translateY(-50%) rotate(32.5deg);
            transform: translateY(-50%) rotate(32.5deg);
  }
  .u-menu:hover span:nth-child(2) {
    opacity: 0;
  }
  .u-menu:hover span:nth-child(3) {
    -webkit-transform: translateY(-50%) rotate(-32.5deg);
            transform: translateY(-50%) rotate(-32.5deg);
    bottom: auto;
    top: 50%;
  }
  .menudiv .menumaildiv {
    border-top: 1px solid rgba(60, 60, 60, 0);
    border-bottom: 1px solid rgba(60, 60, 60, 0);
  }
  .menudiv.white .u-menu span {
    background: #fff;
  }
  .menudiv.white .menumaildiv {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
  }
  .l-header-nav {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.5s, visibility 0.5s;
    transition: opacity 0.5s, visibility 0.5s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    top: 0;
    position: fixed;
    z-index: 1000;
  }
  .l-header-nav.act {
    opacity: 1;
    visibility: visible;
  }
  .l-header-nav-inner {
    padding: 100px 0 0;
    background: #f5381e;
    min-height: 100svh;
    height: 100%;
    width: 700px;
    position: relative;
    z-index: 3;
  }
  .l-header-nav-inner:before {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1px;
    background: #fff;
    top: 0;
    left: 16px;
  }
  .l-header-nav-inner:after {
    content: "";
    display: block;
    position: absolute;
    height: 100%;
    width: 1px;
    background: #fff;
    top: 0;
    left: 112px;
  }
  .l-header-nav__bg {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    width: 100%;
    background: gray;
    opacity: 0.8;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  .l-header-nav-close {
    position: fixed;
    width: 35px;
    height: 20px;
    margin: 0 auto 0px;
    bottom: 139px;
    left: 26px;
    cursor: pointer;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .l-header-nav-close span {
    position: absolute;
    display: block;
    width: 50px;
    height: 40px;
    left: 10px;
    top: -10px;
  }
  .l-header-nav-close:before, .l-header-nav-close:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 40.31px;
    height: 1px;
    background-color: #fff;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  .l-header-nav-close:before {
    -webkit-transform: translateY(-50%) rotate(32.5deg);
            transform: translateY(-50%) rotate(32.5deg);
  }
  .l-header-nav-close:after {
    -webkit-transform: translateY(-50%) rotate(-32.5deg);
            transform: translateY(-50%) rotate(-32.5deg);
    bottom: auto;
    top: 50%;
  }
  .l-header-nav__logo {
    display: block;
    position: absolute;
    top: 45px;
    left: 31px;
    width: 65px;
  }
  .l-header-nav-box {
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    left: 65px;
  }
  .l-header-nav-menu li {
    margin: 0;
  }
  .l-header-nav-menu li a {
    display: block;
    position: relative;
    left: 0;
    padding: 18px 0;
    font-size: 14px;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  .l-header-nav-menu li a:before {
    content: "";
    display: block;
    background: #fff;
    opacity: 0.5;
    top: 50%;
    left: -35px;
    width: 20px;
    height: 1px;
    position: absolute;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  .l-header-nav-menu li a:hover:before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .l-header-nav .u-contact.u-pc2-only {
    position: fixed;
    left: 17px;
    bottom: 0px;
    margin: 25px 0 0;
    width: 96px;
    height: 96px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 7px;
    color: #fff;
    font-size: 11px;
    border-top: solid 1px #fff;
    border-bottom: solid 1px #fff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .l-header-nav .u-contact.u-pc2-only p {
    letter-spacing: 0.1em;
  }
  .l-header-nav .u-contact.u-pc2-only:hover {
    background: #fff;
    color: #F5371E;
  }
  .l-header-nav .u-contact.u-pc2-only:hover svg {
    stroke: #F5371E;
  }
  .l-header-nav .footservice {
    position: relative;
    left: 65px;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .l-header-nav .footservice p.servicesp {
    margin-bottom: 70px;
  }
  .l-header-nav .footsite p,
  .l-header-nav .footaidiv p {
    font-size: 11px;
  }
  .l-header-nav .footsite a,
  .l-header-nav .footaidiv a {
    width: 184px;
    height: 57px;
  }
  .l-header-nav-sns {
    position: absolute;
    bottom: 10px;
    left: 238px;
    margin: 20px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 124px;
    gap: 20px;
  }
  .l-header-nav-sns a {
    margin: 0;
    width: 20px;
  }
  .l-header-nav-sns a.ig {
    margin: 0;
    width: 26px;
  }
  .l-header-nav-sns a.tik {
    margin: 0;
    width: 20px;
  }
  .firstvisualdiv {
    height: 100vh;
    background-image: url(/wp-content/themes/cominka/img/firstvisual.jpg);
  }
  .mainsec:not(.toppage) .innermenu {
    position: fixed;
    bottom: 0;
  }
  .topgreetingdiv {
    padding: 0px 0px 0px 96px;
  }
  .topourflex.top {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .serviceaboutdiv .ourflex a svg {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .serviceaboutdiv .ourflex a:hover svg {
    fill: #F5371E;
    stroke: white;
  }
  .serviceflex {
    padding: 0px 0px 0px 96px;
  }
  .serviceflex .swiper {
    overflow: visible;
  }
  .serviceflex .topserbox {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 100px;
  }
  .serviceflex .topserbox a {
    max-width: 168px;
    width: 100%;
    margin: 0;
  }
  .serviceflex .ourimg {
    gap: 22px;
  }
  .onayamibox p {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .voiceflex {
    padding: 0px 0px 0px 112px;
  }
  .voiceflex .voicep {
    margin-bottom: 80px;
  }
  .voicetextdiv {
    padding: 100px 0 80px;
  }
  .swiper2 {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: relative;
    overflow: hidden;
    list-style: none;
    z-index: 1;
  }
  .swiper2 .swiper-wrapper {
    width: 880px;
    margin: 0 auto;
  }
  .innervoicebox .ourmorediv {
    position: absolute;
    bottom: 20px;
    right: 35px;
  }
  .voicetopbgdiv .linkbox {
    padding: 0px 0px 0px 96px;
  }
  .voicetopbgdiv .linkbox a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 200px;
  }
  .membertopbgdiv .linkbox {
    padding: 0px 0px 0px 96px;
  }
  .membertopbgdiv .linkbox a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 200px;
  }
  .memberflex {
    padding: 0px 0px 0px 96px;
  }
  .memberflex.toppage {
    padding: 0px 0px 0px 112px;
  }
  .p-sliderwrap {
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    margin: 0 0 55px;
    padding: 10px 0 10px 100px;
  }
  .p-sliderwrap.act .p-slider {
    -webkit-animation: scroll-left 90s infinite linear .5s both;
            animation: scroll-left 90s infinite linear .5s both;
  }
  .p-slider {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    gap: 40px;
    padding: 0 40px 0 0;
  }
  .newsflex {
    padding: 0px 0px 0px 96px;
  }
  .newstopdiv {
    max-width: 880px;
  }
  .innernewstop ul li a span {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    white-space: nowrap;
    min-width: 80px;
  }
  .innernewstop ul li a p {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .p-top02-set {
    height: 650px;
    width: 100%;
  }
  .p-top02 .swiper2 {
    padding: 0 0 5px;
  }
  .footerdiv {
    padding: 0 0 80px;
  }
  .footerflex {
    padding: 0px 50px 0 146px;
  }
  .footaidiv p,
  .footerdiv p,
  .footsite p {
    position: relative;
  }
  .footaidiv p:before,
  .footerdiv p:before,
  .footsite p:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 2;
    left: -40px;
    top: 50%;
    width: 25px;
    height: 1px;
    background: #fff;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
  .footaidiv a:hover p:before,
  .footerdiv a:hover p:before,
  .footsite a:hover p:before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .contactli p:before {
    display: none !important;
  }
  .l-header .footaidiv p:before,
  .l-header .footerdiv p:before,
  .l-header .footsite p:before {
    opacity: 0.5;
  }
  .footertopdiv {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    max-width: 1112px;
    padding: 80px 0 0;
  }
  .innerfootertop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 40px;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
  .innerfootertop {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 80px;
  }
  .sitemapdiv {
    max-width: 441px;
    width: 100%;
  }
  .footservice {
    max-width: 241px;
    width: 100%;
  }
  .footservice .serviceinnerflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .siteflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .footsec li,
  .footfirst li {
    padding: 0 0 0 50px;
    margin: 0 0 30px;
  }
  .footsec li.contactli,
  .footfirst li.contactli {
    padding: 14px 0 0 50px;
  }
  .footsec li a,
  .footfirst li a {
    display: block;
    min-width: 135px;
    font-size: 14px;
  }
  .footright {
    width: 200px;
    min-width: 200px;
  }
  .footsns {
    gap: 33px;
  }
  .footcopy {
    width: 198px;
  }
  .footcopy p {
    letter-spacing: 0.11em;
  }
  .u-btn {
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .u-btn:hover:before {
    content: "";
    position: absolute;
    top: 2px;
    left: 2px;
    right: 2px;
    bottom: 2px;
    border: 1px solid #F5381E;
    pointer-events: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .l-header-nav-menuwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 70px;
    padding: 0 0 0 50px;
  }
  .l-header-nav-box {
    width: 450px;
    margin: 0 auto;
  }
  .l-header .footservice {
    width: 450px;
    margin: 95px auto 0;
    max-width: none;
  }
  .l-header .footservice .serviceinnerflex {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding: 0 0 0 50px;
  }
  footer {
    position: relative;
  }
  footer:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 112px;
    width: calc(100% - 128px);
    height: 1px;
    background: #fff;
    z-index: 100;
  }
  .footsec ul li.contactli .u-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
  .footsec ul li.contactli .u-btn svg {
    stroke: white;
  }
  .footsec ul li.contactli .u-btn p {
    padding: 0 0 1px;
  }
  .footsec ul li.contactli .u-btn:hover svg {
    stroke: #F5371E;
  }
  /*下層コンテンツ*/
  .breaddiv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    white-space: nowrap;
  }
  .u-servicepage .serviceaboutdiv {
    background: none;
  }
  .u-servicepage .servicetopdiv {
    padding: 32px;
  }
  .p-service-item {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    padding: 112px 0 94px;
    position: relative;
  }
  .p-service-item:after {
    content: "";
    display: block;
    position: absolute;
    width: 112%;
    height: 1px;
    bottom: 0;
    left: -6%;
    background: #F5371E;
  }
  .p-service-item:last-of-type:after {
    display: none;
  }
  .p-service-item__link {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
    top: 159px;
    right: 0;
    height: 23px;
    padding: 0 0px 0 0;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .p-service-item__link span {
    padding: 0 0 1px;
  }
  .p-service-item__link svg {
    position: relative;
    top: 1px;
    display: block;
    stroke: #F5371E;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .p-service-item__link:hover svg {
    fill: #F5371E;
    stroke: #fff;
  }
  .p-service-item .innerourbor h4 {
    letter-spacing: 0.1em;
  }
  .p-service-item .ourimg {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    margin: 0;
    gap: 24px;
  }
  .p-service-item .ourimg .innerourimg {
    max-width: 212px;
    width: 100%;
  }
  .p-service-item .ourabout {
    max-width: 540px;
  }
  .p-service-item .ourabout h3 {
    font-size: 24px;
  }
  .p-service-item .ourabout p {
    font-size: 16px;
    letter-spacing: 0.1em;
  }
  .p-service-item .ourabout p.txt {
    font-family: YakuHanMP, "Noto Serif JP", serif;
    font-weight: 700;
    position: relative;
    top: -8px;
  }
  .p-service-item .ourabout p.ourtext {
    letter-spacing: 0.05em;
  }
  /*下層コンテンツ ブログ一覧*/
  .newstopbgdiv.newspagetop {
    padding: 0 0 97px;
  }
  .newstopbgdiv.newspage {
    padding: 0 0 128px;
  }
  .newsflex {
    padding: 0px 0px 0px 96px;
  }
  .newsflex .newstextdiv {
    padding-top: 150px;
    width: 100%;
    max-width: 882px;
  }
  .newsflex .newstextdiv.kiji {
    max-width: 740px;
  }
  .newsflex .newsflexdiv {
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 40px;
  }
  .newsflex .newsflexdiv .newspagebox {
    margin: 0 0 20px;
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc((100% - 80px) / 3);
            flex: 0 1 calc((100% - 80px) / 3);
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .newsflex .whitenews {
    height: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .newsflex .whitenews figure {
    display: block;
    overflow: hidden;
    aspect-ratio: 218 / 108;
    width: 100%;
    max-width: 218px;
  }
  .newsflex .whitenews figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: block;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .newsflex .newsinnerbox a:hover figure img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .newsflex .newsaboutp {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    border-bottom: none;
    min-height: 80px;
  }
  .newsflex .timepagediv {
    border-top: 1px solid #F5381E;
    padding: 20px 0 0;
  }
  .newsflex .linkbox {
    margin: 50px auto 0;
  }
  .linkboxwhite a.more svg {
    margin: 1px 0 0;
  }
  /*下層ページ　voice一覧*/
  .voicepagetop .voicetopbgdiv {
    padding: 0 0 40px;
  }
  .voicepagetop .voicetextdiv.voicepagetext {
    padding: 150px 0 0;
  }
  .voicepagetop .voiceinnerflex {
    margin: 0;
  }
  .voicepagetop .voiceinnerflex .ouryajirushi {
    top: 2px;
  }
  .voicepagetop .voiceinnerflex a:hover img {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .voicepagetop .voiceinnerflex .innervoicebox {
    position: relative;
  }
  /*下層ページ　voice詳細*/
  .voicetextdiv.voicepagetext {
    max-width: 880px;
    padding: 100px 0 175px;
  }
  .voicetextdiv .p-pagenav-item {
    margin: 50px auto 0;
  }
  /*下層ページ　company*/
  .companytablediv .companyinnertable {
    max-width: 740px;
    padding: 0px 0px 0px 96px;
    width: 100%;
    margin: 0 auto;
  }
  .historyaboutdiv {
    padding: 100px 0px 160px 96px;
  }
  .hiswhitediv {
    max-width: 880px;
    width: 100%;
    margin: 0px auto;
  }
  .historyaboutdiv table tr:first-of-type {
    border-top: none;
  }
  .historyaboutdiv table th {
    width: 250px;
    padding: 17px 0 17px 40px;
    font-size: 12px;
  }
  .historyaboutdiv table td {
    width: 480px;
    padding: 17px 25px 17px 20px;
  }
  /*下層ページ　member*/
  .membertopdiv.memberpage {
    margin: 0 auto;
    max-width: 880px;
  }
  .memberimgbox figure {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    aspect-ratio: 1 / 1;
    border: 1px solid #F5371E;
    border-radius: 50%;
    overflow: hidden;
    padding: 6px;
    margin: 0 0 26px;
  }
  .memberimgbox figure img {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    border: 1px solid #F5371E;
    border-radius: 50%;
    width: 100%;
    height: auto;
  }
  .innermemberlist figure {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    aspect-ratio: 1 / 1;
    border: 1px solid #F5371E;
    border-radius: 50%;
    overflow: hidden;
    padding: 6px;
    margin: 0 0 26px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .innermemberlist figure img {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    border: 1px solid #F5371E;
    border-radius: 50%;
    width: 100%;
    height: auto;
  }
  .popimg figure {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    aspect-ratio: 1 / 1;
    border: 1px solid #F5371E;
    border-radius: 50%;
    overflow: hidden;
    padding: 5px;
  }
  .popimg figure img {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: block;
    border: 1px solid #F5371E;
    border-radius: 50%;
    width: 100%;
    height: auto;
  }
  .memberpage .linkbox a {
    margin: 60px auto 0;
  }
  .hitokotodiv img {
    display: block;
    position: relative;
    top: 3px;
  }
  .modalOpen {
    cursor: pointer;
  }
  .modalOpen:hover .innermemberlist figure {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  .modalOpen:hover .modalbtn {
    background-color: #F5371E;
    -webkit-box-shadow: unset;
            box-shadow: unset;
  }
  .modalOpen:hover .modalbtn span {
    color: white;
  }
  .modalOpen:hover .modalbtn svg {
    stroke: white;
  }
  /*下層ページ　contact*/
  .contactflex {
    padding: 0px 0px 0px 96px;
  }
  .contactflex .contacttextdiv {
    padding: 150px 0 96px;
    width: 100%;
    max-width: 882px;
  }
  .contactpagediv .menumaildiv svg {
    width: 28px;
    height: 19px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {
  .l-header {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 13px 0px 10px;
    height: 54px;
  }
  .l-header.grey {
    background: #F4F4F4;
  }
  .l-header.grey .l-header-close span {
    background: #000;
  }
  .l-header-close {
    position: absolute;
    top: 20px;
    right: 20px;
    bottom: auto;
    left: auto;
    width: 28px;
    height: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    cursor: pointer;
  }
  .l-header-close span {
    width: 100%;
    height: 1px;
    background: #fff;
  }
  .l-header .headlogo {
    position: relative;
    left: 15px;
    width: 134px;
    top: -2px;
  }
  .l-header-nav-inner {
    padding: 90px 0;
    width: 100%;
    position: fixed;
  }
  .l-header-nav-inner:before {
    display: none;
  }
  .l-header-nav-inner:after {
    display: none;
  }
  .l-header-nav.act {
    opacity: 1;
    visibility: visible;
  }
  .l-header-nav-close {
    position: fixed;
    width: 42px;
    height: 42px;
    top: 30px;
    right: 30px;
    left: auto;
    cursor: pointer;
  }
  .l-header-nav-close:before, .l-header-nav-close:after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 42px;
    height: 1px;
    background-color: #fff;
    -webkit-transform-origin: center;
            transform-origin: center;
  }
  .l-header-nav-close:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  .l-header-nav-close:after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  .l-header-nav__logo {
    display: block;
    position: absolute;
    top: 30px;
    left: 30px;
    width: 50px;
  }
  .l-header-nav-box {
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    left: 0;
  }
  .l-header-nav-menu li {
    margin: 0;
  }
  .l-header-nav-menu li a {
    display: block;
    position: relative;
    left: 0;
    padding: 18px 0;
    font-size: 14px;
    letter-spacing: 0.1em;
    font-weight: 700;
    color: #fff;
  }
  .l-header-nav-menu li a:before {
    content: "";
    display: block;
    background: #fff;
    opacity: 0.5;
    top: 50%;
    left: -35px;
    width: 20px;
    height: 1px;
    position: absolute;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform-origin: left;
            transform-origin: left;
  }
  .l-header-nav-menu li a:hover:before {
    -webkit-transform: scaleX(1);
            transform: scaleX(1);
  }
  .l-header-nav .u-contact {
    position: absolute;
    top: 145px;
    left: 234px;
    margin: 25px 0 0;
    width: 170px;
    height: 54px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
    color: #fff;
    font-size: 14px;
    border: solid 1px #fff;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .l-header-nav .u-contact:hover {
    background: #fff;
    color: #F5371E;
  }
  .l-header-nav .u-contact:hover svg {
    stroke: #F5371E;
  }
  .l-header-nav .footservice {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    left: 0;
  }
  .l-header-nav .footsite p,
  .l-header-nav .footaidiv p {
    font-size: 11px;
  }
  .l-header-nav .footsite a,
  .l-header-nav .footaidiv a {
    width: 184px;
    height: 57px;
  }
  .l-header-nav-sns {
    position: absolute;
    bottom: -30px;
    left: 238px;
    margin: 20px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 124px;
    gap: 20px;
  }
  .l-header-nav-sns a {
    margin: 0;
    width: 20px;
  }
  .l-header-nav-sns a.ig {
    margin: 0;
    width: 26px;
  }
  .l-header-nav-sns a.tik {
    margin: 0;
    width: 20px;
  }
  .padlink {
    padding: 0 0 0px 0px;
  }
  .topgreetingdiv {
    padding: 0px 0px 0px 0px;
  }
  .support {
    font-size: 17px;
    margin-left: 25px;
  }
  .supportabout {
    font-size: 13px;
  }
  .greetingbox {
    max-width: 760px;
  }
  .omotenashidiv {
    margin-right: 0px;
  }
  .serviceflex {
    padding: 0px 50px 0px 40px;
  }
  .serviceflex .topserbox a {
    max-width: 158px;
  }
  .serviceaboutdiv {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 50px 40px 70px;
  }
  .serviceaboutdiv h3.ourh3:before, .serviceaboutdiv h3.ourh3:after {
    width: 36%;
  }
  .topourflex {
    gap: 40px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .ourflex {
    width: 46%;
  }
  .innerourimg {
    max-width: 180px;
  }
  .voiceflex {
    padding: 0px 0px 0px 0px;
  }
  .voicetopbgdiv .linkbox {
    padding: 0;
  }
  .voicetextdiv {
    overflow: hidden;
    padding: 100px 50px 80px;
  }
  .swiper2 .swiper-wrapper {
    width: 100%;
  }
  .memberflex {
    padding: 0;
  }
  .memberflex.toppage {
    padding: 0px 0px 0px 0px;
  }
  .membertopbgdiv .linkbox {
    padding: 0px 0px 0px 0px;
  }
  .newsflex {
    padding: 0px 50px 0px 50px;
  }
  .footerflex {
    padding: 0px 50px 0px 50px;
  }
  .innerfootertop {
    gap: 40px;
  }
  .footsec ul li.contactli a {
    padding: 20px 15px 20px 15px;
  }
  footer:before {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    content: "";
    display: block;
    position: absolute;
    top: -1px;
    left: 8px;
    width: calc(100% - 16px);
    height: 1px;
    background: #fff;
    z-index: 100;
  }
  footer .footsns {
    margin-bottom: 182px;
  }
  /*下層ページ*/
  .breaddiv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .breaddiv svg {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  .breaddiv span {
    padding: 0px 10px;
  }
  .redbg.u-menufit {
    padding: 0;
  }
  .u-servicepage .p-service-item {
    gap: 30px;
  }
  .u-servicepage .p-service-item .ourtext {
    margin: 15px 0 0;
  }
  .u-servicepage .p-service-item .ourimg {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 20px;
  }
  .u-servicepage .ourflex {
    width: 100%;
  }
  .u-servicepage .p-service-item .ourabout h3 {
    margin: 5px 0 0;
    text-align: left;
  }
  .u-servicepage .servicepageaboutflex .ourabout p {
    text-align: left;
  }
  .u-servicepage .servicepageaboutflex .ourimg {
    width: auto;
  }
  .newsflex .newsflexdiv {
    gap: 20px;
  }
  .newsflex .newsflexdiv .newspagebox {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 calc((100% - 40px) / 3);
            flex: 0 1 calc((100% - 40px) / 3);
  }
  .voicepagetop .voicetextdiv.voicepagetext {
    padding: 100px 40px 0;
  }
  .voicesingle .voiceflex {
    padding: 0px 50px 80px;
  }
  /*下層ページ　company*/
  .companybottomdiv {
    padding-top: 100px;
  }
  .companytablediv .companyinnertable {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 740px;
    padding: 0px 30px 0px 30px;
    width: 100%;
    margin: 0 auto;
  }
  .historyaboutdiv {
    padding: 100px 40px 160px 40px;
  }
  /*下層ページ　member*/
  .membertopdiv {
    padding: 100px 0px 0;
  }
  .membertopdiv.memberpage {
    padding: 100px 40px 0;
    max-width: 880px;
  }
  .memberul {
    margin: 80px 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 40px;
  }
  .memberul li {
    width: calc((100% - 40px * 3) / 4);
    margin: 0 0 30px;
  }
  .contactflex {
    padding: 0 40px;
  }
  .contactflex .contacttextdiv {
    padding: 120px 0 96px;
  }
}
