@charset "utf-8";
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

/*--------------------------------------------------------------------------------
  Reset
--------------------------------------------------------------------------------*/
html { font-size: 80%;
  scroll-behavior: smooth;
  scroll-padding-top: 120px;
}
@media(max-width: 749px) {
  html { font-size: 60%;
  }
}
html, 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, strong, 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, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, main {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  vertical-align: baseline;
 }
ol, ul {
  list-style: none; }
table {
  /*border-collapse: collapse;
border-spacing: 0;*/ }
caption, th, td {
  text-align: left;
  vertical-align: middle; }
q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }
a img {
  border: none; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, main {
  display: block; }
input, textarea, select, button {
  outline: none;
}
.small{
  font-size: .9em;
}

/*--------------------------------------------------------------------------------
  Base config
--------------------------------------------------------------------------------*/
html{
  -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
*{
  -moz-box-sizing: border-box;
   -webkit-box-sizing: border-box;
   -o-box-sizing: border-box;
   -ms-box-sizing: border-box;
   box-sizing: border-box;
	padding:0;
	margin:0;
}
body {
  font-size: 1.5rem;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.w100per{
	max-width: 100%;
}
.ww100per{
	width: 100%;
}
a {
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}
a:hover{
	opacity: 0.8;
}
.inner,.inner-sp {
  max-width: 950px;
  margin-left: auto;
  margin-right: auto;
}
.inner-mini {
  max-width: 850px;
  margin-left: auto;
  margin-right: auto;
}
.inner-big {
  max-width: 1290px;
  margin-left: auto;
  margin-right: auto;
}
/*
.page-p{
  font-size: 15px;
  margin-left: 10px;
  margin-right: 10px;
}*/
@media(max-width: 749px) {
  body {
    padding-top: 0;
  }
  .inner {
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
  .inner-sp{
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
  .inner-mini {
 width: 100%;
 padding-left: 20px;
    padding-right: 20px;
}
.inner-big {
  width: 100%;
  padding-left: 20px;
  padding-right: 20px;
}
.kasou .inner-big{
  width: 100%;
  padding-left: 20px;
    padding-right: 20px;
}
}

/*--------------------------------------------------------------------------------
  util => clear
--------------------------------------------------------------------------------*/
.clearfix::after {
  content: '';
  display: block;
  clear: both;
  height: 0;
}
.both{
  clear:both;
}


/*--------------------------------------------------------------------------------
  util => fontsize
--------------------------------------------------------------------------------*/
.f10{ font-size: 1.0rem ;}
.f11{ font-size: 1.1rem ;}
.f12{ font-size: 1.2rem ;}
.f13{ font-size: 1.3rem ;}
.f14{ font-size: 1.4rem ;}
.f15{ font-size: 1.5rem ;}
.f16{ font-size: 1.6rem ;}
.f17{ font-size: 1.7rem ;}
.f18{ font-size: 1.8rem ;}
.f19{ font-size: 1.9rem ;}
.f20{ font-size: 2.0rem ;}
.f21{ font-size: 2.1rem ;}
.f22{ font-size: 2.2rem ;}
.f23{ font-size: 2.3rem ;}
.f24{ font-size: 2.4rem ;}
.f25{ font-size: 2.5rem ;}
.f26{ font-size: 2.6rem ;}
.f30{ font-size: 3.0rem ;}
.f34{ font-size: 3.4rem;}
.f36{ font-size: 3.6rem;}
.f40{ font-size: 4.0rem ;}
.f43{ font-size: 4.3rem ;}
.f50{ font-size: 5.0rem ;}
.f60{ font-size: 6.0rem ;}


/*--------------------------------------------------------------------------------
  util => margin
--------------------------------------------------------------------------------*/
.m00 { margin: 0px ;}
.m05 { margin: 5px ;}
.m10 { margin: 10px ;}
.m15 { margin: 15px ;}
.m20 { margin: 20px;}
.m25 { margin: 25px ;}
.m30 { margin: 30px ;}
.m35 { margin: 35px ;}
.m40 { margin: 40px ;}
.m45 { margin: 45px ;}
.m50 { margin: 50px ;}
.m55 { margin: 55px ;}
.m60 { margin: 60px ;}

.mt00 { margin-top: 0px ;}
.mt05 { margin-top: 5px ;}
.mt10 { margin-top: 10px ;}
.mt15 { margin-top: 15px ;}
.mt20 { margin-top: 20px ;}
.mt25 { margin-top: 25px ;}
.mt30 { margin-top: 30px ;}
.mt35 { margin-top: 35px ;}
.mt40 { margin-top: 40px ;}
.mt45 { margin-top: 45px ;}
.mt50 { margin-top: 50px ;}
.mt55 { margin-top: 55px ;}
.mt60 { margin-top: 60px ;}
.mt80 { margin-top: 80px ;}
.mt100 { margin-top: 100px ;}

.ml00 { margin-left: 0px ;}
.ml05 { margin-left: 5px ;}
.ml10 { margin-left: 10px ;}
.ml15 { margin-left: 15px ;}
.ml20 { margin-left: 20px ;}
.ml25 { margin-left: 25px ;}
.ml30 { margin-left: 30px ;}
.ml35 { margin-left: 35px ;}
.ml40 { margin-left: 40px ;}
.ml45 { margin-left: 45px ;}
.ml50 { margin-left: 50px ;}
.ml55 { margin-left: 55px ;}
.ml60 { margin-left: 60px ;}

.mb00 { margin-bottom: 0px ;}
.mb05 { margin-bottom: 5px ;}
.mb10 { margin-bottom: 10px ;}
.mb15 { margin-bottom: 15px ;}
.mb20 { margin-bottom: 20px ;}
.mb25 { margin-bottom: 25px ;}
.mb30 { margin-bottom: 30px ;}
.mb35 { margin-bottom: 35px ;}
.mb40 { margin-bottom: 40px ;}
.mb45 { margin-bottom: 45px ;}
.mb50 { margin-bottom: 50px ;}
.mb55 { margin-bottom: 55px ;}
.mb60 { margin-bottom: 60px ;}

.mr00 { margin-right: 0px ;}
.mr05 { margin-right: 5px ;}
.mr10 { margin-right: 10px ;}
.mr15 { margin-right: 15px ;}
.mr20 { margin-right: 20px ;}
.mr25 { margin-right: 25px ;}
.mr30 { margin-right: 30px ;}
.mr35 { margin-right: 35px ;}
.mr40 { margin-right: 40px ;}
.mr45 { margin-right: 45px ;}
.mr50 { margin-right: 50px ;}
.mr55 { margin-right: 55px ;}
.mr60 { margin-right: 60px ;}

/*--------------------------------------------------------------------------------
  util => padding
--------------------------------------------------------------------------------*/
.p00 { padding: 0px ;}
.p05 { padding: 5px ;}
.p10 { padding: 10px ;}
.p15 { padding: 15px ;}
.p20 { padding: 20px ;}
.p25 { padding: 25px ;}
.p30 { padding: 30px ;}
.p35 { padding: 35px ;}
.p40 { padding: 40px ;}
.p45 { padding: 45px ;}
.p50 { padding: 50px ;}
.p55 { padding: 55px ;}
.p60 { padding: 60px;}

.pl00 { padding-left: 0px ;}
.pl05 { padding-left: 5px ;}
.pl10 { padding-left: 10px ;}
.pl15 { padding-left: 15px ;}
.pl20 { padding-left: 20px ;}
.pl25 { padding-left: 25px ;}
.pl30 { padding-left: 30px ;}
.pl35 { padding-left: 35px ;}
.pl40 { padding-left: 40px ;}
.pl45 { padding-left: 45px ;}
.pl50 { padding-left: 50px ;}
.pl55 { padding-left: 55px ;}
.pl60 { padding-left: 60px ;}

.pr00 { padding-right: 0px ;}
.pr05 { padding-right: 5px ;}
.pr10 { padding-right: 10px ;}
.pr15 { padding-right: 15px ;}
.pr20 { padding-right: 20px ;}
.pr25 { padding-right: 25px ;}
.pr30 { padding-right: 30px ;}
.pr35 { padding-right: 35px ;}
.pr40 { padding-right: 40px ;}
.pr45 { padding-right: 45px ;}
.pr50 { padding-right: 50px ;}
.pr55 { padding-right: 55px ;}
.pr60 { padding-right: 60px ;}

.pt00 { padding-top: 0px ;}
.pt05 { padding-top: 5px ;}
.pt10 { padding-top: 10px ;}
.pt15 { padding-top: 15px ;}
.pt20 { padding-top: 20px ;}
.pt25 { padding-top: 25px ;}
.pt30 { padding-top: 30px ;}
.pt35 { padding-top: 35px ;}
.pt40 { padding-top: 40px ;}
.pt45 { padding-top: 45px ;}
.pt50 { padding-top: 50px ;}
.pt55 { padding-top: 55px ;}
.pt60 { padding-top: 60px ;}
.pt100 { padding-top: 100px ;}

.pb00 { padding-bottom: 0px ;}
.pb05 { padding-bottom: 5px ;}
.pb10 { padding-bottom: 10px ;}
.pb15 { padding-bottom: 15px ;}
.pb20 { padding-bottom: 20px ;}
.pb25 { padding-bottom: 25px ;}
.pb30 { padding-bottom: 30px ;}
.pb35 { padding-bottom: 35px ;}
.pb40 { padding-bottom: 40px ;}
.pb45 { padding-bottom: 45px ;}
.pb50 { padding-bottom: 50px ;}
.pb55 { padding-bottom: 55px ;}
.pb60 { padding-bottom: 60px ;}

/*--------------------------------------------------------------------------------
  util => float
--------------------------------------------------------------------------------*/
.f-left { float: left ;}
.f-right { float: right ;}

img.f-left { float: left ;
  margin-right: 20px;
  margin-bottom: 10px;
}
img.f-right { float: right ;
  margin-left: 20px;
  margin-bottom: 10px;}
/*--------------------------------------------------------------------------------
  util => ul
--------------------------------------------------------------------------------*/
.st_disc {
  list-style: disc inside;
}
.st_decimal {
  list-style: decimal inside;
}

/*--------------------------------------------------------------------------------
  util => others
--------------------------------------------------------------------------------*/
.d_none { display: none !important;}
.block { display: block !important;}
.inline { display: inline !important;}
.inline_b { display: inline-block !important;}
.t_cell { display: table-cell !important;}
.lh00 { line-height: 0 !important;}
.lh12 { line-height: 1.2em !important;}
.lh14 { line-height: 1.4em !important;}
.lh18 { line-height: 1.8em !important;}

.bold{
	font-weight: bold;
}

.txt_red { color:#ff4d4d  !important;}
.txt_white { color: #fff  !important;}
.txt_center { text-align: center ;}
@media(min-width: 769px) {
.pc-txt_center{
  text-align: center;
}
}
.txt_right { text-align: right !important;}
.txt_left { text-align: left !important;}
.txt_purple { color: #b33d6f !important;}
.txt_blue { color: #1d54a3 !important;}
.txt_beige { color: #FEEDD1 !important;}
.txt_green { color: #429A00 !important;}
.txt_orange { color: #ff4e22 !important;}
.txt_green2 { color:  #c4d36c;}
.txt_gray{ color: #666 ;}
.txt_normal{ font-weight: normal;}
.txt_underline{ text-decoration: underline !important;}

.marker{
  font-weight: bold;
  background: linear-gradient(transparent 40%, #f4e3d4 50%);
}
.relative{
  position: relative;
}
/* PC */
@media(min-width: 769px) {
  .pc-none { display: none !important;;}
}
/* SP */
@media(max-width: 768px) {
  .sp-none { display: none !important;}
  .marker{
    background: linear-gradient(transparent 40%, #f4e3d4 50%);
  }
}
