@charset "utf-8";
/* CSS Document */

/*------------------------------
　共通
------------------------------*/
.pc{display: none !important;}
.w1100{width: 96%;margin: 0 auto;}

h1{font-size: 31px;}
h2{font-size: 26px;}
h3{font-size: 20px;}

/*------------------------------
ハンバーガーメニューに関するCSS
------------------------------*/
.hamburger {
 display: block;
 height: 60px;
 margin-left: auto;
 position: relative;
 z-index: 10;
 width: 60px;
 border: none;
 background-color: transparent;
}
.hamburger.-active .hamburger_line {
 background-color: transparent;
}
.hamburger.-active .hamburger_line::before {
 top: 0;
 transform: rotate(45deg);
}
.hamburger.-active .hamburger_line::after {
 top: 0;
 transform: rotate(-45deg);
}
.hamburger.-active .hamburger__text::before {
 content: '閉じる';
}
.hamburger_line {
 display: block;
 height: 2px;
 position: absolute;
 top: 23px;
 left: 50%;
 transform: translateX(-50%);
 width: 24px;
 background-color: #172e59;
 transition: 0.4s;
}
.hamburger_line:before, .hamburger_line:after {
 content: "";
 display: block;
 height: 100%;
 position: absolute;
 width: 100%;
	background-color:#172e59;
 transition: inherit;
}
.hamburger_line:before {
 top: -6px;
}
.hamburger_line:after {
 top: 6px;
}
.hamburger__text {
 position: absolute;
 bottom: 8px;
 left: 50%;
 transform: translateX(-50%);
 width: 100%;
}
.hamburger__text::before {
 content: "メニュー";
 text-align: center;
 color: #172e59;
 font-size: 10px;
 font-weight: 900;
}
.header {
 width: 100%
}
.nav-area {
 position: fixed;
 top: 0;
 right: -100%;
 z-index: 9;
 height: 100vh;
 width: 100%;
 visibility: hidden;
 padding-top: 60px;
 background-color: #fff;
 transition: 0.4s;
}
.nav-area.-active {
 right: 0;
 visibility: visible;
}
.global-navigation {
 padding-top: 0px;
 padding-right: 25px;
 padding-bottom: 120px;
 padding-left: 25px;
}
/*------------------------------
　共通
------------------------------*/
.no-box{padding-top:40px;line-height:2.2;letter-spacing:.1rem;font-size:12px;}


.w1100{width: 100%;margin: 0 auto;}

.bc-ore{background-color:#ff8400;}
.bc-sky{background-color:#a6dfff;}
.bc-gray{background-color:#f0f0f0;}
.-center{text-align:center;line-height:1;}
.p-t50{padding-top:30px;}
.p-b50{padding-bottom:30px;}

.point-c{padding:0 .2rem;color:#e4241c;}
.underline{padding: 0 3px;display: inline-block;text-decoration: underline #e4241c 4px;text-underline-offset: 5px;}
.-size115{font-size:125%;line-height: 1.6;}

#single-page{margin-top:60px;min-height:calc(100vh - 440px);}
#-archive,#-single{margin-top:60px;text-align:center;}
.single-title{height:80px;display:flex;align-items:center;justify-content:center;background-color:#ff9c0d;color:#FFF;}
.single-title h1{text-align:center;font-family: "Kosugi Maru", sans-serif;font-weight: 500;font-size: 24px;}
.apply-bt a{
  background-color:#0043ac;
  color:#FFF;
  display:flex;
  justify-content:center;
  align-items:center;
  font-size:18px;
  font-weight:600;
  border-radius:999px;
  padding:20px 30px;

  box-shadow:#001541 2px 4px 0px;
  position: relative;
  overflow: hidden;

  transition:
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

/* キラン光 */
.apply-bt a::before{
  content:"";
  position:absolute;
  top:-50%;
  left:-50%;
  width:100%;
  height:200%;
  background: linear-gradient(-45deg, transparent 0%, rgb(177 219 255 / 39%) 50%, transparent 100%);
  transform: translateX(-100%);
}

/* hover */
.apply-bt a:hover{
  transform: translate(2px, 4px);
  box-shadow:#001541 0 0 0;
}

.apply-bt a:hover::before{
  animation: shine 0.8s ease-out;
}

@keyframes shine{
  0%{
    transform: translateX(-100%);
  }
  100%{
    transform: translateX(300%);
  }
}

/* セクションタイトル */
.top-section-title {
  position: relative;
  display: inline-block;
  padding: 6px 24px;
  background: #ffe555;
  border: 3px solid #433216;
  line-height:0;
  border-radius: 999px;
  margin-bottom:20px;
}
.top-section-title img{max-height:50px;}
.top-section-title.-max90 img{max-height:60px;}
.top-section-title::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -22px;
  transform: translateX(-50%);
  border-width: 22px 15px 0;
  border-style: solid;
  border-color: #433216 transparent transparent;
}

.top-section-title::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -18px;
  transform: translateX(-50%);
  border-width: 20px 14px 0;
  border-style: solid;
  border-color: #ffe555 transparent transparent;
}

section{position:relative;text-align:center;padding:30px 10px;display:flex;flex-direction:column;align-items: center;overflow:hidden;}

.fukidashi {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
text-align:center;
	line-height:1.2;
}
.fukidashi::before {
  content: "";
  width: 46px;
  height: 2px;
  transform: rotate(60deg);
  box-sizing: border-box;
  background-color: #333333;
}
.fukidashi::after {
  content: "";
  width: 46px;
  height: 2px;
  transform: rotate(-60deg);
  box-sizing: border-box;
  background-color: #333333;
}
/*------------------------------
　ヘッダー
------------------------------*/

header{width:100%;}
header{box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;background-color:#FFF;}
header{position: fixed;z-index: 1000;top:0;width: 100%;}
header img{width: 100%;height: auto;}
.header-inner{width:100%;margin:0 auto;display: flex;justify-content: space-between;align-items:center;}
.logo-mark{height:60px;}
.header-wrap{flex:1; display: flex; justify-content: space-between;}
.header-comoset{display:flex;justify-content:space-between;align-items: flex-end;}
.medal-set{display:flex;justify-content:flex-start;align-items:baseline;position:relative;height:60px;padding-top:10px;}
.medal-set img{height:100%;width:auto;max-height:50px;}
.medal-set h1{font-size: 2.5vw;position:absolute;top:0;font-weight:600;}
.h1-like{font-size: 2.5vw;position:absolute;top:0;font-weight:600;}

.tel-set{display:flex;flex-direction:column;align-items:center;line-height:1;color:#433216;}
.tel-set p{font-weight:500;}
.tel-set small{font-size:88%;}
.tel-set a{font-size:210%;font-weight:700;font-family: "Roboto", sans-serif;line-height:1.3;letter-spacing: -.05rem;}

/*------------------------------
ハンバーガーメニューに関するCSS
------------------------------*/

.menu-waku{width:60px;}
.nav-area{background-color: #ff8400;}
.nav-list{display: flex;flex-direction:column;justify-content: center;align-items: flex-start;gap:20px;}
.nav-list >li { color: #FFF;font-weight: 500;}
.nav-list >li:nth-child(2){}

.nav-link {
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 14px;
	color:#FFF;
}
.nav-link.-accordion {
 position: relative;
 background: none;
 border: none;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 width: 100%;
 font-family: "Noto Sans JP", sans-serif;
 font-weight:500;
 position:relative;
 cursor:pointer;
}
.nav-link.-accordion span{position:relative;margin-left: 6px;padding:9px;border-radius:999px;background-color:#FFF;}
.nav-link.-accordion span::after {
 content: '';
 display: block;
 height: 12px;
 position: absolute;
 top: 50%;
 right: 8px;
 width: 2px;
 background-color: #f57632;
 transform: translateY(-50%);
 transition: transform 0.4s;
}
.nav-link.-accordion span::before {
 content: '';
 display: block;
 height: 2px;
 position: absolute;
 top: 50%;
 right: 3px;
 width: 12px;
 background-color: #f57632;
 transform: translateY(-50%);
}
.nav-link.-active span::after {
 transform: translateY(-50%) rotate(-90deg);
}
/* ===== 外枠：位置決め専用 ===== */
.accordion {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  margin-top: 14px;
  pointer-events: none;
}

/* ===== 中身：アニメーション専用 ===== */
.accordion-inner {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  padding: 0 25px;
  background-color: #fae661;
  font-size: 14px;
  transition:
  max-height 0.4s ease,
  opacity 0.3s ease;
  box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}

.accordion.-active {
  pointer-events: auto;
}

.accordion.-active .accordion-inner {
  max-height: 500px;
  opacity: 1;
  padding: 20px;
}

.acco_list {
  display: flex;
  justify-content: center;
  gap: 20px;
	flex-wrap:wrap;
}

.accordion * {
  backface-visibility: hidden;
}
.acco_list li {
  width: calc(50% - 10px);
  aspect-ratio: 5 / 3;
  padding: 0;
}

.acco_list li a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding:6px;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #433216;
	background-color:#FFF;
}

.more-bt{display:inline-block;line-height:1.5;padding:12px 36px 15px;border-radius:999px;color:#FFF;background-color:#453114;font-weight:500;letter-spacing:.1rem;
  box-shadow:#000000 2px 4px 0px;
  position: relative;
  overflow: hidden;
  transition:
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

/* hover */
.more-bt:hover{
  transform: translate(2px, 4px);
  box-shadow:#000000 0 0 0;
}

.syosai-bt{display:block;line-height:1;padding:8px 16px;border-radius:999px;color:#453114;background-color:#ffe555;font-weight:500;letter-spacing:.1rem;font-size:14px;margin:10px;transition:.3s;}
.works-box:hover .syosai-bt{background-color:#ff8400;color:#FFF;}

/*------------------------------
　TOPコンテンツ
------------------------------*/
/* スライダー用 */
.hero-slider {
	margin-top:60px;
  position: relative;
  width: 100%;
aspect-ratio: 10 / 9;
  overflow: hidden;
}

.hero-slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.2s ease;
}

.hero-slide.is-active {
  opacity: 1;
  z-index: 2;
}

.hero-text {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.hero-text img {
  width: 100%;
  height: auto;
}
.hero-nav {
  position: absolute;
  bottom: 0;
  transform: translateY(-50%);
  z-index: 5;
  background: rgba(0,0,0,.4);
  color: #fff;
  border: none;
  width: 48px;
  height: 48px;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.hero-nav.prev { left: 0px; }
.hero-nav.next { right: 0px; }

.hero-nav:hover {
  background: rgba(0,0,0,.6);
}

/* スマホ少し小さく */
@media (max-width: 768px) {
  .hero-nav {
    width: 30px;
    height: 30px;
    font-size: 22px;
  }
}


/* 解体工事メニュー */
.menu-flex{display:flex;justify-content:center;align-items:flex-start;gap:10px;max-width: 1100px;margin: 0 auto 30px;flex-direction:column;}
.menu-box{width:100%;background-color:#FFF;border:3px solid #453114;padding:6px;text-align:center;display:flex;gap:6px;}
.menu-box .pic{width:100%;aspect-ratio: 6 / 3;overflow:hidden;flex:1;}
.menu-box .pic img{width:100%;height:100%;object-fit:cover; transition: transform .4s ease, filter .4s ease, opacity .4s ease;}
/* hover時 */
.menu-box:hover .pic img{transform: scale(1.1);filter: brightness(1.1); opacity: .8;}
.menu-box .info{flex:2;display: flex;flex-direction: column;justify-content: space-around;}
.menu-box h2{font-size:21px;line-height:1.2;padding:0;}
.menu-box.-acco{border:2px solid;}
.menu-box.-acco h2{font-size:14px;line-height:1.2;padding:0;}
.menu-box p{font-size:12px;line-height:1.2;}

/* お問い合わせ */


/* 施工事例 */
.works-flex{display:flex;justify-content:center;align-items:flex-start;gap:20px;max-width: 1100px;margin: 0 auto 30px;flex-direction:column;}
#-archive .works-flex{}
.works-box{width:100%;background-color:#FFF;border:3px solid #453114;text-align:center;}
.works-box .title{background-color:#453114;color:#FFF;padding:3px 5px 6px;line-height:1.4;}
.works-box .pic{width:100%;aspect-ratio: 5 / 3;overflow:hidden;padding:10px 10px 0;}
.works-box .pic img{width:100%;height:100%;object-fit:cover;}
.works-box .info-flex{display:flex;justify-content:flex-start;padding:7px 10px 0;gap:12px;}
.works-box .info-box{width:calc(33% - 7px);border:2px solid;font-size:14px;font-weight:400 !important;}
.works-box .info-box b{display:block;width:100%;background-color:#453114;color:#FFF;text-align:center;font-size:14px;font-weight:400 !important;}
.works-box .info-box p{text-align:center;}

.works-list{padding:10px;}
.cate-list{ display: flex;justify-content: center; gap: 10px; max-width: 1000px; margin: 30px 10px;}
.cate-list .cate-tab{padding:5px;font-size:14px;font-weight:500;line-height:1;border:2px solid;flex:1;display:flex;justify-content:center;align-items:center;}
.cate-list .cate-tab.is-active{background-color:#453114;color:#FFF;}

/* 選ばれる理由 */
.company-title{width:100%;background-image:url(../../../image/common/company-title-bg.svg);background-size:100% 100%;background-repeat:no-repeat;height:120px;background-position:center;display:flex;justify-content:center;align-items:center;padding-top:25px;}
.message-flex{max-width:1100px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:0px auto 30px;flex-direction:column;}
.message-flex .pic{flex:1;width:100%;max-width:250px;margin:0 auto;line-height:0;padding-top:10px;}
.message-flex .txt{flex:2;text-align:justify;line-height:2;font-size:16px;padding: 0;background-color: unset;}
.message-flex .txt b{font-weight:900;}
.company-more-bt{
  background-color:#00b0f0;
  color:#FFF;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  font-size:18px;
  font-weight:600;
  border-radius:999px;
  padding:15px 40px;
  box-shadow:#001541 2px 4px 0px;
  position: relative;
  overflow: hidden;
  transition:
    transform 0.15s ease,
    box-shadow 0.15s ease;
}

.company-more-bt::before{
  content:"";
  position:absolute;
  top:-50%;
  left:-50%;
  width:100%;
  height:200%;
  background: linear-gradient(-45deg, transparent 0%, rgb(177 219 255 / 39%) 50%, transparent 100%);
  transform: translateX(-100%);
}

/* hover */
.company-more-bt:hover{
  transform: translate(2px, 4px);
  box-shadow:#001541 0 0 0;
}

.company-more-bt:hover::before{
  animation: shine 0.8s ease-out;
}

/* スライド　スタッフ紹介 */
.staff-list{max-width:100%;margin:0 auto;}
.staff-list li{line-height:1;padding:20px;}
.staff-list li .pic{aspect-ratio: 4 / 5;overflow: hidden;}
.staff-list li .pic img{width:100%;height:100%;object-fit:cover;}
.staff-list li span{display:block;padding:5px;font-size:88%;}
.staff-list li p{padding:5px;}

section.staff-page{background-color:#f0f0f0;}
.staff-flex{width:100%;max-width:960px;margin: 0 auto;}
.staff-box{width:100%;padding:20px;display:flex;justify-content:space-between;gap:10px;flex-direction:column;
background-color:#FFF;box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;margin-bottom:20px;}
.staff-box .pic{line-height: 0;text-align:center;width:100%;}
.staff-box .pic img{max-width:260px;width:100%;height:auto;}
.staff-box .name{font-size:21px;font-weight:600;padding:0 0 20px 10px;position:relative;}
.staff-box .name:before{content: "▲";display:inline-block;font-size:16px;transform: rotate(90deg);color:#f68825;position:absolute;top: 10px;left: -15px;}
.staff-box .yaku{display:block;font-size:14px;font-weight:400;}
.staff-box .come{font-size:18px;font-weight:500;padding-bottom:30px;font-family: "Klee One", cursive;}
.staff-box .info-wrap{flex: 1;text-align: left; display: flex; flex-direction: column; justify-content: center;align-items:flex-start;}
.staff-box .info {}
.staff-box .info li{display:flex;justify-content:flex-start;align-items:flex-start;flex-direction:column;line-height:1.2;padding:10px 0;text-align: left;}
.staff-box .info li span{display:block;background-color:#ed8c35;;color:#FFF;padding:5px 10px;line-height:1;font-size:14px;margin-bottom:6px;}

.fukidashi2{
  position: relative;
  display: inline-block;
  width: 100%;
padding:15px;
  background-color:#f0f0f0;border-radius:8px;
  word-break: break-word;
  box-shadow: 0 1px 0 rgba(0,0,0,.06);
}

/* 丸いしっぽ：2つの疑似要素で“くびれ”を作る */

.fukidashi2::before{
  content: "";
  position: absolute;
  top: -20px; 
  left: 30px;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-bottom: 20px solid #f0f0f0;
}

/* 解体工事の流れ */
.flow-flex{display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;max-width:1100px;position:relative;}
.flow-box{width:100%; display: flex; justify-content: space-between;align-items:flex-start;margin-bottom:40px;position:relative;gap:10px;}
.flow-box .pic{flex:1;line-height:0;}
.flow-box .pic img{width:100%;height:auto;}
.flow-box .info{flex:2;}
.flow-box .flow-title{font-size:18px;font-weight:700;line-height:1.4;padding-bottom:8px;}
.flow-box p{font-size:12px;text-align:justify;line-height:1.6;}

.flow-box:after{content:"";background-image:url(../../../image/flow/flow-sankaku.svg);width:21px;height:31px;background-repeat:no-repeat;background-position:center;display:block;        position: absolute;
left: 50%; right: 50%; bottom: -40px;transform: rotate(90deg);}
.flow-box:nth-child(4)::after,.flow-box:nth-child(8)::after{display:none;}

/* 解体工事対応エリア */
.area-waku{max-width:1100px;margin:30px auto;}
.area-title{text-align:center;font-size:21px;font-weight:600;letter-spacing:.1rem;white-space:nowrap;}
.area-title {display: flex;justify-content: center;align-items: center;}
.area-title::before, .area-title::after {content: '';width: 100%;height: 1px;background-color: #453114;}
.area-title::before {margin-right: 10px;}
.area-title::after { margin-left: 10px;}
.area-waku p{text-align:justify;margin-top:15px;padding:15px 20px; background-color: #dcdddd;font-size:14px;}

/*------------------------------
　フッター
------------------------------*/
footer{padding:30px 0 80px;background-color:#45484a;color:#FFF;text-align:center;}
footer h1{font-size:18px;padding-bottom:20px;letter-spacing:1px;}
.footer-head{display:flex;justify-content:center;align-items:center;padding-bottom:20px;flex-direction:column;}
.footer-logo{border-right:1px solid #ccc;padding:0 30px;}
.footer-txt{padding:0 30px;}

.footer-txt .shiten li{padding:8px 0;}
.footer-body {display:none;}
.copy-w{text-align:center;font-size:10px;letter-spacing:.1rem;padding-bottom:10px;}

.fixed-bt{display: flex;align-items:flex-start;position: fixed;bottom:-8px;left:0;width:100%;z-index:99;background-color:#FFF;}
.fixed-bt .f18{flex:18;}
.fixed-bt .f22{flex:22;}
.fixed-bt img{width: 100%;height: auto;}
/*------------------------------
　下層ページ
------------------------------*/
.single-w1100{max-width:1100px;margin:0px auto;}
.page-catch{font-size:16px;font-weight:500;color:#222;line-height:1.7;padding:20px 10px 30px;text-align:left;}
.page-catch span{color:#e5241d;font-weight:600;}

.gallery{max-width:1100px;margin:0 auto;display:flex;gap:30px;align-items:flex-start;}
.gallery-main{flex:1;}
.gallery-main img{width:100%;height:auto;display:block;}
.gallery-thumbs{width:350px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;list-style:none;padding:0;margin:0;line-height:0;}
.gallery-thumbs li{aspect-ratio:1.4 / 1;}
.gallery-thumbs img{width:100%;height:100%;object-fit:cover;cursor:pointer;opacity:.7;transition:.3s;border:2px solid transparent;}
.gallery-thumbs img:hover{opacity:1;}
.gallery-thumbs img.active{opacity:1;border-color:#005163;}
@media(max-width:768px){
.gallery{flex-direction:column;}
.gallery-thumbs{width:100%;grid-template-columns:repeat(4,1fr);}
}

/* 会社概要 */
.catch{margin-bottom:60px;}
.motto-box-flex{}
.motto-box{max-width:1000px;margin:0px auto 30px;}
.motto-box .title{position:relative;font-size:21px;font-weight:700;background-color:#2242a9;padding:5px;color:#FFF;}
.motto-flex{display:flex;justify-content:space-between;align-items: stretch;flex-direction:column;}
.motto-flex .pic{display:flex;justify-self;align-items:flex-start;width:100%;aspect-ratio: 1.4 / 1;overflow:hidden;}
.motto-flex .pic img{width:100%;height:100%;object-fit:cover;}
.motto-flex .txt{flex:1;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;}
.motto-flex .txt p{text-align:justify;line-height:2;}
.motto-flex .txt .more-bt{display:inline-block;margin-bottom:20px;}
.motto-box .title .point-c{color:#ffee00;}

.gaiyo{width:100%;margin:0px auto 30px;font-size:14px;}
.gaiyo th,.gaiyo td{padding:10px 8px;text-align:left;}
.gaiyo td{}
.gaiyo {border-collapse: collapse;}
.gaiyo th, .gaiyo td {border-bottom: 2px solid #c1c7c6;padding: 10px 8px;}
.gaiyo th {border-bottom: 2px solid #3041a6;;font-weight: bold;text-align: center;width: 30%;}


.arrow-bt{display:flex;justify-content:flex-end;align-items:center; color: #f68825;font-weight:500;gap:12px;transition:.3s;}
.arrow-bt:after{content:"";display:inline-block;background-image:url(../../../image/common/arrow-i.svg);width:22px;height:22px;background-size:cover;background-repeat:no-repeat;background-position:center;}
.arrow-bt:hover{gap:4px;}

/* 施工事例 */
.works-single{width:100%;padding:15px;}
.works-single h2{font-size:26px;}
.cate-name{display:flex;justify-content:flex-end;}
.cate-name a{display:flex;justify-content:flex-start;align-items:center;}
.cate-name a:before{content:"▲";font-size:12px;padding-top:10px;transform:rotate(90deg);line-height:1;}
.post-title{ border-bottom: 2px solid #433216;line-height: 1.6;padding-bottom: 10px;}

.works-single .pic-flex{margin:30px auto;display:flex;gap:10px;}
.works-single .pic-flex .pic{aspect-ratio: 4 / 3; overflow: hidden;position:relative;}
.works-single .pic-flex .pic img{width:100%;height:100%;object-fit:cover;}
.works-single .pic-flex .pic:nth-of-type(n+2){display:flex;align-items:center;}
.works-single .pic-flex .pic:nth-of-type(n+2)::before{content:"▲";font-size:20px;padding-top:10px;transform:rotate(90deg);line-height:1;}
.works-single .pic-flex .pic:after{content:"施工前";background-color:rgb(0 0 0 / 65%);color:#FFF;display:flex;justify-content:center;align-items:center;padding:5px 10px;position:absolute;bottom:0;right:0;font-weight:600;font-size:14px;line-height:1;}
.works-single .pic-flex .pic:nth-of-type(n+2)::after{content:"施工後";}

.works-single h3{text-align:left;padding:10px;background-color:#453114;color:#FFF;letter-spacing:.1rem;line-height:1.2;font-size:18px;font-weight:500;margin-bottom:20px;}
.works-single .wrap{padding-bottom:30px;}
.works-single table{width:100%;border:1px solid #a79982;}
.works-single table tr{border-bottom:1px solid #a79982;}
.works-single table th{background-color:#f1eadf;}
.works-single table td{border-left:1px solid #a79982;}
.works-single th,.works-single td{padding:15px;line-height:1.4;}

.works-come{text-align:left;}

/* 解体工事メニュー */
.banner{position:relative;max-width:1000px;margin:15px 10px;}
.banner img{width:100%;display:block;}

.txt{padding:10px;background:#f1eadf;line-height:1.8;font-weight: 500;letter-spacing: .05rem;}
.petit-flex{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:6px;margin-top:15px;}
.petit-set{width:calc(25% - 4.5px);line-height: 0;}
.petit-set p{text-align:center;padding:4px;line-height:1;background-color:#fff;font-size:10px;}

/* 遺品・生前整理 */
.seiri-topimg{display:block;width:100%; aspect-ratio: 11 / 6;background-image:url(../../../image/seiri/seiri-topimg_sp.webp);background-repeat:no-repeat;background-size: auto 100%;background-position: center;}
.seiri-title-flex{display:flex;justify-content:center;align-items:center;max-width:900px;margin:30px auto;gap:30px;}
.seiri-title-flex h3{font-size:21px;}
.seiri-box-waku{width:calc(100% - 30px);display:flex;flex-direction:column;justify-content:flex-start;margin:0 auto 30px;background-color: #f0f0f0;border-radius:20px;color:#222;}
.seiri-head-box{line-height:0;position:relative;}
.seiri-h-title{position:absolute;display: flex; align-items: center; justify-content: center;height: 50px;font-size:16px;font-weight:600;background-color:#ffeb3b;padding-left:10px;}
.seiri-h-title:after{content:"";background-image:url(../../../image/seiri/seiri-h-title-end.svg);background-repeat:no-repeat;width:50px;height:50px; position: absolute;right: -50px;}
.seiri-head-box img{width: 100%;height: auto;border-radius:0 0 0 20px;}
.seiri-body-box{display: flex;justify-content:space-between;flex-direction: column;padding:10px; align-items: flex-start;}
.seiri-body-box p{font-size:16px;font-weight:600;}
.seiri-b-wrap{display:flex;justify-content:flex-start;flex-direction:column;align-items: stretch;width:100%;margin-top:10px;}
.osusume-waku{text-align:center;font-size:14px;font-weight:600;width:100%;background-color:#00b0f0;color:#FFF;display: flex;align-items: center;justify-content: center;border-radius:8px;line-height:1.4;padding:10px;}
.seiri-b-list{flex:1;}
.seiri-b-list li{line-height: 1.5;padding: 10px 0px 5px;border-bottom: 1px dotted #ccc;letter-spacing:.05rem;display: flex;font-size:14px;}
.seiri-b-list li:before{content:"";background-image:url(../../../image/seiri/check-box.svg);background-repeat:no-repeat;width:30px;height:30px;display: block;}

.seiri-area-waku{padding:30px 0 0;text-align:center;}
.seiri-service-flex {display:flex;justify-content:center;flex-direction:column;gap:10px;align-items: stretch;padding:10px;}
.seiri-s-box {flex:1;border:2px solid #00b0f0;border-radius:8px;display:flex;justify-content:space-between;flex-direction:column;color:#222;box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;}
.seiri-s-title {text-align:center;padding:10px 0;background-color:#00b0f0;color:#FFF;font-size:17px;font-weight:600;}
.seiri-s-box .info{display:flex;align-items:center;padding:10px 10px 10px 0;}
.seiri-s-box p{font-size:14px;line-height:1.5;flex:2;}
.seiri-s-box img{flex:1;}

.seiri-choice-flex{display:flex;justify-content:center;align-items:stretch;gap:20px;margin: 30px auto;flex-direction:column;}
.seiri-choice-flex a{padding:15px;height:70px;border:2px solid;display: inline-flex;justify-content: center; align-items: center;
font-size:18px;font-weight:600;transition:.3s;box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.2) 0px -3px 0px inset;}
.seiri-choice-flex a span{padding-left:10px;font-size:14px;}
.seiri-choice-flex a:first-child:hover{background-color:#a7deff;}
.seiri-choice-flex a:nth-child(2):hover{background-color:#fae661;}

.seiri-price-waku{width:100%;padding:10px;background-color:#d5efff;margin:0 auto 30px;position:relative;}
.seiri-price-waku:after{content:"＋";display:inline-flex;justify-content:center;align-items:center;font-size: 50px;font-weight: 900;line-height: 1;color: #FFF;background-color: #433216;
border-radius: 999px;padding: 10px 11px 13px;position:absolute;bottom:-40px;left: 50%;
transform: translateX(-50%);-webkit-transform: translateX(-50%); -ms-transform: translateX(-50%);}
.seiri-price-flex{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;padding-bottom:30px;}
.seiri-price-box{width:100%;display:flex;justify-content:space-between;align-items:center;border:2px solid;background-color:#FFF;}
.price-madori{display:flex;justify-content:center;flex-direction:column;align-items:center;line-height:1.2;font-size:12px;padding:10px;width: 70px; background-color:#f6e76b;}
.price-madori b{font-size:150%;}
.price-tacha{font-size:14px;line-height:1.2;font-weight:500;display:flex;justify-content:flex-start;align-items:flex-start;flex-direction:column;font-family: "Roboto", sans-serif;padding:0px 10px;gap:5px;white-space:nowrap;}
.price-tacha span{font-size:12px;color:#FFF;background-color:#453114;padding:3px 10px;border-radius:999px;line-height:1;}
.price-price{flex:1;font-size:26px;font-weight:600;font-family: "Roboto", sans-serif;padding:0px 10px 0 0;line-height:0.8;text-align:right;}
.price-price span{font-size:16px;line-height:1;}

.sanko-title{text-align:center;font-size:24px;margin-bottom:30px;}
.seiri-option-waku{width:100%;padding:20px 10px 0px;background-color:#d5efff;margin:0 auto 50px;}
.seiri-option-flex{display:flex;justify-content:flex-start;align-items:stretch;flex-wrap:wrap;gap:15px;flex-direction:column;}
.seiri-o-box{width:100%;padding:15px;text-align:center;}
.o-title{font-weight:600;text-align:center;font-size:18px;}
.seiri-o-box p{font-size:14px;line-height:1.4;text-align:justify;padding-top:10px;}

.seiri-pack-waku{width:100%;padding:30px 10px;background-color:#fff4c7;margin:0 auto;margin-bottom:20px;position:relative;}
.seiri-pack-catch{text-align:center;font-weight:500;font-size:22px;}
.seiri-pack-catch span{display: inline-block;line-height: 1;padding: 6px;font-size: 14px;background-color: #43aeed;
margin-right: 1%;letter-spacing: .02rem; border-radius: 10px;color: #FFF;}
.seiri-pack-flex{display:flex;justify-content:center;align-items:stretch;gap:20px;margin: 30px auto;flex-wrap:wrap;}
.seiri-p-box{width:calc(50% - 10px);text-align:center;border:2px solid;background-color:#FFF;border-radius:8px;overflow:hidden;display:flex;justify-content:space-between;flex-direction:column;}
.seiri-p-box p{font-size:14px;line-height:1.5;padding:10px 5px;flex:1;}
.pack-name{font-weight: 600;text-align: center;font-size: 18px;background-color: #f6e76b;padding:12px 0;line-height:1.2;}
.pack-price{font-size: 30px;font-weight: 600; font-family: "Roboto", sans-serif;line-height: 1.2;padding:10px;}
.pack-price span{font-size: 16px;padding-left:6px;position:relative;}
.pack-price span:before{content:"(税込)"; display: inline-block;position: absolute;font-size: 11px;white-space: nowrap; font-weight: 500;}

.tuyomi-waku{padding:15px;}
.tuyomi-box{display:flex;position:relative;justify-content:space-between;align-items:flex-start;gap:15px;margin:50px auto;flex-direction:column;}
.tuyomi-box img{width:100%;height:auto;border-radius:10px;line-height:0;}
.tuyomi-wrap{}
.tuyomi-box-title{font-weight: 600; font-size: 21px;line-height: 1.2;letter-spacing:.05rem;display:flex;align-items:center; gap: 50px;}
.tuyomi-box-title .seiri-h-title{display: inline-flex; width: unset;position: relative;font-size: 16px;padding-left: 15px;}
.tuyomi-box-title .seiri-h-title span{padding-left:4px;font-size: 34px;font-weight: 800;font-family: "Roboto", sans-serif;line-height:1;}
.tuyomi-wrap p{line-height: 1.6; font-size: 16px;text-align: justify;padding-top:25px;}
.tuyomi-wrap p span{border-bottom: 2px dotted #5bacea;}

.seiri-faq-box{max-width:900px;width:100%;margin:15px auto;padding:10px 10px 15px;background-color:#FFF;border-radius:8px;box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;}
.faq-qq{position:relative;font-size: 18px;font-weight: 600;padding:5px 0 20px 45px;line-height: 1.5;text-align: left;padding-left: 45px;}
.faq-qq:before{content:"Q";position:absolute;top:0;left:0;background-color:#00b0f0;color:#FFF;font-size:25px;font-weight: 800;font-family: "Roboto", sans-serif;line-height:1;display:flex;justify-content:center;align-items:center;width:40px;height:40px;border-radius:999px;}
.seiri-faq-box p{text-align:justify;font-size:14px;line-height:1.5;}

/* 投稿（お知らせ・ブログ・コラム） */
.archive-flex{display:flex;justify-content:flex-start;max-width:1100px;margin:0px auto;gap:15px;padding:10px;flex-wrap:wrap;}
.archive-list-box{width:100%;border:2px solid;display:flex;flex-direction:column;justify-content: space-between;}
.archive-list-box .pic{width:100%;line-height:0;padding: 10px; aspect-ratio: 1.8 / 1;overflow:hidden;}
.archive-list-box .pic img{width:100%;height:100%;object-fit:cover}
.archive-list-box .info{padding:5px 10px 5px;flex:1;}
.archive-list-box .txt{border-top:1px dotted;padding:10px 0 0;background-color: inherit;font-weight: 400;line-height: 1.6;text-align: justify;font-size:14px; display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end;}
.archive-list-box .more-txt{text-align:right;}

.archive-list-box .wrap{display:flex;justify-content:space-between;font-size:14px;background-color:#f1eadf;padding:8px 10px;}
#-archive .cate{margin-left:10px;line-height:1;font-size:14px;padding:4px 10px;width:5rem;text-align:center;}
#-archive .cate.-column{background-color:#222;color:#fff;}
#-archive .cate.-news{border:1px solid;background-color:#FFF;}
#-archive .cate.-blog{background-color:#f68825;color:#fff;}

.more-txt{font-weight: 600; font-size: 14px; line-height: 1; padding: 8px 20px 8px 14px; display: inline-flex; justify-content: center;gap:6px;transition:.3s;letter-spacing:.1rem;border-radius: 999px;}
.more-txt{background:#FFF url(../../../image/common/more-bt-arrow.svg) no-repeat center right / 30px;}
a:hover .more-txt{background:#ff8400 url(../../../image/common/more-bt-arrow_w.svg) no-repeat center right / 30px; color:#FFF;}

.single-post-waku{max-width:1100px;margin:30px auto;}
.single-post-waku{background-color:#FFF;padding:15px;line-height: 1.8;}
.single-post-waku .date{font-weight:300;text-align:right;padding:0 15px;line-height:1;font-size:14px;}
.post-single-title{font-size: 28px;font-weight: 600;line-height:1.6;border-bottom:2px solid;padding:15px;text-align: center;}
.single-post-txt{padding-top:30px;line-height:1.5;}
.single-post-txt img{max-width:100%;width:100%;height:auto;}
.single-post-txt p{padding:10px;}
.single-post-txt h1 { font-size: 28px !important; padding: 8px 16px !important; position: relative;  border-bottom: 3px solid #ccc; line-height:1.5;}
.single-post-txt h1::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 10%; height: 2px; background-color: #f68825; }
.single-post-txt h2 { font-size: 26px !important; padding: 12px 16px 16px !important; background-color: #453114; color: #FFF; line-height:1.4;letter-spacing:normal !important;margin-top:30px;}
.single-post-txt h3 { font-size: 22px !important; padding: 8px 16px !important; background-color:#f0f0f0;font-weight:600;margin-top:30px;}
.single-post-txt h4 { font-size: 18px; padding: 8px 16px; border-bottom: 2px solid #453114; border-top: 2px solid #453114; font-weight:600;margin-top:30px;}
.single-post-txt h5{ font-size: 18px; padding: 8px 16px 5px; border-bottom: 2px solid #453114; display:inline-block; font-weight:600;margin-top:30px;}
.single-post-txt ul{padding: 16px 16px 16px 24px; list-style: inside;}
.single-post-txt ul li{padding:5px 0;}

.single-post-txt ol{padding: 16px 16px 16px 24px; list-style: decimal inside;}
.single-post-txt ol li{padding:5px 0;}

/* 投稿内のテーブル（画像の雰囲気：余白広め＋線は控えめ） */
.single-post-txt table{width:100%;border-collapse:separate;border-spacing:0 6px;font-size:14px;line-height:1.7;color:#222;}
.single-post-txt thead th{padding:8px 14px;text-align:left;font-weight:700;background-color: #ffefcd;}
.single-post-txt tbody td{padding:4px 14px;vertical-align:top;border-bottom:1px solid #e6e6e6;}
.single-post-txt tbody tr{background:transparent;}
.single-post-txt tbody tr+tr td{border-top:0;}
.single-post-txt table a{text-decoration:underline;text-underline-offset:2px;}

/* 画面が狭い時に文字が詰まりすぎないように */
@media (max-width:640px){
.single-post-txt table{font-size:13px}
.single-post-txt thead th,.entry-content tbody td{padding-left:10px;padding-right:10px}
}


.apply-title{text-align:center;}
.apply-thx-come{text-align: justify;font-size: 14px;line-height:2;padding:12px;margin-top: 30px; background-color: #f0f0f0;}

/* プライバシーポリシー */
.privacy-waku{padding:15px;font-size:14px;line-height:1.7;}
.privacy-waku p{padding:10px;text-align:justify;}
.privacy-waku h3{font-size:18px;margin-top:20px;padding:6px 10px;font-weight:500;background-color:#f0f0f0;border-left: 6px solid #f69f2c;}
.privacy-waku ul{padding:0 15px 15px;}
.privacy-waku li{padding:3px;}
.privacy-waku li:before{content:"●";font-size:12px;color:#f69f2c;padding-right:4px;}
.toiawase{padding:15px;}
.toiawase h4{padding: 0 20px;border-bottom: 1px solid #f69f2c;}
.toiawase p{padding:10px 20px 0!important;}