@charset "UTF-8";
.back-to-top{position:fixed;display:none;right:30px;bottom:30px;z-index:99}
.my-6{margin-top:6rem;margin-bottom:6rem}
.py-6{padding-top:6rem;padding-bottom:6rem}
.bg-icon{background:url(../img/bg-icon.png) center center repeat;background-size:contain}
h1,h2,h3,h4,h5{font-family:Hiragino Kaku Gothic ProN,sans-serif;font-weight:600;font-style:normal}
h1{color:#35b597}
h2{font-size:1.3rem}
/*h3{font-size:1.3rem}*/
h4{margin-top:10px;margin-bottom:10px;padding-left:5px;font-size:1.3rem;border-left:solid 5px #35b597}
h5{font-size:1.1rem}
p{line-height:2}
p{font-family:Hiragino Sans, Hiragino Kaku Gothic ProN,sans-serif;font-weight:400;font-style:normal}
p strong{font-family:Hiragino Sans, Hiragino Kaku Gothic ProN,sans-serif;font-weight:600;font-style:normal;line-height:2}
.shinji_font p{font-family: "MFW-PKaishoMCBK1ProN-Bold" !important}
.shinji_font{font-family: "MFW-PKaishoMCBK1ProN-Bold" !important}
.link_box2 a{text-decoration:none !important;color:#35b597 !important;border-bottom:1px solid #35b597 !important;padding-bottom:2px !important;line-height:2 !important;}
.link_box2 a:hover{color:orange !important;border-bottom:1px solid orange !important;}
.link_box2_disabled a,.link_box2_disabled a:hover{text-decoration:none;color:silver;border-bottom:1px solid silver;padding-bottom:2px;line-height:2}
#spinner{opacity:0;visibility:hidden;transition:opacity .5s ease-out,visibility 0s linear .5s;z-index:99999}
#spinner.show{transition:opacity .5s ease-out,visibility 0s linear 0s;visibility:visible;opacity:1}
.wrapper{-webkit-box-shadow:0 0 3px #999;-moz-box-shadow:0 0 3px #999;box-shadow:0 0 3px #999;filter:progid:DXImageTransform.Microsoft.gradient(startColorStr='#ffffff', EndColorStr='#dbed95') progid:DXImageTransform.Microsoft.Shadow(Strength=5, Direction=155, Color='#999999');overflow:hidden}
.custom-border{border:2px solid #000;padding:20px;border-radius:5px;box-shadow:0 4px 8px rgba(0,0,0,.1)}
.btn{font-weight:500;transition:.5s}
.btn.btn-outline-primary:hover,.btn.btn-outline-secondary:hover,.btn.btn-primary,.btn.btn-secondary{color:#fff}
.btn-square{width:38px;height:38px}
.btn-sm-square{width:32px;height:32px}
.btn-lg-square{width:48px;height:48px}
.btn-lg-square,.btn-sm-square,.btn-square{padding:0;display:flex;align-items:center;justify-content:center;font-weight:400}
.btn-stitch{display:flex;justify-content:center;align-items:center;text-decoration:none;background-color:#d3d3d3;color:#000;font-family: "MFW-PAotoGothicStdN-Regular" ;font-size:.9rem;min-height:70px}
.btn-stitch:hover{background-color:#a9a9a9;color:#fff;text-decoration:none}
.fixed-top{transition:.5s}
.top-bar{height:45px;border-bottom:1px solid rgba(0,0,0,.07)}
.navbar .navbar-nav .nav-link{padding:15px 15px;color:#555;font-weight:500;outline:0}
.navbar .navbar-nav .nav-item a:hover{color:#000}
.navbar .navbar-nav .nav-link.active,.navbar .navbar-nav .nav-link:hover{color:var(--dark)}
@media (max-width:991.98px){
.navbar .navbar-nav{margin-top:10px;border-top:1px solid rgba(0,0,0,.07);background:inherit}
.navbar .navbar-nav .nav-link{padding:10px 10px}
}
@media (min-width:992px){
.navbar .nav-item .dropdown-menu{display:block;visibility:hidden;top:100%;transform:rotateX(-75deg);transform-origin:0 0;transition:.5s;opacity:0}
.navbar .nav-item:hover .dropdown-menu{transform:rotateX(0);visibility:visible;transition:.5s;opacity:1}
}
.carousel-caption{top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;text-align:start;z-index:1}
.carousel-control-next,.carousel-control-prev{width:15%}
.carousel-control-next-icon,.carousel-control-prev-icon{width:3rem;height:3rem;background-color:var(--primary);border:10px solid var(--primary);border-radius:3rem}
@media (max-width:768px){
#header-carousel .carousel-item{position:relative;min-height:450px}
#header-carousel .carousel-item img{position:absolute;width:100%;height:100%;object-fit:cover}
}
.page-header{padding-top:12rem;padding-bottom:6rem;background:url(../img/carousel-1.jpg) top right no-repeat;background-size:cover}
.breadcrumb-item+.breadcrumb-item::before{color:#999}
.section-header{position:relative;padding-top:25px}
.section-header::before{position:absolute;content:"";width:60px;height:2px;top:0;left:50%;transform:translateX(-50%);background:var(--primary)}
.section-header::after{position:absolute;content:"";width:90px;height:2px;top:10px;left:50%;transform:translateX(-50%);background:var(--secondary)}
.section-header.text-start::after,.section-header.text-start::before{left:0;transform:translateX(0)}
.about-img img{position:relative;z-index:2}
.about-img::before{position:absolute;content:"";top:0;left:-50%;width:100%;height:100%;background-image:-webkit-repeating-radial-gradient(#fff,#eee 5px,transparent 5px,transparent 10px);background-image:-moz-repeating-radial-gradient(#fff,#eee 5px,transparent 5px,transparent 10px);background-image:-ms-repeating-radial-gradient(#fff,#eee 5px,transparent 5px,transparent 10px);background-image:-o-repeating-radial-gradient(#fff,#eee 5px,transparent 5px,transparent 10px);background-image:repeating-radial-gradient(#fff,#eee 5px,transparent 5px,transparent 10px);background-size:20px 20px;transform:skew(20deg);z-index:1}
.nav-pills .nav-item .btn{color:var(--dark)}
.nav-pills .nav-item .btn.active,.nav-pills .nav-item .btn:hover{color:#fff}
.product-item{box-shadow:0 0 45px rgba(0,0,0,.07)}
.product-item img{transition:.5s}
.product-item:hover img{transform:scale(1.1)}
.product-item small a:hover{color:var(--primary)!important}
.testimonial-carousel .owl-item .testimonial-item img{width:80px;height:80px}
.testimonial-item{width:80%;margin:0 auto;padding:24px;box-shadow:0 0 45px rgba(0,0,0,.07);border-top:5px solid var(--primary)}
.testimonial-item .testimonial-text{font-size:15px;font-style:italic;margin-bottom:5px;color:#888}
.footer{color:#7e7e7e}
.footer .btn.btn-link{display:block;margin-bottom:5px;padding:0;text-align:left;color:#7e7e7e;font-weight:400;text-transform:capitalize;transition:.3s}
.footer .btn.btn-link::before{position:relative;content:"\f105";font-family:"Font Awesome 5 Free";font-weight:900;color:#7e7e7e;margin-right:10px}
.footer .btn.btn-link:hover{color:var(--light);letter-spacing:1px;box-shadow:none}
.footer .copyright{padding:25px 0;font-size:15px;border-top:1px solid #eee}
.footer .copyright a{color:var(--light)}
.footer .copyright a:hover{color:var(--primary)}
.back-to-top{width:38px;height:38px;border-radius:50%;background:var(--primary);color:#fff;text-align:center;line-height:38px}
.back-to-top{position:fixed;display:none;right:30px;bottom:30px;z-index:99}
.highlight{font-weight:700;color:orange}
.accordion-button:focus{z-index:3;border-color:none;box-shadow:0 0 0 .25rem rgb(13 110 253 / 25%)}
.dropshadow1{text-shadow:1px 1px 2px #000,0 0 1em red,0 0 .2em red}
.accordion-button-style{color:#313131;background-color:#fff;border-top:none!important;border-right:none!important;border-left:1px solid #313131!important;font-weight:400!important}
.accordion-button-style:hover{background-color:#e7e7e7!important;color:#000!important}
.btn,.btn-outline-secondary:active{box-shadow:none!important}
.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:#313131;text-align:left;background-color:#fff;border-top:none!important;border-right:none!important;border-left:1px solid #313131!important;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}
.accordion-button:not(.collapsed){color:#313131;background-color:#fff}
.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23313131'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}
.accordion-button:not(.collapsed)::after{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23313131'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");transform:var(--bs-accordion-btn-icon-transform)}
.accordion-button:hover{z-index:2}
.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0}
.accordion{--bs-accordion-color:#212529;--bs-accordion-bg:#fff;--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:1px;--bs-accordion-border-radius:0.375rem;--bs-accordion-inner-border-radius:calc(0.375rem - 1px)!important;--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:#212529;--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color:transparent!important;--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25)!important;--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:#0c63e4;--bs-accordion-active-bg:#e7f1ff}
.accordion-button:focus,.accordion-button:focus-visible{outline:0!important;box-shadow:none!important;border-top:none!important;border-right:none!important;border-left:none!important;border-bottom:none!important}
#page_top a{position:fixed;display:block;width:90px;height:90px;text-decoration:none;z-index:3}
#page_top a::before{font-family:'Font Awesome 5 Free';font-weight:900;content:'\f102';font-size:25px;color:#a9a9a9;position:absolute;width:25px;height:25px;top:-40px;bottom:0;right:0;left:0;margin:auto;text-align:center;z-index:3}
#page_top a::after{content:'PAGE TOP';font-size:13px;color:#fff;position:absolute;top:45px;bottom:0;right:0;left:0;margin:auto;text-align:center;color:#000;z-index:3}

.bg_gra_1{background-color:#a9a9a9}
.bg_grey{background-color:#EBEBEB}
h3{font-size:1.1rem;padding:8px 5px;color:#fff;font-family: "MFW-PAotoGothicStdN-DeBold" !important;}

h1{font-size:2rem;line-height:1.5}
@media (max-width:768px){
h1{font-size:1.8rem}
}

@media print{
h1{font-size:1.6rem}
}

/*
.container-fluid h1{font-size:1.6rem;font-weight:700;line-height:1.5;color:#35b597}
.container h1{font-size:1.6rem;line-height:1.5;color:#35b597;font-weight:700}
*/
h2{color:#35b597;font-size:1.4rem}
.small5{font-size:80%}
/*
@media (min-width:768px){
.container-fluid h1{font-size:1.6rem;line-height:1.5;margin:5px auto}
.container h1{font-size:1.6rem;line-height:1.5;margin:5px auto}
}
*/
@media (min-width: 768px) {
.progress-nav-right {
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    background-color: white;
    padding: 10px;
    border: 1px solid #ddd;
    z-index: 1030;
    width: 180px;
}

.progress-nav-right .nav-link {
    color: #007bff;
    font-weight: 500;
    padding: 5px 10px;
    margin-bottom: 5px;
    border-radius: 0.25rem;
}

.progress-nav-right .nav-link.active {
    background-color: #007bff;
    color: white;
}
}

/*直使のお言葉*/
.chokushi_font{font-family: "MFW-UDDigiKyokashoProN-Medium";
    color:#6a4793}


    /* PC向け（デフォルトのスタイル） */
.hk_nav_link a {
  text-decoration: none;
  padding: 3px 15px;
  color: #555;
  position: relative;
  font-size: 90%;
  margin-bottom: 10px;
  display: inline-block;
}

.hk_nav_link a:not(:last-child) {
  border-right: 1px solid #999999; /* 縦バー */
}

.hk_nav_link a:hover {
  color: blue; /* ホバー時の色変更（任意） */
}

/* スマホ向け（576px以下の画面幅） */
@media (max-width: 576px) {
  .hk_nav_link {
      display: flex;
      flex-wrap: wrap; /* 複数行に対応 */
      gap: 10px; /* ボタン間の隙間 */
  }

  .hk_nav_link a {
      flex: 1 1 45%; /* 2列にする */
      text-align: center;
      border-right: none; /* 縦線を削除 */
      border: 1px solid #999999; /* 枠線の代わり */
      padding: 6px;
      margin-bottom: 5px;
      font-size: 90%;
      display: inline-block;
      box-sizing: border-box;
  }
}     

.lightbox-caption{font-size:1.0rem !important;font-family: "MFW-PAotoGothicStdN-Regular" !important;}
@media (min-width: 768px) {
.lightbox-caption{font-size:1.0rem !important;font-family: "MFW-PAotoGothicStdN-Regular" !important;}
}

.jugyou_navi li{font-size:0.9rem !important;font-family: sans-serif;}
.jugyou_navi h5{font-size:1.0rem !important;font-family: sans-serif;}

.img-small {
  max-width: 200px;
  height: auto;
}

@media (min-width: 768px) { /* md以上のとき */
  .img-small {
    max-width: 200px;
  }
}

@media (min-width: 1200px) { /* xl以上のとき */
  .img-small {
    max-width: 240px;
  }
}


.bg-grey{background-color: #EBEBEB;}
.bg-green{background-color: #e0f5d5;}


html, body {
  overflow-x: hidden;
}

/* グレーボタン */
.btn-gray-custom {
  display: block;
  padding: 14px 10px;
  background: linear-gradient(145deg, #f1f1f1, #dfdfdf);
  color: #333;
  text-align: center;
  border: 1px solid #bbb;
  border-radius: 6px;
  font-weight: 500;
  text-decoration: none;

  /* 立体感 */
  box-shadow: 2px 2px 5px rgba(0,0,0,0.15),
              -2px -2px 5px rgba(255,255,255,0.7);

  transition: all 0.2s ease;
}

/* hover */
.btn-gray-custom:hover {
  background: linear-gradient(145deg, #e0e0e0, #cfcfcf);
  text-decoration: none;
  color: #000;
}

/* 押した感じ */
.btn-gray-custom:active {
  box-shadow: inset 2px 2px 5px rgba(0,0,0,0.2),
              inset -2px -2px 5px rgba(255,255,255,0.6);
}

.btn-gray-custom:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(0,0,0,0.1);
}


@media print {
  /* コンテナ幅を固定 */
  .container, .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* col-md系を強制適用 */
  [class*="col-md-"] {
    float: left;
  }

  .col-md-1 { width: 8.333333% !important; }
  .col-md-2 { width: 16.666667% !important; }
  .col-md-3 { width: 25% !important; }
  .col-md-4 { width: 33.333333% !important; }
  .col-md-5 { width: 41.666667% !important; }
  .col-md-6 { width: 50% !important; }
  .col-md-7 { width: 58.333333% !important; }
  .col-md-8 { width: 66.666667% !important; }
  .col-md-9 { width: 75% !important; }
  .col-md-10 { width: 83.333333% !important; }
  .col-md-11 { width: 91.666667% !important; }
  .col-md-12 { width: 100% !important; }

  /* flex崩れ防止 */
  .row {
    display: flex !important;
    flex-wrap: wrap !important;
  }
}