@charset "utf-8";

body{min-width: 320px;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{margin: 0;}
div{outline:none; word-break: break-all;}

/*base*/
img{max-width: 100%; height: auto;}
.img-block{width: 100%; display: block;}

/*ul*/
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;}
ol li ol li{list-style: upper-alpha;}

/*a link*/
a.uline{text-decoration: underline;}
a:hover{text-decoration: none; color: initial; opacity: 0.7;}
a.hov_fff:hover{color: #fff;}

/*text*/
.bold{font-weight: bold;}
.normal{font-weight: normal;}
.mincho{font-family: "游明朝体", "Yu Mincho", YuMincho, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;}
.text-right{text-align: right;}
.text-left{text-align: left;}
.text-center{text-align: center;}
.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;}

/*line*/
.btn.btn-line{background-color: #06C755; padding: 0; border-radius: 15px; 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;}

/*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;}

/*margin*/
.mr0{margin-right: 0 !important;}
.mr5{margin-right: 5px !important;}
.mr10{margin-right: 10px !important;}
.mr15{margin-right: 15px !important;}
.mr20{margin-right: 20px !important;}
.ml5{margin-left: 5px !important;}
.ml10{margin-left: 10px !important;}
.mb5{margin-bottom: 5px !important;}
.mb0{margin-bottom: 0 !important;}
.mb10{margin-bottom: 10px !important;}
.mb15{margin-bottom: 15px !important;}
.mb20{margin-bottom: 20px !important;}
.mb30{margin-bottom: 30px !important;}
.mb40{margin-bottom: 40px !important;}
.mb50{margin-bottom: 50px !important;}
.mt0{margin-top: 0 !important;}
.mt5{margin-top: 5px !important;}
.mt10{margin-top: 10px !important;}
.mt20{margin-top: 20px !important;}
.mt30{margin-top: 30px !important;}
.mt40{margin-top: 40px !important;}
.mt50{margin-top: 50px !important;}

/*padding*/
.pt0{padding-top: 0 !important;}
.pt50{padding-top: 50px !important;}
.pb0{padding-bottom: 0 !important;}

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


/*font-size*/
.fsz-12{font-size: 12px !important;}
.fsz-14{font-size: 14px !important;}
.fsz-16{font-size: 16px !important;}
.fsz-18{font-size: 18px !important;}
.fsz-20{font-size: 20px !important;}
.fsz-24{font-size: 24px !important;}
.fsz-34{font-size: 34px !important;}

/*position*/
.ab{position: absolute;}
.ab-ccc{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;}

/*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-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;}

/*color*/
.week-blue{color:#60abff;}
.week-red{color:#e83939;}

/*form*/
.vali_error {color: #FF3B68; margin-top: 5px;}
.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; 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;}

/*loading*/
#loading{display: none; background-color: rgba(255,255,255,0.7); 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; 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);}

/*radio checkbox*/
.btn-light{border-color: #ccc;}
.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;}

/*img upload*/
.form-upfile .upload-img-btn {border-color: #ccc;}
.form-upfile .item-thumb_btn{margin-top: 15px; text-align: center}
.form-upfile .item-img_text{font-size: 0.9rem; margin-top: 10px; font-weight: bold;}
.form-upfile .item-noimg{background-color: #eee; text-align: center; padding: 100px 0; max-width: 380px; font-weight: bold; margin:auto;}
.form-upfile .user-image{text-align: center;}
.form-upfile .user-image img{max-height: 480px;}
.form-upfile .item-img_prev{text-align: center;}

/*---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;}
}

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

