@charset "utf-8";
@import url("https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css");
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css");

/* *****共通設定***** */
body
{
    font-size: 16px;
}
#cms-area * {
   font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif !important;
}
body, #page {
    min-width: 0 !important;
}

#maincolumn {
    margin: 0 !important;
}

a {
    color: #444444;
    text-decoration: none;
}

dd {
    margin-bottom: 0;
    margin-left: 0;
}

main{
    display: block;
}

h1 { font-size: 4.5rem; }
h2, h3, h4{
   color: #222200;
   font-weight: bold;
}

.pc { display:none; }
.sp { display:inline;}
@media screen and (min-width: 750px){   
    .pc { display:inline-block; }
    .sp { display:none; }
  }

  @media (prefers-reduced-motion: no-preference) {
    :root {
      scroll-behavior: auto !important;
    }
  }

/* ヘッダー(navbar) */
.navbar{
    font-weight: bold;
}

.navbar .navbar-brand{
    height: 50px;
}
.navbar .navbar-brand img{
    height: 100%;
}

.btn-contact {
    font-size: var(--bs-nav-link-font-size);
    font-weight: var(--bs-nav-link-font-weight);
    padding-left:32px;
    padding-right:32px;
}


/* *****トップページ***** */
/* MarketoForm hack */
.mktoLabel {
    width: 200px !important;
}
#MktoPersonNotes {
    height:100px;
}

span.mktoButtonWrap.mktoInset{
    display:block;
    margin-left:0 !important;
    text-align:center;
}

#sec-support {
    background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,1), rgba(255,255,255,1)), url('/uploads/images/nv/bg-support.webp');
    background-size:contain;
    background-repeat: no-repeat;
}

#sec-navis {
    background:linear-gradient(0deg,rgba(255,255,255,0.3),rgba(255,255,255,0.7), rgba(255,255,255,0.9)), url('/uploads/images/nv/bg-navis.webp');
    background-size:cover;
    background-position:center;
    background-repeat: no-repeat;
}

.column-title {
    background:linear-gradient(0deg,rgba(30,30,30,0.8),rgba(30,30,30,0.8),rgba(30,30,30,0), rgba(30,30,30,0));
    background-size:contain;
    background-repeat: no-repeat;
}

#cms-area section .container > h1{
    margin-bottom: 30px;
    font-size: 2.5rem;
    color:#036eb8;
    font-weight: bold;
}

#cms-area section .container h2{
    margin:0;
}

#cms-area section .container > h2 + p{
	margin: 0 auto 50px;
}


/* *****下層ページ***** */

.breadcrumb{
    font-size: 0.9rem;
    padding:1rem;
}
.breadcrumb a{
    color: rgba(255,255,255,.5);
}
.breadcrumb a:hover,
.breadcrumb a:focus{
    color: rgba(255,255,255,1);
}
.breadcrumb-item+.breadcrumb-item::before{
    content: ">";
    padding-right: 1rem;
    color: rgba(255,255,255,.5);
}
.breadcrumb-item.active{
    color: #ffffff;
}
h1.page-ttl {
    font-size:2rem; 
}
#page h1 + span {
    font-size: 1.5rem;
    font-weight: bold;
    color: #ffffff;
    line-height: 110%;
    margin-top: 0.2rem;
    display: block;
}

#page section {
    padding-bottom: 5rem;
}

#page h1 + small {
    font-size: 1.5rem;
    color: #ffffff;
    line-height: 110%;
    margin-top: 0.2rem;
}

#page h2 + p{
    margin: 0 0 1.2rem;
}
#page main img{
    max-width: 100%;
}
.circle {
    width:15rem;
    height:15rem;
}


/* 特大デバイス（ワイド・デスクトップ, 1200px 以上）
==============================================*/
      
    /* 小デバイス（横向きモバイル, 768px 未満）
    ==============================================*/
    @media screen and (max-width:767.98px) {
    h1{
        font-size: 2rem;
    }    
    main .btn{
        font-size: 0.95rem;
    }

    #contact h3 span:last-child {
        font-size:2.4rem;
    }
    
    /* トップページ：各セクション */
        
    #cms-area h1 + small {
        font-size: 1.5rem;
    }
    #cms-area .jumbotron-fluid{
        height: 320px;
    }
    #cms-area section{
        padding-top: 50px;
    }
    #cms-area section .container > h2{
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    #cms-area section .container > h2 + p{
        margin-bottom: 40px;
    }
    #cms-area section .container h3{
        font-size: 1.2rem;
    }
    #sec2 .row {
        background-size: auto 400px;
    }
    
    #sec-support {
        background:linear-gradient(90deg,rgba(255,255,255,0), rgba(255,255,255,1)), url('/uploads/images/nv/bg-support.webp');
        background-size:cover;
    }

    /* 下層ページ */
        
    #page section {
        padding: 3rem 0 0;
    }
      
    } /* END */
    
    
    /* 極小デバイス（縦向きモバイル, 576px 未満）
    ==============================================*/
    @media screen and (max-width:575.98px) {
         
    /* 下層ページ */
    
    #page section {
        padding: 2rem 0 0;
    }    

    #sec-support {
        background:linear-gradient(90deg,rgba(255,255,255,0.7),rgba(255,255,255,0.8), rgba(255,255,255,0.9)), url('/uploads/images/nv/bg-support.webp');
        background-size:cover;
    }    

    .circle {
        max-width:170px;
        max-height:170px;
    }

    } /* END */