@charset "utf-8";
@media screen and (max-width:767px) {
  .pc767 { display: none;}
}
@media screen and (min-width:768px) {
  .sp767 { display: none;}
}
.content-area {
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  font-size: 14px;
}
.sec-inner {
  max-width: 1240px;
  margin: 0 auto;
  width: calc(100% - 40px);
}
.bg-gray { background: #f0f0eb; }
.highlight { background: linear-gradient(180deg,rgba(255,255,255,0) 80%, #ffff82 80%); }
.bg-brown { background-color: #603813;}
.brown { color: #603813;}
.lightbrown { color: #a67c52;}
.bg-lightbrown { background-color: #a67c52;}
.bg-lightbrown02 { background-color: #754c24;}
.gold { color: #8c7d5a;}
.yellow { color: #ffff82;}
.red { color: #c80028;}
.full { width: 100%;}
.cap { position: relative; }
.cap picture { display: block; }
.cap::after { content: attr(data-caption); position: absolute; right: 0.5em; bottom: 0.1em; font-size: 10px; color: #000; }
.cap.w::after { color: #fff; }
.cap.l::after { right: auto; left: 0.5em;}
.d-in-block { display: inline-block;}
/*NEW OR USED*/
.sec-head {
  background: linear-gradient(to right,  rgba(79,40,0,1) 0%,rgba(121,80,0,1) 50%,rgba(79,40,0,1) 100%);
  padding: 25px 0;
}
.sec-head > h2 > span {
  color: #FFF;
  display: block;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.sec-head > h2 > span:first-child {
  font-size: 24px;
  font-weight: 500;
}
.sec-head > h2 > span:last-child {
  font-size: 16px;
  font-weight: 500;
}
@media screen and (max-width:767px) {
  .sec-head { padding: 35px 0; }
}

.sec-intro { padding: clamp(40px, 4.16666667vw, 80px) 0; }
.sec-intro > div { max-width: 1000px;}
.sec-intro h2 {
  color: #8c7d5a;
  font-size: clamp(22px, 2.08333333vw, 40px);
  font-weight: lighter;
  letter-spacing: 0.2em;
  margin-bottom: clamp(15px, 1.5625vw, 30px);
}
.sec-intro p {
  font-size: clamp(12px, 0.729166667vw, 14px);
}
@media screen and (max-width:767px) {
  .sec-intro { padding-bottom: 0;}
  .sec-intro h2 { letter-spacing: 0.05em;}
}
.couples {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
  margin-top: clamp(15px, 1.5625vw, 30px);
  margin-bottom: clamp(30px, 3.12500vw, 60px);
}
.couples .item {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  text-align: left;
  width: calc(50% - 40px / 2);
}
.couples .item > .info,
.couples .item > img {
  width: calc(50% - 10px);
}
.couples .item:first-child { flex-direction: row-reverse; }
.couples .ttl01 {
  color: #fff;
  font-size: clamp(16px, 1.25vw, 24px);
  font-weight: 600;
  font-family: 'Noto Sans JP', sans-serif;
  padding-left: 15px;
}
.couples .ttl02 {
  font-size: clamp(14px, 1.14583333vw, 22px);
  font-weight: 600;
  font-family: 'Noto Sans JP', sans-serif;
  margin: 13px 0 5px;
}
.couples .txt { font-size: clamp(11px, 0.625vw, 12px); }
@media screen and (max-width: 767px) {
  .couples .item { width: 100%; }
  .couples .item:first-child { flex-direction: row;}
  .couples .item > .info,
  .couples .item > img { width: 50%;}
}

.intro-list .item {
  border-top: 1px dotted #603813;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 25px 0;
  text-align: left;
}
.intro-list .item.reverse { flex-direction: row-reverse;}
.intro-list .item > img { width: 44%;}
.intro-list .item > .info { width: 50%;}
.intro-list .ttl01 {
  font-size: clamp(22px, 1.35416667vw, 26px);
  line-height: 1.5;
  margin-bottom: 15px;
}
.intro-list .ttl02 {
  font-size: clamp(14px, 1.04166667vw, 20px);
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.5;
  margin-bottom: 20px;
}
.intro-list .txt { font-size: clamp(12px, 0.729166667vw, 14px); letter-spacing: -0.5px; }
.intro-list .cap { font-size: clamp(10px, 0.625vw, 12px); }
@media screen and (max-width: 767px) {
  .intro-list .item > .info { margin-bottom: 10px; text-align: center; width: 100%; }
  .intro-list .item > img { width: 100%;}
}

.block { margin-top: clamp(50px, 5.20833333vw, 100px); }
.block.has-border { border: 1px solid #603813;}
.block-ttl {
  /* background: linear-gradient(to right,  rgba(79,40,0,1) 0%,rgba(121,80,0,1) 50%,rgba(79,40,0,1) 100%); */
  color: #FFF;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: clamp(14px, 1.14583333vw, 22px);
  line-height: 1.6;
  padding: 15px 0;
  text-align: center;
}
.block-ttl > p { position: relative;}

.block-body { padding: clamp(30px, 4.6875vw, 90px) clamp(20px, 6.25vw, 120px); }
@media screen and (max-width: 767px) {
  .block-body { padding-left: 20px; padding-right: 20px;}
}

.block-content {
  background-color: #fff;
  margin-bottom: clamp(20px, 2.08333333vw, 40px);
  padding: clamp(20px, 5.20833333vw, 100px);
  padding-top: 0;
}
@media screen and (max-width: 767px) {
  .block-content { padding-left: 20px; padding-right: 20px;}
}

.pt-icon {
  background: url(../../images/new_or_used/bg_point.png) no-repeat center center / cover;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 90px;
  width: 70px;
  font-size: clamp(10px, 0.625vw, 12px);
  line-height: 1;
  margin: 0 auto;
  transform: translateY(-10px);
}
.pt-icon.light { background-image: url(../../images/new_or_used/bg_point_light.png); }
.pt-icon > span { font-size: calc(28 / 12 * 100%);}

@media screen and (max-width: 767px) {
  .pt-icon { width: 45px; height: 60px;}
}

.pt-ttl {
  border: 1px solid #603813;
  font-size: clamp(14px, 1.35416667vw, 26px);
  font-weight: normal;
  line-height: 1.4;
  letter-spacing: -0.5px;
  margin-top: clamp(15px, 1.5625vw, 30px);
  margin-bottom: clamp(15px, 1.5625vw, 30px);
  padding: 12px 0;
  position: relative;
}
.pt-ttl > img {
  position: absolute;
  left: clamp(20px, 2.08333333vw, 40px);
  bottom: calc(100% + 1px);
  width: clamp(75px, 7.8125vw, 150px);
}
.pt-ttl02 {
  font-size: clamp(14px, 1.04166667vw, 20px);
  font-weight: normal;
  line-height: 1.8;
  margin-bottom: clamp(15px, 1.5625vw, 30px);
}
.pt-ttl03 {
  font-size: clamp(14px, 1.25vw, 24px);
  font-weight: normal;
  line-height: 1.8;
  margin-bottom: clamp(15px, 1.30208333vw, 25px);
}
.pt-txt { font-size: clamp(12px, 0.729166667vw, 14px); }

@media screen and (max-width: 767px) {
  .pt-txt { text-align: left;}
}

.pt-block01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: clamp(25px, 2.60416667vw, 50px);
}
.pt-block01 > img { width: 40%; }
.pt-block01 > .info {
  padding-right: clamp(30px, 3.12500vw, 60px);;
  text-align: left;
  width: 60%;
}
@media screen and (max-width: 767px) {
  .pt-block01 > .info, .pt-block01 > img { padding: 0; width: 100%; text-align: center;}
  .pt-block01 > .info { margin-bottom: 20px;}
}

.pt-option-wrap > .ttl {
  font-size: clamp(12px, 0.729166667vw, 14px);
  margin-top: clamp(20px, 2.08333333vw, 40px);
  margin-bottom: 12px;
  text-align: left;
}
.pt-optionlist {
  display: flex;
  flex-wrap: wrap;
  column-gap: 60px;
  row-gap: 20px;
}
.pt-optionlist .item { width: calc(50% - 30px); }
.pt-optionlist .item:nth-child(3) { width: 100%; }
.pt-optionlist .item .ttl {
  background-color: #e1e1d7;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: clamp(12px, 0.833333333vw, 16px);
  margin-bottom: 8px;
  text-align: left;
}
.pt-optionlist .item .ttl .odr {
  background-color: #8c7d5a;
  color: #fff;
  display: block;
  font-size: calc(20 / 16 * 100%);
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: bold;
  width: 30px;
  height: 30px;
  line-height: 1.5;
  text-align: center;
}
.pt-optionlist ul {
  display: flex;
  justify-content: space-between;
  margin: 0 -8px;
}
.pt-optionlist ul li {
  padding: 8px;
  position: relative;
  width: 25%;
}
.pt-optionlist ul li .txt {
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  margin-top: 8px;
}
.pt-optionlist ul li .img { position: relative; }
.pt-optionlist ul li .img .bar {
  position: absolute;
  left: -8px;
  top: -8px;
  width: 56px;
}
.pt-optionlist ul li .img .lbl {
  background-color: #ed7700;
  color: #fff;
  display: block;
  font-size: 10px;
  font-family: 'Noto Sans JP', sans-serif;
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  text-align: center;
}
.pt-option-note {
  font-size: clamp(10px, 0.625vw, 12px);
  line-height: 1.5;
  margin-top: 10px;
  text-align: right;
}
@media screen and (max-width: 767px) {
  .pt-optionlist .item { width: 100%;}
  .pt-optionlist .item .ttl .odr { font-size: 12px; width: 20px; height: 20px;}
  .pt-optionlist ul { flex-wrap: wrap; margin: 0 -4px;}
  .pt-optionlist ul li { padding: 4px;}
  .pt-optionlist ul li .txt { font-size: 8px;}
}

.pt-frame {
  border: 1px solid #603813;
  margin-top: clamp(25px, 2.60416667vw, 50px);
  padding: clamp(14px, 2.08333333vw, 40px);
}
@media screen and (max-width: 767px) {
}

.pt-checklist {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px 60px;
  margin-top: clamp(15px, 1.82291667vw, 35px);
}
.pt-checklist .item {
  text-align: left;
  width: calc(50% - 30px);
}
.pt-checklist .ttl { margin-bottom: clamp(5px, 0.520833333vw, 10px); }
.pt-checklist .ttl > span {
  display: inline-block;
  font-size: clamp(16px, 1.25vw, 24px);
  font-weight: bold;
  line-height: 1.3;
  vertical-align: middle;
}
.pt-checklist .ttl > img {
  display: inline-block;
  margin-right: 20px;
  vertical-align: middle;
  width: 90px;
}
.pt-checklist .txt { font-size: clamp(12px, 0.729166667vw, 14px);}
@media screen and (max-width: 767px) {
  .pt-checklist .item { width: 100%;}
  .pt-checklist .ttl > img { margin-right: 10px; width: 60px;}
}

.pt-box01 {
  background-color: #fff;
  border: 2px solid #603813;
  padding: clamp(15px, 1.5625vw, 30px);
  position: relative;
}
.pt-box01 .ttl {
  font-size: clamp(14px, 1.04166667vw, 20px);
  font-weight: bold;
  font-family: 'Noto Sans JP', sans-serif;
  line-height: 1.8;
  margin-bottom: 10px;
  position: relative;
  z-index: 1;
}
.pt-box01 .ttl > span {
  font-size: 140%;
  line-height: 1;
}
.pt-box01 .txt {
  font-size: clamp(14px, 0.833333333vw, 16px);
  letter-spacing: 0;
  position: relative;
  z-index: 1;
}
.pt-box01 > img {
  max-width: clamp(125px, 9.11458333vw, 175px);
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  .pt-box01 { padding-bottom: 0!important;}
  .pt-box01 > img { position: relative;}
}

.pt-boxlist {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.pt-boxlist > li {
  text-align: left;
  width: calc(50% - 20px);
}
.pt-boxlist > li .pt-box01 {
  height: 100%;
  padding: clamp(10px, 0.78125vw, 15px);
}
.pt-boxlist > li .pt-box01 .ttl { font-size: clamp(12px, 0.78125vw, 15px);}
.pt-boxlist > li .pt-box01 .txt { font-size: clamp(12px, 0.833333333vw, 16px)}
.pt-boxlist > li .pt-box01 > img { width: clamp(100px, 7.8125vw, 150px);}
@media screen and (max-width: 767px) {
  .pt-boxlist { gap: 20px;}
  .pt-boxlist > li { text-align: center; width: 100%;}
}

.pt-rank {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.pt-rank .rank-list { width: 40%; }
.pt-rank .rank-list p {
  font-size: clamp(12px, 0.729166667vw, 14px);
  margin-bottom: clamp(15px, 1.5625vw, 30px);
  text-align: left;
}
.pt-rank .rank-list ol li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px;
  text-align: left;
  list-style: none;
  line-height: 1.5;
  margin-bottom: 20px;
}
.pt-rank .rank-list ol li img { width: clamp(65px, 4.42708333vw, 85px); }
.pt-rank .rank-list ol li span { font-size: clamp(12px, 0.729166667vw, 14px); }
.pt-rank .rank-list ol li .large {
  color: #b78e31;
  font-size: calc(26 / 14 * 100%);
  font-size: clamp(16px, 1.35416667vw, 26px);
  line-height: 1.4;
}
.pt-rank .rank-list ol li .small {
  display: block;
  font-size: 60%;
}
.pt-rank .rank-chart { width: 58%; }
.pt-rank .rank-txt {
  font-size: clamp(13px, 0.833333333vw, 16px);
  letter-spacing: 0;
  margin-top: clamp(15px, 1.5625vw, 30px);
  width: 100%;
}
@media screen and (max-width: 767px) {
  .pt-rank .rank-list, .pt-rank .rank-chart { width: 100%;}
  .pt-rank .rank-list ol {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 15px;
  }
  .pt-rank .rank-list ol li {
    display: flex;
    flex-direction: column;
    text-align: center;
  }
  .pt-rank .rank-list ol li:first-child { margin: 0; width: 100%;}
  .pt-rank .rank-list ol li .small { display: inline-block;}
  .pt-rank .rank-txt { letter-spacing: -0.5px;}
}

.pt-custom {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 30px;
  justify-content: space-between;
}
.pt-custom > img { width: 40%; }
.pt-custom .info {
  text-align: left;
  width: calc(60% - 30px);
}
.pt-custom .info .ttl {
  font-size: clamp(14px, 1.04166667vw, 20px);
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: clamp(5px, 1.04166667vw, 10px);
  margin-top: -0.5rem;
}
.pt-custom .info .txt {
  font-size: clamp(12px, 0.729166667vw, 14px);
  line-height: 1.45;
}
@media screen and (max-width: 767px) {
  .pt-custom { gap: 15px;}
  .pt-custom .info, .pt-custom img { width: 100%; }
  .pt-custom .info .ttl { margin-top: 10px; text-align: center;}
}

.pt-yellow {
  background-color: #ffffbe;
  font-size: clamp(12px, 0.833333333vw, 16px);
  line-height: 1.5;
  letter-spacing: 0;
  margin-top: clamp(20px, 2.08333333vw, 40px);
  padding: clamp(15px, 0.78125vw, 15px);
  position: relative;
}
.pt-yellow > img {
  position: absolute;
  left: -2%;
  bottom: 0;
  width: clamp(220px, 10.4166667vw, 200px);
}

@media screen and (max-width: 767px) {
  .pt-yellow { padding: 10px 10px 0;}
  .pt-yellow > img { position: relative; margin-top: 5px; }
}

.goal {
  margin-top: clamp(30px, 5.20833333vw, 100px);
  padding: 0 clamp(20px, 6.25vw, 120px);
}
@media screen and (max-width: 767px) {
  .goal { margin-top: 30px; padding: 0 20px;}
}