﻿@charset "UTF-8";
/*------------------------------
 共通・既存調整修正
------------------------------*/
div.wrapper_ .sp {
  display: none;
}
.cpnlist .content-inner {
    width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}
#payment {
    background-color: #F4F5FC;
}
/* sp */
@media screen and (max-width: 767px) {
  div.wrapper_ .pc {
    display: none;
  }
  div.wrapper_ .sp {
    display: block;
  }
  .sp img {
    display: flex;
    justify-content: center;
  }
  .cpnlist .content-inner {
    width: 100%;
    padding: 0 15px;
  }
  .pane-footer {
    margin-top: 0;
  }
}
/* パンくず
------------------------------*/
.breadcrumb {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 40px;
  font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝B", "MS Mincho", serif;
  background-color: #F7F7F7;
  margin-bottom: 40px;
}

.breadcrumb__inner {
  display: flex;
  flex-flow: row wrap;
  width: 1200px;
  padding: 8px 0 7px;
  margin: 0 auto;
  box-sizing: border-box;
}

.breadcrumb__arrow {
  display: inline-block;
  position: relative;
  color: #CCCCCC;
  width: 8px;
  font-size: 0;
  line-height: 20px;
  margin: 0 16px;
}
.breadcrumb__arrow::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0;
  width: 8px;
  height: 8px;
  border-top: 1px solid #CCCCCC;
  border-right: 1px solid #CCCCCC;
  transform: translate3d(0, 0, 0) rotate(45deg);
}

.breadcrumb__label {
  display: inline-block;
  color: #111111;
  font-size: 13px;
  line-height: 20px;
}

.breadcrumb__item {
  display: inline-block;
  line-height: 20px;
}

a.breadcrumb__item-link {
  display: inline-block;
  color: #111111;
  font-size: 13px;
  line-height: 20px;
  text-decoration: none;
}

.breadcrumb__page-number {
  display: inline-block;
  color: #111111;
  font-size: 13px;
  line-height: 20px;
}
/* sp */
@media screen and (max-width: 767px) {
  .breadcrumb {
    width: 100%;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
    font-weight: 500;
    padding: 0 16px;
    margin-bottom: 16px;
    box-sizing: border-box;
  }

  .breadcrumb__scroller {
    width: 100%;
    min-height: 40px;
    overflow: auto;
  }
  .breadcrumb__scroller::-webkit-scrollbar {
    display: none;
  }
  .breadcrumb__scroller .simplebar-content {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    min-height: 40px;
    padding: 8px 0 7px;
    margin: 0 auto;
    box-sizing: border-box;
  }

  .breadcrumb__inner {
    flex-flow: row nowrap;
    justify-content: flex-start;
    width: 100%;
    min-height: 40px;
    overflow: auto hidden;
  }

  .breadcrumb__arrow {
    flex: none;
    line-height: 18px;
    margin: 0 12px;
  }

  .breadcrumb__label {
    flex: none;
    font-size: 12px;
    line-height: 18px;
  }

  .breadcrumb__item {
    flex: none;
    height: 18px;
    line-height: 18px;
  }

  a.breadcrumb__item-link {
    color: #209191;
    font-size: 12px;
    line-height: 18px;
  }

  .breadcrumb__page-number {
    flex: none;
    font-size: 12px;
    line-height: 18px;
  }    
}
/* MV
------------------------------*/
#payment .mv { 
    padding: 70px 0 74px; 
    position: relative;
    color: #ffffff;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
}
#payment .mv::before {
	content: '';
	width: 100%;
	display: block;
	background-image: url(/cms/feature/payment/img/mv_bg.png);
	background-repeat: no-repeat;
	background-position: center;
	-webkit-background-size: cover;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#payment .mv .inner-frame { 
    width: 1200px; 
    padding: 0 171px 0 0; 
    margin: 0 auto; 
    box-sizing: border-box; 
    position: relative; 
    z-index: 2;
}
.mv-ttl {
    font-size: 33px;
    color: #ffffff;
    margin-bottom: 35px;
}
.mv-txt {
    font-size: 16px;
}
/* sp */
@media screen and (max-width: 767px) {
  #payment .mv  {
    padding: 40px 15px 74px;
  }  
  #payment .mv .inner-frame {
    width: 100%;
    padding: 0;
  }
  #payment .mv::before {
    background-image: url(/cms/feature/payment/img/mv_bg_sp.png);
  }
  .mv-ttl {
    font-size: 24px;
    margin-bottom: 30px;
    text-align: center;
  }
  .mv-txt {
    font-size: 13px;
  }
}
/* コンテンツ
------------------------------*/
.main-content {
    padding: 50px 0 100px;
}
.mv + .main-content {
    margin: 0px auto;
}
.main-content .article {
    width: 1200px;
    margin: 0px auto 0;
    padding: 50px 120px 80px;
    background-color: #ffffff;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
}
.article ~ .article,
.article ~ .payment_wrapper {
    margin-top: 30px;
}
.content-ttl {
    text-align: center;
    border-radius: 3px;
    color: #ffffff;
    font-size: 20px;
    background-image: linear-gradient(90deg, rgba(61, 147, 186, 1), rgba(10, 26, 115, 1));
    padding: 10px 10px;
}
.credit_list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 15px;
}
.credit_list li {
    width: calc((72% - 40px) / 5);
}
.payment_explanation {
    margin-top: 20px;
    border-radius: 4px;
    background-color: #F5F5F5;
    padding: 50px 135px 35px;
}
.card_area_head {
  display: flex;
  gap: 40px;
  align-items: center;
}
.card_area_head .card_list {
  display: flex;
  gap: 20px;
}
.card_area_head .card_txt {
  font-size: 20px;
  width: 560px;
}
.card_area_head .blue {
  color: #0A1D75;
}
.card_area_head .num {
  font-size: 30px;
}
.card_area_head .chara {
  font-size: 25px;
}
.detail_btn {
    margin-top: 30px;
}
.detail_btn a {
    font-size: 15px;
    display: block;
    color: #436ED1;
    border: 1px solid #436ED1;
    width: 150px;
    background-color: #ffffff;
    text-align: center;
    padding: 8px 10px;
    margin: 0 auto;
}
.detail_btn.separate a::after {
  content: "";
  display: inline-block;
  background-image: url(/cms/feature/payment/img/separate.png);
  width: 15px;
  height: 12px;
  margin-left: 5px;
}
.logo {
  text-align: center;
  margin-top: 30px;  
}
.logo.ana img {
  width: 375px;
}
.logo.amazon img {
  width: 350px;
}
.logo.d img {
  width: 350px;
}
.logo.paypay img {
  width: 350px;
}
.anapay {
  text-align: center;
  font-size: 19px;
}
.anapay span {
  color: #0A1D75;
  font-size: 24px;
}
.payment_wrapper {
  width: 1200px;
  display: flex;
  gap: 30px 40px;
  flex-wrap: wrap;
  margin: 0 auto;
}
.payment_small {
  width: 580px;
  padding: 50px 50px 50px;
  background-color: #ffffff;
  box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.3);
}
.subcontent-ttl {
  text-align: center;
  border-radius: 3px;
  color: #ffffff;
  font-size: 20px;
  background-image: linear-gradient(90deg, rgba(61, 147, 186, 1), rgba(10, 26, 115, 1));
  padding: 10px 10px;
}
@media screen and (max-width: 767px) {
  .main-content .article {
    width: calc(100% - 30px);
    padding: 15px 20px 30px;
  }
  .content-ttl {
    font-size: 16px;
  }
  .credit_list {
    margin-top: 10px;
    gap: 5px;
  }
  .credit_list li {
    width: calc((100% - 40px) / 5);
  }
  .payment_explanation {
    padding: 20px 18px;
  }
  .card_area_head {
    flex-direction: column;
    gap: 20px;
  }
  .card_area_head .card_list {
    gap: 10px;
    order: 2;
    width: 80%;
  }
  .card_area_head .card_txt {
    order: 1;
    font-size: 14px;
    text-align: center;
  }
  .card_area_head .num {
    font-size: 23px;
  }
  .card_area_head .chara {
    font-size: 18px;
  }
  .detail_btn {
      margin-top: 20px;
  }
  .detail_btn a {
      width: 200px;
  }
  .logo.ana img {
    width: calc(556px / 2);
  }
  .logo.amazon img {
    width: 278px;
  }
  .logo.d img {
    width: 278px;
  }
  .logo.paypay img {
    width: 278px;
  }
  .anapay {
    font-size: 14px;
    line-height: 1.7;
  }
  .anapay span {
    font-size: 20px;
  }
  .payment_wrapper {
    width: 100%;
    flex-direction: column;
    gap: 30px;
  }  
  .payment_small {
    width: calc(100% - 30px);
    padding: 15px 20px;
    margin: 0 auto;
  }  
}
/* 決済方法の確認
------------------------------*/
.main-content .article.confirmation {
  margin-top: 80px;
  padding: 70px 80px 50px;
}
.confirmation-ttl {
  position: relative;
  color: #0A1D75;
  font-size: 30px;
  text-align: center;
  padding-top: 20px;
}
.confirmation-ttl::after {
  content: "";
  position: absolute;
  background-image: url(/cms/feature/payment/img/img_check.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 49px;
  height: 44px;  
  top: -30px;
  left: 50%;
  transform: translateX(-50%);
}
.confirmation_inner {
  margin-top: 20px;
  display: flex;
  gap: 50px;
  align-items: center;
}
.confirmation_subttl {
  color: #0A1D75;
  font-size: 23px;  
}
.confirmation_txtbox {
  width: 40%;
}
.confirmation_imgbox {
  font-size: 16px; 
}
@media screen and (max-width: 767px) {
  .main-content .article.confirmation {
    padding: 50px 20px 30px;
    margin-top: 50px;
  }
  .confirmation-ttl {
    font-size: 22px;
    padding-top: 0px;
  }
  .confirmation-ttl::after {
    background-image: url(/cms/feature/payment/img/img_check_sp.png);
    width: calc(68px / 2);
    height: calc(58px / 2);

  }
  .confirmation_inner {
    flex-direction: column;  
  }
  .confirmation_txtbox {
    width: 100%;  
  }
  .confirmation_subttl {
    font-size: 15px;
    text-align: center;
  }
  .confirmation_txt {
    font-size: 14px;
    margin-top: 20px;
  }
}