@charset "UTF-8";
.rwd-header div, .rwd-header span, .rwd-header object, .rwd-header iframe, .rwd-header h1, .rwd-header h2, .rwd-header h3, .rwd-header h4, .rwd-header h5, .rwd-header h6, .rwd-header p, .rwd-header blockquote, .rwd-header pre, .rwd-header abbr, .rwd-header address, .rwd-header cite, .rwd-header code, .rwd-header del, .rwd-header dfn, .rwd-header em, .rwd-header img, .rwd-header ins, .rwd-header kbd, .rwd-header q, .rwd-header samp, .rwd-header small, .rwd-header strong, .rwd-header sub, .rwd-header sup, .rwd-header var, .rwd-header b, .rwd-header i, .rwd-header dl, .rwd-header dt, .rwd-header dd, .rwd-header ol, .rwd-header ul, .rwd-header li, .rwd-header fieldset, .rwd-header form, .rwd-header label, .rwd-header legend, .rwd-header table, .rwd-header caption, .rwd-header tbody, .rwd-header tfoot, .rwd-header thead, .rwd-header tr, .rwd-header th, .rwd-header td, .rwd-header article, .rwd-header aside, .rwd-header canvas, .rwd-header details, .rwd-header figcaption, .rwd-header figure, .rwd-header footer, .rwd-header header, .rwd-header hgroup, .rwd-header menu, .rwd-header nav, .rwd-header section, .rwd-header summary, .rwd-header time, .rwd-header mark, .rwd-header audio, .rwd-header video,
.footer div,
.footer span,
.footer object,
.footer iframe,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5,
.footer h6,
.footer p,
.footer blockquote,
.footer pre,
.footer abbr,
.footer address,
.footer cite,
.footer code,
.footer del,
.footer dfn,
.footer em,
.footer img,
.footer ins,
.footer kbd,
.footer q,
.footer samp,
.footer small,
.footer strong,
.footer sub,
.footer sup,
.footer var,
.footer b,
.footer i,
.footer dl,
.footer dt,
.footer dd,
.footer ol,
.footer ul,
.footer li,
.footer fieldset,
.footer form,
.footer label,
.footer legend,
.footer table,
.footer caption,
.footer tbody,
.footer tfoot,
.footer thead,
.footer tr,
.footer th,
.footer td,
.footer article,
.footer aside,
.footer canvas,
.footer details,
.footer figcaption,
.footer figure,
.footer footer,
.footer header,
.footer hgroup,
.footer menu,
.footer nav,
.footer section,
.footer summary,
.footer time,
.footer mark,
.footer audio,
.footer video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
}

.rwd-header article, .rwd-header aside, .rwd-header details, .rwd-header figcaption, .rwd-header figure, .rwd-header footer, .rwd-header header, .rwd-header hgroup, .rwd-header menu, .rwd-header nav, .rwd-header section,
.footer article,
.footer aside,
.footer details,
.footer figcaption,
.footer figure,
.footer footer,
.footer header,
.footer hgroup,
.footer menu,
.footer nav,
.footer section {
  display: block;
}

.rwd-header nav ul,
.footer nav ul {
  list-style: none;
}

.rwd-header blockquote, .rwd-header q,
.footer blockquote,
.footer q {
  quotes: none;
}

.rwd-header blockquote:before, .rwd-header blockquote:after, .rwd-header q:before, .rwd-header q:after,
.footer blockquote:before,
.footer blockquote:after,
.footer q:before,
.footer q:after {
  content: none;
}

.rwd-header a,
.footer a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

.rwd-header ins,
.footer ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

.rwd-header mark,
.footer mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

.rwd-header del,
.footer del {
  text-decoration: line-through;
}

.rwd-header abbr[title], .rwd-header dfn[title],
.footer abbr[title],
.footer dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

.rwd-header hr,
.footer hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

.rwd-header input, .rwd-header select,
.footer input,
.footer select {
  vertical-align: middle;
}

.rwd-header img,
.footer img {
  vertical-align: top;
}

.rwd-header img[usemap],
.footer img[usemap] {
  border-width: 0;
}

a .rwd-header img, a
.footer img {
  border-width: 0;
  text-decoration: none;
}

.rwd-header ul, .rwd-header li,
.footer ul,
.footer li {
  list-style: none;
}

.rwd-header,
.footer {
  text-align: left;
}

.rwd-header *,
.footer * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.rwd-header,
.footer {
  color: #333;
  line-height: 1.6;
  -webkit-text-size-adjust: none;
}

.rwd.no-scroll {
  overflow-y: hidden;
  width: auto;
}

.rwd-header {
  width: 100%;
  height: 120px;
}

.minimum-header {
  height: 104px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
}

.minimum-header.is-open {
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100vh;
  overflow-y: scroll;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
}

.minimum-header.is-open .header-content__navigation,
.minimum-header.is-open .global-navigation {
  display: block;
}

.minimum-header.is-open .header-content .header-content__navigation {
  display: block;
}

.minimum-header.is-show {
  position: fixed;
  top: 0;
  left: 0;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
  width: 100%;
  z-index: 1000;
}

.dummy-header {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
}

.dummy-header.header-height {
  height: 170px;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0);
}

.header-content {
  background-color: rgba(255, 255, 255, 0.98);
}

.header-content .header-content__inner {
  position: relative;
  margin: 0 auto;
  padding: 20px 10px 0;
  max-width: 880px;
  height: 70px;
}

.header-content .header-content__inner:after {
  content: '';
  clear: both;
  display: block;
}

.header-content .header-content__logo {
  float: left;
  padding-top: 2px;
  width: 168px;
}

.header-content .header-content__logo img {
  max-width: 100%;
  height: auto;
}

.header-content .header-content__navigation {
  float: right;
  margin-top: 2px;
}

.header-content .header-content__navigation:after {
  content: '';
  clear: both;
  display: block;
}

.minimum-header .header-content {
  position: relative;
  -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.2);
}

.minimum-header .header-content .header-content__inner {
  padding: 0;
  height: auto;
}

.minimum-header .header-content .header-content__logo {
  float: none;
  padding-top: 26px;
  padding-left: 30px;
  width: 181px;
  height: 80px;
}

.minimum-header .header-content .header-content__navigation {
  display: none;
  float: none;
  padding-right: 0;
}

.minimum-header.is-open .header-content {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.header-baloon {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 64px;
  padding: 10px 18px !important;
  background-color: #fff;
  border: solid 1px #d9d9d9 !important;
  z-index: 50;
}

.header-baloon.is-active {
  visibility: visible;
  opacity: 1;
}

.header-baloon:before {
  content: '';
  position: absolute;
  top: -20px;
  left: 24px;
  width: 23px;
  height: 20px;
  background-image: url("/all_common/images/rwd/parts/fukidashi_arrow_top.svg");
  background-repeat: no-repeat;
}

.header-baloon .header-baloon__button {
  display: block;
  margin-top: 16px;
  padding: 6px 0;
  background-color: #004c6e;
  color: #fff;
  text-align: center;
}

.header-baloon .header-baloon__button:visited {
  color: #fff;
}

.header-mypage {
  float: left;
  position: relative;
  margin-right: 22px !important;
  padding: 0 22px 2px 0 !important;
}

.header-mypage:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 1px;
  height: 32px;
  background-color: #d9d9d9;
}

.header-mypage a {
  text-decoration: none;
}

.header-mypage .header-mypage__login {
  font-size: 0.76rem;
}

.header-mypage .header-mypage__login:before {
  display: inline-block;
  content: '';
  position: relative;
  top: 4px;
  margin-right: 9px;
  width: 20px;
  height: 20px;
  background-image: url("/all_common/images/rwd/parts/icon_login.svg");
  background-repeat: no-repeat;
}

.header-mypage .header-mypage__user {
  padding: 0;
  background-color: transparent;
  border: none;
  color: #004c6e;
  cursor: pointer;
}

.header-mypage .header-mypage__user:focus {
  opacity: 0.8;
}

.header-mypage .header-mypage__user:before {
  display: inline-block;
  content: '';
  position: relative;
  top: 5px;
  margin-right: 8px;
  width: 19px;
  height: 21px;
  background-image: url("/all_common/images/rwd/parts/icon_user.svg");
  background-repeat: no-repeat;
}

.header-mypage .header-baloon {
  left: -20px;
}

.header-mypage .header-baloon:before {
  left: 50px;
}

.minimum-header .header-mypage {
  float: none;
  position: static;
  margin-right: 16px;
  margin-left: 16px;
  padding-right: 0;
  padding-bottom: 16px;
  border-bottom: 1px solid #d9d9d9;
  text-align: center;
}

.minimum-header .header-mypage:before {
  display: none;
}

.minimum-header .header-mypage .header-mypage__user {
  margin-top: 24px;
  cursor: default;
  text-align: center;
}

.minimum-header .header-mypage .header-mypage__user.pc-only {
  display: none;
}

.minimum-header .header-mypage .header-mypage__user.sp-only {
  display: block;
}

.minimum-header .header-mypage .header-baloon {
  visibility: visible;
  opacity: 1;
  position: static;
  padding: 0;
  background-color: transparent;
  border: none;
  text-align: center;
}

.minimum-header .header-mypage .header-baloon:before {
  display: none;
}

.minimum-header .header-mypage .header-baloon .header-baloon__button {
  display: inline-block;
  margin: 16px 0 0;
  width: 140px;
}

.header-mypage-drop {
  width: 165px;
  text-align: center;
}

.header-mypage-drop .header-mypage-drop__member {
  margin-bottom: 8px;
  font-weight: bold;
}

.minimum-header .header-mypage-drop {
  display: inline-block;
  margin-top: 10px;
  margin-right: 16px;
  width: auto;
}

.minimum-header .header-mypage-drop .header-mypage-drop__member {
  display: inline-block;
  margin-bottom: 0;
  margin-right: 16px;
}

.minimum-header .header-mypage-drop .header-mypage-drop__point {
  display: inline-block;
}

.minimum-header .header-mypage-drop .header-mypage-drop__limit {
  margin-top: 5px;
  display: inline-block;
  margin-left: 16px;
}

.header-site-search {
  float: left;
  position: relative;
}

.header-site-search:after {
  content: '';
  clear: both;
  display: block;
}

.header-site-search .header-site-search__category-button {
  float: left;
  margin-right: 1px;
  width: 60px;
  height: 30px;
  background-color: #f2f2f2;
  background-image: url("/all_common/images/rwd/parts/icon_search.svg"), url("/all_common/images/rwd/parts/arrow_pulldown.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: 12px 8px, 38px 13px;
  background-size: 16px 16px, 9px 6px;
  border: none;
  text-indent: -9999px;
  cursor: pointer;
}

.header-site-search .header-site-search__category-button:focus {
  background-color: #e4e4e4;
}

.header-site-search .header-site-search__category-select li {
  margin-top: 3px;
}

.header-site-search .header-site-search__category-select li:first-child {
  margin-top: 0;
}

.header-site-search .header-site-search__category-select li a {
  display: block;
  text-decoration: none;
  color: #333;
  font-weight: bold;
}

.header-site-search .header-site-search__category-select li a:visited {
  color: #333;
}

.header-site-search .header-site-search__category-select li a:hover {
  color: #004c6e;
}

.header-site-search .header-site-search__category-select li a.is-active {
  color: #004c6e;
}

.header-site-search .header-site-search__form {
  display: none;
}

.header-site-search .header-site-search__form.is-active {
  display: inline;
}

.header-site-search .header-site-search__textbox {
  float: left;
  padding: 12px 16px;
  border-radius: 0;
  border: none;
  background-color: #f2f2f2;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 192px;
  height: 30px;
  font-size: 0.8rem;
}

.header-site-search .header-site-search__button {
  float: left;
  background-color: #004c6e;
  border: none;
  padding: 0;
  width: 48px;
  height: 30px;
  color: #fff;
  font-size: 0.8rem;
  cursor: pointer;
}

.minimum-header .header-site-search {
  float: none;
  margin: 32px auto 0;
  padding-bottom: 32px;
  width: 292px;
}

.minimum-header .header-site-search .header-site-search__category-select li a {
  padding: 10px 0;
}

.minimum-header .header-site-search .header-site-search__textbox {
  width: 166px;
}

.header-navigation-button {
  display: none;
  position: absolute;
  top: 22px;
  right: 16px;
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: none;
  text-indent: -99999px;
  overflow: hidden;
  cursor: pointer;
}

.header-navigation-button:before, .header-navigation-button:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #004c6e;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.header-navigation-button:before {
  top: 4px;
  -webkit-box-shadow: 0 7px 0 #004c6e;
          box-shadow: 0 7px 0 #004c6e;
}

.header-navigation-button:after {
  top: 18px;
}

.header-navigation-button.is-change-close:before {
  top: 11px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-box-shadow: none;
          box-shadow: none;
}

.header-navigation-button.is-change-close:after {
  top: 11px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.minimum-header .header-navigation-button {
  display: block;
  top: 24px;
  width: 32px;
  height: 32px;
}

.minimum-header .header-navigation-button:before {
  top: 5px;
  height: 3px;
  -webkit-box-shadow: 0 9px 0 #004c6e;
          box-shadow: 0 9px 0 #004c6e;
}

.minimum-header .header-navigation-button:after {
  top: 23px;
  height: 3px;
}

.minimum-header .header-navigation-button.is-change-close:before {
  top: 14px;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.minimum-header .header-navigation-button.is-change-close:after {
  top: 14px;
}

.header-navigation-close-button {
  display: none;
  position: relative;
  margin: 30px auto 0;
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: none;
  text-indent: -99999px;
  cursor: pointer;
}

.header-navigation-close-button:before, .header-navigation-close-button:after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #004c6e;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.header-navigation-close-button:before {
  top: 11px;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.header-navigation-close-button:after {
  top: 11px;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.minimum-header .header-navigation-close-button {
  display: block;
}

.global-navigation {
  border-top: 1px solid #d9d9d9;
  background-color: #004c6e;
}

.minimum-header .global-navigation {
  display: none;
  padding: 0 16px 130px;
  border-top: none;
}

.global-navigation-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto;
  max-width: 880px;
  height: 40px;
}

.global-navigation-content li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.global-navigation-content li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 12px;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 0.7rem;
  line-height: 1.4;
  color: #fff;
  letter-spacing: 0.12em;
}

.global-navigation-content li a:hover {
  background-color: #29708f;
}

.global-navigation-content li a br {
  display: none;
}

.global-navigation-content li.current a {
  background-color: #29708f;
}

.minimum-header .global-navigation-content {
  display: block;
  height: auto;
  max-width: inherit;
}

.minimum-header .global-navigation-content li {
  display: block;
}

.minimum-header .global-navigation-content li a {
  display: block;
  padding: 16px 0;
}

.minimum-header .global-navigation-content li a br {
  display: none;
}

.minimum-header .global-navigation-content li.current a:before {
  display: none;
}

.header-in-page-heading-button {
  display: none;
  position: absolute;
  top: 0;
  right: 72px;
}

.minimum-header .header-in-page-heading-button {
  display: block;
}

.content-wrapper {
  margin: 32px auto 0;
  padding: 0 16px;
  max-width: 880px;
}

.content-wrapper:after {
  content: '';
  clear: both;
  display: block;
}

.main-contents {
  width: 100%;
}

.footer {
  margin-top: 32px;
}

.footer-pagetop-button {
  display: block;
  float: right;
  margin-right: 16px;
  width: 78px;
  height: 114px;
  background-color: #fff;
  background-image: url("/all_common/images/rwd/footer/pagetop_image.png");
  background-repeat: no-repeat;
  background-position: left top;
  text-indent: -99999px;
  overflow: hidden;
}

.footer-pagetop-button:hover {
  background-position: right top;
}

.footer-content {
  clear: both;
  padding: 20px 0;
  margin: 0 auto;
}

.footer-content-inner {
  text-align: center;
  margin: 0 auto;
  padding: 0 3px;

}

.footer-content-column {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}

.footer-content-column > li {
  padding-left: 6%;
}

@media screen and (max-width: 880px) {
  .footer-content-column > li {
    padding-left: 5%;
  }
  .footer-content-column > li:nth-child(5) {
    padding-left: 3.33333%;
  }
}

.footer-navi{
  margin-bottom: 20px;
}


.footer-navigation {
  color: #333;
}

.footer-navigation li {
  display: inline-block;
  text-align: center;
  padding: 0 6px;
  color: #333;
  line-height: 1.6;
}

.footer-navigation > li:first-child {
  margin-top: 0;
}

.footer-navigation > li a {
  text-decoration: none;
  color: #333;
}

.footer-navigation > li a:hover {
  text-decoration: underline;
}

.footer-navigation > li a:visited {
  color: #333;
}

.footer-sub-navigation-button {
  position: relative;
}

.footer-sub-navigation {
  margin-top: 8px;
}

.footer-sub-navigation > li {
  margin-bottom: 8px;
  font-size: 1.3rem;
  font-weight: normal;
}

.footer-social {
  margin: 5px auto 0px auto;
  width: 166px;
  overflow: hidden;
  text-align: center;
}

.footer-social .footer-social__link {
  float: left;
  margin-right: 18px;

}

.footer-social .footer-social__link:last-child {
  margin-right: 0;
  text-align: center;
}

.footer-social .footer-social__link a {
  display: table-cell;
  vertical-align: middle;
}

.footer-social .footer-social__link img {
  width: 28px;
  height: 28px;
}

.footer-copyright {
  margin: 0 auto 15px auto;
  text-align: center;
}

.footer-copyright p {
  text-align: center;
  font-size: 1.3rem;
  color: #333;
}

body.rwd.windowType01 {
  min-width: inherit;
}

.pc-only {
  display: block;
}

.sp-only {
  display: none;
}
