@charset "UTF-8";
/*get %*/
/*get vw*/
/*keyframes*/
/* base valiables */
/* common mixins */
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&subset=japanese");
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }




body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active, a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */ }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: content-box;
  /* 2 */ }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 62.5%; }

html:not(.lt-ie10) .not-animated {
  opacity: 0; }

body {
  background-color: #fff;
  font-family: "Noto Sans JP", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
  font-size: 24px;
  line-height: 1.5;
  color: #646464;
  width: 100%;
  height: 100%;
  overflow-x: hidden; }
  @media screen and (max-width: 749px) {
    body {
      font-size: 3.2vw; } }

ul, li {
  list-style: none;
  padding: 0; }

.searchForm_detail .navList_content ul li {
  width: 33.333%; }

a {
  opacity: 1;
  -webkit-transition: all 0.4s ease;
  -ms-transition: all 0.4s ease;
  -moz-transition: all 0.4s ease;
  transition: all 0.4s ease; }
  a:hover {
    opacity: 0.7; }

a:hover, a:link, a:visited, a:active {
  text-decoration: none; }

p {
  margin: 0 0 11px; }

img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

figure {
  padding: 0;
  margin: 0; }

button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

input {
  height: auto; }

:not(output):-moz-ui-invalid {
  box-shadow: none; }

:not(output):-moz-ui-invalid:-moz-focusring {
  box-shadow: none; }

output:-moz-ui-invalid {
  color: none; }

.no-position {
  position: static; }

.img-responsive {
  max-width: 100%;
  display: block;
  height: auto; }

.text-left {
  text-align: left; }

.text-center {
  text-align: center; }

.text-right {
  text-align: right; }

.text-justify {
  text-align: justify; }

.text-lowercase {
  text-transform: lowercase; }

.text-uppercase {
  text-transform: uppercase; }

.nopd {
  padding: 0 !important; }

.nomg {
  margin: 0 !important; }

/* main css */
.wrap-content {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  overflow: hidden;
  position: relative; }

.nav-open {
  overflow: hidden; }

.btn-button {
  margin: 30px 0 70px; }
  .btn-button a {
    background: #646464;
    border-radius: 8px;
    color: #fff;
    font-size: 24px;
    line-height: 1;
    padding: 20px 0;
    width: 100%;
    max-width: 430px;
    margin: 0 auto;
    display: block;
    text-align: center;
    text-decoration: none; }
  @media screen and (max-width: 749px) {
    .btn-button {
      margin: 4vw 0 9.3333333333vw; }
      .btn-button a {
        border-radius: 1.0666666667vw;
        font-size: 3.2vw;
        padding: 2.6666666667vw 0;
        max-width: 57.3333333333vw; } }

header {
  padding: 15px 40px 13px;
  -webkit-box-orient: horizontal;
  -ms-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  display: flex !important; }
  header .sp-logo {
    margin-right: auto;
    position: relative;
    z-index: 999; }
    header .sp-logo h1 {
      margin: 0;
      font-size: 0;
      line-height: 1; }
  header .sp-login {
    margin-right: 40px;
    padding: 14px;
    border-radius: 20px 20px 0 0;
    display: inline-block;
    cursor: pointer; }
    header .sp-login > span {
      background: url("../images/icon_login.png") no-repeat scroll center center;
      width: 60px;
      height: 60px;
      display: inline-block;
      text-indent: -9999px; }
    header .sp-login.change-icon {
      background: #d75227; }
      header .sp-login.change-icon > span {
        background: url("../images/icon_login_at.png") no-repeat scroll center center; }
  header .sp-login-wrap {
    position: absolute;
    z-index: 99;
    background: #fff;
    border: 8px solid #d75227;
    border-radius: 20px;
    top: 95px;
    width: 100%;
    max-width: 670px;
    left: 50%;
    text-align: center;
    padding: 45px;
    display: none;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%); }
    header .sp-login-wrap .sp-title-login {
      font-size: 36px;
      font-weight: bold;
      margin: 30px 0 15px; }
    header .sp-login-wrap p {
      font-size: 28px; }
    header .sp-login-wrap .sp-btn-action {
      margin: 30px 0; }
      header .sp-login-wrap .sp-btn-action .sp-btn-pri {
        background: #d75227;
        color: #fff;
        line-height: 1;
        border-radius: 10px;
        width: 100%;
        padding: 20px 0;
        display: block;
        justify-content: center;
        margin-bottom: 10px; }
    header .sp-login-wrap .sp-btn-premium {
      width: 100%;
      padding: 35px 0;
      display: block;
      background: #cbb561;
      border-radius: 10px;
      color: #fff;
      justify-content: space-between; }
      header .sp-login-wrap .sp-btn-premium img {
        margin-right: 50px; }
  header .nav-toggle {
    background-color: transparent;
    color: #646464;
    border: none;
    line-height: 0;
    display: inline-block;
    position: relative;
    width: 42px;
    height: 42px;
    padding: 0;
    margin: 0;
    cursor: pointer;
    outline: none;
    z-index: 999; }
    header .nav-toggle span {
      background-color: #646464;
      height: 4px;
      border-radius: 0;
      position: relative;
      display: block;
      width: 42px;
      -webkit-transition: 0.3s all ease;
      -ms-transition: 0.3s all ease;
      -moz-transition: 0.3s all ease;
      transition: 0.3s all ease; }
      header .nav-toggle span:before, header .nav-toggle span:after {
        background-color: #646464;
        content: "";
        position: absolute;
        width: 42px;
        height: 4px;
        left: 0;
        top: -13px;
        border-radius: 0;
        -webkit-transition: 0.3s all ease;
        -ms-transition: 0.3s all ease;
        -moz-transition: 0.3s all ease;
        transition: 0.3s all ease;
        -webkit-transition-duration: 0.3s, 0.3s, .3s;
        transition-duration: 0.3s, 0.3s, .3s;
        -webkit-transition-delay: 0.3s, 0s, .3s;
        transition-delay: 0.3s, 0s, .3s;
        -webkit-transition-property: top, -webkit-transform, width;
        transition-property: top, transform, width;
        transform-origin: center; }
      header .nav-toggle span:after {
        top: 13px; }
    header .nav-toggle.active span {
      background: transparent;
      right: 0;
      left: auto;
      -webkit-transition: background 0.3s 0s ease;
      -ms-transition: background 0.3s 0s ease;
      -moz-transition: background 0.3s 0s ease;
      transition: background 0.3s 0s ease; }
      header .nav-toggle.active span:before, header .nav-toggle.active span:after {
        top: 0;
        right: 0;
        left: auto;
        width: 42px;
        -webkit-transition-delay: 0s, 0.3s;
        transition-delay: 0s, 0.3s; }
      header .nav-toggle.active span:before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg); }
      header .nav-toggle.active span:after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg); }
    header .nav-toggle small {
      display: block;
      padding-top: 25px;
      font-size: 65%; }
  header .box-language {
    padding: 0 40px;
    float: right;
    -webkit-box-orient: horizontal;
    -ms-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex; }
    header .box-language .txt-lg {
      margin-right: 30px; }
      header .box-language .txt-lg span {
        position: relative;
        font-size: 32px;
        padding-left: 55px;
        height: 46px;
        line-height: 1.45;
        display: block; }
        header .box-language .txt-lg span:before {
          background: url("../images/icon_global.png") no-repeat scroll 0 0;
          position: absolute;
          content: "";
          width: 46px;
          height: 46px;
          top: 0;
          left: 0; }
    header .box-language .main-lg img {
      display: block; }
  header .navbar {
    background: rgba(255, 255, 255, 0.95);
    position: absolute;
    width: 100%;
    max-width: 750px;
    margin-left: -375px;
    height: 100vh;
    padding-top: 117px;
    padding-bottom: 20px;
    overflow-y: scroll;
    left: 50%;
    top: 0;
    z-index: 99;
    -webkit-transform: translate3d(100%, 0, 0);
    -ms-transform: translate3d(100%, 0, 0);
    -moz-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    -webkit-transition: transform 0.4s ease;
    -ms-transition: transform 0.4s ease;
    -moz-transition: transform 0.4s ease;
    transition: transform 0.4s ease; }
    header .navbar.nav-active {
      -webkit-transform: translate3d(0, 0, 0);
      -ms-transform: translate3d(0, 0, 0);
      -moz-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }
    header .navbar ul li {
      position: relative;
      width: 100%;
      text-align: left; }
      header .navbar ul li a {
        color: #646464;
        font-size: 28px;
        line-height: 1;
        display: block;
        padding: 24px 0 22px 75px; }
    header .navbar > ul {
      margin: 0;
      padding: 22px 40px 50px; }
      header .navbar > ul > li {
        border-top: 1px solid #646464; }
        header .navbar > ul > li:last-child {
          border-bottom: 1px solid #646464; }
        header .navbar > ul > li.nav-icon > a {
          position: relative; }
          header .navbar > ul > li.nav-icon > a::before {
            position: absolute;
            content: "";
            width: 49px;
            height: 44px;
            top: 50%;
            left: 0;
            -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
            -moz-transform: translateY(-50%);
            transform: translateY(-50%); }
        header .navbar > ul > li.nav-icon01 > a::before {
          background: url("../images/icon_menu_01.png") no-repeat scroll 0 0; }
        header .navbar > ul > li.nav-icon02 > a::before {
          background: url("../images/icon_menu_02.png") no-repeat scroll 0 0; }
        header .navbar > ul > li.nav-icon02 .sub-menu .title-menu h4 span:before {
          background: url("../images/icon_menu_02_sub.png") no-repeat scroll center center; }
        header .navbar > ul > li.nav-icon03 > a::before {
          background: url("../images/icon_menu_03.png") no-repeat scroll 0 0; }
        header .navbar > ul > li.nav-icon04 a::before {
          background: url("../images/icon_menu_04.png") no-repeat scroll 0 0; }
        header .navbar > ul > li.nav-icon04 .sub-menu .title-menu h4 span:before {
          background: url("../images/icon_menu_04_sub.png") no-repeat scroll center center; }
        header .navbar > ul > li.nav-icon05 > a::before {
          background: url("../images/icon_menu_05.png") no-repeat scroll 0 0; }
        header .navbar > ul > li.nav-icon05 .sub-menu .title-menu h4 span:before {
          background: url("../images/icon_menu_05_sub.png") no-repeat scroll center center; }
        header .navbar > ul > li.nav-icon06 > a::before {
          background: url("../images/icon_menu_06.png") no-repeat scroll 0 0; }
        header .navbar > ul > li .op-navmenu {
          z-index: -1; }
    header .navbar .sub-menu {
      background: rgba(255, 255, 255, 0.95);
      position: fixed;
      left: 0;
      top: 117px;
      width: 100%;
      height: calc(100vh - 117px);
      padding: 22px 40px;
      z-index: 999;
      overflow-y: scroll;
      -webkit-transform: translate3d(100%, 0, 0);
      -ms-transform: translate3d(100%, 0, 0);
      -moz-transform: translate3d(100%, 0, 0);
      transform: translate3d(100%, 0, 0);
      -webkit-transition: transform 0.4s ease;
      -ms-transition: transform 0.4s ease;
      -moz-transition: transform 0.4s ease;
      transition: transform 0.4s ease; }
      header .navbar .sub-menu.open-sub {
        -webkit-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
        -moz-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0); }
      header .navbar .sub-menu .title-menu {
        padding: 10px 0 18px 0;
        border-bottom: 1px solid #646464;
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
        header .navbar .sub-menu .title-menu h4 {
          line-height: 1;
          margin: 0;
          width: 100%;
          text-align: center; }
          header .navbar .sub-menu .title-menu h4 span {
            font-size: 36px;
            line-height: 61px;
            margin: 0;
            position: relative;
            padding-left: 80px;
            display: inline-block;
            height: 61px; }
            header .navbar .sub-menu .title-menu h4 span:before {
              position: absolute;
              content: "";
              width: 68px;
              height: 61px;
              top: 0;
              left: 0; }
        header .navbar .sub-menu .title-menu .close-menu {
          background: url("../images/icon_arrow_left.png") no-repeat scroll center center;
          width: 40px;
          height: 34px;
          margin-top: 1px;
          cursor: pointer; }
      header .navbar .sub-menu li {
        border-bottom: 1px solid #b3b3b3; }
        header .navbar .sub-menu li a {
          padding-left: 0; }
      header .navbar .sub-menu.bold-menu li a {
        font-weight: bold; }
      header .navbar .sub-menu.bold-menu .small-menu {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        header .navbar .sub-menu.bold-menu .small-menu li {
          border: none;
          -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
          flex: 0 0 50%;
          max-width: 50%; }
          header .navbar .sub-menu.bold-menu .small-menu li a {
            font-size: 22px;
            font-weight: normal; }
      header .navbar .sub-menu.menu-col2 li ul {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        header .navbar .sub-menu.menu-col2 li ul li {
          border: none;
          position: relative;
          -webkit-flex: 0 0 50%;
          -ms-flex: 0 0 50%;
          flex: 0 0 50%;
          max-width: 50%;
          margin: 0; }
          header .navbar .sub-menu.menu-col2 li ul li:after {
            background: #b3b3b3;
            position: absolute;
            content: "";
            width: 1px;
            height: 70%;
            right: 0;
            top: 50%;
            -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
            -moz-transform: translateY(-50%);
            transform: translateY(-50%); }
          header .navbar .sub-menu.menu-col2 li ul li:nth-child(2n):after {
            content: none; }
          header .navbar .sub-menu.menu-col2 li ul li:nth-child(2n) a {
            padding-left: 15px; }
          header .navbar .sub-menu.menu-col2 li ul li a {
            font-size: 22px;
            line-height: 1.25;
            padding: 15px 5px; }
      header .navbar .sub-menu.menu-col2 .txt-menu a {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -moz-flex;
        display: -webkit-flex;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center; }
        header .navbar .sub-menu.menu-col2 .txt-menu a span {
          margin-left: 40px; }
          header .navbar .sub-menu.menu-col2 .txt-menu a span strong {
            display: block; }
      header .navbar .sub-menu .btn-menu {
        border: none;
        padding: 50px 0; }
        header .navbar .sub-menu .btn-menu .btn-button {
          margin: 0; }
          header .navbar .sub-menu .btn-menu .btn-button a {
            color: #fff; }
    header .navbar .op-navmenu, header .navbar .op-pu {
      background: url("../images/icon_dot.png") no-repeat scroll center center;
      position: absolute;
      right: 0;
      top: 0;
      width: 60px;
      height: 100%; }
    header .navbar .op-pu {
      background: url("../images/icon_pop_up.png") no-repeat scroll center center; }
  @media screen and (max-width: 749px) {
    header {
      padding: 2vw 5.3333333333vw 1.7333333333vw; }
      header .sp-logo h1 img {
        width: 38.6666666667vw; }
      header .sp-login {
        width: 11.7333333333vw;
        height: 11.7333333333vw;
        margin-right: 5.3333333333vw;
        padding: 1.8666666667vw;
        border-radius: 2.6666666667vw 2.6666666667vw 0 0; }
        header .sp-login > span {
          background-size: 100%;
          width: 8vw;
          height: 8vw; }
        header .sp-login.change-icon > span {
          background-size: 100%; }
      header .sp-login-wrap {
        border: 1.0666666667vw solid #d75227;
        border-radius: 2.6666666667vw;
        top: 12.6666666667vw;
        max-width: 89.3333333333vw;
        padding: 6vw; }
        header .sp-login-wrap .sp-inner-login > img {
          width: 28.6666666667vw; }
        header .sp-login-wrap .sp-title-login {
          font-size: 4.8vw;
          margin: 4vw 0 2vw; }
        header .sp-login-wrap p {
          font-size: 3.7333333333vw; }
        header .sp-login-wrap .sp-btn-action {
          margin: 4vw 0; }
          header .sp-login-wrap .sp-btn-action .sp-btn-pri {
            border-radius: 1.3333333333vw;
            padding: 2.6666666667vw 0;
            margin-bottom: 1.3333333333vw; }
        header .sp-login-wrap .sp-btn-premium {
          padding: 4.6666666667vw 0;
          border-radius: 1.3333333333vw; }
          header .sp-login-wrap .sp-btn-premium img {
            margin-right: 6.6666666667vw;
            width: 26.8vw; }
      header .nav-toggle {
        width: 40px;
        height: 42px; }
        header .nav-toggle span {
          width: 40px;
          height: 3px; }
          header .nav-toggle span:before, header .nav-toggle span:after {
            width: 40px;
            height: 3px; }
        header .nav-toggle.active span:before, header .nav-toggle.active span:after {
          width: 40px; }
        header .nav-toggle small {
          display: block;
          font-size: 65%; }
      header .box-language {
        padding: 0 5.3333333333vw; }
        header .box-language .txt-lg {
          margin-right: 6.6666666667vw; }
          header .box-language .txt-lg span {
            padding-left: 7.3333333333vw;
            height: 6.1333333333vw;
            font-size: 4.2666666667vw; }
            header .box-language .txt-lg span:before {
              background-size: 100%;
              width: 6.1333333333vw;
              height: 6.1333333333vw; }
        header .box-language .main-lg select {
          padding: 5px 40px;
          font-size: 14px;
          width: 100%;
          user-select: none;
          -webkit-appearance: none;
          -moz-appearance: none;
          appearance: none;
          position: relative;
          background: url("../images/icon_google.png") no-repeat, url("../images/icon_arrow.png") no-repeat;
          background-size: 18px 18px, 12px 7px;
          background-position: 10px, 90%; }
      header .navbar {
        max-width: none;
        margin-left: 0;
        left: 0;
        padding-top: 15.6vw; }
        header .navbar ul li a {
          font-size: 3.7333333333vw;
          padding: 3.2vw 0 2.9333333333vw 10vw; }
        header .navbar > ul {
          padding: 2.9333333333vw 5.3333333333vw 6.6666666667vw; }
          header .navbar > ul > li.nav-icon > a::before {
            width: 6.5333333333vw;
            height: 5.8666666667vw; }
          header .navbar > ul > li.nav-icon01 > a::before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon02 > a::before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon02 .sub-menu .title-menu h4 span:before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon03 > a::before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon04 a::before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon04 .sub-menu .title-menu h4 span:before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon05 > a::before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon05 .sub-menu .title-menu h4 span:before {
            background-size: 100%; }
          header .navbar > ul > li.nav-icon06 > a::before {
            background-size: 100%; }
        header .navbar .sub-menu {
          top: 15.6vw;
          height: calc(100vh - 15.6vw);
          padding: 2vw 5.3333333333vw; }
          header .navbar .sub-menu .title-menu {
            padding: 1.3333333333vw 0 2.4vw 0; }
            header .navbar .sub-menu .title-menu h4 span {
              font-size: 4.8vw;
              line-height: 8.1333333333vw;
              padding-left: 10.6666666667vw;
              height: 8.1333333333vw; }
              header .navbar .sub-menu .title-menu h4 span:before {
                width: 9.0666666667vw;
                height: 8.1333333333vw; }
            header .navbar .sub-menu .title-menu .close-menu {
              background-size: 2.5333333333vw 4.5333333333vw;
              width: 5.3333333333vw;
              height: 4.5333333333vw; }
          header .navbar .sub-menu.bold-menu .small-menu li a {
            font-size: 2.9333333333vw; }
          header .navbar .sub-menu.menu-col2 li ul li:nth-child(2n) a {
            padding-left: 2vw; }
          header .navbar .sub-menu.menu-col2 li ul li a {
            font-size: 2.9333333333vw;
            padding: 2vw 0.6666666667vw; }
          header .navbar .sub-menu.menu-col2 .txt-menu a span {
            margin-left: 5.3333333333vw; }
          header .navbar .sub-menu .btn-menu {
            padding: 6.6666666667vw 0 15vw; }
        header .navbar .op-navmenu, header .navbar .op-pu {
          width: 10.6666666667vw;
          background-size: 4.5333333333vw 1.2vw; }
        header .navbar .op-pu {
          background-size: 2.9333333333vw 2.6666666667vw; }
      header .img-pu {
        width: 2.9333333333vw;
        width: 2.6666666667vw; } }
  @media screen and (max-width: 576px) {
    header .nav-toggle {
      width: 35px;
      height: 35px;
      padding-top: 5px; }
      header .nav-toggle span {
        width: 35px;
        height: 3px; }
        header .nav-toggle span:before, header .nav-toggle span:after {
          width: 35px;
          height: 3px; }
      header .nav-toggle.active span:before, header .nav-toggle.active span:after {
        width: 35px; }
      header .nav-toggle small {
        display: block;
        font-size: 80%; } }
  @media screen and (max-width: 480px) {
    header {
      padding: 2.6666666667vw; }
      header .nav-toggle {
        width: 30px;
        height: 42px; }
        header .nav-toggle span {
          width: 30px;
          height: 2px;
          top: 5px; }
          header .nav-toggle span:before, header .nav-toggle span:after {
            width: 30px;
            height: 2px; }
          header .nav-toggle span:before {
            top: -10px; }
          header .nav-toggle span:after {
            top: 10px; }
        header .nav-toggle.active span:before, header .nav-toggle.active span:after {
          width: 30px; }
        header .nav-toggle small {
          display: block;
          font-size: 80%; } }

main {
  padding: 0 40px; }

.banner-slider {
  position: relative; }
  .banner-slider .slick-dots {
    margin: 30px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
    .banner-slider .slick-dots li {
      padding: 0 10px;
      line-height: 0; }
      .banner-slider .slick-dots li button {
        background: #646464;
        border: none;
        outline: none;
        opacity: 0.5;
        line-height: 0;
        width: 60px;
        height: 6px;
        text-indent: -9999px; }
      .banner-slider .slick-dots li.slick-active button {
        opacity: 1; }

.txt-fundraise {
  border: 8px solid #646464;
  padding: 20px 45px 0;
  margin-bottom: 70px; }
  .txt-fundraise h3 {
    font-size: 32px;
    line-height: 1.5;
    margin: 0;
    padding-bottom: 20px;
    text-align: center;
    cursor: pointer;
    position: relative; }
    .txt-fundraise h3::before {
      background: url("../images/icon_arrow.png") no-repeat scroll center center;
      position: absolute;
      content: "";
      width: 24px;
      height: 14px;
      top: 50%;
      right: 0;
      -webkit-transform: translate(100%, -100%);
      -ms-transform: translate(100%, -100%);
      -moz-transform: translate(100%, -100%);
      transform: translate(100%, -100%);
      -webkit-transition: 0.5s transform;
      -ms-transition: 0.5s transform;
      -moz-transition: 0.5s transform;
      transition: 0.5s transform; }
    .txt-fundraise h3.active::before {
      -webkit-transform: rotate(180deg) translate(-100%, 100%);
      -ms-transform: rotate(180deg) translate(-100%, 100%);
      -moz-transform: rotate(180deg) translate(-100%, 100%);
      transform: rotate(180deg) translate(-100%, 100%); }
  .txt-fundraise .txt-toggle {
    border-top: 1px solid #646464;
    padding-top: 30px;
    display: none; }
    .txt-fundraise .txt-toggle p {
      margin: 0 0 30px; }

.tit-section {
  font-size: 36px;
  line-height: 1.5;
  padding-bottom: 25px;
  text-align: center;
  border-bottom: 2px solid #646464;
  margin-top: 0;
  margin-bottom: 50px; }

.cl-tabs {
  margin: 0;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
  margin-bottom: 40px; }
  .cl-tabs li {
    -webkit-flex: 0 0 33.33333%;
    -ms-flex: 0 0 33.33333%;
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
    line-height: 1;
    padding: 15px 15px 0;
    border-right: 1px solid #646464;
    cursor: pointer; }
    .cl-tabs li:last-child {
      border: none; }
    .cl-tabs li span {
      line-height: 1;
      font-weight: bold;
      display: inline-block;
      position: relative;
      padding-bottom: 15px;
      opacity: 0.5; }
    .cl-tabs li.active span {
      border-bottom: 4px solid #d75227;
      opacity: 1; }

.item-post {
  padding: 30px 0;
  border-bottom: 1px solid #e5e5e5; }
  .item-post:first-child {
    padding-top: 0; }
  .item-post .sp-flbox {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex; }
  .item-post .thumb-post {
    -webkit-flex: 0 0 195px;
    -ms-flex: 0 0 195px;
    flex: 0 0 195px;
    max-width: 195px;
    margin-right: 45px; }
    .item-post .thumb-post img {
      width: 100%; }
  .item-post .cont-post .date-post {
    font-size: 24px;
    line-height: 1;
    display: block;
    margin-bottom: 15px; }
  .item-post .cont-post .tit-post, .item-post .cont-post .tit-post a {
    font-size: 28px;
    line-height: 1.5;
    color: #646464;
    margin: 0; }
  .item-post .cont-post .price-prod {
    color: #d75227; }
  .item-post .cont-post p {
    margin: 0; }
  .item-post.news-latest .thumb-post {
    -webkit-flex: 0 0 312px;
    -ms-flex: 0 0 312px;
    flex: 0 0 312px;
    max-width: 312px; }
  .item-post.news-latest .post-excerpt {
    margin-top: 15px; }
    .item-post.news-latest .post-excerpt p {
      margin: 0; }

.ynn-list {
  margin: 0 -22px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  .ynn-list .item-ynn {
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    padding: 0 22px;
    margin-bottom: 40px; }
    .ynn-list .item-ynn.ynn-latest {
      -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
      -webkit-box-orient: vertical;
      -ms-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column; }
    .ynn-list .item-ynn .thumb-ynn {
      margin-bottom: 13px; }
    .ynn-list .item-ynn .cont-ynn .tit-post, .ynn-list .item-ynn .cont-ynn .tit-post a {
      font-size: 28px;
      line-height: 1.5;
      color: #646464;
      margin: 0; }
    .ynn-list .item-ynn .cont-ynn p {
      font-size: 24px; }

.logo-yahoo {
  text-align: center; }

.yhpost-list .mCSB_container {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex;
  left: 4vw; }
.yhpost-list .item-yhpost {
  -webkit-flex: 0 0 195px;
  -ms-flex: 0 0 195px;
  flex: 0 0 195px;
  max-width: 195px;
  margin-left: 30px; }
.yhpost-list .thumb-yhpost {
  margin-bottom: 10px; }
.yhpost-list .cont-yhpost .yh-rank, .yhpost-list .cont-yhpost .tit-yhpost {
  font-size: 24px; }
.yhpost-list .cont-yhpost .yh-rank {
  font-weight: bold;
  color: #646464; }
.yhpost-list .cont-yhpost .rank01 {
  color: #d75227; }
.yhpost-list .cont-yhpost .tit-yhpost {
  margin: 0 0 20px;
  font-weight: normal; }
  .yhpost-list .cont-yhpost .tit-yhpost a {
    color: #646464; }

.sp-yahoo {
  border-top: 8px solid #646464;
  border-bottom: 8px solid #646464;
  padding-top: 50px;
  margin-bottom: 50px; }
  .sp-yahoo .cl-tabs li {
    -webkit-flex: 0 0 50%;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; }
  .sp-yahoo .btn-button {
    margin-top: 50px;
    margin-bottom: 50px; }

.mCSB_scrollTools {
  opacity: 1; }

.mCSB_scrollTools.mCSB_scrollTools_horizontal {
  height: 24px; }

.mCSB_scrollTools .mCSB_draggerRail {
  background: rgba(100, 100, 100, 0.2);
  height: 10px !important; }

.mCSB_scrollTools .mCSB_dragger.mCSB_dragger_onDrag .mCSB_dragger_bar, .mCSB_scrollTools .mCSB_dragger:active .mCSB_dragger_bar {
  background: #646464; }

.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
  background: #646464;
  height: 10px !important;
  margin: 2px 0px 2px 0px !important; }

@media screen and (max-width: 749px) {
  main {
    padding: 0 5.3333333333vw; }

  .mCSB_scrollTools.mCSB_scrollTools_horizontal {
    height: 1.3333333333vw; }

  .mCSB_scrollTools .mCSB_draggerRail {
    height: 1.3333333333vw !important; }

  .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    height: 1.3333333333vw !important;
    margin: 0 auto !important; }

  .mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail {
    margin: 0; }

  .txt-fundraise {
    border: 1.0666666667vw solid #646464;
    padding: 2.6666666667vw 6vw 0;
    margin-bottom: 9.3333333333vw; }
    .txt-fundraise h3 {
      font-size: 4.2666666667vw;
      padding-bottom: 2.6666666667vw; }
      .txt-fundraise h3::before {
        background-size: 100%;
        width: 3.2vw;
        height: 14px; }
    .txt-fundraise .txt-toggle {
      padding-top: 4vw; }
      .txt-fundraise .txt-toggle p {
        margin: 0 0 4vw; }

  .tit-section {
    font-size: 4.8vw;
    padding-bottom: 3.3333333333vw;
    border-bottom: 2px solid #646464;
    margin-bottom: 6.6666666667vw; }

  .cl-tabs {
    margin-bottom: 5.3333333333vw; }
    .cl-tabs li {
      padding: 2vw 2vw 0; }
      .cl-tabs li span {
        padding-bottom: 2vw; }
      .cl-tabs li.active span {
        border-bottom: 0.5333333333vw solid #d75227; }

  .item-post {
    padding: 4vw 0; }
    .item-post .thumb-post {
      -webkit-flex: 0 0 26vw;
      -ms-flex: 0 0 26vw;
      flex: 0 0 26vw;
      max-width: 26vw;
      margin-right: 6vw; }
    .item-post .cont-post .date-post {
      font-size: 3.2vw;
      margin-bottom: 2vw; }
    .item-post .cont-post .tit-post, .item-post .cont-post .tit-post a {
      font-size: 3.7333333333vw; }
    .item-post.news-latest .thumb-post {
      -webkit-flex: 0 0 41.6vw;
      -ms-flex: 0 0 41.6vw;
      flex: 0 0 41.6vw;
      max-width: 41.6vw; }
    .item-post.news-latest .post-excerpt {
      margin-top: 2vw; }

  .ynn-list {
    margin: 0 -2.9333333333vw; }
    .ynn-list .item-ynn {
      padding: 0 2.9333333333vw;
      margin-bottom: 5.3333333333vw; }
      .ynn-list .item-ynn .thumb-ynn {
        margin-bottom: 1.7333333333vw; }
      .ynn-list .item-ynn .cont-ynn .tit-post, .ynn-list .item-ynn .cont-ynn .tit-post a {
        font-size: 3.7333333333vw; }
      .ynn-list .item-ynn .cont-ynn p {
        font-size: 3.2vw; }

  .yhpost-list {
    margin: 0 -2.6666666667vw; }
    .yhpost-list .item-yhpost {
      -webkit-flex: 0 0 29.3333333333vw;
      -ms-flex: 0 0 29.3333333333vw;
      flex: 0 0 29.3333333333vw;
      max-width: 29.3333333333vw;
      margin-left: 2.6666666667vw; }
    .yhpost-list .thumb-yhpost {
      margin-bottom: 1.3333333333vw; }
    .yhpost-list .cont-yhpost .yh-rank, .yhpost-list .cont-yhpost .tit-yhpost {
      font-size: 3.2vw; }
    .yhpost-list .cont-yhpost .tit-yhpost {
      margin: 0 0 2.6666666667vw; }

  .sp-yahoo {
    border-top: 1.0666666667vw solid #646464;
    border-bottom: 1.0666666667vw solid #646464;
    padding-top: 6.6666666667vw;
    margin-bottom: 6.6666666667vw; }
    .sp-yahoo .btn-button {
      margin-top: 6.6666666667vw;
      margin-bottom: 6.6666666667vw; }

  .logo-yahoo img {
    width: 37.6vw; }

  .banner-slider {
    margin: 0 -5.3333333333vw; }
    .banner-slider .slick-dots {
      margin: 4vw 0; }
      .banner-slider .slick-dots li {
        padding: 0 1.3333333333vw; }
        .banner-slider .slick-dots li button {
          width: 8vw; } }
@media screen and (max-width: 480px) {
  main {
    padding: 0 2.6666666667vw; }

  .banner-slider {
    margin: 0 -2.6666666667vw; }
    .banner-slider .slick-dots li button {
      height: 5px; }

  .yhpost-list .item-yhpost {
    -webkit-flex: 0 0 30.6666666667vw;
    -ms-flex: 0 0 30.6666666667vw;
    flex: 0 0 30.6666666667vw;
    max-width: 30.6666666667vw; } }
footer {
  padding: 0 40px;
  background: #fff; }

.sp-content-bt {
  width: 100%; }
  .sp-content-bt .sp-menu-bt {
    margin-bottom: 144px; }
  .sp-content-bt .sp-bt-img {
    margin-bottom: 78px; }
  .sp-content-bt .sp-title-bt {
    font-size: 36px;
    color: #646464;
    border-bottom: 4px solid #646464;
    padding-bottom: 9px;
    font-weight: 600;
    margin-bottom: 40px; }
  .sp-content-bt .tit-section {
    margin-bottom: 40px; }
  .sp-content-bt .sp-collapse .navbar-nav li {
    font-size: 32px;
    font-weight: 600;
    color: #646464;
    position: relative; }
    .sp-content-bt .sp-collapse .navbar-nav li p {
      border-bottom: 2px solid #646464;
      width: 100%;
      margin: 0;
      line-height: 1;
      padding: 18px 0;
      position: relative;
      text-align: left; }
      .sp-content-bt .sp-collapse .navbar-nav li p:after {
        content: '';
        position: absolute;
        background: url("../images/icon_plus.png") center center no-repeat;
        background-size: 100%;
        height: 29px;
        width: 29px;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        transform: translateY(-50%); }
    .sp-content-bt .sp-collapse .navbar-nav li ul {
      display: none;
      margin-top: 35px; }
      .sp-content-bt .sp-collapse .navbar-nav li ul:after {
        content: '';
        display: block;
        clear: both; }
      .sp-content-bt .sp-collapse .navbar-nav li ul li {
        width: 50%;
        float: left;
        border: none;
        line-height: 1.5;
        margin-bottom: 30px; }
        .sp-content-bt .sp-collapse .navbar-nav li ul li:after {
          content: '';
          display: block;
          clear: both; }
        .sp-content-bt .sp-collapse .navbar-nav li ul li a {
          color: #646464;
          font-size: 22px;
          font-weight: normal; }
        .sp-content-bt .sp-collapse .navbar-nav li ul li:nth-child(2n), .sp-content-bt .sp-collapse .navbar-nav li ul li.special-right {
          padding-left: 20px; }
  .sp-content-bt .sp-collapse .navbar-nav .drop-active p:after {
    content: '';
    position: absolute;
    background: url("../images/icon_minus.png") center center no-repeat;
    background-size: 100%;
    height: 29px;
    width: 29px;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    transform: translateY(-50%); }

.sp-sns {
  border-bottom: 1px solid #000;
  padding-bottom: 60px;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -moz-flex;
  display: -webkit-flex;
  display: flex; }
  .sp-sns ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -moz-flex;
    display: -webkit-flex;
    display: flex;
    margin: 0;
    margin-right: auto;
    left: 25%;
    position: relative; }
    .sp-sns ul li {
      width: 70px;
      height: 70px;
      margin-right: 20px; }

.sp-menu-ft {
  margin-top: 30px; }
  .sp-menu-ft ul li {
    margin-bottom: 15px; }
    .sp-menu-ft ul li a {
      color: #646464;
      font-size: 22px; }
    .sp-menu-ft ul li:first-child {
      margin-bottom: 45px; }

.copyright {
  color: #646464;
  font-size: 22px;
  margin: 45px 0 55px 0; }

.back-top {
  width: 70px;
  height: 70px; }

img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: middle; }

@media screen and (max-width: 749px) {
  footer {
    padding: 0 5.3333333333vw; }

  .sp-content-bt .sp-menu-bt {
    margin-bottom: 19.2vw; }
  .sp-content-bt .tit-section {
    margin-bottom: 5.3333333333vw; }
  .sp-content-bt .sp-bt-img {
    margin-bottom: 10.4vw; }
  .sp-content-bt .sp-title-bt {
    font-size: 4.8vw;
    padding-bottom: 1.2vw;
    margin-bottom: 6.4vw; }
  .sp-content-bt .sp-collapse .navbar-nav li {
    font-size: 4.2666666667vw; }
    .sp-content-bt .sp-collapse .navbar-nav li p {
      border-bottom: 1px solid #646464;
      padding: 2.4vw 0; }
      .sp-content-bt .sp-collapse .navbar-nav li p:after {
        height: 3.8666666667vw;
        width: 3.8666666667vw; }
    .sp-content-bt .sp-collapse .navbar-nav li ul {
      margin-top: 4.6666666667vw; }
      .sp-content-bt .sp-collapse .navbar-nav li ul li {
        margin-bottom: 4vw;
        text-align: left; }
        .sp-content-bt .sp-collapse .navbar-nav li ul li a {
          font-size: 2.9333333333vw; }
        .sp-content-bt .sp-collapse .navbar-nav li ul li:nth-child(2n), .sp-content-bt .sp-collapse .navbar-nav li ul li.special-right {
          padding-left: 2.6666666667vw; }
  .sp-content-bt .sp-collapse .navbar-nav .drop-active p:after {
    height: 3.8666666667vw;
    width: 3.8666666667vw; }

  .sp-sns {
    padding-bottom: 8vw; }
    .sp-sns ul li {
      width: 9.3333333333vw;
      height: 9.3333333333vw;
      margin-right: 2.6666666667vw; }

  .sp-menu-ft {
    margin-top: 4vw; }
    .sp-menu-ft ul li {
      margin-bottom: 2vw;
      text-align: left; }
      .sp-menu-ft ul li a {
        font-size: 2.9333333333vw; }
      .sp-menu-ft ul li:first-child {
        margin-bottom: 6vw; }

  .copyright {
    font-size: 2.9333333333vw;
    margin: 6vw 0 7.3333333333vw 0; }

  .back-top {
    width: 9.3333333333vw;
    height: 9.3333333333vw; } }
@media screen and (max-width: 480px) {
  footer {
    padding: 0 2.6666666667vw; }

  .sp-content-bt .sp-collapse .navbar-nav li p {
    padding: 13px 0; } }

/*小澤追加分 */
div.cjpo_bannr {width: 100%; text-align:center; margin: -10px　0; padding-bottom: 30px;}
div.cjpo_bannr a {max-width: 50%; margin: 0 3px;}
div.cjpo_bannr a img {width: 45%;}
/*小澤追加分 */

@media screen and (max-width: 749px) {
/* レスポンシブテンプレートでの画像の横並べとスマホで解除 */
div#two-pic {
    margin: 15px auto;
    text-align: center;
    width: 100%;
}
div#left-pic {
    display: inline-block;
    padding: 5px;
}
div#right-pic {
    display: inline-block;
    padding: 5px;
}
	
.top-banner{
	display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.top-banner li {
	margin: 0px auto;
    padding: 5px 0;
}
.top-banner li img {
	max-width: 80%;
    height: auto;
}
	
}
