/*====================================================
______________________________________________________
    base.css
______________________________________________________
====================================================*/

* {
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 box-sizing: border-box;
}

html { font-size: 62.5%;}/**1rem=10px**/
html, body { width: 100%; min-height: 100%;}
body {
font-family: 游ゴシック, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-size: 1.4rem; line-height: 1.8; overflow: hidden; letter-spacing: .05em; color: #242424; background: #fff;
-ms-text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
position: relative;
}

@media screen and (max-width: 768px) {
body { font-size: 1.5rem; line-height: 2; letter-spacing: 0;}
}

a { color: #242424; text-decoration: none;}
a:hover { color: #242424;}

@media screen and (max-width: 768px) {
a[href^=tel] { text-decoration: underline; color: #6a6a6a;}
}


/* __________________________________________________
    utility
__________________________________________________ */

.trs02 {
-webkit-transition: all .2s ease;
-moz-transition: all .2s ease;
-ms-transition: all .2s ease;
-o-transition: all .2s ease;
 transition: all .2s ease;
}

.trs03 {
-webkit-transition: all .3s ease;
-moz-transition: all .3s ease;
-ms-transition: all .3s ease;
-o-transition: all .3s ease;
 transition: all .3s ease;
}
.trs05 {
-webkit-transition: all .5s ease;
-moz-transition: all .5s ease;
-ms-transition: all .5s ease;
-o-transition: all .5s ease;
 transition: all .5s ease;
}

.fleft { float: left; margin: 0 20px 10px 0;}
.fright { float: right; margin: 0 0 10px 20px;}

@media screen and (max-width: 768px) {
.fleft, .fright { clear: both; float: none; display: block; margin: 10px auto;}
}



/* __________________________________________________
    other
__________________________________________________ */

.fs12 { font-size: 1.2rem;}
.fs16 { font-size: 1.6rem;}
.fs17 { font-size: 1.7rem;}
.tCenter { text-align: center;}
.tRight { text-align: right;}
.tLeft { text-align: left;}
.italic { font-style: italic;}
.lh160 { line-height: 160%}

.caption { display: block; font-size: 80%; color: #666; line-height: 140%; margin: 0;}

.mt0 { margin-top: 0!important;}
.mt10 { margin-top: 10px!important;}
.mt20 { margin-top: 20px!important;}
.mt25 { margin-top: 25px!important;}
.mt30 { margin-top: 30px!important;}
.mt35 { margin-top: 35px!important;}
.mt40 { margin-top: 40px!important;}
.mt45 { margin-top: 45px!important;}
.mt50 { margin-top: 50px!important;}
.mt55 { margin-top: 55px!important;}
.mt60 { margin-top: 60px!important;}
.mb0 { margin-bottom: 0!important;}
.mb10 { margin-bottom: 10px!important;}
.mb15 { margin-bottom: 15px!important;}
.mb20 { margin-bottom: 20px!important;}
.mb25 { margin-bottom: 25px!important;}
.mb30 { margin-bottom: 30px!important;}
.mb35 { margin-bottom: 35px!important;}
.mb40 { margin-bottom: 40px!important;}
.mb45 { margin-bottom: 45px!important;}
.mb50 { margin-bottom: 50px!important;}
.mb60 { margin-bottom: 60px!important;}
.mb80 { margin-bottom: 80px!important;}

.pt10 { padding-top: 10px!important;}
.pt15 { padding-top: 15px!important;}
.pt20 { padding-top: 20px!important;}
.pt25 { padding-top: 25px!important;}
.pt30 { padding-top: 30px!important;}
.pt35 { padding-top: 35px!important;}
.pt40 { padding-top: 40px!important;}
.pt50 { padding-top: 50px!important;}
.pb0 { padding-bottom: 0!important;}
.pb5 { padding-bottom: 5px!important;}
.pb10 { padding-bottom: 10px!important;}
.pb20 { padding-bottom: 20px!important;}
.pb30 { padding-bottom: 30px!important;}
.pb40 { padding-bottom: 40px!important;}
.pb50 { padding-bottom: 50px!important;}
.pl0 { padding-left: 0!important;}
.pl10 { padding-left: 10px!important;}
.pl15 { padding-left: 15px!important;}
.pl20 { padding-left: 20px!important;}
.pl30 { padding-left: 30px!important;}
.pl40 { padding-left: 40px!important;}
.pl50 { padding-left: 50px!important;}
.pr0 { padding-right: 0px!important;}
.pr10 { padding-right: 10px!important;}
.pr20 { padding-right: 20px!important;}
.pr30 { padding-right: 30px!important;}
.pr40 { padding-right: 40px!important;}
.pr50 { padding-right: 50px!important;}

.w30 { width: 30%!important;}
.w40 { width: 40%!important;}
.w50 { width: 50%!important;}
.w60 { width: 60%!important;}
.w70 { width: 70%!important;}
.w80 { width: 80%!important;}
.w90 { width: 90%!important;}
.w100 { width: 100%!important;}
.w340 { width: 340px!important;}

/* 2重送信防止用 */
.offTarget{
  pointer-events: none;
}