@charset "Shift_jis";

/*ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

    2020/12 旅カード入会ページ修正に伴って既存のCSSの上書きと、新規CSSの追記用に作成
    以降の上書きと追記はこのCSSファイル内で行う事

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ*/

/*ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

	汎用クラス

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ*/

.ilb {
  display: inline-block;
}

.pcnone {
  display: none;
}

/*ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ

コンテンツ部分

ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ*/

/*****************************************全体*****************************************/
#contents_area {
  background: none;
}

/************************************MV内の円************************************/
#top {
  background: none;
}

.card_summary {
  color: #333;
}

.box01 {
  margin-top: 20px;
}

/*******************************キャンペーン特典*******************************/

.cpn_text_empha01 {
  display: block;
  margin-top: 0.5em;
  font-size: 18px;
  font-weight: bold;
}

/*******************************
2023.12.1〜2024.3.31
【JTB旅カードゴールド会員様限定】
合計1,000,000ポイント還元キャンペーン
▼ここから
*******************************/

.goldOnlyCampaign {
  margin-top: 50px;
  margin-bottom: 50px;
}

/*******************************
▲ここまで
2023.12.1〜2024.3.31
【JTB旅カードゴールド会員様限定】
合計1,000,000ポイント還元キャンペーン
*******************************/

/************************************特典一覧************************************/

#points {
  background: #221815;
}

#points h2 {
  margin: 0 auto;
  padding: 20px 0;
}

#points nav ul li.round4 p {
  position: relative;
  display: block;
  margin: 2px;
  border: 2px solid #8f7b28;
  height: 96px;
  font-size: 22px;
  color: #b11e27;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-weight: 700;
  padding-left: 90px;
  text-align: left;
  cursor: pointer;
}

#points nav ul li.round4 p:hover {
  opacity: 0.7;
}

#points nav ul li.round4 p span {
  position: absolute;
  top: 0;
  left: 0;
}

#points nav ul li.round4 p span.pnum {
  width: 60px;
  height: 60px;
  font-size: 36px;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  background: #8f7b28;
  border-radius: 50% 50%;
  color: #fff;
  font-weight: 800;
  line-height: 60px;
  text-align: center;
}

#points nav ul li.round4 p span.pTitle {
  line-height: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  left: 90px;
  font-weight: 900;
  font-size: 21px;
}

span.tri_b:after {
  content: " ";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 20px 12px 0 12px;
  border-color: #221815 transparent transparent transparent;
}

#points nav ul li.round4 p span.tri_b:after {
  position: relative;
  left: 400px;
  top: 55px;
}

/************************************特典1************************************/

/* 高さ調整 */
#tp1 div.round4 {
  height: 232px;
}

#tp1 div.round4b {
  height: 230px;
}

#tp1 div.round4inner {
  height: 226px;
}

#tp1 div.round4inner img {
  position: relative;
  top: 0;
}

/* chromeで背景のつなぎ目に線が入ってしまうのを防ぐ */
#tp1 div.round4b {
  background:
    linear-gradient(135deg, transparent 10px, #f5eed1 0) top 0.2% left 0.1%,
    linear-gradient(225deg, transparent 10px, #f5eed1 0) top 0.2% right 0.1%,
    linear-gradient(315deg, transparent 10px, #f5eed1 0) bottom 0.2% right 0.1%,
    linear-gradient(45deg, transparent 10px, #f5eed1 0) bottom 0.2% left 0.1%;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle at 0 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 0 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px);
}

/* chromeで背景のつなぎ目に線が入ってしまうのを防ぐ */
#tp2 div.round4b {
  background:
    linear-gradient(135deg, transparent 10px, #f5eed1 0) top 0.2% left 0.1%,
    linear-gradient(225deg, transparent 10px, #f5eed1 0) top 0.2% right 0.1%,
    linear-gradient(315deg, transparent 10px, #f5eed1 0) bottom 0.2% right 0.1%,
    linear-gradient(45deg, transparent 10px, #f5eed1 0) bottom 0.2% left 0.1%;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle at 0 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 0 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px);
}

/************************************特典2************************************/

/* chromeで背景のつなぎ目に線が入ってしまうのを防ぐ */
#p2 div.round4b {
  background:
    linear-gradient(135deg, transparent 10px, #f5eed1 0) top 0.2% left 0.1%,
    linear-gradient(225deg, transparent 10px, #f5eed1 0) top 0.2% right 0.1%,
    linear-gradient(315deg, transparent 10px, #f5eed1 0) bottom 0.2% right 0.1%,
    linear-gradient(45deg, transparent 10px, #f5eed1 0) bottom 0.2% left 0.1%;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle at 0 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 0 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px);
}

/************************************特典3************************************/

/* レイアウト変更に伴う位置の調整など */

#p3 table {
  width: 680px;
}

.point #p3 #p3_2_detail {
  left: 5px;
  width: 275px;
}

.point #p3 #p3_2_detail p {
  text-align: left;
}

.point #p3 #p3_3_detail {
  left: -582px;
  width: 860px;
}

.point #p3 #p3_3_detail table {
  margin: 10px auto;
}

.point #p3 #p3_3_detail h4 {
  width: 565px;
  margin: auto;
}

.point #p3 #p3_3_detail p {
  text-align: center;
}

.point #p3 #p3_3_detail p.p3_sp {
  width: 565px;
  margin: auto;
  text-align: left;
}

.point #p3 #p3_3_detail ul {
  border: 1px solid #333;
  padding: 20px 20px 20px 30px;
  width: 778px;
  margin: 0 auto 20px;
  text-align: left;
}

.point #p3 #p3_3_detail ul li {
  text-indent: -1.2em;
}

/************************************特典5************************************/

#p5 div.round4 {
  height: 112px;
}

/* chromeで背景のつなぎ目に線が入ってしまうのを防ぐ */
#p5 div.round4b {
  height: 110px;
  background:
    linear-gradient(135deg, transparent 10px, #fff 0) top 0.4% left 0.1%,
    linear-gradient(225deg, transparent 10px, #fff 0) top 0.4% right 0.1%,
    linear-gradient(315deg, transparent 10px, #fff 0) bottom 0.4% right 0.1%,
    linear-gradient(45deg, transparent 10px, #fff 0) bottom 0.4% left 0.1%;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle at 0 0, rgba(255, 255, 255, 0) 10px, #fff 11px), radial-gradient(circle at 100% 0, rgba(255, 255, 255, 0) 10px, #fff 11px), radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0) 10px, #fff 11px), radial-gradient(circle at 0 100%, rgba(255, 255, 255, 0) 10px, #fff 11px);
}

#p5 div.round4inner {
  height: 106px;
}

/************************************特典6************************************/

#p6 div.round4b {
  background:
    linear-gradient(135deg, transparent 10px, #f5eed1 0) top 0.4% left 0.1%,
    linear-gradient(225deg, transparent 10px, #f5eed1 0) top 0.4% right 0.1%,
    linear-gradient(315deg, transparent 10px, #f5eed1 0) bottom 0.4% right 0.1%,
    linear-gradient(45deg, transparent 10px, #f5eed1 0) bottom 0.4% left 0.1%;
  background-size: 50% 50%;
  background-repeat: no-repeat;
  background-image: radial-gradient(circle at 0 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 0, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 100% 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px), radial-gradient(circle at 0 100%, rgba(255, 255, 255, 0) 10px, #f5eed1 11px);
}

/************************************アコーディオン内部************************************/

.point_wrap {
  margin-bottom: 70px;
  padding: 20px 0;
  background: #221815;
}

/*注釈の設置*/

.txt_anno01 {
  position: absolute;
  right: 1em;
  bottom: 1em;
  color: #fff;
  font-size: 14px;
}

.txt_anno02 {
  display: inline-block;
  margin-left: 1em;
  font-size: 12px;
}

.txt_anno03 {
  font-size: 13px;
}

.txt_anno04 {
  font-size: 13px;
}

.txt_anno05 {
  position: absolute;
  right: 1em;
  bottom: 1em;
  color: #fff;
  font-size: 14px;
}

#point2 .wrap_link_btn {
  margin-top: 1.2em;
}

/************************************カード基本情報************************************/

.card_base {
  background: #fff;
  color: #333;
}

#basic_info table {
  /* width: 100%; */
  margin: 0 auto;
}

#basic_info table td .card1 {
  margin: 0 auto;
}

/************************************ページ下部追従ボタン************************************/

.signup_img_wrap img {
  box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.75);
}

.signup_txt_wrap {
  position: relative;
  top: 0;
}

.signup_txt01 {
  display: block;
  font-size: 14px;
}

a.btn_signup.line4 {
  /* justify-content: flex-start; */
  width: 540px;
  height: 80px;
  /* margin: 0; */
  padding-left: 1em;
  /* transform: translateX(-18px); */
  /* background: linear-gradient(to right, #E84091 0%, #f059a2 48%, #ef69aa 100%); */
  background: #e84091;
}
a.btn_signup.line4::after {
  border-top: 40px solid transparent;
  border-bottom: 40px solid transparent;
  /* border-left: 36px solid #ef69aa; */
  border-left: 36px solid #e84091;
}

a.btn_signup:hover {
  /* background: linear-gradient(to right, #ea539c, #f16aab, #f178b2); */
  background: #ea539c;
}

a.btn_signup:hover::after {
  /* border-left: 36px solid #f178b2; */
  border-left: 36px solid #ea539c;
}

.btn_signup__icon {
  position: absolute;
  top: 0;
  left: -1em;
  display: flex;
  padding: 0.25em 0.5em;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: #ffff00;
  color: #c80920;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  transform: translateY(-15%) rotate(-15deg);
}
