/* @author M.Miura */

/*
LL 1200 ~ 1980
L  992  ~ 1199
M  768  ~ 991
S  576  ~ 767
SS 1    ~ 575
*/

/* 特大デバイス（ワイド・デスクトップ, 1200px 以上）
==============================================*/
@media screen and (min-width: 1200px) {
  /* 各ページのタイトル */
  h2 {
    color: #dc0000;
    font-family: "MS Pゴシック";
    font-size: calc(2.625rem + ((1vw - 12px) * 1.6667));
    font-weight: 600;
    min-height: 0vw;
  }
  /* ノーマル文字 */
  p {
    font-size: calc(1.25rem + ((1vw - 12px) * 0.5128));
    font-weight: 500;
  }
  /* ヘッダーのリンク */
  .nav-link {
    font-size: calc(1.125rem + ((1vw - 12px) * 1.5385));
    font-weight: 600;
  }
  #footer #footer-contents > div {
    border-left: 1px solid #774831;
    border-right: 1px solid #774831;
  }
  #footer #footer-contents > div:last-child {
    border-right: 1px solid #774831;
  }
  #footer img {
    width: 100%;
  }
} /* END */

/* 大デバイス（デスクトップ, 1200px 未満）
==============================================*/
@media screen and (max-width: 1199.98px) {
  /* トップページ：各セクション */
  h2 {
    color: #dc0000;
    font-family: "MS Pゴシック";
    font-size: calc(2.25rem + ((1vw - 9.92px) * 5.7971));
    font-weight: 600;
    min-height: 0vw;
  }
  /* ノーマル文字 */
  p {
    font-size: calc(1.125rem + ((1vw - 9.92px) * 1.9324));
    font-weight: 450;
  }
  /* ヘッダーのリンク */
  .nav-link {
    font-size: calc(0.9375rem + ((1vw - 9.91px) * 5.7692));
    font-weight: 600;
  }
  #sec2 .row {
    background-size: auto 550px;
  }
} /* END */

/* 中デバイス（タブレット, 992px 未満）
==============================================*/
@media screen and (max-width: 991.98px) {
  h2 {
    color: #dc0000;
    font-family: "MS Pゴシック";
    font-size: calc(1.875rem + ((1vw - 7.68px) * 4.4643));
    font-weight: 600;
    min-height: 0vw;
  }
  /* ノーマル文字 */
  p {
    font-size: calc(1rem + ((1vw - 7.68px) * 1.7937));
    font-weight: 400;
  }
  /* ヘッダーのリンク */
  .nav-link {
    font-size: calc(0.5rem + ((1vw - 7.68px) * 5.3812));
    font-weight: 600;
  }
  #footer #footer-contents > div {
    border-bottom: 1px solid #774831;
    border-left: none;
    border-right: none;
    padding-bottom: 1rem;
  }
  #footer img {
    width: 100%;
    max-width: 748px;
    margin: 0 auto;
  }

  /* トップページ：各セクション */
  #sec2 img {
    width: 100%;
    height: 100%;
  }
} /* END */

/* 小デバイス（横向きモバイル, 768px 未満）
==============================================*/
@media screen and (max-width: 767.98px) {
  h1 {
    font-size: 2rem;
  }
  h2 {
    color: #dc0000;
    font-family: "MS Pゴシック";
    font-size: calc(1.5rem + ((1vw - 5.76px) * 3.1414));
    font-weight: 600;
    min-height: 0vw;
  }
  /* ノーマル文字 */
  p {
    font-size: calc(0.875rem + ((1vw - 5.76px) * 2.0942));
    font-weight: 350;
  }
  .nav-link {
    font-size: 1rem;
    font-weight: 600;
  }
  main .btn {
    font-size: 0.95rem;
  }
  #footer #footer-contents > div:first-child {
    border-right: none !important;
  }
  #footer .container {
    padding-top: 0px;
  }
  #footer .container .row {
    margin-bottom: 0;
  }

  #footer #copyright {
    font-size: 0.8rem;
  }
  #footer h2 {
    margin: 2rem 0;
  }

  /* トップページ：各セクション */

  #page-top h1 + small {
    font-size: 1.5rem;
  }
  #page-top section {
    padding-top: 50px;
  }
  #page-top section .container > h2 {
    margin-bottom: 20px;
    font-size: 1.5rem;
  }
  #page-top section .container > h2 + p {
    margin-bottom: 40px;
  }
  #page-top section .container h3 {
    font-size: 1.2rem;
  }
  #sec2 .row {
    background-size: auto 400px;
  }
  #sec4 .card-body .card-subtitle {
    font-size: 0.75rem;
  }
  /* メイン画像1 */
  .service-img1 {
    height: 30vw;
  }
  /* メイン画像2 */
  .service-img2 {
    height: 30vw;
  }
  /* アイコン用 */
  .img-icon {
    display: none;
  }
  /* 下層ページ */

  #page section {
    padding: 3rem 0 0;
  }
} /* END */

/* 極小デバイス（縦向きモバイル, 576px 未満）
==============================================*/
@media screen and (max-width: 575.98px) {
  h2 {
    color: #dc0000;
    font-family: "MS Pゴシック";
    font-size: calc(0.625rem + ((1vw - 2px) * 5.3333));
    font-weight: 600;
    min-height: 0vw;
  }
  /* ノーマル文字 */
  p {
    font-size: calc(0.75rem + ((1vw - 0.01px) * 0.6969));
    font-weight: 300;
  }
  .navbar-collapse .btn {
    margin: 10px auto;
  }
  /* トップページ：各セクション */
  #sec2 .row {
    background-size: auto 300px;
  }
  /* アイコン用 */
  .img-icon {
    display: none;
  }
  /* 下層ページ */
  #page section {
    padding: 2rem 0 0;
  }
  /* フッター */
  #footer .footer-text {
    font-size: 0.6rem;
    margin: 0.5rem 0;
  }
  #footer .footer-ttl {
    font-size: 0.6rem;
    margin: 0.5rem 0;
  }
  #copyright br {
    display: block;
  }
  .menu-text {
    text-align: right;
  }
} /* END */
