@charset "utf-8";

/* ========================================
   排水管洗浄 固有レスポンシブCSS
   ======================================== */

/* ====== モバイル (max-width:999px) ====== */
@media(max-width:999px){
  /* ヘッダー背景画像 */
  header{
    background-image: url(../topIMG/6_Z.jpg);
  }
  /* h1 上書き（15vw） */
  h1{
    font-size: 15vw;
  }
}

/* ====== タブレット (768px～999px) ====== */
@media(min-width:768px) and (max-width:999px){
/* 洗浄対象・価格ボックスの幅を広げる */
.target,
.price{
  width: 85%;
}
/* 料金詳細の内側ボックスも広げてパディング調整 */
.price p:nth-of-type(2){
  width: 95%;
  padding: 40px 30px;
}
}

/* ====== スマホ (max-width:767px) ====== */
@media(max-width:767px){
/* 動画 */
.videoOut{
  display: flex;
  justify-content: center;
  margin: 80px 0;
}
video{
  border-radius: 15px;
  width: 90%;
}

/* 排水管洗浄は必要？ */
.need{
  display: flex;
  flex-direction: column;
  align-items: center;
}
.needText{
  margin: 30px auto;
  width: 90%;
  line-height: 1.5;
  color: var(--color-dark);
}
.needText span{
  color: var(--color-danger);
}
.needItem{
  margin-top: 20px;
  width: 90%;
}
.needItem p{
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
  color: var(--color-dark);
}
.need h2{
  font-family: 'Noto Serif JP', serif;
  background-color: var(--color-light);
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  padding: 20px 0;
  width: 100%;
}
.need img{
  width: 100%;
  height: auto;          /* 比率を維持 */
}

/* 排水管洗浄は自分でできる？ */
.canOut{
  margin-top: 100px;
}
.canOut h2{
  font-family: 'Noto Serif JP', serif;
  background-color: var(--color-light);
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  padding: 20px 0;
  width: 100%;
}
.canItem{
  margin-top: 30px;
  margin-bottom: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
}
.canItem picture{
  width: 90%;            /* pictureをflexアイテムとしてサイズ指定 */
}
.canItem img{
  width: 100%;           /* picture内で100%表示 */
  height: auto;          /* 比率を維持 */
  border-radius: 5px;
}
.canItem p{
  width: 90%;
  line-height: 1.5;
  color: var(--color-dark);
}
.canOut > p{
  background-color: var(--color-bg);
  margin: 40px auto;
  padding: 20px 20px;
  width: 90%;
  border-radius: 5px;
  line-height: 1.5;
}
.canOut > p:nth-of-type(1){
  margin-top: 50px;
}

/* シミズ設備の洗浄方法 */
.methodOut{
  margin-top: 100px;
}
.methodOut h2{
  font-family: 'Noto Serif JP', serif;
  background-color: var(--color-light);
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  padding: 20px 0;
  width: 100%;
}
.methodImg{
  background-color: var(--color-bg);
  border-radius: 5px;
  margin: 30px auto 0 auto;
  width: 90%;
}
.methodImgIMG{
  text-align: center;
  padding: 20px 0;
}
.methodImgIMG P{
  font-family: 'Noto Serif JP', serif;
  font-size: 20px;
}
.methodImgIMG img{
  width: 90%;
  height: auto;          /* 比率を維持 */
  padding: 0;
  border-radius: 5px;
}
.methodOut > p{
  width: 90%;
  margin: 30px auto 0 auto;
  line-height: 1.5;
  color: var(--color-dark);
}
.center{
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* 対象箇所 */
.target{
  margin-top: 50px;
  display: inline-block;
  width: 90%;
  max-width: 100%;
  border: 1px solid var(--color-dark);
  border-radius: 0px;
  padding: 1.8em .8em .8em;
  position: relative;
  text-align: left;
  color: var(--color-dark);
}
.target h3{
  font-family: 'Noto Serif JP', serif;
  padding: .4em;
  font-size: 1.5em;
  font-weight: 700;
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-white);
  white-space: nowrap;
}
.target p{
  padding: 30px 30px 40px 30px;
  line-height: 1.5;
}

/* 料金 */
.price{
  margin-top: 50px;
  display: inline-block;
  width: 90%;
  max-width: 100%;
  border: 1px solid var(--color-dark);
  border-radius: 0px;
  padding: 1.8em .8em .8em;
  position: relative;
  text-align: left;
}
.price h3{
  font-family: 'Noto Serif JP', serif;
  padding: .4em;
  font-size: 1.5em;
  font-weight: 700;
  position: absolute;
  top: -1em;
  left: 50%;
  transform: translateX(-50%);
  background: var(--color-white);
  white-space: nowrap;
  color: var(--color-dark);
}
.price p:nth-of-type(1){
  padding: 30px 30px 0 30px;
  color: var(--color-dark);
}
.price p:nth-of-type(2){
  background-color: var(--color-bg);
  text-align: center;
  padding: 30px 10px 30px 10px;
  margin: 20px auto 0 auto;
  width: 100%;
  text-align: left;
}
.price p:nth-of-type(3){
  padding: 20px 30px 40px 30px;
  color: var(--color-danger);
}
.spSp{
  display: none;
}

/* 注意事項 */
.noteOut{
  margin-top: 30px;
  display: flex;
  justify-content: center;
}
.note{
  width: 90%;
}
.note h2{
  color: var(--color-dark);
  font-size: 18px;
  font-weight: 500;
}
.note p{
  margin-top: 20px;
  color: var(--color-danger);
}

/* お問い合わせ */
.contactOut{
  margin-top: 90px;
  padding-bottom: 50px;
  width: 100%;
}
}
