@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Anton&family=Noto+Sans+JP:wght@400;700&display=swap");
/*
Theme Name: 解体専門店Ｋ＆Ｋ弘前
Version: 999
*/
/* all style
----------------------------------------------------------- */
/* ===================================================================
CSS information

 file name  :common.css
 style info :コンテンツエリア関係 他

 基本設定、レイアウト、横幅設定など
 汎用class
=================================================================== */
/*----------------------------------------------------
    基本設定、リンクカラーなど
----------------------------------------------------*/
/*--- default */
html {
  font-size: 62.5%;
}

body {
  font-size: 18px;
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  body {
    font-size: 16px;
  }
}

img {
  width: 100%;
  height: auto;
}

a[href^="tel:"] {
  pointer-events: none;
  /* TEL無効 */
}

/*----------------------------------------------------
    pc用レイアウト
----------------------------------------------------*/
.pccut {
  display: none !important;
}

.displayNone {
  display: none !important;
}

.spmenubtn {
  display: none !important;
}

.inner {
  width: 80%;
  max-width: 980px;
  margin: 0 auto;
  position: relative;
  box-sizing: border-box;
  padding: 0;
}
@media (max-width: 1024px) {
  .inner {
    width: 92%;
  }
}

#top .inner {
  max-width: 1000px;
}

/* 固定ヘッダー（高さ170px）ぶん本文を下げる ※ 0 のままだとヒーローがヘッダー下に潜り白く見切れる */
.contents {
  padding: 170px 0 0;
}

/* 管理バー表示時はその分だけ下げる（768px 以上は style.css の 32/46px と合算） */
@media screen and (min-width: 768px) {
  body.admin-bar .contents {
    padding-top: calc(190px + 32px);
  }

  body.admin-bar#top .contents {
    padding-top: calc(182px + 32px);
  }
}

@media screen and (min-width: 768px) and (max-width: 782px) {
  body.admin-bar .contents {
    padding-top: calc(190px + 46px);
  }

  body.admin-bar#top .contents {
    padding-top: calc(182px + 46px);
  }
}

.main {
  max-width: none;
}

/*
 * トップ: style.css の .main { overflow: hidden } により、
 * ヒーローに負の margin を付けると上端が白いままクリップされる。
 * オフセットは padding-top の微調整で詰める（マージン負けは使わない）。
 */
#top .main {
  overflow: visible;
}

/* ナビ下端〜ヒーロー上端の白隙間を詰める（被りが出たら 183〜188 の範囲で調整） */
#top .contents {
  padding-top: 172px;
}
@media (max-width: 1024px) {
  .main {
    max-width: 100%;
  }
}

.bnrArea + .inner {
  padding-top: 30px;
}

article {
  padding: 0 0 20px;
}

.btn {
  font-size: 34px;
  font-weight: 700;
  height: 100px;
  line-height: 100px;
}

/*------------- tmp -------------*/
.pickupBnrWrap .pickupBnr {
  padding: 30px 0 70px;
}
.pickupBnrWrap .pickupBnr .swiper-pagination {
  bottom: 30px;
}
.pickupBnrWrap .pickupBnr .swiper-pagination .swiper-pagination-bullet {
  width: 20px;
  height: 20px;
}
.pickupBnrWrap .pickupBnr .swiper-button-prev, .pickupBnrWrap .pickupBnr .swiper-button-next {
  width: 50px;
  height: 60px;
  top: calc((100% - 70px) / 2);
}

/*----------------------
    topmv
-------------------------*/
.mainv {
  /*background: #f6631a;
  position: relative;
  width: 100%;*/
}
.mainv::after {
  /*content: "";
  width: 50%;
  height: 100%;
  position: absolute;
  background-color: #f9cc31;
  right: 0;
  top: 0;
  z-index: 1;*/
}
.mainv .stage {
  width: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  line-height: 0;
}
/* ヘッダー直下の白い隙間対策（画像のインライン余白） */
#top .mainv {
  margin-top: 0;
}
#top .mainv .stage figure,
#top .mainv .stage picture {
  display: block;
  margin: 0;
}
#top .mainv .stage img {
  display: block;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

/* トップ: ヒーロー直下の白帯（style.css で空ピックアップを潰したうえで、PC 用にあった 72px マージンをやめる） */
#top .topIntro {
  margin-top: 0;
}
#top .topIntro .topSubnav-wrap {
  padding-top: 40px;
  padding-bottom: 24px;
}

/*
 * 上部の白オーバーレイ（style.css の ::before）の高さを調整し、
 * クリーム色(#fff7d9)がカードのだいたい中央付近から主に見えるようにする
 * （元の 100px では切り替わりが低すぎる場合がある）
 */
/*#top .topIntro::before {
  height: calc(40px + min(52vw, 200px));
  max-height: 240px;
}
*/
/*----------------------
    topIntro
-------------------------*/
.topCatch-wrap {
  padding-top: 50px;
  padding-bottom: 80px;
}
.topCatch-wrap .inner {
  overflow: visible;
}
.topCatch-wrap .topChatch-box {
  position: relative;
  /*padding-bottom: 170px;*/
}
@media (max-width: 1024px) {
  .topCatch-wrap .topChatch-box {
    /*padding-bottom: 18%;*/
  }
}
.topCatch-wrap .topChatch-box .topChatch-tit {
  /*position: absolute;
  width: 105%;
  height: auto;
  left: 0;
  bottom: 0;*/
}
.topCatch-wrap .topChatch-box .topChatch-tit h2 {
  margin-bottom: 0;
}
.topCatch-wrap .topChatch-box .topChatch-tit h2 img {
  width: 100%;
  height: auto;
  display: block;
}
.topCatch-wrap p {
  padding-left: 1em;
}

#corporate .topIntro::before, #corporate .topIntro::after,
.topIntro--corporate::before, .topIntro--corporate::after {
  content: none !important;
  display: none !important;
}

#corporate .topIntro .topChatch-box {
  position: relative;
  /*padding-bottom: 160px;*/
}
@media (max-width: 1024px) {
  #corporate .topIntro .topChatch-box {
    /*padding-bottom: 18%;*/
  }
}
#corporate .topIntro .topChatch-box .topChatch-tit {
  /*position: absolute;
  width: 105%;
  height: auto;
  left: 0;
  bottom: 0;*/
}
#corporate .topIntro .topChatch-box .topChatch-tit h2 {
  margin-bottom: 0;
}
#corporate .topIntro .topChatch-box .topChatch-tit h2 img {
  width: 100%;
  height: auto;
  display: block;
}

/*----------------------
    Top セクションタイトル
-------------------------*/
.tit_reason, .tit-menu, .work-tit, .voice-tit, .staff-tit, .cta-tit, .stit-first {
  max-width: 1080px;
  margin: auto;
}

/*----------------------
    topReason 
-------------------------*/
.topReason .reasonBox .rTit {
  height: 90px;
}
.topReason .reasonBox .rTit .num {
  /*position: absolute;
  width: 132px;
  height: auto;
  aspect-ratio: 132/118;
  left: 56px;*/
}
@media (max-width: 1024px) {
  .topReason .reasonBox .rTit .num {
    left: 0;
    width: 100px;
    height: auto;
  }
}
.topReason .reasonBox .rTit span {
  font-size: 30px;
}
@media (max-width: 1024px) {
  .topReason .reasonBox .rTit span {
    font-size: 1.5em;
  }
}
.topReason .reasonBox .rInner {
  display: flex;
  justify-content: space-between;
}
.topReason .reasonBox .rInner .img {
  width: 48%;
  padding: 0;
  margin: 0;
  float: none;
}
.topReason .reasonBox .rInner .txt {
  width: 50%;
}
.topReason .reasonBox .rInner .txt p {
  font-size: 22px;
}
@media (max-width: 1024px) {
  .topReason .reasonBox .rInner .txt p {
    font-size: 1.125em;
  }
}

/*----------------------
    topContact
-------------------------*/
.topContact .topContact_formblock {
  position: relative;
  z-index: 3;
}
.topContact .topContact_formblock dl {
  display: flex;
  justify-content: space-between;
}
.topContact .topContact_formblock dl dt {
  width: 342px;
}
.topContact .topContact_formblock dl dd {
  width: calc(100% - 346px);
}
.topContact .topContact_formblock .formWrap .submit-box .btn_submit {
  font-size: 34px;
  font-weight: 700;
  height: 100px;
  line-height: 100px;
}

.topContact .topContact_formblock .tit-box {
  padding-right: 0;
}

/*----------------------
    serviceContents
-------------------------*/
.serviceContents .serviceMenuIndex {
  display: flex;
  flex-flow: row;
  gap: 35px;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex {
    gap: 25px;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox {
  width: calc((100% - 70px)/3);
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox {
    width: calc((100% - 50px)/3);
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .s-tit h4 {
  font-size: 24px;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .s-tit h4 {
    font-size: 1.2em;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn h3 {
  font-size: 60px;
  margin-bottom: 10px;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn h3 {
    font-size: 2.6em;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .price .en {
  font-size: 72px;
  letter-spacing: -0.025em;
  transform: scaleX(0.9);
  transform-origin: center;
  display: inline-block;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .price .en {
    font-size: 3.0em;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .price .yen {
  font-size: 30px;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .price .yen {
    font-size: 1.5em;
  }
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .price .yen sup {
    font-size: 9px;
    display: inline-block;
    left: 0;
    white-space: nowrap;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .tax .txt_L {
  font-size: 22px;
}
@media (max-width: 1024px) {
  .serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .tax .txt_L {
    font-size: 1.2em;
  }
}
.serviceContents .serviceMenuIndex .serviceMenuBox a.menuBox .MenuBoxinn .cap {
  font-size: 14px;
}

/*----------------------
    work
-------------------------*/
.work_list_wrap {
  padding: 0 0 40px;
}
.work_list_wrap .worksList .list-item {
  width: calc((100% - 75px) / 4);
}
@media (max-width: 1024px) {
  .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox dl dd {
    font-size: 0.9em;
  }
}
@media (max-width: 1024px) {
  .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox .cat-list li {
    padding: 0 6px;
  }
}
@media (max-width: 1024px) {
  .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox .cat-list li a {
    font-size: 0.7em;
  }
}
@media (max-width: 1024px) {
  .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox .cat-list li a img {
    width: 5px;
  }
}

#work .inner, .archive .inner, .single .work_list_wrap .inner {
  max-width: 1000px;
}

.single .work_list_wrap {
  padding-top: 40px;
}

/*----------------------
    voice
-------------------------*/
.voiceListWrap .voiceList {
  display: flex;
  gap: 56px;
}
.voiceListWrap .voiceList .swiper-slide {
  width: calc((100% - 112px) / 3);
  padding: 0;
}
.voiceListWrap .voiceList .swiper-slide h3 + p {
  text-align: right;
  border-top: dotted 1px #3d2d26;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}
.voiceListWrap .voiceList .swiper-slide .info {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 0 0.5em;
}
.voiceListWrap .voiceList .swiper-slide .info img {
  width: 8px;
  height: auto;
  aspect-ratio: 50/64;
  margin-left: 10px;
}

#voice .blogWrap .inner, .single-voices .blogWrap .inner {
  max-width: 1000px;
}
#voice .worksWrap, .single-voices .worksWrap {
  background-color: #fff;
  background-image: none;
}

/* お客様の声：body が id=top のときの誤スタイルを class で打ち消し */
.page-template-page-voice-php .topIntro::before,
.page-template-page-voice-php .topIntro::after,
.post-type-archive-voices .topIntro::before,
.post-type-archive-voices .topIntro::after {
  content: none !important;
  display: none !important;
}

.page-template-page-voice-php .blogWrap,
.post-type-archive-voices .blogWrap {
  background-color: #fff;
  background-image: none;
}

.page-template-page-voice-php .worksWrap,
.page-template-page-voice-php .worksListWrap,
.post-type-archive-voices .worksWrap,
.post-type-archive-voices .worksListWrap {
  background-color: #fff !important;
  background-image: none !important;
}
#voice .worksWrap .inner, .single-voices .worksWrap .inner {
  max-width: 1000px;
}
#voice .worksWrap .inner .work_list_wrap, .single-voices .worksWrap .inner .work_list_wrap {
  padding-top: 40px;
}
#voice .worksWrap .inner .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox dl dd, .single-voices .worksWrap .inner .work_list_wrap .worksList .list-item .slide-inner .worksExp .infoBox dl dd {
  background-color: #f3f2f2;
}

/*----------------------
    staff
-------------------------*/
@media (max-width: 1024px) {
  .staffListWrap .staffList {
    padding: 0 18px;
  }
}
@media (max-width: 1024px) {
  .staffListWrap .staffList .swiper-slide p .name {
    font-size: 1.5em;
  }
}
@media (max-width: 1024px) {
  .staffListWrap .staffList .swiper-slide p small {
    font-size: 1.0em;
  }
}
@media (max-width: 1024px) {
  .staffListWrap .swiper-button-next i, .staffListWrap .swiper-button-prev i {
    font-size: 1.5em;
  }
}

/*----------------------
    blog
-------------------------*/
.blogWrap .blogList {
  display: flex;
  gap: 38px;
}
@media (max-width: 1024px) {
  .blogWrap .blogList {
    gap: 25px;
  }
}
.blogWrap .blogList .list-item {
  width: calc((100% - 76px)/3);
	height: auto;
}
.blogWrap .blogList .list-item .voiceTxt time {
  font-size: 16px;
}
.blogWrap .blogList .list-item .voiceTxt .category-list {
  display: flex;
	flex-wrap: wrap;
  gap: 10px;
}
.blogWrap .blogList .list-item .voiceTxt .category-list li a {
  font-size: 16px;
}
@media (max-width: 1024px) {
  .blogWrap .blogList .list-item .voiceTxt .category-list li a {
    font-size: 0.7em;
    padding: 0 6px;
  }
}
@media (max-width: 1024px) {
  .blogWrap .blogList .list-item .voiceTxt .category-list li a img {
    width: 5px;
  }
}

/*----------------------
    cta
-------------------------*/
.ctaBlock {
  padding: 90px 0;
  position: relative;
}
.ctaBlock p {
  margin-top: 60px;
}
.ctaBlock .cta-img-box {
  width: 100%;
  margin-top: 0;
}
.ctaBlock .cta-img-box img {
  width: 94%;
}
@media (max-width: 1024px) {
  .ctaBlock .cta-img-box img {
    width: 100%;
  }
}

#top .ctaBlock .cta-img-box {
  margin-top: -40px;
}
#top .ctaBlock .cta-img-box img {
  width: 87%;
}

.ctaWrap .cta-btn-box {
  display: flex;
/*   gap: 20px; */
	flex-wrap: wrap;
}
@media (max-width: 1024px) {
  .ctaWrap .cta-btn-box {
    
  }
}

.ctaWrap .cta-btn-box .btn_cta {
	width: calc(50% - 30px * 1/2);
	margin-right: 30px;
	margin-top: 30px;
}

.ctaWrap .cta-btn-box .btn_cta:nth-child(2n) {
	margin-right: 0;
}

.ctaWrap .cta-btn-box .btn_cta:nth-child(-n+2) {
	margin-top: 0;
}

.ctaWrap .cta-btn-box .btn_cta a {
  border-radius: 10px;
  display: flex;
  flex-flow: column;
  height: 130px;
  text-decoration: none;
  padding: 0 16px;
  justify-content: center;
  align-items: center;
}
.ctaWrap .cta-btn-box .btn_cta a span {
  color: #FFF;
  text-decoration: none;
}
.ctaWrap .cta-btn-box .btn_tel {
  flex-grow: 1;
  width: 35%;
}
.ctaWrap .cta-btn-box .btn_tel a {
  background-color: #1e764c;
  flex-flow: row;
  margin-top: 0;
}
.ctaWrap .cta-btn-box .btn_tel a img {
  width: 106px;
  height: auto;
}
@media (max-width: 1280px) {
  .ctaWrap .cta-btn-box .btn_tel a img {
    width: 15%;
  }
}
.ctaWrap .cta-btn-box .btn_tel a span.tel .en {
  display: block;
  /* font-size: 2.8em; */
  font-size: 2.1em;
}
@media (max-width: 1024px) {
  .ctaWrap .cta-btn-box .btn_tel a span.tel .en {
    font-size: 2.6em;
  }
}
.ctaWrap .cta-btn-box .btn_tel a span.tel small {
  display: block;
  font-size: 1.25em;
}
@media (max-width: 1024px) {
  .ctaWrap .cta-btn-box .btn_tel a span.tel small {
    font-size: 1em;
  }
}
.ctaWrap .cta-btn-box .btn_mail a {
  background-color: #20477c;
  margin-top: 0;
}
.ctaWrap .cta-btn-box .btn_mail a .txt {
  font-size: 2.0em;
}
@media (max-width: 1280px) {
  .ctaWrap .cta-btn-box .btn_mail a .txt {
    font-size: 1.6em;
  }
}
.ctaWrap .cta-btn-box .btn_mail a img {
  width: 70px;
}
@media (max-width: 1280px) {
/*   .ctaWrap .cta-btn-box .btn_mail a img {
    width: 40%;
  } */
}
.hdrInfo .btn_line {
  width:  27%;
}
.ctaWrap .cta-btn-box .btn_shop a {
  background-color: #f26060;
  margin-top: 0;
}
.ctaWrap .cta-btn-box .btn_shop a .txt {
  font-size: 2.0em;
}
@media (max-width: 1280px) {
  .ctaWrap .cta-btn-box .btn_shop a .txt{
    font-size: 1.6em;
  }
	
	.ctaWrap .cta-btn-box .btn_line a .txt {
		font-size: .8em;
		margin-top: 10px;
	}
}
.ctaWrap .cta-btn-box .btn_shop a img {
  width: 70px;
}
@media (max-width: 1280px) {
/*   .ctaWrap .cta-btn-box .btn_shop a img {
    width: 40%;
  } */
}

.reasonBox .ctaWrap .inner {
  width: 100%;
}
.reasonBox .ctaWrap .inner .cta-btn-box .btn_cta a {
  height: 150px;
}

.message_title .in-box {
  max-width: 900px;
  margin: auto;
  position: relative;
  padding: 4rem 0;
}

.message_title .img {
  width: 45%;
}

.message_txt + .bnrReason {
  background: #FFF;
  max-width: 900px;
  margin: auto;
  padding: 4rem 0;
}

.flowWrap {
  padding-bottom: 60px;
}

.flowWrap::before {
  width: 207px;
  top: 0;
  left: calc((100% - 1000px) / 2 + 16px);
}

.flowWrap .inner {
  padding: 0;
}

.flowIndexWrap .flowbox {
  width: 23%;
}

#reason .h3_line:before {
  width: 13%;
}

.contactStepWrap .step1::after, .contactStepWrap .step2::after {
  width: 38px;
}

.xsblock {
  display: none;
}

.d-none {
  display: none;
}

.staffTitWrap .imgC {
  max-width: 800px;
}

/*----------------------
    header
-------------------------*/
#header {
  position: fixed;
  width: 100%;
  top: 0;
  height: 170px;
  background: #fff;
  box-shadow: 1.414px 1.414px 3px 0px rgba(0, 0, 0, 0.36);
  display: flex;
  flex-flow: wrap;
  align-items: flex-end;
  z-index: 99999;
}

/* 管理バーより ID 詳細度が高い #header が top:0 を奪っていたのを上書き（782px 以下はツールバー高さ 46px） */
body.admin-bar #header {
  top: 32px;
  z-index: 99998;
}

@media screen and (max-width: 782px) {
  body.admin-bar #header {
    top: 46px;
  }
}
#header .inner {
  display: flex;
  margin: auto;
  max-width: 1000px;
  height: auto;
  padding: 0;
}
#header .inner .hdrLogo {
  width: 29.4%;
}
#header .pcNav {
  height: 80px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
#header .pcNav .gNavPc {
  width: 100%;
  /*background-image: -moz-linear-gradient(-90deg, rgb(255 237 5) 0%, #fff775 20%, #ffec00 100%);
  background-image: -webkit-linear-gradient(-90deg, rgb(255 237 5) 0%, #fff775 20%, #ffec00 100%);
  background-image: -ms-linear-gradient(-90deg, rgb(255 237 5) 0%, #fff775 20%, #ffec00 100%);*/
  height: 70px;
}
#header .pcNav .gNavPc ul {
  max-width: 1000px;
  margin: 0 auto;
  width: 90%;
  display: flex;
  justify-content: space-between;
  width: 100%;
}
#header .pcNav .gNavPc ul li {
  /*width: calc(100%/7);*/
  display: flex;
  position: relative;
}
/*
#header .pcNav .gNavPc ul li::after {
  content: "";
  width: 1px;
  height: 60px;
  background-color: #FFF;
  opacity: 0.3;
  position: absolute;
  right: 0;
  top: 10px;
}*/
#header .pcNav .gNavPc ul li a {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
  color: #222;
  text-decoration: none;
  font-weight: 700;
  font-size: 20px;
  padding-bottom: 10px;
  position: relative;
}
@media (max-width: 1024px) {
  #header .pcNav .gNavPc ul li a {
    font-size: 16px;
  }
}
#header .pcNav .gNavPc ul li a .icon {
  display: flex;
  width: 40px;
  height: 40px;
	aspect-ratio: 1 / 1;
  border-radius: 50%;
  background-color: #ffc800;
  justify-content: center;
  align-items: center;
  /*position: absolute;
  left: 50%;
  top: -22px;
  transform: translateX(-50%);*/
	        margin-right: 8px;
}



/*
#header .pcNav .gNavPc ul li:nth-of-type(1)::before {
  content: "";
  width: 1px;
  height: 60px;
  background-color: #fff;
  opacity: 0.3;
  position: absolute;
  left: 0;
  top: 10px;
}*/

#header .pcNav .gNavPc ul li a .icon::after {
	content: "";
	width: 30px;
  height: 30px;
	background-position: center;
	background-repeat:no-repeat;
	background-size: contain;
}

#header .pcNav .gNavPc ul li:nth-of-type(1) a .icon::after {background-image: url("../img/icon_home.png") ;}
#header .pcNav .gNavPc ul li:nth-of-type(2) a .icon::after {background-image: url("../img/icon_first.png") ;}
#header .pcNav .gNavPc ul li:nth-of-type(3) a .icon::after {background-image: url("../img/icon_corp.png") ;}
#header .pcNav .gNavPc ul li:nth-of-type(4) a .icon::after {background-image: url("../img/icon_menu.png") ;}
#header .pcNav .gNavPc ul li:nth-of-type(5) a .icon::after {background-image: url("../img/icon_work.png") ;}
#header .pcNav .gNavPc ul li:nth-of-type(6) a .icon::after {background-image: url("../img/icon_contact.png") ;}



#top #header .pcNav .gNavPc ul > li:nth-of-type(1) a .icon, #first #header .pcNav .gNavPc ul > li:nth-of-type(2) a .icon, #corporate #header .pcNav .gNavPc ul > li:nth-of-type(3) a .icon, #menu #header .pcNav .gNavPc ul > li:nth-of-type(4) a .icon, #works #header .pcNav .gNavPc ul > li:nth-of-type(5) a .icon, #work #header .pcNav .gNavPc ul > li:nth-of-type(5) a .icon, #contact #header .pcNav .gNavPc ul > li:nth-of-type(6) a .icon {
  border: 4px solid  #c3d50a;
  background-color: #f6771a;
  width: 40px;
  height: 40px;
}

.hdrInfo {
  display: flex;
  justify-content: flex-end;
  /* margin-left: 5.4%;
  width: 65.2%; */
  width: 85.2%;
  margin-left: 1.4%;
}
.hdrInfo .h_tel {
  text-align: center;
  /*background: url(https://sumoto-kaitai.com/wp-content/themes/cleanisland/img/h_fd.png) no-repeat left center/7.8rem;
  padding-left: 80px;*/
}
@media (max-width: 1024px) {
  .hdrInfo .h_tel {
    /*background: url(https://sumoto-kaitai.com/wp-content/themes/cleanisland/img/h_fd.png) no-repeat left center/6.4rem;
    padding-left: 70px;*/
  }
}
.hdrInfo .h_tel dd em a {
  color: #bb2108;
  font-size: 45px;
  font-family: "Anton", sans-serif;
  white-space: nowrap;
  text-decoration: none;
  font-style: normal;
}
@media (max-width: 1024px) {
  .hdrInfo .h_tel dd em a {
    font-size: 36px;
  }
}
.hdrInfo .h_tel dd small {
  display: block;
  line-height: 1;
  font-size: 16px;
}
.hdrInfo .h_mail {
  display: flex;
  width: 53%;
  align-items: center;
}

.h_mail .btn_line {
  margin-top: 0;
  margin-left: 3%;
  align-self: center;
}

.hdrInfo .h_mail .btn_h,
.hdrInfo .h_mail .btn_h:link {
  width: 33.33333333%;
  height: 60px;
  border-radius: 10px;
  box-shadow: 0 6px 0 #02273c;
  background-color: #20477c;
  color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  font-weight: 700;
  font-size: 16px;
  color: #FFF;
}
@media screen and (min-width: 769px){
	.hdrInfo .h_mail .btn_h, .hdrInfo .h_mail .btn_h:link {
		border-radius: 0 0 10px 10px;
		position: relative;
		top: -15px;
	}
}

.hdrInfo .h_mail .btn_h.btn_line {
	box-shadow: 0 6px 0 #0d9814;
	background-color: #05af04;
}

@media (max-width: 1024px) {
  .hdrInfo .h_mail .btn_h, .hdrInfo .h_mail .btn_h:link {
    font-size: 14px;
    flex-flow: column;
  }
}
.hdrInfo .h_mail .btn_h::before, .hdrInfo .h_mail .btn_h:link::before {
  content: "";
  display: block;
  width: 38px;
  height: auto;
  aspect-ratio: 1/1;
  background: url("../img/icon_contact.png") no-repeat;
  background-size: contain;
  margin-right: 4px;
}

@media (max-width: 1024px) {
  .hdrInfo .h_mail .btn_h::before, .hdrInfo .h_mail .btn_h:link::before {
    width: 28px;
    margin-right: 0;
  }
}
.hdrInfo .h_mail .btn_shop, .hdrInfo .h_mail .btn_shop:link {
  box-shadow: 0 6px 0 #bf0f0f;
  background-color: #f26060;
  margin-left: 3%;
}
.hdrInfo .h_mail .btn_shop::before, .hdrInfo .h_mail .btn_shop:link::before {
  background: url("../img/icon_home.png") no-repeat;
  background-size: contain;
  margin-right: 4px;
}

.hdrInfo .h_mail .btn_line::before, .hdrInfo .h_mail .btn_line:link::before {
  background: url("../img/line.png") no-repeat;
  background-size: contain;
  margin-right: 4px;
}

.h_mail {
  width: 26rem;
  margin-left: .5em;
}

/*----------------------
    footer
-------------------------*/
.footer {
  overflow: visible;
  padding-bottom: 0;
}
.footer .footerCom {
  padding-bottom: 0;
  padding-top: 45px;
}
/* グレー帯（ロゴ・住所・バナー）: 既存サイト同様に幅を広げる ※サイトマップ(nav.spcut)は .footerCom .inner で別管理 */
.footer .footerCom .footerNavWrap .inner,
#top .footer .footerCom .footerNavWrap .inner {
    max-width: none;
    width: 94%;
    margin-left: auto;
    margin-right: auto;
}
.footer .footerCom .inner {
    max-width: 1000px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.footer .footerCom .footerL {
    display: flex;
    flex-flow:column;
    width: 33%;
    text-align: left;
}
.footer .ftrScroll {
  display: none !important;
}
.footer .footerCom .footerL .ftrLogo {
  width: 60%;
  margin: 0 0 20px;
}
.footer .footerCom .footerL h5 {
    margin-bottom:1em;
    text-align: left;
}
.footer .footerCom address p {
    font-size:0.85em;
    text-align: left;
    margin-top:0;
}
.footer .footerCom .sns_nav {
    width:100%;
    margin-bottom:20px;
    justify-content: flex-start;
}
.footer .footerCom .sns_nav li {
    width: 15%;
    max-width:48px;
    margin: 0 10px;
}
.footer nav.spcut {
  display: flex;
  width: 90%;
  margin: auto;
  padding-bottom: 32px;
}
.footer nav.spcut .ftrNav {
  width: calc(100%/3);
}
.footer nav.spcut .ftrNav li {
  margin: 0.5em 0;
  text-align: left;
}
.footer nav.spcut .ftrNav li a {
  text-decoration: none;
}
.footer nav.spcut .ftrNav li i {
  color: #ffc800;
  margin-right: 8px;
	width: 10px;
			display: inline-block;
			background: #ffc800;
			height: 14px;
			clip-path: polygon(40% 0, 100% 50%, 40% 100%, 0% 100%, 60% 50%, 0% 0%);
}
.footer .footer-snav-wrap {
  background: #f7f7f7;
  padding: 40px 0;
}
.footer .footer-snav-wrap .inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-flow: row;
}
.footer .footer-snav-wrap .inner .f_bnr {
  max-width: 375px;
    margin-top:40px;
}
.footer .footer-snav-wrap .inner .f_bnr a {
    display: block;
}
.footer .footer-snav-wrap .inner .f_bnr a + a {
    margin-top:15px;
}
.footer .footer-snav-wrap .inner .sns_nav {
  margin: 0 40px 0 0;
}
.footer .footer-snav-wrap .inner .sns_nav li {
  width: 20%;
  max-width: 72px;
  margin: 0 10px;
}
.footer .footerCom .copyRight {
    font-size:12px;
    padding-top:0;
}
.footer .footerCom .copyRight p {
    text-align: right;
    margin-top:0;
}
.footer .footerCom .footerR {
    width:calc(67% - 40px);
}
/* 協力会社バナー: 右揃え */
.footer .footerCom .footerR .footer-bnr {
    display: flex;
    flex-wrap: wrap;
    padding-top: 36px;
    justify-content: flex-end;
    align-items: flex-start;
    max-width: none;
    margin: 0;
}
.footer .footerCom .footerR .footer-bnr > .bnr-logo {
    width:auto;
    margin-right:0;
    margin-left:30px;
    margin-bottom:15px;
    background: #FFF;
    padding:4px;
    border:1px solid #000;
} 
.footer .footerCom .footerR .footer-bnr > .bnr-logo img {
    width:auto;
    height:40px;
}

.footer .ftrScroll {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0;
}

.footer .ftrScroll .campeign_bn {
  margin: 0;
  aspect-ratio: 767/140;
  width: 35.45%;
}

.footer .ftrScroll .ftrCont {
  margin: 0;
  width: 49.7%;
}

.footer .footerL a::before {
  width: 16rem;
}

/*
#pageMainv .bgmv {
  aspect-ratio: 1400/252;
}
*/

.breadNav .page-chara {
  position: absolute;
  width: 16%;
  right: 0;
  bottom: 0;
}

.kvWrap, .intoroWrap .img {
  max-width: 1000px;
  margin: 20px auto;
}

.h3_line {
  margin-left: auto;
  margin-right: auto;
}
.h3_line h3 {
  font-size: 2.6em;
}

.corpinfoWrap .corpinfoList {
  display: flex;
  flex-flow: wrap;
}

.corpinfoWrap .corpinfoList dt {
  width: 30%;
  margin-bottom: 2px;
}

.corpinfoWrap .corpinfoList dd {
  width: 70%;
  margin-bottom: 2px;
  padding-left: 1em;
  text-align: left;
}

.reasonNav a {
  width: 18%;
  margin: 0 1% 0.83em;
}

.reasonBox {
  margin-top: 100px;
}

.reasonBox .rInner {
  overflow: hidden;
}

.reasonBox .rInner h4.it {
  font-size: 1.2em;
}

.reasonBox .rInner .img, #kaitai00 .img.img02 {
  float: right;
  width: 40%;
  padding: 10px 0 20px 20px;
}

.pointblockWrap .reasonBox .rTit h3 {
  color: #FFF;
  text-align: center;
  font-size: 2em;
  font-weight: 700;
}
.pointblockWrap .reasonBox .rInner {
  padding: 20px;
}

#kaitai00 .flexWrap {
  display: block;
}

#kaitai00 .flexWrap .txt {
  width: auto;
}

#reason01 .rTit::before {
  width: 16%;
}

#menu01 .h3_line:before {
  width: 13%;
  right: 0;
}

#reason02 .rTit::before, #menu02 .h3_line:before {
  width: 15%;
}

#reason03 .rTit::before, #menu03 .h3_line:before, #menu04 .h3_line:before {
  width: 18%;
}

#menu03 .h3_line:before {
  bottom: -6em;
}

#menu04 .h3_line:before {
  width: 15%;
  bottom: -1.4em;
}

#reason04 .rTit::before {
  width: 20%;
}

.menuplanBox.reasonBox {
  width: 100%;
}

.menublockWrap .pointBlock .h3_line + .inner {
  display: flex;
  flex-flow: wrap;
}

.menublockWrap .priceBox {
  width: 100%;
}

.menublockWrap .imgIndex .box {
  width: calc(100%/3);
}

#menu .serviceContents {
  background: #FFF;
}
#menu .menublockWrap {
  padding-bottom: 80px;
}
#menu .menublockWrap .pointBlock {
  padding-top: 40px;
}
#menu .menublockWrap .pointBlock .baloon_tit {
  width: 51.6%;
  height: auto;
  aspect-ratio: 501/104;
  background: url("../img/baloon_bg.png") no-repeat;
  background-size: 100% auto;
  margin: 0 auto 10px;
  text-align: center;
}
#menu .menublockWrap .pointBlock .baloon_tit span {
  color: #FFF;
  font-size: 1.6em;
  padding-top: 1em;
  display: inline-block;
}
#menu .menublockWrap .pointBlock .serviceMenuBox {
  position: relative;
  display: flex;
  flex-flow: column;
  width: 100%;
  border-radius: 10px;
  border: 2px solid #70a84c;
  background-color: #FFF;
  overflow: hidden;
  text-decoration: none;
}
#menu .menublockWrap .pointBlock .serviceMenuBox * {
  text-decoration: none;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .s-tit {
  background-color: #70a84c;
  padding: 10px;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .s-tit h4 {
  text-align: center;
  color: #FFF;
  font-size: 1.3em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .arrow {
  height: 45px;
  display: flex;
  justify-content: center;
  align-items: center;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .arrow img {
  width: 20px;
  height: auto;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn, #menu .menublockWrap .pointBlock .serviceMenuBox .inn {
  padding: 10px;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn h3, #menu .menublockWrap .pointBlock .serviceMenuBox .inn h3 {
  text-align: center;
  font-size: 3.3333em;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #70a84c;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn figure, #menu .menublockWrap .pointBlock .serviceMenuBox .inn figure {
  width: 100%;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn figure img, #menu .menublockWrap .pointBlock .serviceMenuBox .inn figure img {
  width: 100%;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .price, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .price {
  text-align: center;
  padding-bottom: 8px;
  border-bottom: 1px solid #f26060;
  color: #bb2108;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .price .en, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .price .en {
  font-size: 4.444em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .price .yen, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .price .yen {
  font-size: 1.66em;
  position: relative;
  font-weight: 700;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .price .yen sup, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .price .yen sup {
  font-size: 0.25em;
  position: absolute;
  left: 0.25em;
  top: -0.25em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .tax, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .tax {
  padding-top: 8px;
  text-align: center;
  color: #bb2108;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .tax .txt_L, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .tax .txt_L {
  font-size: 1.25em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .point, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .point {
  display: flex;
  gap: 10px;
  margin: 10px auto;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .point li, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .point li {
  border-radius: 10px;
  background-color: #33a395;
  padding: 10px;
  text-align: center;
  color: #3d2d26;
  width: calc((100% - 20px) / 2);
}
#menu .menublockWrap .pointBlock .serviceMenuBox .MenuBoxinn .cap, #menu .menublockWrap .pointBlock .serviceMenuBox .inn .cap {
  text-align: center;
  font-size: 0.875em;
}
#menu .menublockWrap .pointBlock#menu01 .serviceMenuBox {
  border: 2px solid #33a395;
}
#menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .s-tit, #menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .arrow {
  background-color: #33a395;
}
#menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .MenuBoxinn h3, #menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .inn h3 {
  color: #33a395;
}
#menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .MenuBoxinn .point li, #menu .menublockWrap .pointBlock#menu01 .serviceMenuBox .inn .point li {
  background-color: #ffc800;
}
#menu .menublockWrap .pointBlock#menu02 .serviceMenuBox {
  border: 2px solid #ed8311;
}
#menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .s-tit, #menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .arrow {
  background-color: #ed8311;
}
#menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .MenuBoxinn h3, #menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .inn h3 {
  color: #810b50;
}
#menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .MenuBoxinn .point li, #menu .menublockWrap .pointBlock#menu02 .serviceMenuBox .inn .point li {
  background-color: #ffc800;
}
#menu .menublockWrap .pointBlock#menu03 .serviceMenuBox {
  border: 2px solid #06a1df;
}
#menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .s-tit, #menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .arrow {
  background-color: #06a1df;
}
#menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .MenuBoxinn h3, #menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .inn h3 {
  color: #06a1df;
}
#menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .MenuBoxinn .point li, #menu .menublockWrap .pointBlock#menu03 .serviceMenuBox .inn .point li {
  background-color: #ffc800;
}

#menu .menublockWrap .pointBlock#menu02 .priceTit span {
  background: #3d2d26;
}
#menu .menublockWrap .pointBlock#menu02 .menuplanBox.reasonBox .rTit {
  background-color: #ed8311;
}
#menu .menublockWrap .pointBlock#menu02 .mpTable thead th {
  background: #decdd7;
}
#menu .menublockWrap .pointBlock#menu03 .priceTit span {
  background: #3d2d26;
}
#menu .menublockWrap .pointBlock#menu03 .menuplanBox.reasonBox .rTit {
  background-color: #06a1df;
}
#menu .menublockWrap .pointBlock#menu03 .mpTable thead th {
  background: #becddc;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceTit {
  width: 21%;
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceTit span {
  width: calc(50% - 0.5px);
  margin-bottom: 1px;
  background: #3d2d26;
  color: #FFF;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 3.8em;
  font-weight: 700;
  line-height: 0.9;
  aspect-ratio: 1/1;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceImg {
  width: 38.5%;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceInfo {
  width: 38.6%;
  margin-top: 0;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceInfo .point {
  margin: 0 auto;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceInfo .price {
  line-height: 1.1;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .priceBox .priceInfo .cap {
  font-size: 0.8em;
  line-height: 1.6;
  margin-top: 0;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menuplanBox.reasonBox {
  margin-top: 20px;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menuplanBox.reasonBox .rTit {
  padding: 1em 0 1.25em;
  background-color: #33a395;
  text-align: center;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menuplanBox.reasonBox .rTit h4 .ja {
  font-weight: 700;
  color: #FFF;
  letter-spacing: 0.025em;
  font-size: 1.6em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .mpTable {
  width: 100%;
  border-collapse: collapse;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .mpTable thead th {
  background: #d6ecc8;
  font-weight: 400;
  padding: 0.75em;
  border: 2px solid #FFF;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .mpTable tbody td {
  padding: 0.75em;
  font-size: 0.72em;
  border: 2px solid #FFF;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .mpTable tbody > tr:nth-of-type(odd) td {
  background: #FFF;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .mpTable tbody > tr:nth-of-type(even) td {
  background: #f3f2f2;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice {
  background: #FFF;
  padding: 1em;
  display: flex;
  flex-flow: wrap;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice .dt {
  text-align: center;
  padding: 0;
  width: 50%;
  font-size: 2em;
  font-weight: 500;
  border-right: 1px solid #3d2d26;
  display: flex;
  justify-content: center;
  align-items: center;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice .dt small {
  font-size: 0.5em;
  display: inline-block;
  text-align: center;
  margin-top: 0.5em;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice .dd {
  color: #bb2108;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 50%;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice .dd p {
  font-size: 1.4em;
  color: var(--subcol);
  font-weight: 500;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .allPrice .dd strong {
  font-size: 2.4em;
  font-weight: 400;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menublockWrap .imgIndex {
  display: flex;
  flex-flow: wrap;
  margin-left: -0.5em;
  margin-right: -0.5em;
  width: 100%;
  margin-top: 40px;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menublockWrap .imgIndex .box {
  padding: 0 0.5em 1em;
  width: 50%;
}
#menu .menublockWrap .pointBlock .serviceMenuBox .menublockWrap .imgIndex .box h4 {
  background: #f6771a;
  color: #FFF;
  line-height: 2em;
  text-align: center;
}

.intoroWrap .introBox .img {
  margin-bottom: 0;
}

.pointblockWrap .reasonBox .contWrap {
  display: flex;
  justify-content: space-between;
}
.pointblockWrap .reasonBox .contWrap .img {
  float: none;
  width: 49%;
  padding: 0;
}
.pointblockWrap .reasonBox .contWrap .txt {
  width: 49%;
}
.pointblockWrap .reasonBox .contWrap .txt p {
  text-indent: 1em;
}

.pointblockWrap #kaitai00 .contWrap:nth-of-type(2) {
  flex-flow: row-reverse;
}
.pointblockWrap #kaitai00 .contWrap:nth-of-type(2) .img02 {
  padding: 0;
  width: 30%;
}
.pointblockWrap #kaitai00 .contWrap:nth-of-type(2) .txt {
  width: 68%;
}

.pointblockWrap .reasonBox .cta {
  clear: both;
}

.pointblockWrap .reasonBox .imgIndex .box {
  width: calc(100%/3);
}

.pointblockWrap .reasonBox .imgIndex .box .img, .pointblockWrap .reasonBox .iconIndex .img {
  float: none;
  width: 100%;
  padding: 0;
}

.pointblockWrap .reasonBox .iconIndex .box {
  width: calc(100%/6);
}

.staffTitWrap {
  position: relative;
  max-width: 1000px;
  margin: 20px auto;
}

.voiceListWrap .voiceList {
  flex-flow: wrap;
}

.pointblockWrap {
  padding-bottom: 40px;
}

.messageWrap .basicTit::before {
  width: 14rem;
}

#corporate .mvTit::before,
#menu .mvTit::before,
#works .mvTit::before,
.single-works .mvTit::before,
#staff .mvTit::before,
#voice .mvTit::before,
.single-voice .mvTit::before {
  width: 16rem !important;
  right: -20em !important;
}

#point .mvTit::before {
  width: 16rem;
  right: -16em;
}

#reason05 .rTit::before {
  width: 22%;
  bottom: -3em;
}

.baWrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.baWrap .beforeThumb,
.baWrap .afterThumb {
  width: 42%;
}

.single .flexWrap {
  display: flex;
}
.single .flexWrap .img {
  width: 60%;
}
.single .flexWrap p {
  width: 40%;
  padding-left: 1em;
}
.single-voices.single .flexWrap p {
  width: 40%;
  flex:1;
}
.single-voices.single .first-img img{
   width:auto; 
}
.single-voices.single .first-img {
    text-align: center;
}
.single .flexWrap.rev {
  flex-flow: row-reverse;
}

/*------------------------------------------------------
  ブログカテゴリーリンク追加
-------------------------------------------------------*/
#top .blogWrap .category_search ul,
#blog .blogWrap .category_search ul {
  grid-template-columns: repeat(3,1fr);
  grid-gap: 1.5em;
}