@charset "utf-8";

/* =====================================================
   Media Components
===================================================== */

/* 画像フィット用（コンテナ中央寄せ） */
.fit_img {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column; /* 旧コメントの“IE用”は不要だが互換のため残してもOK */
}

.fit_img img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

/* レガシー版：記述ミス修正（display: relative → position: relative） */
.regacy_fit_img {
  position: relative;
  overflow: hidden;
}

.regacy_fit_img img {
  position: absolute;
  left: -50%;
  right: -50%;
  top: -50%;
  bottom: -50%;
  margin: auto;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

/* object-fit を使う場合の補助（polyfill運用をするなら） */
.ofi {
  object-fit: cover;
  font-family: 'object-fit: cover;'; /* polyfill系の名残。使わないなら削除 */
}

.maru {
  position: relative;
  display: inline-block;
  padding: 2px 0;
}

.maru svg {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  width: 100%;
  height: 100%;
}

.under svg {
  top: auto;
  bottom: -50%;
}
.maru svg path {
  stroke: #F27537; /* 色はお好みで */
  stroke: rgba(242, 117, 55, 0.5);
  stroke-width: 5;
  fill: none;

  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 1000;
  stroke-dashoffset: 1000;
  transition: stroke-dashoffset 3s ease-out;
}
.maru2 svg path {
  stroke-width: 8;
}

.maru.is-inview svg path {
  stroke-dashoffset: 0;
}
.js-maru-draw:nth-of-type(1).is-inview path {
  transition-delay: 0s;
}

.js-maru-draw:nth-of-type(2).is-inview path {
  transition-delay: 0.4s;
}

.js-maru-draw:nth-of-type(3).is-inview path {
  transition-delay: 0.8s;
}

.js-maru-draw:nth-of-type(4).is-inview path {
  transition-delay: 1.2s;
}

@media screen and (max-width: 768px) {
  .maru {
    padding:0;
  }
  .maru svg {
    top:-10%;
    height: 135%;
  }
  
  .under svg {
    top: auto;
    bottom: -6.5vw;
    height: 100%;
  }
}