@charset "UTF-8";

/* ----------------------------------------
site設定
------------------------------------------*/
html {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 62.5%;
  vertical-align: baseline;
  text-size-adjust: none;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
  scroll-behavior: smooth;
  overflow-x: hidden;/* はみ出し回避 */
}
body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 1.6rem;
  font-family: serif;
  color: #181818;
  vertical-align: baseline;
  box-sizing: border-box;
  line-height: 1.8;
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
  display: block;
}
a {
  color: #181818;
  text-decoration: none;
  -webkit-transition: opacity .5s ease;
  -o-transition: opacity .5s ease;
  transition: opacity .5s ease;
  cursor: pointer;
  word-break: break-word;
}
a:hover {
  opacity: .5;
  -webkit-transition: opacity .5s ease;
  -o-transition: opacity .5s ease;
  transition: opacity .5s ease;
}
iframe {
  vertical-align: bottom;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
video {
  max-width: 100%;
  vertical-align: bottom;
}
ol, ul {
  list-style: none;
}
button {
  background: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}
address {
  font-style: normal;
}


/* ----------------------------------------
margin & padding
------------------------------------------*/
.m00{margin:0!important;}.m05{margin:5px!important;}.m10{margin:10px!important;}.m15{margin:15px!important;}.m20{margin:20px!important;}.m25{margin:25px!important;}.m30{margin:30px!important;}.m35{margin:35px!important;}.m40{margin:40px!important;}.m45{margin:45px!important;}.m50{margin:50px!important;}.mt00{margin-top:0!important;}.mt05{margin-top:5px!important;}.mt10{margin-top:10px!important;}.mt15{margin-top:15px!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;}.mb00{margin-bottom:0!important;}.mb05{margin-bottom:5px!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;}.mb100{margin-bottom:100px!important;}.ml00{margin-left:0!important;}.ml05{margin-left:5px!important;}.ml10{margin-left:10px!important;}.ml15{margin-left:15px!important;}.ml20{margin-left:20px!important;}.ml25{margin-left:25px!important;}.ml30{margin-left:30px!important;}.ml35{margin-left:35px!important;}.ml40{margin-left:40px!important;}.ml45{margin-left:45px!important;}.ml50{margin-left:50px!important;}.mr00{margin-right:0!important;}.mr05{margin-right:5px!important;}.mr10{margin-right:10px!important;}.mr15{margin-right:15px!important;}.mr20{margin-right:20px!important;}.mr25{margin-right:25px!important;}.mr30{margin-right:30px!important;}.mr35{margin-right:35px!important;}.mr40{margin-right:40px!important;}.mr45{margin-right:45px!important;}.mr50{margin-right:50px!important;}
.p00{padding:0!important;}.p05{padding:5px!important;}.p10{padding:10px!important;}.p15{padding:15px!important;}.p20{padding:20px!important;}.p25{padding:25px!important;}.p30{padding:30px!important;}.p35{padding:35px!important;}.p40{padding:40px!important;}.p45{padding:45px!important;}.p50{padding:50px!important;}.pt00{padding-top:0!important;}.pt05{padding-top:5px!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;}.pt45{padding-top:45px!important;}.pt50{padding-top:50px!important;}.pb00{padding-bottom:0!important;}.pb05{padding-bottom:5px!important;}.pb10{padding-bottom:10px!important;}.pb15{padding-bottom:15px!important;}.pb20{padding-bottom:20px!important;}.pb25{padding-bottom:25px!important;}.pb30{padding-bottom:30px!important;}.pb35{padding-bottom:35px!important;}.pb40{padding-bottom:40px!important;}.pb45{padding-bottom:45px!important;}.pb50{padding-bottom:50px!important;}.pl00{padding-left:0!important;}.pr00{padding-right:0!important;}.pr05{padding-right:5px!important;}.pr10{padding-right:10px!important;}.pr15{padding-right:15px!important;}.pr20{padding-right:20px!important;}.pr25{padding-right:25px!important;}.pr30{padding-right:30px!important;}.pr35{padding-right:35px!important;}.pr40{padding-right:40px!important;}.pr45{padding-right:45px!important;}.pr50{padding-right:50px!important;}


/* ----------------------------------------
配置
------------------------------------------*/
.pR {
  position: relative !important;
}
.taL {
  text-align: left !important;
}
.taC {
  text-align: center !important;
}
.taR {
  text-align: right !important;
}
.aiC {
  align-items: center !important;
}


/* ----------------------------------------
表示分岐
------------------------------------------*/
.sp-only {
  display: none !important;
}
.res-show {
  display: none !important;
}
@media screen and (max-width: 1180px) {
  .res-show {
    display: block !important;
  }
  .res-none {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .sp-only {
    display: block !important;
  }
  .sp-none {
    display: none !important;
  }
}


/* ----------------------------------------
ページリンク
------------------------------------------*/
.link {
  text-decoration: underline;
  word-break: break-all;
}
.anchor {
  scroll-margin-top: 100px;
}
@media screen and (max-width: 767px) {
  .anchor {
    scroll-margin-top: 50px;
  }
}


/* ----------------------------------------
はみ出し防止
------------------------------------------*/
.ofH {
  overflow: hidden;
}
