@charset "UTF-8";

/** 基本共通設定 **/

.sp,
.sp-only {
  display: none !important;
}

body {
  position: relative;
  color: #111;
  font-size: 1.6rem;
  font-family: 'Mulish', "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: .06em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/** ページ構造 **/

.block-container {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
}

.block-container:first-child {
  margin-top: 40px;
}

.block-container > .block-main {
  width: 770px;
  margin-bottom: 80px;
}

.block-container > .block-right {
  width: 380px;
}

.block-container > .block-right .block-right-inner {
  width: 380px;
  padding-bottom: 20px;
}

.block-container > .block-right .block-right-inner.is-fixed {
  position: fixed;
  bottom: 0;
}

.block-container > .block-right .block-right-inner.is-absolute {
  position: absolute;
  bottom: 0;
}

.block-bottom {
  min-width: 1200px;
  margin-top: 20px;
}

/** リンク **/

a {
  color: #111;
  text-decoration: underline;
  transition: .2s ease;
}

a:hover {
  text-decoration: none;
}

a.link-outer,
a.link-pdf {
  position: relative;
}

a.link-outer::after,
a.link-pdf::after {
  display: inline-block;
  position: relative;
  margin: 0 8px;
  background-size: contain;
}

a.link-outer::after {
  content: '';
  top: 1px;
  width: 16px;
  height: 17px;
  background: url(../image/common/icon_outerlink.svg) center no-repeat;
  background-size: contain;
}

a.link-pdf::after {
  content: 'PDF';
  top: -3px;
  height: 20px;
  padding: 0 6px;
  background-color: #212121;
  color: #fff;
  font-size: 1.1rem;
}

img {
  max-width: 100%;
  flex-shrink: 0;
}

button {
  background-color: transparent;
}

.wrapper {
  min-width: 1200px;
  overflow: hidden;
}

.base-inner {
  width: 1200px;
  margin: auto;
}

.cl-women {
  color: #FFC0CB;
}

.cl-men {
  color: #779BC9;
}

.cl-items {
  color: #7CD5A1;
}

.cl-blog {
  color: #EFB235;
}

.cl-date {
  color: #979797;
}

.mt10 {
  margin-top: 10px;
}

.mt15 {
  margin-top: 15px;
}

.mt16 {
  margin-top: 16px;
}

.mt24 {
  margin-top: 24px;
}

.mt30 {
  margin-top: 30px;
}

.mt32 {
  margin-top: 32px;
}

.mt40 {
  margin-top: 40px;
}

.mt50 {
  margin-top: 50px;
}

.mt60 {
  margin-top: 60px;
}

.mt64 {
  margin-top: 64px;
}

.mt70 {
  margin-top: 70px;
}

.mt72 {
  margin-top: 72px;
}

.mt80 {
  margin-top: 80px;
}

.mt90 {
  margin-top: 90px;
}

.mt100 {
  margin-top: 100px;
}

.mt160 {
  margin-top: 160px;
}

.mt200 {
  margin-top: 200px;
}

/** タイトル **/

.ttl-h1,
.event_title_ {
  margin: 0 0 20px;
  font-size: 2.8rem;
  font-weight: 400;
}

.ttl-h2,
.ttl-common-h2 {
  margin: 0 0 20px;
  font-size: 2.4rem;
  font-weight: 400;
}

.ttl-h2:not(:first-child) {
  margin-top: 60px;
}

.ttl-h3 {
  margin: 0 0 20px;
  font-size: 2rem;
  font-weight: 400;
}

.ttl-h3:not(:first-child) {
  margin-top: 60px;
}

.ttl-h4 {
  margin: 0 0 24px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
  font-size: 1.8rem;
  font-weight: 400;
}

.ttl-h4:not(:first-child) {
  margin-top: 60px;
}

.ttl-h5 {
  margin: 0 0 20px;
  font-size: 1.6rem;
  font-weight: 600;
}

.ttl-h5:not(:first-child) {
  margin-top: 60px;
}

.ttl-h2-en_ja {
  margin: 0;
  padding: 0;
  font-weight: 600;
  text-align: center;
}

.ttl-h2-en_ja .txt-en {
  font-size: 2.5rem;
}

.ttl-h2-en_ja .txt-ja {
  color: #979797;
  font-size: 1.4rem;
  font-weight: 400;
}

/** ボタン/リンク **/

@-webkit-keyframes blackToWhite {
  0% {
    color: #212121
  }

  30% {
    color: #fff
  }

  70% {
    color: #fff
  }

  100% {
    color: #212121
  }
}

@keyframes blackToWhite {
  0% {
    color: #212121
  }

  30% {
    color: #fff
  }

  70% {
    color: #fff
  }

  100% {
    color: #212121
  }
}

@-webkit-keyframes whiteToBlack {
  0% {
    color: #fff
  }

  30% {
    color: #212121
  }

  70% {
    color: #212121
  }

  100% {
    color: #fff
  }
}

@keyframes whiteToBlack {
  0% {
    color: #fff
  }

  30% {
    color: #212121
  }

  70% {
    color: #212121
  }

  100% {
    color: #fff
  }
}

@-webkit-keyframes leftToRight {
  0% {
    left: -240%
  }

  100% {
    left: 100%
  }
}

@keyframes leftToRight {
  0% {
    left: -240%
  }

  100% {
    left: 100%
  }
}

.btn-primary a,
.btn-secondary a,
.btn-primary button,
.btn-secondary button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  border: 1px solid #212121;
  cursor: pointer;
  overflow: hidden;
}

.btn-primary a:hover,
.btn-secondary a:hover,
.btn-primary button:hover,
.btn-secondary button:hover {
  text-decoration: none;
}

.btn-primary span,
.btn-secondary span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.btn-primary .btn-txt,
.btn-secondary .btn-txt {
  z-index: 99;
}

.btn-primary .btn-txt {
  color: #fff;
}

.btn-primary a:hover .btn-txt,
.btn-primary button:hover .btn-txt {
  -webkit-animation: whiteToBlack .6s linear;
  animation: whiteToBlack .6s linear;
}

.btn-secondary a:hover .btn-txt,
.btn-secondary button:hover .btn-txt {
  -webkit-animation: blackToWhite .6s linear;
  animation: blackToWhite .6s linear;
}

.btn-primary .btn-bg,
.btn-secondary .btn-bg {
  z-index: 9;
}

.btn-primary .btn-bg {
  background-color: #212121;
  color: #fff;
}

.btn-secondary .btn-bg {
  background-color: #fff;
}

.btn-primary .btn-bg::after,
.btn-secondary .btn-bg::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: -240%;
  width: 240%;
  height: 100%;
}

.btn-primary .btn-bg::after {
  background-color: #fff;
}

.btn-secondary .btn-bg::after {
  background-color: #212121;
}

.btn-primary a:hover .btn-bg::after,
.btn-secondary a:hover .btn-bg::after,
.btn-primary button:hover .btn-bg::after,
.btn-secondary button:hover .btn-bg::after {
  -webkit-animation: leftToRight .6s linear;
  animation: leftToRight .6s linear;
}

.base-btn a,
.base-btn button {
  width: 242px;
  height: 58px;
  font-size: 1.6rem;
  text-decoration: none;
}

.base-btn .btn-txt {
  padding: 0 10px;
  font-size: 1.8rem;
  font-weight: 600;
}

.base-btn .btn-txt::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 14px;
  width: 6px;
  height: 6px;
  margin-top: -4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
}

.btn-back {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 100px;
}

.btn-back a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  width: 260px;
  height: 48px;
  border: 1px solid #212121;
  background-color: #212121;
  color: #fff;
  font-size: 1.4rem;
  text-decoration: none;
  letter-spacing: .1em;
  -webkit-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

.btn-back a::before {
  content: '\f104';
  position: absolute;
  left: 24px;
  font-family: 'Fontawesome';
}

.btn-back a:hover {
  background-color: #fff;
  color: #212121;
}

/** フォーム **/

input[type="text"],
input[type="email"],
input[type="tel"],
textarea {
  border: 1px solid #DBDBDB;
  border-radius: 3px;
  font-size: 1.6rem;
}

input[type="text"],
input[type="email"],
input[type="tel"] {
  height: 44px;
  padding: 0 16px;
}

textarea {
  width: 100%;
  padding: 16px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  background-color: transparent;
  font-size: 1.6rem;
}

select::-ms-expand {
  display: none;
}

/** ヘッダー **/

.header-top {
  display: flex;
  align-items: flex-start;
}

.header-top .base-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 104px;
}

.header-top-logo a {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
}

.header-top-logo a:hover {
  opacity: .7;
}

.header-top-logo a div {
  margin-bottom: 8px;
  color: #707070;
  font-size: 1.1rem;
  font-weight: 300;
  letter-spacing: 0;
}

.header-top-right {
  position: absolute;
  top: 0;
  right: 0;
  height: 104px;
}

.header-top-right-logo {
  display: flex;
  justify-content: flex-end;
  padding-top: 13px;
}

.header-top-right-logo a {
  display: block;
}

.header-top-right-logo a:hover {
  opacity: .7;
}

.header-top-right-bot {
  display: flex;
  align-items: center;
  margin-top: 26px;
}

.header-sns-list {
  margin-left: 26px;
}

.header-sns-list ul {
  display: flex;
}

.header-sns-list li + li {
  margin-left: 16px;
}

.header-sns-list a {
  display: block;
}

.header-sns-list a:hover {
  opacity: .7;
}

.header-btns {
  display: flex;
  justify-content: flex-end;
  margin-left: 22px;
}

.header-btn-onlinestore {
  margin-left: 10px;
}

.header-btn-personal a,
.header-btn-onlinestore a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 23px;
  padding: 0 7px;
  font-size: 1rem;
  text-decoration: none;
  white-space: nowrap;
}

.header-btn-personal a {
  min-width: 140px;
  border: 1px solid #ED3590;
  background-color: #ED3590;
  color: #fff;
}

.header-btn-personal a:hover {
  background-color: #fff;
  color: #ED3590;
}

.header-btn-onlinestore a {
  min-width: 107px;
  border: 1px solid #140F14;
  background-color: #fff;
  color: #111;
}

.header-btn-onlinestore a:hover {
  background-color: #140F14;
  color: #fff;
}

.header-about,
.header-member {
  display: flex;
  align-items: center;
}

.header-member {
  margin-left: 28px;
}

.header-about a,
.header-member a {
  font-size: 1.1rem;
  text-decoration: none;
  white-space: nowrap;
}

.header-about a:hover,
.header-member a:hover {
  text-decoration: underline;
}

.header-bot {
  height: 60px;
}

.header-bot-inner {
  position: relative;
  width: 100%;
  min-width: 1200px;
  background-color: #fff;
  z-index: 9999;
}

.header-bot-inner.is-float {
  position: fixed;
  top: 0;
  left: 0;
}

.header-bot-inner > .base-inner {
  display: flex;
  align-items: center;
  height: 60px;
}

.header-bot-logo {
  width: 0;
  margin-right: 0;
  opacity: 0;
  visibility: hidden;
  transition: .32s ease;
}

.is-float .header-bot-logo {
  width: auto;
  margin-right: 40px;
  opacity: 1;
  visibility: visible;
}

.header-bot-logo a {
  display: block;
}

.header-bot-logo a:hover {
  opacity: .7;
}

.globalnav-items {
  display: flex;
  align-items: center;
  height: 60px;
}

.globalnav-item + .globalnav-item {
  margin-left: 28px;
  transition: .32s ease;
}

.is-float .globalnav-item + .globalnav-item {
  margin-left: 2px;
  transition: .32s ease;
}

.globalnav-item a {
  text-decoration: none;
}

.globalnav-ttl {
  font-size: 1.3rem;
  font-weight: 600;
}

.is-float .globalnav-ttl {
  font-size: 1.1rem;
}

.globalnav-ttl a {
  display: flex;
  align-items: center;
  position: relative;
  height: 60px;
  padding: 0 20px;
  white-space: nowrap;
}

.item-women:hover .globalnav-ttl a {
  color: #FFC0CB;
}

.item-men:hover .globalnav-ttl a:hover {
  color: #779BC9;
}

.item-items:hover .globalnav-ttl a:hover {
  color: #7CD5A1;
}

.item-blog:hover .globalnav-ttl a:hover {
  color: #EFB235;
}

.item-about:hover .globalnav-ttl a:hover {
  color: #9B21A8;
}

.globalnav-ttl a::after {
  content: '';
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #111;
  opacity: 0;
  transition: .2s ease;
}

.item-women .globalnav-ttl a::after {
  background-color: #FFC0CB;
}

.item-men .globalnav-ttl a::after {
  background-color: #779BC9;
}

.item-items .globalnav-ttl a::after {
  background-color: #7CD5A1;
}

.item-blog .globalnav-ttl a::after {
  background-color: #EFB235;
}

.item-about .globalnav-ttl a::after {
  background-color: #9B21A8;
}

.globalnav-item:hover .globalnav-ttl a::after {
  opacity: 1;
}

.globalnav-sub_menu {
  display: none;
  position: absolute;
  left: 0;
  width: 100%;
  background-color: #ffffff;
}

.globalnav-sub_menu-body {
  padding: 44px 50px;
}

.globalnav-sub_menu-ttl .txt-en {
  font-size: 2rem;
  font-weight: 600;
}

.globalnav-sub_menu-ttl .txt-ja {
  font-size: 1.4rem;
  font-weight: 300;
}

.globalnav-sub_menu-list-items {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -120px 0 0;
  overflow: hidden;
}

.globalnav-sub_menu-list-items li {
  margin: 44px 120px 0 0;
}

.globalnav-sub_menu-list-items a {
  display: block;
  position: relative;
  padding: 0 26px 2px 5px;
  color: #999999;
  font-size: 1.7rem;
  font-weight: 600;
}

.globalnav-sub_menu-list-items a:hover {
  color: #111;
}

.globalnav-sub_menu-list-items a::before,
.globalnav-sub_menu-list-items a::after {
  content: '';
  display: block;
  position: absolute;
  transition: .2s ease;
}

.globalnav-sub_menu-list-items a::before {
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #111;
  opacity: 0;
}

.globalnav-sub_menu-list-items a::after {
  right: 5px;
  top: 8px;
  width: 18px;
  height: 9px;
  background: url(../image/common/icon_gnav_arw.png) center no-repeat;
  background-size: contain;
  opacity: 0;
}

.globalnav-sub_menu-list-items a:hover::before,
.globalnav-sub_menu-list-items a:hover::after {
  opacity: 1;
}

.globalnav-sub_menu-btn {
  margin-top: 50px;
}

.globalnav-sub_menu-btn p {
  font-size: 1.4rem;
  text-align: center;
}

.globalnav-sub_menu-btn .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 14px;
}

.globalnav-sub_menu-btn .btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 228px;
  height: 40px;
  border: 2px solid #ED3590;
  background-color: #ED3590;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 600;
}

.globalnav-sub_menu-btn .btn a:hover {
  background-color: #fff;
  color: #ED3590;
}

.globalnav-sub_menu-btn .btn a::after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 9px;
  width: 5px;
  height: 5px;
  margin-top: -4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(45deg);
  transition: .2s ease;
}

.globalnav-sub_menu-btn .btn a:hover::after {
  border-color: #ED3590;
}

.header-bot .header-member {
  width: 0;
  margin-left: 0;
  opacity: 0;
  visibility: hidden;
  transition: .32s ease;
}

.header-bot .is-float .header-member {
  width: auto;
  margin-left: auto;
  opacity: 1;
  visibility: visible;
  overflow: hidden;
  transition: 0;
  transition-delay: 0;
}

.header-bot-search {
  flex-shrink: 0;
  margin-left: auto;
  transition: .32s ease;
}

.is-float .header-bot-search {
  margin-left: 26px;
}

.header-bot-search-switch {
  cursor: pointer;
}

.header-bot-search-content {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 245px;
  background-color: #ffffff;
  z-index: 9;
}

.header-bot-search-content-body {
  position: relative;
  padding-top: 75px;
}

.header-bot-search-close {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
}

.header-bot-search-content-body form {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 900px;
  height: 65px;
  margin: 0 auto;
  border-bottom: 1px solid #111;
}

.header-bot-search-content-body form input[type='text'] {
  width: 855px;
  height: auto;
  padding: 0 5px;
  border: none;
  font-size: 2rem;
  font-weight: 600;
}

.header-bot-search-content-body form input[type='text']::placeholder {
  color: #111;
}

.header-bot-search-content-body form button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

/** フッター **/

.footer {
  margin-top: 140px;
  padding: 23px 0 36px;
  background-color: #212121;
}

.footer-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer-nav {
  margin-top: 46px;
}

.footer-nav,
.footer-nav a {
  color: #fff;
  text-decoration: none;
}

.footer-nav {
  display: flex;
  justify-content: space-between;
}

.footer-nav-item {
  width: 240px;
}

.footer-nav-item h2 {
  font-size: 1.3rem;
  font-weight: 600;
}

.footer-nav-item h2 + h2 {
  margin-top: 20px;
}

.footer-nav-item ul {
  margin-top: 14px;
  padding-left: 7px;
  font-size: 1.3rem;
}

.footer-nav-item li + li {
  margin-top: 5px;
}

.footer-bot {
  display: flex;
  align-items: center;
  margin-top: 100px;
}

.footer-bot-logo a {
  display: block;
}

.footer-bot-nav {
  margin-left: 66px;
}

.footer-bot-nav ul {
  display: flex;
  align-items: center;
}

.footer-bot-nav li + li {
  position: relative;
  margin-left: 40px;
}

.footer-bot-nav li + li::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: -20px;
  width: 1px;
  height: 14px;
  margin-top: -7px;
  background-color: #fff;
}

.footer-bot-nav a {
  display: block;
  color: #fff;
  font-size: 1.3rem;
  text-decoration: none;
}

.footer-sns {
  display: flex;
  align-items: center;
  margin-left: auto;
}

.footer-sns p {
  color: #A6A6A6;
  font-size: 1.5rem;
}

.footer-sns ul {
  display: flex;
  align-items: center;
  margin-left: 13px;
}

.footer-sns li + li {
  margin-left: 17px;
}

.footer-sns a {
  display: block;
}

.footer-copyright {
  margin-top: 40px;
  color: #808080;
  font-size: 10px;
  text-align: center;
}

.page-top-btn {
  display: block;
  position: fixed;
  right: 22px;
  bottom: 25px;
  z-index: 999;
}

.page-top-btn a {
  display: block;
}

/** パンくず **/

.breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 120px;
  color: #787878;
  font-size: 1.2rem;
  font-weight: 600;
}

.breadcrumbs a {
  color: #787878;
  text-decoration: none;
}

.breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  height: 56px;
}

.breadcrumbs li {
  position: relative;
}

.breadcrumbs li + li::before {
  content: '　>　';
}

/** 記事一覧 **/

.article-list {
  margin-top: 36px;
}

.article-list-items {
  display: flex;
  flex-wrap: wrap;
}

.article-list-items a {
  text-decoration: none;
}

.col-3 .article-list-item {
  width: 240px;
}

.col-3 .article-list-item:not(:nth-child(3n)) {
  margin-right: 25px;
}

.col-3 .article-list-item:not(:nth-child(-n+3)) {
  margin-top: 30px;
}

.article-list-item a {
  display: block;
}

.article-list-item .list-img {
  width: 240px;
  height: 180px;
  overflow: hidden;
}

.article-list-item .list-img img {
  transition: .5s;
}

.article-list-item a:hover .list-img img {
  transform: scale(1.2);
}

.article-list-item .list-detail {
  margin-top: 6px;
}

.article-list-item .list-icon {
  position: absolute;
  top: -14px;
  right: -14px;
  width: 60px;
  height: 60px;
}

.article-list-item .list-icon img {
  display: block;
}

.article-list-item .list-cat {
  font-size: 1rem;
  font-weight: 600;
}

.article-list-item .list-pr {
  font-size: 1rem;
  font-weight: 600;
}

.article-list-item .list-ttl {
  margin-top: 4px;
  font-size: 1.1rem;
  font-weight: 600;
}

.article-list-item .list-date {
  margin-top: 0;
  font-size: 1rem;
  font-weight: 400;
}

.article-list-item .list-tags {
  margin: -3px -6px 0 0;
  font-size: 1rem;
  font-weight: 400;
  overflow: hidden;
}

.article-list-item .list-tags ul {
  display: flex;
  flex-wrap: wrap;
}

.article-list-item .list-tags li {
  margin: 3px 6px 0 0;
}

.article-list-item .list-tags a {
  color: #979797;
}

/** サイドカラム **/

.side-keyword {
  margin-bottom: 50px;
}

.side-keyword-list {
  display: flex;
  margin-top: 36px;
  overflow: hidden;
}

.side-keyword-list ul {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -5px 0 0;
}

.side-keyword-list li {
  margin: 10px 5px 0 0;
}

.side-keyword-list a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  padding: 0 14px;
  border-radius: 28px;
  border: 1px solid #A8A5A5;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none;
}

.side-keyword-list a:hover {
  background-color: #A8A5A5;
  color: #fff;
}

.side-bnrs li + li {
  margin-top: 25px;
}

.side-bnrs a {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .2s ease;
}

.side-bnrs a:hover {
  opacity: .7;
}

.side-ranking {
  margin: 70px 0;
}

.side-ranking-list {
  margin-top: 30px;
}

.side-ranking-list-item {
  border: 1px solid #DFDEDE;
}

.side-ranking-list-item + .side-ranking-list-item {
  margin-top: 22px;
}

.side-ranking-list-item a {
  display: flex;
  justify-content: space-between;
  position: relative;
  text-decoration: none;
}

.side-ranking-list-item .list-img {
  width: 140px;
  height: 105px;
  overflow: hidden;
}

.side-ranking-list-item .list-img img {
  transition: .5s;
}

.side-ranking-list-item a:hover .list-img img {
  transform: scale(1.2);
}

.side-ranking-list-item .list-rank {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: -12px;
  left: -12px;
  width: 30px;
  height: 30px;
  border-radius: 30px;
  background-color: #111;
  color: #fff;
  font-size: 1.4rem;
}

.side-ranking-list-item:nth-child(1) .list-rank {
  background-color: #CEA00C;
}

.side-ranking-list-item:nth-child(2) .list-rank {
  background-color: #AAA8A5;
}

.side-ranking-list-item:nth-child(3) .list-rank {
  background-color: #84440D;
}

.side-ranking-list-item .list-detail {
  width: 230px;
  padding: 15px 5px 15px 0;
}

.side-ranking-list-item .list-cat_date {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  font-size: 1rem;
  font-weight: 600;
}

.side-ranking-list-item .list-cat_date .list-date {
  font-weight: 400;
}

.side-ranking-list-item .list-ttl {
  margin-top: 12px;
  font-size: 1.1rem;
  font-weight: 600;
}

.side-series {
  margin-top: 90px;
  padding-top: 20px;
  border-top: 3px solid #000000;
}

.side-series-list {
  margin-top: 32px;
}

.side-series-list li + li {
  margin-top: 46px;
}

.side-series-list a {
  display: block;
  font-weight: 600;
  text-decoration: none;
}

.side-series-list .list-img {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.side-series-list .list-img img {
  display: block;
  transition: .5s;
}

.side-series-list a:hover .list-img img {
  transform: scale(1.2);
}

.side-series-list .list-detail {
  margin-top: 14px;
}

.side-series-list .list-ttl {
  font-size: 1.5rem;
}

/*ページャー*/

.pager {
  margin-top: 70px;
}

.pager ul {
  display: flex;
  align-items: center;
  justify-content: center;
}

.pager li + li {
  margin-left: -1px;
}

.pager a,
.pager span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 1.2rem;
  font-weight: 600;
  text-decoration: none;
}

.pager a {
  border: 1px solid #D5D3D3
}

.pager span {
  background-color: #000000;
  color: #fff;
}

.pager .pager-prev {
  margin-right: 20px;
}

.pager .pager-next {
  margin-left: 20px;
}

.pager .pager-prev a,
.pager .pager-next a {
  position: relative;
  border: none;
  background-color: #000000;
  color: transparent;
  font-size: 0;
}

.pager .pager-prev a::before,
.pager .pager-next a::before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -5px;
  transform: rotate(45deg);
}

.pager .pager-prev a::before {
  left: 17px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
}

.pager .pager-next a::before {
  right: 17px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

/*テンプレート*/

.block-container .base-inner {
  width: 100%;
}

.block-fp-container {
  margin-top: 50px;
}

.block-container .block-fp-container {
  margin-top: 0;
}

.block-fp-container .base-inner:not(:first-child) {
  margin-top: 80px;
}

.block-fp-fullsize-img {
  min-width: 1200px;
  margin-top: 80px;
}

.block-fp-fullsize-img figure {
  display: block;
  max-width: 1920px;
  margin: 0 auto;
}

.block-fp-single-slider {
  width: 100%;
  padding-bottom: 56px;
}

.block-fp-single-slider-items {
  margin-bottom: 56px;
}

.block-fp-single-slider-item {
  padding: 0 50px;
}

.block-container .block-fp-single-slider-item {
  padding: 0 35px;
}

.block-fp-single-slider-item .item-detail {
  margin-top: 36px;
}

.block-fp-single-slider-item .item-ttl {
  font-size: 2.4rem;
  font-weight: 400;
}

.block-fp-single-slider-item .item-comment {
  margin-top: 18px;
}

.block-fp-single-slider .slick-arrow {
  display: block;
  position: absolute;
  top: 50%;
  width: 24px;
  height: 48px;
  margin-top: -24px;
  border: none;
  background-color: transparent;
  color: transparent;
  font-size: 0;
  z-index: 9;
  cursor: pointer;
}

.block-fp-single-slider .slick-prev {
  left: 1px;
}

.block-fp-single-slider .slick-next {
  right: 1px;
}

.block-fp-single-slider .slick-arrow::before {
  content: '';
  display: block;
  position: absolute;
  top: 8px;
  width: 30px;
  height: 30px;
}

.block-fp-single-slider .slick-prev::before {
  left: 7px;
  border-bottom: 2px solid #B2B0B0;
  border-left: 2px solid #B2B0B0;
  transform: rotate(45deg);
}

.block-fp-single-slider .slick-next::before {
  right: 7px;
  border-top: 2px solid #B2B0B0;
  border-right: 2px solid #B2B0B0;
  transform: rotate(45deg);
}

.block-fp-single-slider .slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: -56px;
  left: 0;
  width: 100%;
}

.block-fp-single-slider .slick-dots li {
  display: flex;
  align-items: center;
  height: 16px;
  cursor: pointer;
}

.block-fp-single-slider .slick-dots li + li {
  margin-left: 16px;
}

.block-fp-single-slider .slick-dots li button {
  position: relative;
  width: 55px;
  height: 3px;
  padding: 0;
  margin: 0;
  border: none;
  background-color: rgba(178, 176, 176, 0.5);
  color: transparent;
  font-size: 0;
}

.block-fp-single-slider .slick-dots li button::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 55px;
  height: 3px;
  padding: 0;
  margin: 0;
  border-radius: 0;
  background-color: #fff;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: left 50%;
  transform-origin: left 50%;
}

.block-fp-single-slider .slick-dots li.slick-active button::before {
  background-color: #111;
  -webkit-animation: scale-x-zero-to-max 6s linear .8s 1 forwards;
  animation: scale-x-zero-to-max 6s linear .8s 1 forwards;
}

.block-fp-img_article ul {
  display: flex;
}

.block-fp-img_article ul + ul {
  margin-top: 80px;
}

.block-fp-img_article ul .list-comment p + p {
  margin-top: 1.5em;
}

.block-fp-img_article ul.col-1 li {
  width: 100%;
}

.block-fp-img_article ul.col-1 .list-detail {
  margin-top: 32px;
}

.block-fp-img_article ul.col-1 .list-ttl {
  font-size: 2.4rem;
  font-weight: 400;
}

.block-fp-img_article ul.col-1 .list-comment {
  margin-top: 20px;
}

.block-fp-img_article ul.col-2 li {
  width: 580px;
}

.block-container .block-fp-img_article ul.col-2 li {
  width: 370px;
}

.block-fp-img_article ul.col-3 li {
  width: 373px;
}

.block-container .block-fp-img_article ul.col-3 li {
  width: 240px;
}

.block-fp-img_article ul.col-4 li {
  width: 273px;
}

.block-fp-img_article ul.col-2 li:not(:nth-child(2n)),
.block-fp-img_article ul.col-3 li:not(:nth-child(3n)) {
  margin-right: 40px;
}

.block-container .block-fp-img_article ul.col-2 li:not(:nth-child(2n)) {
  margin-right: 30px;
}

.block-container .block-fp-img_article ul.col-3 li:not(:nth-child(3n)) {
  margin-right: 35px;
}

.block-fp-img_article ul.col-4 li:not(:nth-child(4n)) {
  margin-right: 36px;
}

.block-fp-img_article ul.col-2 .list-detail,
.block-fp-img_article ul.col-3 .list-detail {
  margin-top: 25px;
}

.block-fp-img_article ul.col-4 .list-detail {
  margin-top: 14px;
}

.block-fp-img_article ul.col-2 .list-ttl,
.block-fp-img_article ul.col-3 .list-ttl,
.block-fp-img_article ul.col-4 .list-ttl {
  font-size: 2rem;
  font-weight: 400;
}

.block-fp-img_article ul.col-2 .list-comment,
.block-fp-img_article ul.col-3 .list-comment,
.block-fp-img_article ul.col-4 .list-comment {
  margin-top: 16px;
}

.block-fp-img_article ul.vert-1,
.block-fp-img_article ul.vert-2 {
  flex-direction: column;
}

.block-fp-img_article ul.vert-1 li,
.block-fp-img_article ul.vert-2 li {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.block-fp-img_article ul.vert-1 li + li,
.block-fp-img_article ul.vert-2 li + li {
  margin-top: 80px;
}

.block-fp-img_article ul.vert-1 .list-img {
  width: 580px;
}

.block-fp-img_article ul.vert-2 .list-img {
  width: 373px;
}

.block-fp-img_article ul.vert-1 .list-detail {
  width: 570px;
}

.block-fp-img_article ul.vert-2 .list-detail {
  width: 764px;
}

.block-fp-img_article ul.vert-1 .list-ttl {
  font-size: 2.4rem;
  font-weight: 400;
}

.block-fp-img_article ul.vert-2 .list-ttl {
  font-size: 2rem;
  font-weight: 400;
}

.block-fp-img_article ul.vert-1 .list-comment,
.block-fp-img_article ul.vert-2 .list-comment {
  margin-top: 16px;
}

.block-fp-link {
  margin-top: 80px;
}

.block-fp-link div + div {
  margin-top: 24px;
}

a.link-normal,
a.link-outer,
a.link-pdf {
  position: relative;
  color: #333;
}

a.link-outer::after {
  content: '';
  display: inline-block;
  position: relative;
  top: 1px;
  width: 11px;
  height: 11px;
  margin-left: 10px;
  background: url(../image/common/icon_link_outer.png) center no-repeat;
  background-size: contain;
}

a.link-pdf::after {
  content: '';
  display: inline-block;
  position: relative;
  top: 1px;
  width: 21px;
  height: 16px;
  margin-left: 10px;
  background: url(../image/common/icon_link_pdf.png) center no-repeat;
  background-size: contain;
}

.block-fp-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  margin-top: 80px;
}

.block-fp-btn div + div {
  margin-top: 16px;
}

.block-fp-btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  position: relative;
  width: 300px;
  height: 56px;
  background-color: #333333;
  color: #fff;
  text-decoration: none;
  -webkit-transition: .15s ease;
  transition: .15s ease;
}

.block-fp-btn a:hover {
  opacity: .7;
}

a.btn-outer::after {
  content: '';
  display: inline-block;
  position: relative;
  top: -1px;
  width: 11px;
  height: 11px;
  margin-left: 10px;
  background: url(../image/common/icon_link_outer_white.png) center no-repeat;
  background-size: contain;
}

a.btn-pdf::after {
  content: '';
  display: inline-block;
  position: relative;
  top: -1px;
  width: 21px;
  height: 16px;
  margin-left: 10px;
  background: url(../image/common/icon_link_pdf_white.png) center no-repeat;
  background-size: contain;
}

.block-fp-bg-content {
  padding: 46px 50px;
  background-color: #F6F6F6;
}

.block-container .block-fp-bg-content {
  padding: 36px 33px;
}

.block-fp-bdr-content {
  position: relative;
  padding: 46px 50px;
}

.block-container .block-fp-bdr-content {
  padding: 36px 33px;
}

.block-fp-bdr-content::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 4px solid #E4E4E4;
}

.block-fp-bdr-content p {
  position: relative;
}

.block-fp-caution {
  color: #787878;
  font-size: 1.2rem;
}

.block-fp-sale {
  display: flex;
  justify-content: space-between;
  position: relative;
  width: 100%;
  padding: 34px 55px;
}

.block-fp-sale::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border: 4px solid #E4E4E4;
}

.block-fp-sale .item-img {
  position: relative;
  width: 340px;
}

.block-fp-sale .item-detail {
  position: relative;
  width: 750px;
  padding-left: 106px;
  font-size: 1.4rem;
}

.block-fp-sale .item-detail h3 {
  font-size: 1.8rem;
  font-weight: 600;
}

.block-fp-sale .item-store_name {
  margin-top: 20px;
}

.block-fp-sale .item-store_url a {
  color: #787878;
}

.block-fp-sale .item-comment {
  margin-top: 1.2em;
  color: #787878;
}

.block-fp-recommend {
  padding: 26px 0 60px;
  border-top: 3px solid #000000;
  background-color: #F9F9F9;
}

.block-fp-recommend-content {
  display: block;
  width: 1100px;
  margin: 50px auto 0;
  text-decoration: none;
}

.block-fp-recommend-content .item-detail {
  margin-top: 38px;
}

.block-fp-recommend-content .item-comment p + p {
  margin-top: 1.5em;
}

.block-fp-profile {
  width: 1100px;
  margin: 0 auto;
}

.block-fp-profile h3 {
  margin: 0;
  padding: 0;
  font-size: 1.8rem;
  font-weight: 600;
}

.block-fp-profile-content {
  display: flex;
  justify-content: space-between;
  margin-top: 24px;
}

.block-fp-profile-content .item-img {
  width: 305px;
}

.block-fp-profile-content .item-detail {
  width: 795px;
  padding-left: 30px;
}

.block-fp-profile-content .item-info {
  margin-top: 22px;
  color: #787878;
  font-size: 1.2rem;
}

.block-fp-profile-content .item-comment {
  margin-top: 1.5em;
  color: #787878;
  font-size: 1.2rem;
}

.block-fp-tags {
  width: 100%;
  overflow: hidden;
}

.block-fp-tags-items {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: -5px -5px 0 0;
}

.block-fp-tags-items li {
  margin: 5px 5px 0 0;
}

.block-fp-tags-items a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  padding: 0 14px;
  border: 1px solid #A8A5A5;
  border-radius: 28px;
  font-size: 1.1rem;
  font-weight: 600;
  text-decoration: none
}

.block-fp-tbl + .block-fp-tbl {
  margin-top: 80px;
}

.block-fp-tbl dt,
.block-fp-tbl th {
  background-color: #F4F4F4;
}

.block-fp-tbl dt > div,
.block-fp-tbl dd > div {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.block-fp-tbl.tbl-1 {
  border-top: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-1 dl {
  display: flex;
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-1 dt {
  width: 326px;
}

.block-fp-tbl.tbl-1 dd {
  width: 874px;
}

.block-fp-tbl.tbl-1 dt > div,
.block-fp-tbl.tbl-1 dd > div {
  padding: 24px;
}

.block-fp-tbl.tbl-1 dt > div {
  align-items: center;
  text-align: center;
}

.block-fp-tbl.tbl-2 {
  display: flex;
  border-top: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-2 dl {
  width: 50%;
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-2 dl + dl {
  border-left: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-2 dt {
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-2 dt > div {
  align-items: center;
  padding: 13px 26px;
  text-align: center;
}

.block-fp-tbl.tbl-2 dd > div {
  padding: 28px 26px;
}

.block-fp-tbl.tbl-2 figure {
  margin-bottom: 22px;
}

.block-fp-tbl.tbl-3 {
  border-top: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-3 dl {
  display: flex;
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-3 dt,
.block-fp-tbl.tbl-3 dd {
  position: relative;
  width: 150px;
}

.block-fp-tbl.tbl-3 dt:not(:last-child)::after,
.block-fp-tbl.tbl-3 dd:not(:last-child)::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-3 dt > div,
.block-fp-tbl.tbl-3 dd > div {
  padding: 16px 5px;
  align-items: center;
  text-align: center;
}

.block-fp-tbl.tbl-4 table {
  width: 100%;
}

.block-fp-tbl.tbl-4 table {
  border-top: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-tbl.tbl-4 table th,
.block-fp-tbl.tbl-4 table td {
  padding: 16px 5px;
  border-bottom: 1px solid rgba(112, 112, 112, 0.5);
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
}

.block-fp-tbl.tbl-4 table th:not(:last-child),
.block-fp-tbl.tbl-4 table td:not(:last-child) {
  border-right: 1px solid rgba(112, 112, 112, 0.5);
}

.block-fp-faq {
  width: 100%;
}

.block-fp-faq dl {
  border-bottom: 1px solid #B3B3B3;
}

.block-fp-faq dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  min-height: 64px;
  padding: 18px 60px 18px 24px;
  background-color: #F4F4F4;
  font-size: 1.6rem;
  cursor: pointer;
  line-height: 1.8;
}

.block-fp-faq dt .ttl,
.block-fp-faq dd .ttl {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 57px;
  font-size: 1.8rem;
}

.block-fp-faq dd .ttl {
  color: #E60000;
}

.block-fp-faq dt .btn-menu-open-bk {
  display: block;
  position: absolute;
  top: 50%;
  right: 24px;
  width: 15px;
  height: 15px;
  margin-top: -7px;
}

.block-fp-faq dt .btn-menu-open-bk::before,
.block-fp-faq dt .btn-menu-open-bk::after {
  content: '';
  display: block;
  position: absolute;
  background-color: #000;
}

.block-fp-faq dt .btn-menu-open-bk::before {
  top: 7px;
  left: 0;
  width: 15px;
  height: 1px;
}

.block-fp-faq dt .btn-menu-open-bk::after {
  top: 0;
  left: 7px;
  width: 1px;
  height: 15px;
  -webkit-transition: .2s ease;
  transition: .2s ease;
}

.block-fp-faq dt.active .btn-menu-open-bk::after {
  opacity: 0;
}

.block-fp-faq dd {
  display: none;
  line-height: 1.8;
}

.block-fp-faq dd > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 24px;
  font-size: 1.6rem;
}

.block-fp-step_flow + .block-fp-step_flow {
  margin-top: 20px;
}

.block-fp-step_flow ul {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 50px;
  background-color: #8A8A8A;
}

.block-fp-step_flow ul::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100px;
  height: 100%;
  background-color: #404040;
}

.block-fp-step_flow li {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 97px;
  height: 100%;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 600;
}

.block-fp-step_flow li.list-current::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  height: 50px;
  background-color: #404040;
}

.block-fp-step_flow li.list-current::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 17px;
  height: 50px;
  background: url(../image/common/bg_step.png) center no-repeat;
  background-size: contain;
}

.block-fp-step_flow li div {
  position: relative;
}

.block-fp-step_flow li.list-done {
  background-color: #404040;
}

.block-fp-large_btn ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.block-fp-large_btn ul + ul {
  margin-top: 80px;
}

.block-fp-large_btn ul.col-2 li {
  width: 370px;
}

.block-fp-large_btn .list-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 56px;
}

.block-fp-large_btn ul.col-1 .list-btn .btn {
  display: flex;
  justify-content: center;
  width: 50%;
}

.block-fp-large_btn .list-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 260px;
  height: 102px;
  border-radius: 102px;
  color: #fff;
  font-size: 5rem;
  font-weight: 600;
  text-decoration: none;
}

.block-fp-large_btn .list-btn a.cl-red {
  border: 2px solid #EAB0CA;
  background-color: #DD6A9D;
}

.block-fp-large_btn .list-btn a.cl-blue {
  border: 2px solid #A3E4FF;
  background-color: #50B5DE;
}
