@charset "utf-8";
/*base*/
a{cursor: pointer;}
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;}

.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;}
a.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;}

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

/*add only site*/
.outer-sc_contact{max-height: 400px; overflow: auto; margin:25px 0; border: 1px solid #ccc;}
.i_terms{height: 250px; overflow: auto; background-color:#fff; padding:0 15px; border: 1px solid #eee}
.terms-sub_title{font-size: 28px; border-bottom: 1px solid #29c697; padding-bottom: 10px; margin:20px 0 10px;}
.terms-sub_label{font-size: 20px; font-weight: bold; border-left: 5px solid #29c697; margin-bottom: 20px; padding-left: 5px;}
.terms-subsub{font-size: 20px; font-weight: bold; margin: 20px 0 5px;}
.terms-block{padding: 20px 0;}
.terms-block p{margin-bottom: 15px;}
.terms-block p:last-child{margin: 0;}
.i_terms-check{margin-top: 20px; text-align: center; font-size: 1rem;}
label > .checkbox{margin-right: 10px;}

/*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-150{width: 150px !important;}
.w-200{width: 200px !important;}
.w-300{width: 300px !important;}

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

/*log_box*/
#log_box{position: fixed; z-index: 99999; left: 0; bottom: 51px; max-width: 200px; font-size: 10px; padding: 0; background-color: #f2f2f2;}
#log_box span{display: inline-block; padding: 2px;}
.js-close_liff{position: fixed; right: 3px; bottom: 55px; color: #07b53b; display: none;}

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

/*rotate*/
.r{display: inline-block;}
.r45{transform: rotate( 45deg );}
.r90{transform: rotate( 90deg );}
.r135{transform: rotate( 135deg );}
.r180{transform: rotate( 180deg );}
.r225{transform: rotate( 225deg );}
.r270{transform: rotate( 270deg );}
.r315{transform: rotate( 315deg );}
.r360{transform: rotate( 360deg );}

/*color*/
.c-f1{color:#218f81;}
.c-f2{color:#f97a8f;}
.c-f3{color:#eec91e;}
.c-f4{color:#ff87e7;}
.c-f5{color:#60abff;}
.c-f6{color:#4ecfaf;}
.c-f7{color:#f2ae43;}
.c-f8{color:#9994ff;}
.c-f9{color:#d6894c;}
.c-f10{color:#fe7d92;}
.c-f11{color:#e83939;}
.c-f12{color:#ff6e17;}
.c-f13{color:#ad864f;}
.c-f14{color:#ffbc2b;}
.c-f15{color:#999;}
.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;}
.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.1rem;}


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

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

