.mainVisual > div > .inner, .contents-news .list-news01, .contents-news .list-news01 li a {
  zoom: 1; }
  .mainVisual > div > .inner:after, .contents-news .list-news01:after, .contents-news .list-news01 li a:after {
    clear: both;
    display: table;
    content: ""; }

.header-attention {
  border-top: 1px solid #e9a7a7; }

.mod-em-08 {
  font-size: 48px;
  font-weight: bold; }

.mod-em-09 {
  font-size: 24px; }

.mod-em-10 {
  font-size: 18px;
  font-weight: bold; }

.mod-em-11 {
  font-size: 28px !important; }

/* ------------------------------
	.mainVisual
------------------------------ */
.mainVisual {
  position: relative;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  border-top: 1px solid #0c0102;
  background: #720f16;
  background-image: linear-gradient(to top, #9e0e17, #911e23 20%, #6f0f16 49%, #6f0f16 66%, #560a0e);
  text-align: left;
  z-index: 2; }
  .mainVisual > div {
    background: url(/img/pc/top/main-img01.png) 50% 0 no-repeat; }
    .mainVisual > div > .inner {
      box-sizing: border-box;
      margin: 0 auto;
      padding-top: 55px;
      width: 950px;
      height: 409px; }
      .mainVisual > div > .inner .col01 {
        float: left;
        width: 700px;
        text-align: right; }
        .mainVisual > div > .inner .col01 .btn01 {
          margin-top: 40px; }
      .mainVisual > div > .inner .col02 {
        float: right;
        width: 200px; }
  .mainVisual .main-benefit01 {
    box-shadow: 6px 6px 7px #4d0006;
    border-radius: 8px; }

/* ------------------------------
	mainvisual - for image switcher
------------------------------ */
.bx-viewport {
  padding: 0; }

.mainvisual-field {
  width: 100%;
  overflow: hidden; }

.mainvisual-field .stage {
  position: relative;
  height: 300px;
  background: #000000;
  box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.4); }

.mainvisual-field .stage:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 950px;
  height: 300px;
  margin-left: -475px;
  background: #ffffff;
  z-index: 2; }

.mainvisual-field .stage-inner {
  position: absolute;
  top: 0;
  left: 50%;
  overflow: hidden;
  width: 2850px;
  height: 300px;
  margin-left: -1425px;
  z-index: 3; }

.mainvisual-field .stage ul {
  overflow: hidden;
  width: 2850px;
  display: none; }

.mainvisual-field .stage li {
  float: left;
  opacity: 0.6; }

.mainvisual-field .stage li.active {
  opacity: 1; }

.mainvisual-field .bx-controls {
  position: absolute;
  top: 205px;
  left: 50%;
  width: 950px;
  margin-left: -475px; }

.mainvisual-field .bx-prev {
  left: 0;
  width: 30px;
  height: 50px;
  border: none;
  background: #bbbec4;
  text-indent: -999px; }

.mainvisual-field .bx-prev:before {
  content: "";
  position: absolute;
  top: 18px;
  left: 11px;
  width: 8px;
  height: 8px;
  border-left: 3px solid #222222;
  border-bottom: 3px solid #222222;
  transform: rotate(45deg);
  cursor: pointer; }

.mainvisual-field .bx-next {
  right: 0;
  width: 30px;
  height: 50px;
  border: none;
  background: #bbbec4;
  text-indent: -999px; }

.mainvisual-field .bx-next:before {
  content: "";
  position: absolute;
  top: 18px;
  left: 8px;
  width: 8px;
  height: 8px;
  border-left: 3px solid #222222;
  border-bottom: 3px solid #222222;
  transform: rotate(-135deg);
  cursor: pointer; }

.mainvisual-field .thumbs {
  width: 950px;
  margin: 5px auto 0;
  padding-top: 10px;
  overflow: hidden; }

.mainvisual-field .thumbs li {
  display: inline-block;
  margin: 0 7px;
  position: relative;
  width: 20px;
  height: 20px; }
  .mainvisual-field .thumbs li img {
    display: none; }
  .mainvisual-field .thumbs li:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    background: #cccccc;
    width: 20px;
    height: 20px;
    border-radius: 20px;
    text-indent: -9999px;
    cursor: pointer; }
  .mainvisual-field .thumbs li:first-child {
    margin-left: 0; }
  .mainvisual-field .thumbs li.active:after {
    background: #bf0000; }

.mainvisual-field a:hover {
  opacity: 0.8; }

.content-field {
  width: 950px;
  margin: auto; }

.content-extra {
  padding-top: 10px; }

.apply-field {
  margin-top: 10px;
  padding: 10px 0;
  background: #ffe7e7; }

.apply-contents {
  width: 950px;
  overflow: hidden;
  margin: auto; }
  .apply-contents li {
    float: left; }
  .apply-contents .web {
    margin-right: 10px; }
  .apply-contents .visit {
    margin-top: 8px; }
  .apply-contents a:hover {
    opacity: 0.8; }

/* ------------------------------
	.contents-banner
------------------------------ */
.contents-banner {
  position: relative;
  background: #600007;
  text-align: left;
  z-index: 1; }
  .contents-banner > .inner {
    position: relative;
    margin: 0 auto;
    width: 950px; }
  .contents-banner .bx-viewport {
    padding: 20px 0; }
  .contents-banner .bx-controls-direction a {
    position: absolute;
    top: 20px;
    display: block;
    background: #e0e0e0 50% 50% no-repeat;
    width: 20px;
    height: 70px;
    text-indent: -9999px; }
    .contents-banner .bx-controls-direction a.bx-prev {
      left: 0;
      background-image: url(/img/pc/top/icon_arrow_prev.png); }
    .contents-banner .bx-controls-direction a.bx-next {
      right: 0;
      background-image: url(/img/pc/top/icon_arrow_next.png); }

/* ------------------------------
	.contents-news
------------------------------ */
.contents-news {
  margin: 0 auto;
  padding: 10px 0;
  width: 475px;
  text-align: left; }
  .contents-news h2 {
    margin-bottom: 10px;
    font-size: 14px;
    color: #000; }
  .contents-news .list-news01 {
    font-size: 14px; }
    .contents-news .list-news01 li {
      min-height: 60px;
      padding: 0 0 10px; }
      .contents-news .list-news01 li a {
        text-decoration: none; }
        .contents-news .list-news01 li a .thum {
          float: left;
          width: 70px; }
        .contents-news .list-news01 li a .thum-area {
          float: left;
          display: block;
          width: 58px;
          margin-right: 10px;
          padding: 9px 0;
          border: 1px solid #dcdcdc;
          background: #fff;
          text-align: center; }
        .contents-news .list-news01 li a .txt {
          overflow: hidden;
          text-decoration: underline; }
        .contents-news .list-news01 li a:hover .txt {
          text-decoration: none; }
        .contents-news .list-news01 li a em {
          text-transform: uppercase;
          font-style: normal;
          color: #bf0000; }
  .contents-news .is-blank:after {
    content: '';
    display: inline-block;
    width: 11px;
    height: 11px;
    margin-left: 2px;
    background: url(/img/pc/common/common/icon_blank.gif) no-repeat; }

/* ------------------------------
	.floating-banner
------------------------------ */
.floating-banner {
  position: relative;
  z-index: 10; }
  .floating-banner .vertical {
    display: none;
    position: fixed;
    top: 100px;
    left: 50%;
    margin-top: 100px;
    margin-left: 485px; }

/* ------------------------------
	.socials
------------------------------ */
.socials {
  height: 30px; }

/* ------------------------------
	area-head-bnr
------------------------------ */
.area-head-bnr {
  display: none;
  background: url(/img/pc/top/bg_survey.png); }

.area-head-bnr-inner {
  position: relative;
  width: 950px;
  margin: auto; }

.area-head-bnr-inner img {
  display: block;
  margin: 0 5px; }

.area-head-bnr .act-close {
  position: absolute;
  top: 11px;
  right: 9px;
  width: 24px;
  height: 27px;
  background: url("/img/pc/top/ico_bnr_close.png");
  cursor: pointer; }

.gray-line {
  border-left: 1px solid #b2b2b2; }

.bg-pink {
  background: #f8f8f8; }

.gray-top {
  box-shadow: 0 3px 3px -1px rgba(0, 0, 0, 0.15) inset;
  padding-top: 4px; }

.inner {
  width: 950px;
  box-sizing: border-box;
  margin: 0 auto;
  text-align: left; }

.inner-max {
  width: 1110px;
  box-sizing: border-box;
  margin: 0 auto;
  text-align: left; }

.attention-area {
  background: #fef2f2; }
  .attention-area > span {
    position: relative;
    display: block;
    width: 950px;
    margin: auto;
    padding: 6px 0;
    font-size: 14px;
    text-align: center; }
    .attention-area > span .close {
      position: absolute;
      top: 8px;
      right: 0;
      display: block;
      width: 20px;
      height: 20px;
      cursor: pointer; }
      .attention-area > span .close:before, .attention-area > span .close:after {
        content: "";
        position: absolute;
        top: 0;
        right: 10px;
        width: 3px;
        height: 20px;
        background: #f00;
        transform: rotate(-45deg); }
      .attention-area > span .close:after {
        transform: rotate(45deg); }
  .attention-area a {
    color: #ff3939; }

/* ------------------------------
	.contents-part03
------------------------------ */
.contents-part03 .thumbs-wrap {
  padding-top: 5px; }
.contents-part03 .button-area {
  margin-top: -30px; }
.contents-part03 .mod-btn-01 a {
  border-radius: 5px;
  border: 1px solid #666666;
  padding: 6px 15px 6px 15px;
  font-size: 12px; }
  .contents-part03 .mod-btn-01 a:before {
    display: none; }

/* ------------------------------
	.contents-part04
------------------------------ */
.contents-part04 .mod-btn-01 a {
  width: 65%; }
.contents-part04 .mod-grid-01 {
  width: 90%;
  margin: auto; }
  .contents-part04 .mod-grid-01 .mod-btn-01 a {
    width: 85%; }
  .contents-part04 .mod-grid-01 .col {
    border-left: 1px solid #b2b2b2;
    box-sizing: border-box; }
    .contents-part04 .mod-grid-01 .col:first-child {
      border-left: none; }
    .contents-part04 .mod-grid-01 .col p.mod-btn-01 {
      margin: 10px 0 20px; }
      .contents-part04 .mod-grid-01 .col p.mod-btn-01 a {
        padding: 6px 35px 6px 15px;
        text-align: left !important; }

/* ------------------------------
	.contents-part05
------------------------------ */
.contents-part05 .mod-btn-01 a {
  width: 85%; }
.contents-part05 .mod-grid-01 .col {
  width: 45% !important; }
  .contents-part05 .mod-grid-01 .col p.mod-btn-01 {
    margin: 10px 0 20px; }
    .contents-part05 .mod-grid-01 .col p.mod-btn-01 a {
      padding: 6px 35px 6px 15px;
      text-align: left !important; }
    .contents-part05 .mod-grid-01 .col p.mod-btn-01.mod-pt-20 {
      padding-top: 22px; }

/* ------------------------------
	.contents-part06
------------------------------ */
.contents-part06 .mod-btn-01 a {
  width: 85%; }

/* ------------------------------
	phoenix
------------------------------ */
.phoenix-wrap {
  position: relative;
  height: 300px; }

.phoenix-cardholder_default,
.phoenix-cardholder_a,
.phoenix-cardholder_b,
.phoenix-cardholder_c {
  position: absolute;
  left: 50%;
  margin-left: -475px; }
  .phoenix-cardholder_default img,
  .phoenix-cardholder_a img,
  .phoenix-cardholder_b img,
  .phoenix-cardholder_c img {
    height: 300px; }

.phoenix-cardholder_a,
.phoenix-cardholder_b,
.phoenix-cardholder_c {
  visibility: hidden; }

.mod-alert {
  width: 950px;
  margin: 20px auto;
  box-sizing: border-box;
  position: relative;
  color: #bf0000;
  border: 2px solid #bf0000;
  font-weight: bold; }

.mod-alert img {
  padding-right: 5px;
  padding-bottom: 2px; }

.mod-alert-top {
  padding: 13px; }

.mod-alert a:hover {
  opacity: 0.8; }

/* ------------------------------
	js-accordion
------------------------------ */
.announce {
  width: 950px;
  margin: 0 auto; }

.announce .mod-tbl-01 {
  border: none; }

.announce .mod-tbl-01 th, .announce .mod-tbl-01 td {
  border: none;
  padding: 0;
  vertical-align: top; }

.announce .accordion-list .ttl {
  color: #bf0000;
  font-weight: bold; }
.announce .accordion-list dt {
  position: relative;
  padding: 15px;
  font-size: 18px;
  font-weight: bold;
  cursor: pointer;
  color: #fff;
  background-color: #bf0000; }
  .announce .accordion-list dt .close {
    background-color: #f3f3f3; }
.announce .accordion-list dt::after {
  content: "";
  position: absolute;
  right: 90px;
  top: 41%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 11px;
  height: 11px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg); }
.announce .accordion-list dt.close::after {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  top: 34%; }
.announce .accordion-list dd {
  border-right: 2px solid;
  border-bottom: 2px solid;
  border-left: 2px solid;
  border-color: #bf0000;
  text-align: left;
  padding: 20px;
  overflow-y: auto;
  height: 100%;
  cursor: pointer; }
  .announce .accordion-list dd .accordion-list__item .ttl {
    color: #bf0000;
    font-weight: bold; }
  .announce .accordion-list dd .accordion-list__item .list-item .category {
    font-weight: bold;
    border-bottom: 1px solid #333;
    padding-bottom: 5px;
    margin-bottom: 5px; }
  .announce .accordion-list dd .accordion-list__item .list-item strong {
    font-weight: bold; }
  .announce .accordion-list dd .accordion-list__item .close-btn {
    font-weight: bold;
    color: #bf0000;
    padding: 10px;
    text-align: center;
    border: 2px solid #bf0000;
    width: 544px;
    margin: 20px auto 0;
    border-radius: 50px; }
  .announce .accordion-list dd .accordion-list__item .close-btn:hover {
    color: #fff;
    background-color: #bf0000; }
  .announce .accordion-list dd em {
    color: #bf0000; }

#scroll_box {
  height: 200px;
  white-space: nowrap; }

#scroll_box::-webkit-scrollbar {
  width: 3px;
  height: 3px; }

#scroll_box::-webkit-scrollbar-track {
  border-radius: 5px;
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.1); }

#scroll_box::-webkit-scrollbar-thumb {
  border-radius: 3px;
  background: #bf0000; }

/* ------------------------------
	campaign-field
------------------------------ */
.campaign-field-image img {
  width: 100%;
  overflow: hidden; }

.campaign-field-image img:hover {
  opacity: 0.8; }

.campaign-field-main {
  /* background: linear-gradient(180deg, #ff008c 0%, #ff008c 2px, white 2px, white 95px, #ff008c 96px, #ff008c 100%); } */
  background: #ff008c;
}
.campaign-btn-w-400 {
  max-width: 400px!important;
  padding: 16px 24px !important;
}

.campaign-btn-fs-20 {
  font-size: 20px !important;
}

.campaign-btn-fs-18 {
  font-size: 18px !important;
}

.c-Btn_Primary-large {
  background-color: #ff008c;
  border: 1px solid #ff008c;
  width: 100%;
  font-size: 18px;
  padding: 16px;
  max-width: 500px;
  display: inline-block;
  text-decoration: none;
  margin-top: 16px;
  border-radius: 4px;
  color: #FFF !important;
  font-weight: bold !important; }
  .c-Btn_Primary-large:hover {
    background-color: #cc0070;
    border: 1px solid #cc0070;
    color: #fff; }

.c-Btn_Secondly{
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  max-width: 288px;
  position: relative;
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  text-decoration: none;
  padding: 12px 24px;
  border-radius: 50px;
  line-height: 1.4;
  box-shadow: 0 4px 0 rgb(0 0 0 / 10%);
  background-color: #fff;
  border: 1px solid #ff008c;
  color: #ff008c;
  font-weight: bold;
}

.c-Btn_Secondly-wrap{
  padding-bottom: 24px;
}

.c-Btn_Secondly span{
  color: #ff008c;
}
.c-Btn_Secondly:hover{
  background-color: #ffcce8;
  color: #ff008c;
  border: 1px solid #ff008c;
}

.c-Btn_Secondly-large{
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  position: relative;
  text-align: center;
  font-weight: 700;
  text-decoration: none;
  padding: 12px 24px;
  border-radius: 50px;
  line-height: 1.4;
  box-shadow: 0 4px 0 rgb(0 0 0 / 10%);
  font-size: 18px;
  padding: 16px 24px;
  max-width: 500px;
  width: 100%;
  background-color: #ff008c;
  border: 1px solid #ff008c;
  min-width: 160px;
}

.c-Btn_Secondly-large-wrap{
  padding-top: 16px;
}
.c-Btn_Secondly-large span{
  display: inline-block;
  color: #fff;
}
.c-Btn_Secondly-large span.c-Btn_Text-sub{
  display: block;
}

.c-Txt_Normal-s{
  font-size: 13px;
  line-height: 1.5;
}

.c-Btn_Secondly-large:hover{
  background-color: #cc0070;
  border: 1px solid #cc0070;
}

.plan-details-list::before {
  content: "・";
  color: #333333;
}


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