@charset "UTF-8";
/*--------------------
 * reset.css
 *--------------------*/
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, 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 {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  text-align: left;
  font-weight: normal;
  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, main, menu, nav, section, summary {
  display: block;
}

/*--------------------
 * common.css
 *--------------------*/
body {
  font-family: 'メイリオ', Meiryo, Quicksand, '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  background: #fff;
  color: #5a5a5a;
  margin: 0 auto;
  letter-spacing: 0.05em;
  -webkit-text-size-adjust: 100%;
  width: 100%;
  height: 100%;
  min-width: 1100px;
}

* {
  margin: 0;
  padding: 0;
  font-style: normal;
  list-style: none;
}

.inner {
  max-width: 1000px;
  margin: 0 auto;
}

/* header CSSここから */
#header {
  background: #fff;
  border-top: 6px solid #299eac;
  position: relative;
  z-index: 9999;
}
#header .inner {
  position: relative;
  padding: 15px 0 20px;
  max-width: 1000px;
  width: 96%;
}
#header .csl {
  position: absolute;
  right: 0;
  bottom: 20px;
}
#header .logo span {
  padding-top: 2px;
  color: #879499;
  display: block;
  font-size: 11.2px;
  letter-spacing: 0.05em;
  margin-bottom: 8px;
}
.pr-banner-pc{
  width: 310px;
  position: absolute;
  right: 210px;
  top: 10px;
}
.pr-banner-pc img{
  width: 100%;
}
.pr-banner-sp{
  width: 90px;
  position: absolute;
  right: 70px;
  display: none;
}


/* footer CSSここから */
#footer {
  background: #FFF;
  padding: 40px 0;
  font-size: 15px;
  font-family: 'Noto Sans JP', sans-serif;
}
#footer .footer-wrap {
  padding: 0 20px;
}

#footer .inner {
  display: flex;
  justify-content: space-between;
}
#footer .footer-nav {
  display: flex;
  flex-wrap: wrap;
  line-height: 1.5;
}
#footer a {
  color: #333;
  line-height: 2;
  text-decoration: underline;
  padding-right: 14px;
  letter-spacing: 0;
}
#footer a::after {
  content: url(../img/common/icon-blank.svg);
  margin-left: 0.25em;
  zoom: 0.6;
}
#footer a:hover {
  text-decoration: none;
}

#footer .copy {
  font-size: 14px;
  color: #333;
  text-align: left;
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 0.5em;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.pc-in {
  display: inline-block;
}

.sp-in {
  display: none;
}

@media only screen and (max-width: 760px) {
  #footer .inner {
    flex-direction: column-reverse;
    align-items: flex-start;
    padding: 0;
  }
  #footer .csl img {
    padding-bottom: 1em;
  }
}


@media only screen and (max-width: 640px) {
  body {
    width: 100%;
    height: 100%;
    min-width: 320px;
  }

  .pc {
    display: none;
  }

  .sp {
    display: block;
  }

  .pc-in {
    display: none;
  }

  .sp-in {
    display: inline-block;
  }

  .inner {
    width: auto;
    margin: 0 auto;
    padding: 0 20px;
  }

  /* header CSSここから */
  #header {
    background: #fff;
    border-top: 6px solid #299eac;
    position: relative;
    z-index: 9999;
    -moz-box-shadow: 0px 0px 8px #666;
    -webkit-box-shadow: 0px 0px 8px #666;
    box-shadow: 0px 0px 8px #666;
  }
  #header .inner {
    position: relative;
    /* padding: 10px 20px 15px; */
    padding: 10px 0 15px 8px;
  }
  #header .csl {
    position: static;
    margin-bottom: 14px;
  }
  #header .csl img {
    width: 100%;
    max-width: 85px;
  }
  #header .logo img {
    width: 100%;
    max-width: 175px;
  }
  #header .logo span {
    padding-top: 2px;
    color: #879499;
    display: block;
    font-size: 5.5px;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
  }
  #header .logo{
    /* padding-right: 150px; */
    padding-right: 155px;
  }
  .pr-banner-pc{
    display: none;
  }
  .pr-banner-sp{
    display: block;
  }

  /* footer CSSここから
  #footer {
    padding: 20px 0;
    font-size: 11px;
  }
  #footer .inner {
    padding: 0px 10px;
  }
  #footer .csl img {
    max-width: 158px;
  }
  #footer .footer-nav {
    padding: 20px 0;
    line-height: 1.8;
  }
  #footer a {
    display: inline-block;
  } */
}

/* banner */
.banner-area{
  width: 280px;
  position: absolute;
  right: 25%;
  top: 15px;
}
.banner-area img{
  width: 100%;
}
.banner-pc-link{
  display: block;
}
.banner-sp-link{
  display: none;
}
/* ロゴ調整 */
#header .inner .logo {
  width: 40%;
  margin: 0 auto 0 0;
}
@media only screen and (max-width: 640px) {
  #header .inner .logo {
    width: 50%;
  }
  .sp-nav{
    right: 7px!important;
  }
  .banner-area{
    right: 50px;
    width: 100px;
    top: 7px;
  }
  .banner-pc-link{display: none;}
  .banner-sp-link{display: block;}
}
