@charset "utf-8";
/*---THIS SITE---*/
body{background-color: #fff; font-size: 16px; color: #333; font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, Osaka, "MS PGothic", arial, helvetica, sans-serif; min-width: 320px;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, p{margin: 0;}
a{color: #333; transition:all 300ms 0s ease;}
a:hover{text-decoration: underline; color: initial;}

/*---COMMON---*/
/*base*/
img{max-width: 100%;}
ul,li{padding: 0; margin: 0; list-style: none;}
ul.list,
ol{padding-left: 20px;}
ol li{list-style: decimal;}
ul.list li{list-style: disc;}
div,th,td{word-break: break-all; outline:none;}

.bold{font-weight: bold;}
.normal{font-weight: normal;}
.mincho{font-family: "游明朝体", "Yu Mincho", YuMincho, sans-serif;}
.gothic{font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", sans-serif;}
.text-right{text-align: right;}
.text-left{text-align: left;}
.text-center{text-align: center;}
.uline{text-decoration: underline;}
.anime{transition: .3s;}
.short{-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:1;overflow:hidden;}
.short.line-2{-webkit-line-clamp:2;}
.short.line-3{-webkit-line-clamp:3;}
.short-line{-webkit-box-orient:vertical;display:-webkit-box;-webkit-line-clamp:2;overflow:hidden;}
.text-cancel{text-decoration: line-through;}

/*button*/
.btn.btn-line{background-color: #06C755; padding: 0 15px 0 5px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center;}
.btn-line .line_88{border-right: 1px solid rgba(0,0,0,0.08); width: 60px;}
.btn-line > span{font-weight: bold; color: #fff; font-size: 24px;}
.btn-xs{font-size: 12px; padding: 3px 5px;}
.btn-light{border-color: #ccc;}

/*site check*/
.sitetype-local::after,
.sitetype-dev::after{position: fixed; display: block; bottom: 0; right: 0; font-weight: bold; color: #fff; z-index: 9999999; padding: 10px;}
.sitetype-local::after{content: "local"; background-color: #a3ff00;}
.sitetype-dev::after{content: "dev"; background-color: #8b00ff;}

/*width*/
.w-full{width: 100% !important; max-width: 100% !important;}

/*alert*/
#myalert{position: fixed; top: 50%; left: 50%; z-index: 9999; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}
.alert-fixed{font-size: 16px; padding:10px 15px; margin: 0; font-weight: bold; box-shadow: 0 5px 8px rgba(77,77,77,0.2);}

/*position*/
.ab{position: absolute;}
.ab-c{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}
.rela{position: relative;}
.fa,.far,.fas,.fab{margin-right: 5px;}
.no-fa{margin-right: 0;}
.left-fa{margin:0 0 0 5px;}

/*badge*/
.badge-md{font-size: 0.8rem; padding: 5px 15px;}
.badge{color: #fff; font-weight: bold;}

/*paging*/
.paging-u{margin-top: 20px;}
.wrp-paging_text { justify-content:center; display: flex; margin-top: 0.5rem; align-items: center; } 
.wrp-paging_text .p_total { font-weight: bold; margin-right: 0.5rem; } 
.wrp-paging_text .p_text { font-size: 0.8rem; } 
.pagination{justify-content: center;}
.page-item.active .page-link{background-color: #29c697; border-color:#29c697;}
.page-link{color: #29c697;}


/*hover*/
.hov-opa:hover{opacity: 0.8;}

/*map*/
.google-map {position: relative; width: 100%; height: 0; padding-bottom: 45%; overflow: hidden;}
.google-map iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none;}

/*flex*/
.fx-wrp{-webkit-flex-wrap:wrap; flex-wrap:wrap;}
.fx-aro{-webkit-justify-content:space-around; justify-content:space-around;}
.fx-coc{-webkit-justify-content:center; justify-content:center;}
.fx-ced{-webkit-justify-content:flex-end; justify-content:flex-end;}
.fx-str{-webkit-align-items:flex-start; align-items:flex-start;}
.fx-end{-webkit-align-items:flex-end; align-items:flex-end;}
.fx-itc{-webkit-align-items:center; align-items:center;}
.fx-cc{display: flex; align-items:center;}
.fx-bet{display: flex; -webkit-justify-content:space-between; justify-content:space-between;}
.fx-ccc{display: inline-flex; justify-content:center; align-items:center;}
.fx-ex{display: flex; -webkit-justify-content:space-between; justify-content:space-between; -webkit-align-items:center; align-items:center;}
.fx-cos{-webkit-justify-content:flex-start; justify-content:flex-start;}
.fx-arc{display: flex; -webkit-justify-content:space-between; justify-content:space-between; -webkit-flex-wrap:wrap; flex-wrap:wrap;}
.fx-rev{flex-direction: row-reverse;}
.fx-pc,.flex{display: -webkit-flex; display: flex;}

/*grid*/
.grid{display: grid; grid-gap: 20px;}
.grid-2{grid-template-columns: 1fr 1fr;}
.grid-3{grid-template-columns: 1fr 1fr 1fr;}
.grid-4{grid-template-columns: 1fr 1fr 1fr 1fr;}

/*row*/
.row-2{margin: 0 -2px;}
.row-2 > div{padding: 0 2px;}
.row-5{margin: 0 -5px;}
.row-5 > div{padding: 0 5px;}
.row-7{margin: 0 -7px;}
.row-7 > div{padding: 0 7px;}
.row-10{margin: 0 -10px;}
.row-10 > div{padding: 0 10px;}
.row-12{margin: 0 -12px;}
.row-12 > div{padding: 0 12px;}
.row-any > div{margin-bottom: 10px}

/*color*/
.week-blue{color:#60abff;}
.c-red,.week-red{color:#e83939;}
.bg-fff{background-color: #fff;}
.c-fff{color: #fff !important;}

/*form*/
.vali_error {color: #FF3B68; margin-top: 5px; font-size: 12px;}
.step_2, .step_3 {display: none;}
.req{color: #eb0808; display: inline-block; margin: 0 5px;}
.label{font-weight: bold;}
.under_label{margin: -7px 0 10px; font-size: 0.8rem;}
.form-btn{text-align: center; margin-top: 2rem; padding: 1rem 0 0; border-top: 1px solid #ddd;}
.form-btn .btn{min-width: 200px;}
.box-loading{text-align: center; padding: 10rem 0;}
.tg-replace > .vali_error{margin: 0 0 20px;}
.step_3_text{text-align: center; padding: 8rem 15px; font-weight: bold; font-size: 1.2rem;}
.form-consent{text-align: center; background-color: #f9f9fb; padding: 10px; margin: 20px 0;}

/*loading*/
#loading{background-color: rgba(255,255,255,0.98); display: none; text-align: center; width:100%;height:100%;z-index:9999;position:fixed;top:0;left:0; filter:alpha(opacity=65);-moz-opacity:0.65;-khtml-opacity:0.65;}
#loading > span{color: #4DD54D; font-size: 20px; width: 100%; z-index: 99999; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}
#loading > span::before{-moz-osx-font-smoothing:grayscale; font-family: "Font Awesome 5 Free"; -webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1; font-weight: 900;}
#loading > span::before{content: "\f110"; font-size: 56px; position: absolute; top: -60px; animation: fa-spin 1s infinite steps(8); -webkit-animation: fa-spin 1s infinite steps(8);}
#loading small{font-size: 12px; color: #333; display: block; line-height: 1.4; margin-top: 5px}

/*radio checkbox*/
.radio-btn .btn{width: 100%;}
.radio-btn input{display: none;}
.radio-btn input:checked + label.btn {background-color:#5bc0de; color: #fff;}
.custom-file {max-width: 30rem; overflow: hidden;}
.custom-file-label {white-space: nowrap;}

/*---PC---*/
@media (min-width: 768px){
    .pc-hidden{display: none;}
    
}

/*---スマホ---*/
@media only screen and (max-width: 767px) {
    .sm-hidden{display: none;}
    .fx-pc{display: block;}
    .google-map {padding-bottom: 100%;}
    
    /*grid*/
    .grid{grid-gap: 15px;}
    .grid-2,
    .grid-3{grid-template-columns: 1fr 1fr;}
}

@media screen and (max-width: 480px) {
  .lum-lightbox-inner img {
    max-width: 100vw !important;/* スワイプ範囲含む横幅調整 */
    max-height: 100vh !important;/* 上下余白調整 */
  }
.lum-lightbox-inner{left: 0; right: 0;}
}

/*------Sm small------*/
@media only screen and (max-width: 350px) {
    .grid-2,
    .grid-3{grid-template-columns: 1fr;}
}

