@charset "UTF-8";
/* 一時滞在施設入館登録サイト CSS */


:root {
    
  --bl-col-2-left-background: linear-gradient(to right, rgba(242, 245, 255, .9) 0%, rgba(242, 245, 255, .9) 16.6666%, rgba(255, 255, 255, 1) 16.6667%, rgba(255, 255, 255, 1) 100%);
  --bl-col-3-left-background: linear-gradient(to right, rgba(242, 245, 255, .9) 0%, rgba(242, 245, 255, .9) 24.9999%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 100%);
  --bl-col-4-left-background: linear-gradient(to right, rgba(242, 245, 255, .9) 0%, rgba(242, 245, 255, .9) 33.3333%, rgba(255, 255, 255, 1) 33.3334%, rgba(255, 255, 255, 1) 100%);
  --bl-col-5-left-background: linear-gradient(to right, rgba(242, 245, 255, .9) 0%, rgba(242, 245, 255, .9) 41.6667%, rgba(255, 255, 255, 1) 41.6667%, rgba(255, 255, 255, 1) 100%);
  --bl-col-6-left-background: linear-gradient(to right, rgba(242, 245, 255, .9) 0%, rgba(242, 245, 255, .9) 50%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 100%);
    
}




/* =================================

   言語設定

================================= */

/*   言語設定 個別   */
.ktkn-ichijitaizai-full-en {
    background-image: url('../img/pict-icon-man-en.svg');
    padding: 0;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px;
    margin-left: 19px;
}
.ktkn-ichijitaizai-full-zh {
    background-image: url('../img/pict-icon-man-zh.svg');
    padding: 0;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px;
    margin-left: 19px;
}
.ktkn-ichijitaizai-full-ko {
    background-image: url('../img/pict-icon-man-ko.svg');
    padding: 0;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px;
    margin-left: 19px;
}

.ktkn-popover-body-btn{
    overflow: hidden;
}

.ktkn-popover-content.position-relative{
    overflow: hidden;
}

/* =================================

   共通

================================= */

/* フォントサイズをリセット */
html{
    font-size: 100%;
}

/* 最低画面幅をリセット 画面下部余白設定 */
body{
    margin-bottom: 40px;
    min-width: 280px;
}

@media (max-width: 575px) {
    
    body{
        margin-bottom: 80px;
    }
    
}

.kt-nav-header-pagetop{
    position: absolute;
    width: 90%;
    z-index: 2;
}

.modal-title{
    color: #222;
    font-weight: bold;
}

.kt-common-header{
    background-color: rgba(0,32,99,0.8);
    color: #fff;
    min-height: 4.125rem;
    z-index: 1;
}

.kt-adms-regi-ttl-back-btn{
    padding: 4px 8px;
    margin-right: 4px;
    margin-left: 3px;
    border-radius: 4px;
}

.kt-adms-regi-ttl-back-btn:hover{
    background-color: rgba(0,0,0,.5);
    
}

.kt-adms-regi-ttl-back-btn img{
    width: 14px;
}

.kt-common-header h1{
    font-size: 1.5rem;
}

.main-start{
    position: relative;
    top: -4.125rem;
}

.kt-adm-main-720{
    max-width: 720px;
}

.kt-adm-main-980{
    max-width: 980px;
}

#page-top{
  position: relative;
  display: block;
  width: 60px;
  height: 70px;
  text-decoration: none;
}

#page-top::before{
	content: "";
	display: block;
	background-image: url("../img/btn-pagetop.svg");
	background-repeat: no-repeat;
	background-position: center center;
  position: absolute;
  width: 47px;
  height: 35px;
  top: 18px;
  left: 7px;
  margin: auto;
}

#page-top:focus{
    right: 0!important;
}

.kt-h2{
    font-size: 1.25rem;
    font-weight: bold;
    border-left: 8px solid rgba(51,77,130,.6);
    line-height: 1.1; padding-left: 6px;
    margin-bottom: 1rem;
}

.btn-orange {
  color: #fff;
  background-color: #FB5B01;
  border-color: #FB5B01;
}

.btn-orange:focus,
.btn-orange:hover {
  color: #fff;
  background-color: #C74700;
  border-color: #C74700;
}

.btn-orange:active {
  color: #fff;
  background-color: #FB5B01;
  border-color: #FB5B01;
}

/*  レスポンシブ   */

@media (max-width: 575px) {

    .kt-btn-xs-sp{
        width: 80%!important;
        display: block;
        margin-left: auto!important;
        margin-right: auto!important;
    }
    
    .w-xs-75{
        width: 75%!important;
    }
}

@media (min-width: 576px) {

    .kt-btn-sm-160{
        min-width: 160px!important;
    }

}

.kt-fs18{
    font-size: 1.125rem;
}

/* ==================================================== */
/*
*/ /*               FORM
*/
/* ==================================================== */

/* ---------------- BACKGROUND -------------- */

.bl-col-2-left-bg { /*  2 COL  */
  background: var(--bl-col-2-left-background);
}
.bl-col-3-left-bg { /*  3 COL  */
  background: var(--bl-col-3-left-background);
}
.bl-col-4-left-bg { /*  4 COL  */
  background: var(--bl-col-4-left-background);
}
.bl-col-5-left-bg { /*  5 COL  */
    background: var(--bl-col-5-left-background);
}
.bl-col-6-left-bg { /*  6 COL  */
  background: var(--bl-col-6-left-background);
}
/*
*/
/* --------- SM 576px  --------- */
/*
*/
@media (min-width: 576px) { /*  sm  */
  .bl-col-sm-2-left-bg { /*  2 COL  */
    background: var(--bl-col-2-left-background);
  }
  .bl-col-sm-3-left-bg { /*  3 COL  */
    background: var(--bl-col-3-left-background);
  }
  .bl-col-sm-4-left-bg { /*  4 COL  */
    background: var(--bl-col-4-left-background);
  }
  .bl-col-sm-5-left-bg { /*  5 COL  */
    background: var(--bl-col-5-left-background);
  }
  .bl-col-sm-6-left-bg { /*  6 COL  */
    background: var(--bl-col-6-left-background);
  }
}
/*
*/
/* --------- MD 768px  --------- */
/*
*/
@media (min-width: 768px) { /*  md  */
  .bl-col-md-2-left-bg { /*  2 COL  */
    background: var(--bl-col-2-left-background);
  }
  .bl-col-md-3-left-bg { /*  3 COL  */
    background: var(--bl-col-3-left-background);
  }
  .bl-col-md-4-left-bg { /*  4 COL  */
    background: var(--bl-col-4-left-background);
  }
  .bl-col-md-5-left-bg { /*  5 COL  */
    background: var(--bl-col-5-left-background);
  }
  .bl-col-md-6-left-bg { /*  6 COL  */
    background: var(--bl-col-6-left-background);
  }
}
/*
*/
/* --------- LG 992px  --------- */
/*
*/
@media (min-width: 992px) { /*  lg  */
  .bl-col-lg-2-left-bg { /*  2 COL  */
    background: var(--bl-col-2-left-background);
  }
  .bl-col-lg-3-left-bg { /*  3 COL  */
    background: var(--bl-col-3-left-background);
  }
  .bl-col-lg-4-left-bg { /*  4 COL  */
    background: var(--bl-col-4-left-background);
  }
  .bl-col-lg-5-left-bg { /*  5 COL  */
    background: var(--bl-col-5-left-background);
  }
  .bl-col-lg-6-left-bg { /*  6 COL  */
    background: var(--bl-col-6-left-background);
  }
}
/*
*/
/* --------- XL 1200px  --------- */
/*
*/
@media (min-width: 1200px) { /*  xl  */
    .bl-col-xl-2-left-bg { /*  2 COL  */
      background: var(--bl-col-2-left-background);
    }
    .bl-col-xl-3-left-bg { /*  3 COL  */
      background: var(--bl-col-3-left-background);
    }
    .bl-col-xl-4-left-bg { /*  4 COL  */
      background: var(--bl-col-4-left-background);
    }
    .bl-col-xl-5-left-bg { /*  5 COL  */
      background: var(--bl-col-5-left-background);
    }
    .bl-col-xl-6-left-bg { /*  6 COL  */
      background: var(--bl-col-6-left-background);
    }
}


.form-select {
  border-radius: 0;
  border-width: 2px; /*2.5px;*/
}
.form-control {
  border-radius: 0;
  border-width: 2px; /*2.5px;*/
}

.form-check-label{
 font-size: .9375rem;
}
.col-form-label {
  font-size: .9375rem;
}
.label-display {
    display: grid !important;
}

.form-check-input{
 font-size: 1.1rem;
}

.form-check-input {
 margin-top: .1em;/*2.5em*/
}

.form-check {
 padding-left: 1.6rem;/*1.5em;*/
}

.form-check-inc-div {
 display:inline-block;
 margin-right:0px;
}

.w-5em {
  width: 5em !important;
}
.w-6em {
  width: 6em !important;
}
@media (min-width: 576px) {
  .bl-row-input {
    border-top: 1px solid #bbb;
  }
  .bl-row-input-border-bottom, .bl-input-group .bl-row-input:last-child {
    border-bottom: 1px solid #bbb;
  }
}
@media (max-width: 575px) {
  .bl-row-input > dt,/* 2025-03 legend 追加 */
  .bl-row-input > legend,/* 2025-03 legend 追加 */
  .bl-row-input > label,
  .bl-row-input > div.bl-label{
    margin-left: 12px;
    margin-right: 12px;
    width: calc(100% - 24px);
    background-color: rgba(242, 245, 255, .9); /*rgba(232, 235, 255, .9);*/
    margin-bottom: 6px; /* 6px;*/ /*rgba(242,245,255,1);*/
    margin-top: 5px;
    border-top: 1px solid rgba(0, 0, 255, .2);
    border-bottom: 1px solid rgba(0, 0, 255, .2);
  }
 
  .bl-row-input-sysdiv {
    margin-left: 12px;
    margin-right: 12px;
    width: calc(100% - 24px);
    background-color: rgba(242, 245, 255, .9); /*rgba(232, 235, 255, .9);*/
    margin-bottom: 6px; /* 6px;*/ /*rgba(242,245,255,1);*/
    margin-top: 5px;
    border-top: 1px solid rgba(0, 0, 255, .2);
    border-bottom: 1px solid rgba(0, 0, 255, .2);
  }
}

.bl-row-input > div > p {
  word-break: break-all;
}

.bl-row-input > div > label {
  word-break: break-all;
}

/* =================================

   トップ画面

================================= */

/*. ランゲージボタン  */
.kt-btn-Language{
    letter-spacing: -0.02em;
    border-width: 2px;
    border-color: white;
    background-color: #4a7fc1 !important;
    color: white;
    border-radius: 4px;
}

.kt-btn-Language:hover{
    /* background-color: #eee!important; */
    background-color: #6a9fe1 !important;
    color: #eee !important;
}

.kt-btn-Language:focus{
    background-color: #eee;
    box-shadow: 0 0 0 5px #ccc!important;
}

.kt-btn-Language:active{
    background-color: #e3e3e3!important;
    box-shadow: 0 0 0 5px transparent!important;
}

/*. ランゲージメニュー  */
.offcanvas-top.kt-lang-offcanvas-top{
    height: 6.875rem;/*110px;*/
}

.kt-lang-offcanvas-top .offcanvas-body{
    text-align: center;
}

.kt-lang-offcanvas-top .offcanvas-body .btn{
    width: 18%;
}  

/*. ランゲージメニュー：ボタン  */
.kt-lang-offcanvas-top .offcanvas-body .btn:hover{
    background-color: #eee;
    box-shadow: none!important;
}  

.kt-lang-offcanvas-top .offcanvas-body .btn:focus{
    background-color: #e9e9e9;
    box-shadow: 0 0 0 3px #ccc!important;
    color:#111;
}

.kt-lang-offcanvas-top .offcanvas-body .btn:active{
    background-color: #d9d9d9;
    box-shadow: none!important;
}


@media (max-width: 575px) {
    
    .offcanvas-top.kt-lang-offcanvas-top{
        height: 18.125rem;/*290px;*/
        max-height: 100%;
    }
    
  .kt-lang-offcanvas-top .offcanvas-body .btn{
      width: 100%;
      margin-bottom: 8px;
      padding: 6px;
    }  
}

/* トップページ：タイトル  */

.kt-h1-site-ttl{
    font-size: 2.25rem;
    color: #666;
}

/* トップページ：登録ボタン  */

.kt-adms-regi-start-button{
    height: 9.5625rem;/*153px;*/
    width: 243px;
  	background-color: #128476;/*   #04aa9c;  */
    background: linear-gradient(to right, #04aa9c 0%, #04aa9c 100%);
    color: #fff;
    border-radius: 8px;
    border:0 none;
    font-size: 1.875rem;
}
    .kt-adms-regi-start-button:visited {
        color: #fff;
    }

.kt-adms-regi-start-button img{
    height: 60px;
    width: 45px;
}

.kt-adms-regi-start-button:focus,
.kt-adms-regi-start-button:hover{
    color: #fff;
    background-color: #029384;
    background: linear-gradient(to right, #128476 0%, #128476 100%);
}

.kt-adms-regi-start-icon-ichijitaizai{
    /*margin-left: 8px;*/
}

@media (max-width: 300px) {  
    
     .kt-adms-regi-start-button{
        width: 100%;
    }
}

/* トップページ：お知らせ・説明などのメッセージエリア  */
.kt-adms-regi-start-msg-area{
    background-color: #DCF0FF;
    border-radius: 8px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 36px;
    padding: 16px;
    color:#0066BE;
    max-width: 500px;
}

.kt-adms-regi-start-msg-area h3{
    font-size: 1.125rem;
    font-weight: bold;
}

.kt-adms-regi-start-msg-area hr{
    background-color: transparent;
    border-top: 2px dashed #0066BE;
}

.kt-adms-regi-start-msg-area p:last-child{
    margin-bottom: 0;
}

/* =================================

   利用規約

================================= */

.kt-terms-of-service-area{
    max-height: calc(100vh - 11.5rem - 40px);
    /*max-width: 720px;*/
    overflow-y: auto;
    margin: 8px auto;
}

@media (max-width: 575px) {
    
    .kt-terms-of-service-area{
        max-height: calc(100vh - 11.5rem - 80px);
    }
}

.kt-terms-of-service-area h2{
    font-size: 1.25rem;
    font-weight: bold;
}
.kt-terms-of-service-area h3{
    font-size: 1.125rem;
    font-weight: bold;
}

.kt-terms-of-service-area h4,
.kt-terms-of-service-area h5{
    font-size: 1.125rem;
    font-weight: normal;
}

/* =================================

   登録確認

================================= */

.kt-adm-regi-comp-number{
    font-size: 2rem;
    font-weight: bold;
}

/* =================================

   一時滞在施設検索

================================= */

/*  絞り込みモーダル  */
.ktkn-filter-check-groupe .form-check-label{
    font-size: 1.125rem;
    line-height: 1.1;
}

.ktkn-filter-check-groupe .form-check{
    padding-top: .9rem;
    padding-bottom: .9rem;
    margin: 0;
    padding-left: 0em;
}

.ktkn-filter-check-groupe{
    padding: 10px;
}

.ktkn-filter-check-groupe .form-check-label{
    padding-top: .9rem;
    padding-bottom: .9rem;
    margin-top: -.9rem;
    margin-bottom: -.9rem;
    padding-left: 34px;
    display: block;
    border-bottom: 2px solid #fff;
}

.ktkn-filter-check-groupe input:checked + .form-check-label{
    background-color: rgba(196,209,234,.5);
}

.ktkn-filter-check-groupe .form-check .form-check-input {
    margin-left: 0;
    margin-left: 8px;
}

.ktkn-modal-spmap-filter .modal-footer{
    padding: 10px;
}

/*  絞り込みボタン  */
.kt-map-filter-box {
    float: right;
    margin-left: 10px;
    /* max-width: 8.3rem;*/
    max-width: 12rem;
    height: 38px;
    background-color: rgba(0, 32, 99, .85);
}

.kt-map-filter-box .btn {
    height: 38px;
    color: #fff!important;
    position: relative;
    padding-left: 40px;
    line-height: 1.0;
}

.kt-map-filter-box .btn::before{
    content: "";
    display: block;
    height: 37px;
    width: 38px;
    left: 0;
    top: 0;
    position: absolute;
    background-color: rgba(0, 32, 99, 1);
    background-image: url("../img/pict-menu-filter-white.svg");
    background-repeat: no-repeat;
    background-position: center center;
}

.kt-map-filter-box .btn.ktkn-filtered::before{
    background-color: rgba(255, 165, 0, 0.0) !important;
}
.ktkn-modal-spmap-filter{
    /* max-width: 300px!important; */
    width: 300px!important;
    margin-left: auto;
    margin-right: auto;
}

.ktkn-popover {
        max-width: 300px!important;
}

.ktkn-popover-sp{
    position: absolute;
    left:-150px!important; 
    top:-390px!important;
    
}

.ktkn-popover .kt-map-popup-ichijitaizai{
    min-width: 200px!important;
    width: 300px!important;
}
.ktkn-popover-sp,
.ktkn-popover-sp > .ktkn-popover-content{
    min-width: 200px!important;
     width: 300px!important;
}

@media (max-width: 339px) {
    
    .ktkn-popover .kt-map-popup-ichijitaizai{
        width: 250px!important;
    }
    .ktkn-popover-sp,
    .ktkn-popover-sp > .ktkn-popover-content{
        width: 250px!important;
    }
    
    .ktkn-popover-sp{
        margin-left: 25px!important;
    }

}

.ktkn-popover-bar{}

.ktkn-popover,
.ktkn-popover .ktkn-popover-content {
    border-radius: 10px;
}

.ktkn-popover .ktkn-popover-content {
    z-index: 1;
}

.ktkn-popover .ktkn-popover-body {
    height: 326px;
    padding: 0!important;
}


.ktkn-popover-body-btn{
    border-top: 1px solid #ccc;
    padding-left: 10px;
    padding-right: 10px;
}

.ktkn-popover-body-btn .btn{
    padding-top: 0;
    padding-bottom: 0;
    height: 38px;
    margin-top: 8px;
}

/*   ポップアップ:タイトル行（ヘッダー）    */
.ktkn-popover .ktkn-popover-header {
    padding: 0 31px 0 44px!important;
    height: 3rem;
    position: relative;
}

/*   ポップアップ:タイトル行：アイコン    */
.ktkn-popover .ktkn-popover-header:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    margin:-1px 0 0!important;
    width: 36px;
    height: 3rem!important;
    
    background-image: url("../img/pict-ichiji-taizai-w.svg");
    background-size: 25px 29px;
    background-repeat: no-repeat;
    background-position: 6px 10px;
    /*background-color: #00ac9d*/
}

.ktkn-ichijitaizai-full{
    color: #fff;
    display:inline-block;
    height: 24px;
    width: 24px;
    box-sizing: border-box;
    text-align: center;
    font-size: .875rem;
    padding: 3px 4px 0;
    background-color: #cc0000;
    border-radius: 12px;
    margin-left: 3px;
}

/*   ポップアップ:タイトル行    */
.ktkn-popover .ktkn-popover-bar {
    top: 7px!important;
    right: 3px!important;
}

.kt-map-popup-ichijitaizai .ktkn-popover-header:before {
    background-color: #00ac9d
}

/*   ポップアップ:タイトル行：閉じるボタン（X）    */
.ktkn-popover .ktkn-popover-bar .btn-close {
    width: 1,25em;
    height: 1.25em;
    padding: 0.5em 0.5em;
}

/*   ポップアップ:タイトル行アイコン上書き無効化    */
.kt-map-popup-ichijitaizai .ktkn-popover-header:after {
    content: ""!important;
}

/*   ポップアップ:タイトル（施設名）*/
.ktkn-popover .ktkn-popover-header b {
    font-size: 1.125rem!important;
    line-height: 1.1;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    margin-right: 0;/*24px;*/
}

/*   ポップアップシャドウ  */
.esri-popup--shadow {
    box-shadow: 4px 4px 6px rgba(0,0,0,.25)!important;
}

/*   マップピン  */

.kt-adms-map-pin{
   -webkit-filter: drop-shadow(3px 3px 5px rgba(0,0,0, 0.5))!important;
    filter: drop-shadow(3px 3px 5px rgba(0,0,0, 0.5))!important;
}

/*   現在地  */

.ktkn-spmap-current-position{
    background-color: #3460FB;
    height: 22px;
    width: 22px;
    border-radius: 11px;
    border:2px solid #fff;
    box-shadow: 0px 0px 16px rgba( 52,96,251,.9);
}

/*   拡大・縮小  */

.kt-map-zoom-button {
	top: auto;
	left: 10px;
    bottom:10px;
}

/*=========== デモコード #実装時不要  ============= */
@media (max-height: 700px) {
    
    .kt-map-area-demo{
         background-position: center bottom -620px!important;
    }
    
    .ktkn-popover-pointer{
        top: calc(100vh - 140px)!important;
    }
    
    .kt-adms-map-pin{
        bottom: 100px!important;
    }
    
    .ktkn-spmap-current-position{
        bottom: 180px!important;
    }
    
    @media (max-height: 660px) {
        
        .kt-map-area-demo{
             background-position: center bottom -660px!important;
        }

        .ktkn-popover-pointer{
            top: calc(100vh - 100px)!important;
        }

        .kt-adms-map-pin{
            bottom: 60px!important;
        }
        
        .ktkn-spmap-current-position{
            bottom: 140px!important;
        }

        @media (max-height: 620px) {

            .kt-map-area-demo{
                 background-position: center bottom -700px!important;
            }

            .ktkn-popover-pointer{
                top: calc(100vh - 60px)!important;
            }

            .kt-adms-map-pin{
                bottom: 20px!important;
            }
            
            .ktkn-spmap-current-position{
                bottom: 90px!important;
            }
            
            @media (max-height: 670px) {

                .kt-map-area-demo{
                     background-position: center bottom -710px!important;
                }

                .ktkn-popover-pointer{
                    top: calc(100vh - 50px)!important;
                }

                .kt-adms-map-pin{
                    bottom: 10px!important;
                }

            }

        }

    }
}
/*   地図検索   */
.kt-map-seach-box {
    /** max-width: 12.4rem; */
    padding-top: 2px;
    padding-left: 1px;
    padding-right: 1px;
    padding-bottom: 0px;
    background-color: #001f60;
}

.kk-modal-backdrop {
    z-index: 2000;
}
.kk-modal.modal {
    z-index: 2050;
}

.ktkn-filtered {
    background-color: rgba(255, 165, 0, 0.8) !important;
}