@charset "utf-8";

main { margin-top:0; }
.contents_wrap_top { width:100%; display:block; position:relative; }
@media screen and (min-width:768px) {
  header { background:none; color:#fff; }
  #navi {  /*background:#fff; */color:#000; }
  .contents_wrap_top { background: linear-gradient(to bottom, #4AC6EA, #A0E8E2); overflow:hidden; }
/* 位置決めと見た目 */
.contents_wrap_top .housha{
  width:200%;
  position:absolute;
  top:50%;
  left:50%;
  /* 最初から translate＋rotate を両方書く */
  transform:translate(-50%,-50%) rotate(0deg);

  /* ブレンド・透明度 */
  mix-blend-mode:multiply;
  opacity:.2;

  /* アニメーション */
  animation:rotateLoop 100s linear infinite;

  /* Safari／初回チラつき対策 */
  will-change:transform;
  backface-visibility:hidden;
}

/* すべてのキーフレームで translate を維持する */
@keyframes rotateLoop{
  0%   {transform:translate(-50%,-50%) rotate(0deg);}
  100% {transform:translate(-50%,-50%) rotate(360deg);}
}

  #menu li.inline_pc a:hover { color:#fff;} 
}

@media screen and (min-width:1301px) {
  header { border-bottom:1px solid #fff; }
  #navi { background:none; color:#fff; }
}

@keyframes rotateLoop {
  0% {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  100% {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}

.hidden {
  display: none;
}

.bgextend {
  opacity: 0;
  animation-fill-mode: forwards;
}

/* アニメーション付与されたときに動かす */
.bgLRextend.bgextend {
  animation-name: bgextendAnimeBase;
  animation-duration: 1s;
  position: relative;
  overflow: hidden;
}

/* 背景が左から右へ */
.bgLRextend::before {
  animation-name: bgLRextendAnime;
  animation-duration: 1.5s;
  animation-fill-mode: forwards;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #FBF210;
  z-index: -1;
}

/* アニメーションキー */
@keyframes bgextendAnimeBase {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes bgLRextendAnime {
  0% { transform-origin: left; transform: scaleX(0); }
  50% { transform-origin: left; transform: scaleX(1); }
  50.001% { transform-origin: right; }
  100% { transform-origin: right; transform: scaleX(1); }
}

 #kemuriImg  { display:none; }
@media screen and (min-width: 768px) {
  #kemuriImg {  width:40%; position:absolute; top:-10vw; right:0; display:block; }
  .bgLRextend::before { margin-top:5px; }
  .bgLRextend.arthome::before { width:100%; }
  .bgLRextend.kaitorimasu::before { width:90%; }
}



.contents_wrap_top .top_wrap { width:100%; height:150vw; display:block; position:relative; overflow-x: hidden; overflow-x:visible; margin-bottom:40px; }
@media screen and (min-width: 768px) {
.contents_wrap_top .top_wrap { height:50vw; margin-bottom:initial; position: relative; overflow: hidden;}
}

.h1_wrap { width:90%; margin-top:20px; margin-left:5%; font-weight: 900;font-style: normal;}
.contents_wrap_top .top_wrap h1 img { height:50px; }

@media screen and (min-width:700px) {
.h1_wrap { width:50%;}
}
@media screen and (min-width: 768px) {
.h1_wrap { width:auto; margin-top:initial; margin-left:initial; }
}

.contents_wrap_top .top_wrap .tegaki1 { width:45%; position:absolute; left:5%; bottom:20vw; }
.contents_wrap_top .top_wrap .tegaki2 { width:45%; position:absolute; left:5%; bottom:0vw; }
.contents_wrap_top .top_wrap .yajirushi { position:absolute; left:10%; bottom:23vw; }
.contents_wrap_top .top_wrap .man_sp { width:65%; position:absolute; bottom:61vw; right:-5vw; }
@media screen and (min-width: 768px) {
.contents_wrap_top .top_wrap .tegaki1 { width:45%; position:absolute; left:5%; bottom:45vw; }
.contents_wrap_top .top_wrap .tegaki2 { width:45%; position:absolute; left:5%; bottom:25vw; }
}

/*腕と時計*/
.contents_wrap_top .top_wrap .hand.inline_sp { width:150%; position:absolute; left:-20%; top:65vw; }
.contents_wrap_top .top_wrap .hand_wrap { width:100%; height:80vw; position:absolute; top:20vw; }

/*走る人*/
  #lottie-animation { display:block; }
@media screen and (min-width: 768px) {
  #lottie-animation { display:block; }
}

.contents_wrap_top .top_wrap .hand_wrap .man2  { display:none; }
@media screen and (min-width: 768px) {
  .contents_wrap_top .top_wrap .hand_wrap { width:97%; height:auto; position:absolute; top:18vw; right:-100%; z-index:2;
    opacity: 0;
  animation: slideToRightEdge 0.7s cubic-bezier(0.25, 1, 0.5, 1) forwards;}
  /* アニメーション定義 */
@keyframes slideToRightEdge {
  0% {
    right: -97%;
    opacity: 0;
  }

  100% {
    right: -8%; 
    opacity: 1;
  }
}

  .contents_wrap_top .top_wrap .hand_wrap .hand.inline_pc { width:98%; }
  .contents_wrap_top .top_wrap .hand_wrap .hand2.inline_pc { width:15vw; position:absolute; top:6vw; left:1.4vw; z-index:3; }
  .contents_wrap_top .top_wrap .yajirushi { width:70%; position:absolute; left:initial; right:-5vw; bottom:8vw; }
  
  .contents_wrap_top .top_wrap .hand_wrap .tegaki.inline_pc { width:30%; position:absolute; bottom:16vw; right:31%; transform: rotate(2deg);}
  .contents_wrap_top .top_wrap .hand_wrap .watch_center { width:3vw; position:absolute; top:16vw; z-index:3; left:15vw; }
  .watch_needle {width: 1.8vw;position: absolute;top: 11vw;z-index: 2;left: 15.4vw;transform-origin: 50% 100%;animation: spin 0.7s linear infinite; /* 1秒でぐるぐる回転 */}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

}
@media screen and (min-width:1300px){
 .contents_wrap_top .top_wrap .hand_wrap { top:10vw; }

}
@media screen and (min-width:1400px){
 .contents_wrap_top .top_wrap .hand_wrap { top:10vw; }

}


/*トップビジュアル_スマホ_買取マン*/
.contents_wrap_top .top_wrap .hand_wrap .man1  { display:none; }

.contents_wrap_top .top_wrap .runner_wrapper {
  position: absolute;
  right: -10%;
  bottom: -16vw;
  width: 50vw;
  height: 40vw;
  transform: rotate(-10deg);
  animation: moveLeftUp 0.6s linear forwards;
  z-index: 10;
}


.runner_last {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* 各フレーム */
.runner {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
}

.runner1 {
  background-image: url('../img/man_sp1.png');
  animation: showFrame1 0.3s steps(1) 2 forwards;
}

.runner2 {
  background-image: url('../img/man_sp2.png');
  animation: showFrame2 0.3s steps(1) 2 forwards;
}

.runner3 {
  background-image: url('../img/man_sp3.png');
  animation: showFrame3 0.3s steps(1) 2 forwards;
}


@keyframes showFrame1 {
  0%   { opacity: 1; }
  33.333% { opacity: 1; }
  33.334% { opacity: 0; }
  100% { opacity: 0; }
}

@keyframes showFrame2 {
  0%   { opacity: 0; }
  33.333% { opacity: 0; }
  33.334% { opacity: 1; }
  66.666% { opacity: 1; }
  66.667% { opacity: 0; }
  100% { opacity: 0; }
}

@keyframes showFrame3 {
  0%   { opacity: 0; }
  66.666% { opacity: 0; }
  66.667% { opacity: 1; }
  100% { opacity: 1; }
}


@keyframes moveLeftUp {
  0% {
    right: -5%;
    bottom: -16vw;
  }
  100% {
    right:15vw;
    bottom:-10vw;
  }
}


/*PCの時の買取マン*/
@media screen and (max-width: 768px) {
  .man_run_anim {
    display: none;
  }
}


@media screen and (min-width: 768px) {
  .runner_wrapper { display:none; }
    .contents_wrap_top .top_wrap .hand_wrap .man_run_anim {width:23vw; position: absolute; bottom:16vw; right: 0vw; top:initial; 
    transform: rotate(10deg); display:block; z-index:10; }
.man_run_anim {
  position: absolute;
  bottom: 16vw;
  right: -50px;
  width: 23vw;
  transform: rotate(10deg);
  animation: runLongJump 1s ease-in-out 1 forwards;
  z-index: 10;
}

@keyframes runLongJump {
  0% {
    right: -50px;
    bottom: 16vw;
  }
  100% {
    right:25vw;
    bottom: 18vw; /* 走って加速する坂 */
  }
 
}

  
}


  .contents_wrap_top .top_wrap .hand_wrap .kaitoriman_sp2 { width:50vw; position:absolute; right:-25%; bottom:-25vw;  animation: slideToRightOut 2.5s ease-out forwards;}
@keyframes slideToRightOut {
  0% {
    right: 0%;
    bottom: -25vw;
    transform: translateX(0);
    opacity: 1;
    transform: rotate(10deg);
  }
  100% {
    transform: translateX(25vw); /* 画面外へ大きくスライド */
    opacity:1;
    
  }
}


@media screen and (min-width: 768px) {
    .contents_wrap_top .top_wrap .hand_wrap .kaitoriman_sp1 { display:none; }
    .contents_wrap_top .top_wrap .hand_wrap .kaitoriman_sp2 { display:none; }
    .contents_wrap_top .top_wrap .hand_wrap .runner_wrapper_pc {width:23vw; position: absolute; bottom:16vw; right: 0vw; top:initial; 
    animation: runDiagonallyPC 1.5s linear 1 forwards; transform: rotate(10deg); display:block; z-index:10; }
    @keyframes runDiagonallyPC {
      0% {
        right: -200px;
        bottom: 16vw;
      }
      
      92% {
        right: 30%;
        bottom: 22vw; /* 踏ん張り */
      }
     
      100% {
        right: 38%;
        bottom:26vw; /* ジャンプピーク */
      }
      
    }

}






/*紙吹雪*/
canvas {
  z-index: 0 !important;
  pointer-events: none;
}
#confetti-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 20; /* 必要に応じて調整 */
}



/*トップビジュアル_走っている人たち*/
  .contents_wrap_top .top_wrap .hand_wrap .man2 { display:none; }
@media screen and (min-width: 768px) {
 /* 元のスタイルに transform-origin などは不要 */
.contents_wrap_top .top_wrap .hand_wrap .man2{
  width: 30%;
  position: absolute;
  bottom: 16vw;
  right: 0;               /* 画面右端からスタート */
  display: block;
  animation: runRight 10s ease-in forwards;
}

/* 右へ後退するアニメーション */
@keyframes runRight{
  0%{
    transform: translateX(0) scale(1);     /* 開始位置 */
    opacity: 1;
  }
  80%{
    opacity: 1;                            /* 途中まではそのまま */
  }
  100%{
    transform: translate(110vw,15.7vw) scale(0.8); /* 画面幅＋αだけ右へ。少し縮小で遠近感 */
    opacity: 0;                              /* 完全に見えなくなる */
  }
}


}


  
  .contents_wrap_top .top_wrap .contents { width:95%; margin:0 auto 0 auto; display:flex; justify-content: space-between;}
  @media screen and (min-width: 768px) {
    .contents_wrap_top .top_wrap .contents { width:90%; margin-top:50px; position:relative; z-index:10; }
    .contents_wrap_top .top_wrap .man_sp { display:none; }
  }
   @media screen and (min-width:1400px) {
  .contents_wrap_top .top_wrap .contents { width:1220px; }
  }

  .contents_wrap_top .contents .h1_wrap .h1_box { width:auto; height:47px; position:relative; z-index:0;  display:inline-block }
  .contents_wrap_top .contents .h1_wrap .h1_box h1::after { content: "は、"; font-size:24px; line-height:47px; color:#0D3663; font-weight:900; display:inline; }
  .contents_wrap_top .contents .h1_wrap .h1_box h1 { font-size:30px; line-height:47px; color:#0D3663; font-weight:900; display:inline; padding-left:10px; }
  .contents_wrap_top .contents .h1_wrap span  { font-size:30px; line-height:47px; color:#0D3663; font-weight:900; display:inline-block; }
  .contents_wrap_top .contents .h1_wrap span.inline_sp { font-size:30px; line-height:47px; position:relative; z-index:1; display:inline-block;  color:#0D3663; }
  .contents_wrap_top .contents .h1_wrap span.inline_pc { display:none; }
  .contents_wrap_top .contents .h1_wrap strong { font-size:30px;white-space:nowrap; color:#0D3663; font-weight:900;  display:inline-block;  }
   .contents_wrap_top .contents .h1_wrap .tegaki_wrap.inline_pc { display:none; }
  @media screen and (min-width: 768px) {
    .contents_wrap_top .contents .h1_wrap .h1_box { margin-bottom:10px;}
    .contents_wrap_top .contents .h1_wrap .h1_box em { font-size:3vw; padding-left:initial; padding-left:10px; }
    .contents_wrap_top .contents .h1_wrap .h1_box span { font-size:3vw; }
    .contents_wrap_top .contents .h1_wrap span { font-size:3vw; line-height:47px; color:#0D3663; font-weight:900; }
    .contents_wrap_top .contents .h1_wrap span.inline_sp { display:none; }
    .contents_wrap_top .contents .h1_wrap strong { font-size:3vw; }
    .contents_wrap_top .contents .h1_wrap .tegaki_wrap.inline_pc { height:80px; position:relative; z-index:1;  margin-bottom:10px; display:flex; align-items: center; overflow:visible; }
    .contents_wrap_top .contents .h1_wrap .tegaki_wrap .tegaki_hayaku { height:8vw; margin:0; }
  }
    @media screen and (min-width: 1200px) {
    .contents_wrap_top .contents .h1_wrap .h1_box { margin-bottom:0;}
    .contents_wrap_top .contents .h1_wrap .h1_box em { font-size:42px; }
    .contents_wrap_top .contents .h1_wrap .h1_box span { font-size:42px; }
    .contents_wrap_top .contents .h1_wrap span { font-size:42px; line-height:47px;  }
    .contents_wrap_top .contents .h1_wrap strong { font-size:42px; }
        .contents_wrap_top .contents .h1_wrap .tegaki_wrap .tegaki_hayaku { height:100px; }

    }


.contents_wrap_top .contents span .tegaki_hayaku { height:70px; z-index:1; margin:0 10px 0 10px; }



.emblem_wrap { display:none; }
.emblem_wrap_pad { display:none; }
@media screen and (min-width:840px) {
  .contents_wrap_top .contents .emblem_wrap_pad { width:30%; position:absolute; display:flex; position:absolute; right:0; top:0; justify-content: space-between; }
  .contents_wrap_top .contents .emblem_wrap_pad li { width:48%; }
  .contents_wrap_top .contents .emblem_wrap_pad li img { width:100%; opacity:0; }
  .emblem_wrap_pad li img {
    opacity: 0;
    transform: translateY(10px); /* 少し下から */
    animation: fadeUp 0.6s ease-out forwards;
  }

  .emblem_wrap_pad li:nth-child(1) img {
    animation-delay: 2s;
  }

  .emblem_wrap_pad li:nth-child(2) img {
    animation-delay: 2.2s;
  }

  @keyframes fadeUp {
    to {
      opacity: 1;
      transform: translateY(0); /* 元の位置に */
    }
  }


}

@media screen and (min-width:1301px) {
   .contents_wrap_top .contents .emblem_wrap_pad { display:none; }
  .contents_wrap_top .contents .emblem_wrap { width:335px; display:flex; justify-content: space-between; position:absolute; right:0; z-index:1; }
  .contents_wrap_top .contents .emblem_wrap li { width:160px; }
  .contents_wrap_top .contents .emblem_wrap li img { width:100%; }
  
/* 共通設定 ── 5s 周期のうち最初の 0.5s だけ動く */

.contents_wrap_top .contents .emblem_wrap li .shine_wrap {
  width:160px; height:160px; 
  border-radius:80px; 
  position: relative;
  overflow: hidden;
}

.contents_wrap_top .contents .emblem_wrap li .shine_wrap::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.6) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-20deg);

  /* 5 秒で 1 ループ。そのうち 0.5 秒（=10%）だけ動かす */
  animation: shine 3s ease-in-out infinite;
}

/* 2 つ目だけ 0.5 秒遅らせてスタート */
.contents_wrap_top .contents .emblem_wrap li:nth-child(2) .shine_wrap::before {
  animation-delay: 0.5s;
}

/* 0 %→10 % でスライド、残り 90 % はその位置でキープ */
@keyframes shine {
  0%   { left: -75%; }
  10%  { left: 125%; }
  100% { left: 125%; }
}

.animationdelay1 { animation-delay: 1s; /* ここが遅延指定 */
}

/* アニメーションの例 */
@keyframes rotateYAnime {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}

.animationdelay2 { animation-delay: 1.2s; /* ここが遅延指定 */
}

/* アニメーションの例 */
@keyframes rotateYAnime {
  0% {
    transform: rotateY(90deg);
    opacity: 0;
  }
  100% {
    transform: rotateY(0deg);
    opacity: 1;
  }
}


.fade-out {transition: opacity 0.5s ease;opacity: 0;}
}


h2 { font-size:28px; letter-spacing:0.03em; line-height:1.35em; text-align:center;  color:#137CD3; text-align: center;position: relative;padding-bottom:20px; margin-bottom:40px; }
h2::before {content: "";display: inline-block;height: 2px;width: 50px;background-color:#137CD3;position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);}
@media screen and (min-width: 768px) {
  h2 { font-size:36px; }
} 
h2.color_w::before { background-color:#fff;}


.news_wrap { width:100%; margin-top:40px; margin-bottom:80px; }
.news_wrap h2 { margin-bottom:0; }
.news_wrap .news { display:flex; border-bottom:1px solid #ccc; flex-wrap:wrap; padding-bottom:20px; margin-top:20px; }
.news_wrap .news dt { width:100%; color:#137CD3; line-height:19px; display:flex; align-items:center;}
.mark_new { margin-left:5px; }
.news_wrap .news dd { width:100%; }
.news_wrap .news dd .icon_other { width:15px; margin-left:10px;  }
.news_wrap h2::before { content:none; }
.news_wrap .news_item { height:auto; }
.news_wrap .news_item.scroll_enabled { height:360px; overflow-y: scroll; position:relative; }
.news_wrap .news_item .caution { width:100%; position:absolute; left:50%; top:50%; transform: translate(-50%, -50%);}
.news_junbi { width:100%; display:inline-block; }
@media screen and (min-width: 768px) {
  .news_wrap { margin-top:initial; display:flex; flex-wrap :wrap; background:#fff; border-radius:30px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); padding:30px 60px 30px 60px; margin-top:50px; z-index:3; position:relative; }
  .news_wrap h2 { width:25%; margin:10px 0 0 0;}
  .news_wrap .news_item { width:73%; height:180px; padding-right:50px; }
  .news_wrap .news_item.scroll_enabled { height:180px; }
  .news_wrap .news_item .news { width:100%; display:flex; justify-content: space-between;}
  .news_wrap .news dt { width:25%; color:#000; letter-spacing:0.1em; }
  .news_wrap .news dd { width:75%; }
  .news_wrap .news dd a { color:#000; text-decoration: underline; display:inline-block; }
  .news_wrap .news dd a:hover { color:#137CD3; text-decoration: underline;}
  .news_junbi { margin-top:20px; }
}
@media screen and (min-width:1280px) {
    .news_wrap { margin-top:-10vw; }


}


/* スクロールバーの全体 */
.news_item::-webkit-scrollbar {width: 6px; }
.news_item::-webkit-scrollbar-track {background: #f1f1f1;border-radius: 3px;}
.news_item::-webkit-scrollbar-thumb {background: linear-gradient(to bottom, #2196f3, #2196f3); /* 青いグラデ風 */border-radius: 3px;}
.news_item::-webkit-scrollbar-thumb:hover {background: #1976d2;}


.contents_wrap.nayami {
  width: 100%;
  display: block;
  padding: 40px 0 100px 0;
  background-color: #68C8E6;
  position: relative;
  z-index: 0;
  overflow-y: visible;
}

.contents_wrap.nayami::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('../img/bg_trouble.png');
  background-repeat: repeat;
  mix-blend-mode: multiply;
  opacity: 0.6; 
  pointer-events: none;
  z-index:0;
}

.loop-container {
  overflow: hidden;
  width: 100%;
  position: relative;
}

.loop-track {
  display: flex;
  width: 200%; /* 画像2枚分 */
  animation: scrollLoop 20s linear infinite;
}

.loop-track img {height:70px; margin-left:75px; }
@keyframes scrollLoop {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}
@media screen and (min-width: 768px) {
.loop-track img {height:108px; margin-left:75px; }
}








.nayami_wrap { width:100%; display:flex; flex-wrap:wrap; justify-content: space-between; margin-top:80px; }
.nayami_wrap li { width:100%; margin-bottom:150px; position:relative; }
.nayami_wrap li .text-22 { font-size: 20px;letter-spacing: 0.05em;}
.nayami_wrap li:last-child { margin-bottom:0; } 
.nayami_wrap li div { width:100%; background:#fff; border-radius:10px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); padding:20px; }
.nayami_wrap li div:nth-child(1) { text-align:center; padding-top:0; }
.nayami_wrap li div .torouble1 { width:70%; margin-top:-80px; margin-left:15%; }
.nayami_wrap li div .torouble2 { width:70%; margin-top:-60px; }
.nayami_wrap li div strong { font-size:24px; color:#137CD3; letter-spacing:0.1em; line-height:36px; font-weight:bold; }
.nayami_wrap li div .kaitoriman.inline_sp { width:75%; margin:20px auto 0 auto; display:block; }
.nayami_wrap li div .kaitoriman.inline_pc { display:none; }
.nayami_wrap li div.arrowdown { width:100%; height:60px; display:flex; align-items: center; justify-content: center; background:none; box-shadow: none; color:#137CD3; }
.nayami_wrap li div.arrowdown img { width:38px; height:23px; }
.nayami_wrap li .fukidashi_trouble { width:63px; position:absolute; left: 10px;top: -40px;}
.nayami_solution { display:flex; flex-wrap:wrap; flex-direction: column-reverse;}
.nayami_solution li { margin:0; }
.nayami_solution li:nth-child(1) { width:100%; }
.nayami_solution li:nth-child(1) img { width:70%; margin:0 auto; display:block; }
.nayami_solution li:nth-child(2) { flex-direction: row-reverse;}
.nayami_solution li:nth-child(2) p { margin-top:20px; text-align: justify;}

.contents_wrap.nayami .contents_wrap.contact { border-radius:10px; } 
.nayami_wrap li div.highlight_text_wrap { width:auto; height:100px; display:block; background:none; box-shadow:none; padding:0; }
@media screen and (min-width: 768px) {
  .nayami_wrap li { width:48%; margin-bottom:0; }
  .nayami_wrap li .text-22 { font-size:22px; }
  .nayami_wrap li div { padding:30px;}
  .nayami_wrap li div:nth-child(1) { height:230px; }
  .nayami_wrap li div .torouble1 { width:290px; margin-bottom:10px;  margin-top:-60px; }
  .nayami_wrap li div .torouble2 { width:290px; margin-bottom:10px;}
  .nayami_wrap li div strong  { font-size:35px;}
  .nayami_wrap li:nth-child(1) .kaitoriman { width:40%; margin:-80px auto 0 auto; display:block; }
  .nayami_wrap li div.arrowdown { margin-bottom:50px; }
  .contents_wrap.nayami .contents_wrap.contact { border-radius:10px; }
  .nayami_wrap li .fukidashi_trouble { width:77px; left:30px; }
  .nayami_solution { flex-direction: initial;}

  .nayami_solution li:nth-child(2) { width:100%; }
  .nayami_solution li p { margin-top:20px;}
  .contents_wrap.nayami .contents_wrap.contact { border-radius:0; } 

}

.contents_wrap.nayami .contents { position:relative; }
.nayamititle_pc { display:none; }
.contents_wrap.nayami .nayamititle_sp { width:70%; margin:-140px auto 60px auto;  display:block; }
@media screen and (min-width: 768px) {
  .contents_wrap.nayami .contents { width:90%; max-width:1300px; margin-top:80px; margin-bottom:80px;  position:relative; }
  .contents_wrap.nayami .contents .nayamititle_pc { width:250px; position:absolute; right:0; top:-250px; display:block; }
  .contents_wrap.nayami .nayamititle_sp { display:none; }
}



/* テキスト本体 */
.highlight_text {
  position: relative;
  display: inline-block;
  font-weight: bold;
  color: #0076d9;
  line-height: 1.8;
  z-index: 1;
}

/* 下線マーカー */
.highlight_text::before {
  content: '';
  position: absolute;
  bottom: 0.2em;
  left: 0;
  width: 0%;               /* ← ★ ここを 0 にしておく */
  height: 0.7em;
  background: #FDF400;
  z-index: -1;
  transition: width 0.6s ease;   /* ← アニメーション時間・イージング */
}

/* 可視領域に入ったら付けるクラス */
.highlight_text.is-visible::before {
  width: 100%;             /* ← ★ 100% まで伸ばす */
}



.contents_wrap .title_english { display:none; }
.contents_wrap .title_english.white { display:none; }
@media screen and (min-width: 768px) {
  .contents_wrap .title_english { display:block;  position:absolute; left:0; }
  .contents_wrap .title_english.white { font-size:109px; letter-spacing:0.1em; color: rgba(255, 255, 255, 0.3); font-weight:bold; line-height:1; display:block; }
}





.kaitori_list { width:90%; display:flex; flex-wrap:wrap; justify-content: space-between; position:relative; margin:0 auto; }
.kaitori_list li { width:31%; height:100px; text-align:center; background:#FDF400; border-radius:10px; padding-bottom:10px; margin-bottom:10px; }
.kaitori_list li .icon_wrap { width:90px; height:50px; margin:15px auto 0 auto; display:flex; align-items:center; justify-content: center;}
.kaitori_list li span { width:100%; text-align:center; font-size:15px; letter-spacing:0.05em; line-height:1.2em; font-weight: 500;}
.button_more.center.kaitori { width:90%; margin:50px auto 0 auto; }
.kaitori1 { width:50px; height:auto;}
.kaitori2 { width:50px; }
.kaitori6 { width:50px; }
.kaitori11 { height:50px; }
.kaitori12 { width:50px; }
.kaitori13 { width:50px; }
@media screen and (min-width: 768px) {
  .kaitori_list { width:90%; max-width:1300px; margin:0 auto; justify-content: initial; gap:16px; }
  .kaitori_list li { width:15%; height:160px; padding-bottom:0; }
  .kaitori_list li.marginleft { margin-left:85px; }
  .kaitori_list li .icon_wrap  { width:140px; margin-top:40px; margin-bottom:5px; }
  .kaitori_list li .icon_wrap img { scale: 1.2;}
  .button_more.center.kaitori { width:350px; }
  .kaitori_list li span {font-size: 18px;margin-top: 15px;}
  .kaitori1 { width:60px; height:50px;}
  .kaitori11 { width:50px; }
}
.contents_wrap.kaitori { padding:80px 0 0 0; position:relative; }
.contents_wrap.kaitori .title_english { margin-top:-80px; }
.contents_wrap.kaitori p { margin-bottom:40px; }
.contents_wrap.kaitori .text_center { text-align:left; }
.contents_wrap.kaitori .illust_results { display:none; }
@media screen and (min-width: 768px) {
  .contents_wrap.kaitori { padding-top:180px; }
  .contents_wrap.kaitori .text_center { text-align:center; }
    .contents_wrap.kaitori .title_english { top:100px;  }
}

@media screen and (max-width: 768px) {
  .contents_wrap.kaitori .illust_results { display:none; }
} 


.kaitori_list_wrap { position:relative;  }
@media screen and (min-width: 768px) {
  .kaitori_list_wrap {  margin-top:150px; }
}

.kaitori_list_wrap .kaitoriman_fuwafuwa{width:40vw;position: absolute;right:-5vw;top:-5vw; display: inline-block; transform: scaleX(-1);transition: all 1s ease-out;will-change: transform;}
@keyframes kaitoriman_fuwafuwa {
  0%   { transform: translateX(0) translateY(0); }
  50%  { transform: translateX(0) translateY(-10px); }
  100% { transform: translateX(0) translateY(0); }
}
.kaitori_list_wrap h2 { text-align:left; margin-left:5%; }
.kaitori_list_wrap h2::before { content:none; }

.kaitoriwoman_fuwafuwa{width:40vw;position: absolute;right: -30vw; top: -100px;will-change: transform, opacity;animation: kaitoriwoman_fuwafuwa 3s ease-in-out infinite;opacity: 0;transform: translateX(50px);transition: transform 0.8s ease-out, opacity 0.8s ease-out, right 0.8s ease-out; z-index:10; }
.kaitoriwoman_fuwafuwa.show{right: 5%; opacity: 1;transform: translateX(0);  }
    @keyframes kaitoriwoman_fuwafuwa {
      0%   { transform: translateY(0); }
      50%  { transform: translateY(-10px); }
      100% { transform: translateY(0); }
}



@media screen and (min-width: 768px) {
    .kaitori_list_wrap .kaitoriman_fuwafuwa { width:300px; }
    .kaitoriman_fuwafuwa{position: absolute;left: -30vw; top: -100px; will-change: transform, opacity;animation: kaitoriman_fuwafuwa 3s ease-in-out infinite;opacity: 0;transform: translateX(-50px);          transition: transform 0.8s ease-out, opacity 0.8s ease-out;}
    .kaitoriman_fuwafuwa.show{left: 5%; opacity: 1;transform: translateX(0); }
    .kaitoriwoman_fuwafuwa{position: absolute;width:20vw; right: -30vw; top: -100px; will-change: transform, opacity;animation: kaitoriwoman_fuwafuwa 3s ease-in-out infinite;opacity: 0;transform: translateX(50px);         transition: transform 0.8s ease-out, opacity 0.8s ease-out, right 0.8s ease-out;}
    .kaitori_list_wrap h2 { text-align:center; }
    .kaitori_list_wrap h2::before {content: "";display: inline-block;height: 2px;width: 50px;background-color:#137CD3;position: absolute;bottom: 0;left: 50%;transform: translateX(-50%);}


}





.button_more.center { margin:80px auto; }

.town_wrap { width:100%; height:150px; position:relative;  }
.town_wrap .illust_town.inline_sp  { width:100%; margin-bottom:-20px; display:block; position:absolute; bottom:0; }
 .town_wrap .illust_town.inline_pc { display:none; }
.town_wrap .kumo1 { display:none; }
.town_wrap .kumo2 { display:none; }
.town_wrap .kumo3 { display:none; }
.town_wrap .kumo4 { display:none; }
.town_wrap .hikouki{ display:none; }
@media screen and (min-width: 768px) {
  .town_wrap { height:auto; }
  .town_wrap .illust_town.inline_pc  { width:100%; margin-bottom:-20px; display:block; }
  .town_wrap .illust_town.inline_sp { display:none; }
  .town_wrap .kumo1 { position:absolute; right:-50px; bottom:450px; display:block; }
  .town_wrap .kumo2 { width:60px; position:absolute; right:10%; bottom:150px; display:block; }
  .town_wrap .kumo3 { width:120px; position:absolute; left:-1%; bottom:250px;display:block;  }
  .town_wrap .kumo4 { width:35px; position:absolute; left:50%; right:50%; bottom:50px; display:block; }
  .town_wrap .hikouki { position:absolute; bottom:70px; left:15%;display:block; }
}




.fuwafuwa {  animation: floatCloud 6s ease-in-out infinite;}

@keyframes floatCloud {
  0% {
    transform: translateY(0px) scale(1);
  }
  50% {
    transform: translateY(-10px) scale(1.02);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}

.fuwafuwa2 {  animation: floatCloud 4s ease-in-out infinite;}

@keyframes floatCloud {
  0% {
    transform: translateY(0px) scale(1);
  }
  50% {
    transform: translateY(-10px) scale(1.1);
  }
  100% {
    transform: translateY(0px) scale(1);
  }
}



/*コラム*/
.contents_wrap.column { position:relative; padding:0 0 80px 0; margin-bottom:80px; overflow:hidden; background:#F5F5F5; position:relative; }
.contents_wrap.column h2.inline_sp { width:100%; text-align:center; margin:80px 0 40px 0; display:block; }
.contents_wrap.column .illust_results { display:none; }
.contents_wrap.column .column_sp { width:100%; display:block; }
.illust_column { width:50%; margin:-50px 0 0 60%; position:relative; }
.column_lead { margin:40px 0; display:block; }
.contents_wrap.column .sakura { display:none; }
@media screen and (min-width: 768px) {
.contents_wrap.column {position: relative;height:700px;overflow: hidden; background:none; }
.bg_parallax { width: 100%;height: 120%; /* 背景に余裕を持たせて動きを強調 */background-image: url(../img/column_pc.jpg);background-size: cover;background-repeat: no-repeat;background-position: center center;position: absolute;top: 0;left: 0;will-change: transform;z-index: 0; transform: translateY(0); /* 初期位置 */}
  .contents_wrap.column .title_english.white { position:absolute; right:0vw; top:0vw; left:93%; z-index:5; }
  .column_right { width:50%; margin-left:65%; }
  .contents_wrap.column .column_sp { display:none; }
  .contents_wrap.column h2.inline_sp { display:none; }
  .contents_wrap.column h2::before { content:none; }
  .contents_wrap.column .illust_results { display:none; }
  .column_lead { margin:20px 0;}
  .contents_wrap.column .illust_column { width:320px; position:absolute; bottom:-50px; right:0; }
  .contents_wrap.column .contents { color:#fff; }
  .contents_wrap.column .contents h2 { width:100%; font-size:40px; line-height:1.7em; color:#fff; display:block; text-align:left; margin-top:150px; margin-bottom:0; padding-bottom:0; }
  .contents_wrap.column .contents p { width:375px; display:block; margin-bottom:40px; position:relative; z-index:2; }
  .contents_wrap.column .button_more { margin-bottom:80px;  }
  .cherry-blossom {position: relative;height: 100vh; width: 100%;overflow: hidden; }
.petal {position: absolute;background-color: #ffc0cb; border-radius: 150% 0 150% 0;animation: animate-petal 10s linear;}
.petal::after {content: "";position: absolute;top: -14%;left: -10%;display: block;width: 100%;height: 100%;background-color: #ffc0cb;border-radius: 150% 0 150% 0;transform: rotate(15deg);}
@keyframes animate-petal {
  0% {
    top: 0;
    opacity: 0;
    transform: rotate(0deg);
  }
  10% {
    opacity: 1;
  }
  90% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    top: 100vh;
    transform: rotate(3000deg);
  }
}







}



.contents_wrap.business { width:100%; position:relative; }
.business_wrap { width:100%; display:flex; flex-wrap:wrap; margin-bottom:80px; }
.business_wrap li { width:95%; background:#F5F5F5; border-radius:10px; box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1); padding:0 20px 40px 20px; text-align:center; position:relative; margin:0 auto 120px auto; }
.business_wrap li:last-child { margin-bottom:0; }
.business_wrap li .fukidashi { width:77px; position:absolute; top:-60px; left:0; transition: transform 0.3s ease;}
.business_wrap li h3 { font-size:24px; }
.business_wrap li p { margin:30px 0 24px 0; text-align:left; text-align:justify; }
.business_wrap li .illust_business { width:75%; margin-top:-20px; }
.contents_wrap.business .illust_column { display:none; }

@media screen and (min-width: 768px) {
  .contents_wrap.business .contents .illust_column { width:326px; position:absolute; top:-250px; right:-100px; }
  .contents_wrap.business .contents { width:90%; max-width:1300px; margin-top:120px; position:relative; }
  .contents_wrap.business .contents h2 { margin-bottom:80px; }
  .business_wrap li { width:30%; margin-bottom:0; padding:0 24px 40px 24px; }
  .business_wrap .button_more { width:100%; height:60px; }
  .business_wrap li a { width:100%; height:100%; display:inline-block; }
  .business_wrap li a:hover .button_more { background:#fff; } 
  .business_wrap li a:hover .button_more em { color:#137CD3;}
  .business_wrap li a:hover .button_more span.arrow_more { border:1px solid #137CD3; }
  .business_wrap { margin-bottom:200px; padding-top:50px; }
  .business_wrap li h3 { margin-top:24px; }
  .business_wrap li p { margin-top:16px; }
  .business_wrap li .illust_business { width:95%; }

  .contents_wrap.business .illust_column { display:block; }
  .business_wrap li a:hover .fukidashi {transform: translateY(-10px);}
  .contents_wrap.business .title_english { top:-100px; left:-15vw; }


  }

@media screen and (min-width:1300px) {
.contents_wrap.business .title_english { left:0; }

}



.swiper {width: 90%;height:400px; margin: 0.5rem auto}
@media screen and (min-width: 768px) {
  .swiper {width: 90%;height:400px; margin: 0.5rem auto 1.5rem 10%;}

}

.swiper-slide { width:auto;height: 100%;display: flex;justify-content: center;align-items: center;color: #fff;font-weight: bold;font-size:30px;flex-wrap:wrap; }
.swiper-slide{height:350px; border-radius:10px; }
.swiper-slide div { width:100%; height:230px; border-radius:30px; overflow:hidden; }
.swiper-slide div img { width:100%; height:100%; object-fit:cover;transition: transform 0.4s ease; display:block;  }





.contents_wrap.kaitori .swiper-slide p { width:100%; color:#000; float:left; display:block; font-size:18px; font-weight:bold; letter-spacing:0.1; line-height:1.66em; margin-top: 15px; margin-bottom: 20px;}
.date_wrap { width:100%; height:30px; display:flex; justify-content:space-between; align-items:center; } 
.date_wrap li:nth-child(1) { height:30px; text-align:left; display:block; }
.date_wrap li .date { width:130px; height:30px; font-size:16px; border-radius:12px; background:#F5F5F5; color:#137CD3; font-weight:bold; letter-spacing:0.1; text-align:center; }
.date_wrap li:nth-child(2) { height:30px; text-align:left; display:flex; align-items: center; margin-right:20px; }

.swiper-slide div.arrow_swiper {position:relative; overflow:visible; }
.swiper-slide div.arrow_swiper { height:30px; display:flex; align-items: center; justify-content: center;}

.swiper-slide div.arrow_swiper img { width:22px; height:22px; }
.swiper-slide div.arrow_swiper:before {content: "";width: 32px;height: 1px;background-color: #000;position: absolute;left: -47px;top: 50%;-webkit-transform: translateY(-50%);transform: translateY(-50%);-webkit-transition: width 0.3s ease;transition: width 0.3s ease;}
.arrow_wrap { position:relative; float:right; }
.arrow_wrap img { width:22px; height:22px; margin-top:4px; }

/*買取事例のスライド*/
.swiper-slide a:hover .arrow_swiper:before {content: "";width: 32px;height: 1px;background-color: #000;position: absolute;left: -47px;top: 50%;-webkit-transform: translateY(-50%);transform: translateY(-50%);-webkit-transition: width 0.3s ease;transition: width 0.3s ease;}
.swiper-slide a:hover .arrow_swiper::before {width:40px; }
.swiper-slide a:hover .arrow_swiper img {transform: translateX(8px); /* 矢印が右へスライド */}
.swiper-slide a:hover .arrow_swiper {transform: translateX(8px); /* 矢印が右へスライド */}




.swiper-slide {
  width: 100%; /* スマホ時に1枚を強制的に画面幅に合わせる */
}

@media screen and (min-width: 768px) {
  .swiper-slide {
    width: auto; /* タブレット以上は複数枚を並べたい場合 */
  }
}


.swiper_parts_wrap_all { width:90%; margin:0 auto; display:flex; flex-wrap:wrap; position:relative; justify-content: space-between;}
.swiper_parts_wrap { width:100%;  display:flex;justify-content: space-between; position:relative; margin:30px 0; }
.swiper_parts_wrap .swiper-scrollbar { width:90%;}
@media screen and (min-width: 768px) {
  .swiper_parts_wrap_all { width:1100px; }
  .swiper_parts_wrap { width:500px; margin-bottom:15px; }
}

.contents_wrap.contact { margin-top:0;}










