/* ==============================================================
   common
   ============================================================= */
* {
  box-sizing: border-box; }

img {
  width: 100%;
  vertical-align: bottom; }

h2, h3 {
  line-height: 1.8em; }

p {
  font-size: 1em !important;
  line-height: 1.8em;
  margin-bottom: 0 !important; }

i {
  font-size: .8em;
  margin-right: .25em; }

/* ==============================================================
   lyaout
   ============================================================= */
.CategoryKeyVisual {
  margin-bottom: 0 !important; }

.articleWrap {
  font-size: 16px;
  width: 100%;
  margin: 0 auto; }

.articleHead {
  width: 100%;
  margin: 0 0 4em 0;
  text-align: center; }
  @media screen and (min-width: 480px) {
    .articleHead {
      position: relative;
      width: 960px;
      margin: 0 auto 2em; } }
  .articleHead h2 {
    font-size: 1.3em;
    font-weight: bold; }
  .articleHead p {
    font-size: 1em; }
  .articleHead .articleImg {
    margin-bottom: 1em; }
  .articleHead .articleTextBox {
    width: 90%;
    margin: 0 auto; }
  @media screen and (min-width: 480px) {
    .articleHead .articleTextBox {
      margin: 0 auto;
      text-align: left;
      position: absolute;
      top: 0;
      left: 0;
      background: rgba(255, 255, 255, 0.8);
      width: 400px;
      height: 100%;
      padding: 1.5em; } }

.articleBody {
  margin-bottom: 3em;
  display: block; }
  @media screen and (min-width: 480px) {
    .articleBody {
      width: 960px;
      margin: 0 auto 2em;
      display: flex;
      flex-direction: row-reverse;
      justify-content: space-between; } }
  .articleBody .articleImg {
    margin-bottom: 1em; }
    @media screen and (min-width: 480px) {
      .articleBody .articleImg {
        width: 50%;
        margin-bottom: 0; } }
  .articleBody .articleTextBox {
    width: 90%;
    margin: 0 auto;
    padding: 1em;
    border: 1px solid #6fb061;
    background: #fff; }
    @media screen and (min-width: 480px) {
      .articleBody .articleTextBox {
        width: 50%;
        border-radius: 0;
        border: 0; } }
    .articleBody .articleTextBox h3 {
      font-size: 1.2em;
      font-weight: bold;
      color: #5d901f;
      border-bottom: 1px solid #5d901f;
      margin-bottom: .5em; }
    .articleBody .articleTextBox h4 {
      font-size: 1em;
      font-weight: bold; }
    .articleBody .articleTextBox .storeInfo {
      color: #6fb061;
      font-size: .8em; }

#onsen {
  background: #fef2e0;
  padding: 1em 0; }
  #onsen .articleHead .articleTextBox {
    background: none; }
    @media screen and (min-width: 480px) {
      #onsen .articleHead .articleTextBox {
        background: rgba(255, 255, 255, 0.8); } }
  #onsen .articleTextBox {
    background: #fff url("img/kusatsu_onsenLogo.png") 95% 4%/10% no-repeat; }
  #onsen .articleListBox {
    margin-bottom: 1em;
    background: inherit; }
    @media screen and (min-width: 480px) {
      #onsen .articleListBox {
        margin-right: 1em;
        width: 50%;
        margin-right: 5%;
        background: #fff; }
        #onsen .articleListBox:last-child {
          margin-right: 0; } }
    #onsen .articleListBox:last-child .articleImg {
      width: 50%;
      margin: 0 auto; }
      @media screen and (min-width: 480px) {
        #onsen .articleListBox:last-child .articleImg {
          width: 47%;
          background: #fff; } }
    @media screen and (min-width: 480px) {
      #onsen .articleListBox .articleImg {
        width: 100%; } }
    #onsen .articleListBox .articleTextBox {
      border: 0; }
      @media screen and (min-width: 480px) {
        #onsen .articleListBox .articleTextBox {
          width: 100%; } }
  #onsen .articleBody:last-child {
    flex-direction: inherit; }

#leisure {
  background: #ebf6f3;
  padding: 0 0 4em 0; }
  #leisure h4 {
    font-size: 1em;
    font-weight: bold; }
    #leisure h4 span {
      font-size: .8em; }
  #leisure .articleTextBox {
    margin-bottom: 1em; }
    @media screen and (min-width: 480px) {
      #leisure .articleTextBox {
        margin-bottom: 0; } }
  #leisure .articleImg h3 {
    text-align: center;
    color: #009fb2;
    margin-bottom: 1em; }

#access {
  padding: 4em 0; }
  @media screen and (min-width: 480px) {
    #access .innerWrap {
      display: flex;
      max-width: 960px;
      margin: 0 auto; } }
  #access .articleHead .articleImg {
    margin: 0 auto 1em;
    width: 90%; }
  #access .articleBody {
    padding: 0 1em; }
  #access dl {
    margin-bottom: 1em; }
    @media screen and (min-width: 480px) {
      #access dl {
        margin-right: 2em; } }
    #access dl dt,
    #access dl dd {
      margin-bottom: .5em; }

#pageTop {
  position: fixed;
  bottom: 30px;
  right: 20px; }
  #pageTop a {
    display: block;
    z-index: 999;
    padding: .3em 0 .3em .2em;
    border-radius: 2em;
    width: 2em;
    height: 2em;
    background-color: #9FD6D2;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
    font-size: 3em;
    line-height: 1.3em; }
    #pageTop a:hover {
      text-decoration: none;
      opacity: 0.7; }

/*# sourceMappingURL=style.css.map */
