
/* 特大デバイス（ワイド・デスクトップ, 1200px 以上）
==============================================*/
@media screen and (min-width: 1200px) {
    
#footer #footer-contents > div{
    border-left: 1px solid #774831;
    border-right: 1px solid #774831;
    border-collaps: collapse;
}
#footer #footer-contents > div:last-child{
    border-right: 1px solid #774831;
}
#footer img {
width: 100%;
}  
	
} /* END */

/* 大デバイス（デスクトップ, 1200px 未満）
==============================================*/
@media screen and (max-width:1199.98px) {

/* トップページ：各セクション */
    
#sec2 .row {
    background-size: auto 550px;
}

} /* END */


/* 中デバイス（タブレット, 992px 未満）
==============================================*/
@media screen and (max-width:991.98px) {
#footer #footer-contents > div{
    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%;
}    
 .hero-text {
    transform: none !important;
    margin: 0 auto;
    text-align: center;
  }

  #page-top .jumbotron-fluid {
    padding: 3rem 1rem;
  }

  .hero-text h1 {
    font-size: 1.8rem;
  }

  .hero-desc {
    font-size: 1rem;
  }

  .hero-text .btn {
    font-size: 0.95rem;
    padding: 0.8rem 1.5rem;
  }  
} /* END */


/* 小デバイス（横向きモバイル, 768px 未満）
==============================================*/
@media screen and (max-width:767.98px) {
h1{
    font-size: 2rem;
}    
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.3rem;
}
#page-top .jumbotron-fluid{
    height: 320px;
}
#page-top section{
    padding-top: 50px;
}
#page-top section .container > h2{
    margin-bottom: 15px;
    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;
}

/* 下層ページ */
    
#page section {
    padding: 3rem 0 0;
}

/* ヒーローセクション モバイル表示用調整 */
#page-top .jumbotron-fluid {
  height: auto;
  padding: 3rem 1rem;
  text-align: center;
}

#page-top .jumbotron-fluid .container {
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.hero-text {
  transform: none !important;
  max-width: 100%;
  padding: 1rem;
  background-color: rgba(0, 0, 0, 0.6);
  border-radius: 10px;
  text-align: center;
  margin: 0 auto;
  }

.hero-text h1 {
  font-size: 1.8rem;
}

.hero-desc {
  font-size: 1rem;
  max-width: 100%;
  margin-top: 0.75rem;
}

.hero-text .btn {
  font-size: 0.95rem;
  padding: 0.8rem 1.5rem;
}
  
} /* END */


/* 極小デバイス（縦向きモバイル, 576px 未満）
==============================================*/
@media screen and (max-width:575.98px) {
.navbar-collapse .btn {
    margin: 5px auto;
}

  h1.mb-0 {
    font-size: 1.4rem;
    line-height: 1.3;
  }
}

    
/* トップページ：各セクション */
    
#sec2 .row {
    background-size: auto 300px;
}

/* 下層ページ */

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

@media screen and (max-width: 767.98px) {
  #footer .row {
    border-bottom: none !important;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 575.98px){
  .page-exclusiondeclaration #sec1 .signature .sig-hand{
    font-size: 1.05em;       /* 少しだけ縮めて滲み防止 */
    letter-spacing: 0;       /* 手書き風は詰めすぎない */
    line-height: 1.7;
  }
  .page-exclusiondeclaration #sec1 .signature .sigbox > .rline:nth-of-type(2){
    --offset: 2ch;           /* PCで4ch → モバイルで2ch程度に */
  }
}

