
/*----------Typography----------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Shippori+Mincho+B1:wght@400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

body {
	font-display: swap;
	-webkit-text-size-adjust: none;
	-webkit-appearance: none;
	font-family: "Noto Sans JP", sans-serif, -apple-system;
	letter-spacing: 1.5;
	position: relative;
}

p, h1, h2, h3, h4 {
	margin-bottom: 0;
	line-height: 1.6;
}

h1 {
	font-size: 35px;
}

h2 {
	font-size: 30px;
}

h3 {
	font-size: 21px;
}

h4 {
	font-size: 18px;
}
p {
	font-size: 16px;
}
.font-mincho {
	font-family: "Shippori Mincho B1", serif;
	font-weight: 400;
}
.font-mon {
	font-family: "Montserrat", sans-serif;
}
.font30 {
	font-size: 30px;
}
.font24 {
	font-size: 24px;
}
.font20 {
	font-size: 20px;
}
.font16 {
	font-size: 16px;
}
.font14 {
	font-size: 14px;
}

.bold {
	font-weight: 600;
}
.white {
	color: white;
}

.tx-gold {
	color: #BCAE8A;
}

.mbtm0 {
	margin-bottom: 0;
}
.p-mgn {
	margin-bottom: 20px;
}
.mgn0 {
	margin: 0;
}

.mbtm30-20 {
	margin-bottom: 30px;
}

.inlineb {
	display: inline-block;
}

.tx-center {
	text-align: center;
}


/*----------Global----------*/
.Container {
	padding: 0 38px;
}
a {
	text-decoration: none !important;
}
a:hover {
	text-decoration: none !important;
}

.bg-img {
	position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
	height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.flex-jccenter {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.section {
	padding: 80px 0px;
	position: relative;
}

.pos-rel {
	position: relative;
}

.anchor {
	position: absolute;
	top: 0;
	left: 0;
}


.section-titlebox {
	margin: 0 auto 50px auto;
}

.section-title {
	font-weight: 500;
}

.section-subtitle {
	margin-bottom: 15px;
}

/*----------Header----------*/
.header {
	height: auto;
	width: 100%;
	position: relative;
}
.navbar-brand {
	position: relative;
	z-index: 10;
}

header {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
	padding: 10px 15px;
}

.header-logo {
	width: 150px;
	position: relative;
}
.header-logo2 {
	display: none !important;
}

/*----------Top----------*/
.section-top {
height: 100vh;
position: relative;
}
.top-content-box {
	height: 100vh;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.top-fv-contentbox {
position: relative;
}
.top-fv-contentbox {
	height: 100%;
	/**background: linear-gradient(-269.3651696966251deg, rgba(255, 255, 255,0) -3.7569444444444287%,rgba(255, 255, 255,0.008733624454148471) -3.7569444444444287%,rgba(255, 255, 255,1) 44.08391203703704%,rgba(255, 255, 255,1) 45.33738425925927%,rgba(255, 255, 255,0) 94.64062500000001%,rgba(255, 255, 255,0) 96.52083333333334%);**/
}
.top-fv-box {
	height: 100%;
	width: 100%;
	position: relative;
}
.top-txbox {
	margin: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
	width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.top-subtitle {
	background: linear-gradient(117.60868993578674deg, rgba(200, 185, 142, 1) 1.729166666666667%, rgba(199, 184, 141, 1) 1.729166666666667%, rgba(164, 146, 95, 1) 101.45138888888889%);
color: white;
font-weight: 600;
padding: 2px 10px;
width: fit-content;
font-size: 34px;
text-align: center;
letter-spacing: 4px;
}
.top-title {
	font-size: 34px;
	font-weight: 600;
	text-align: center;
	margin: 15px 0 0 0;
	line-height: 1.3;
	letter-spacing: 5px;
}
.gold-underline {
	background: linear-gradient(transparent 75%, #C5B88A 75%);
	display: inline-block;
}
.title-big {
	font-size: 160%;
}
.top-title-mright {
	padding: 0 2px;
	margin-right: 2px;
}
.top-title-mgn {
	padding: 0 2px;
  margin: 0px 2px;
}
.top-detailbox {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 20px auto 0 auto;
	gap: 15px;
}
.top-left-bg {
	background: white;
    padding: 5px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
}
.top-left-tx {
	font-size: 18px;
}
.top-left-span {
	font-size: 60%;
  letter-spacing: 1px;
  display: block;
  margin-top: 3px;
}
.top-left-span-mb {
	margin: 5px 0 -5px 0;
	font-size: 60%;
	font-weight: 500;
	text-align: right;
}
.top-left-outline {
	border: 3px solid #C5B88A;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.top-middle-borderbox {
	border-top: 2px solid;
  border-bottom: 2px solid;
  padding: 2px 10px;
	width: fit-content;
	text-align: center;
	margin: 0 auto 10px auto;
}
.top-middle-pricebox {
	display: flex;
  justify-content: center;
  align-items: center;
}
.top-middle-pricenumber {
	font-family: "Montserrat", sans-serif;
	font-size: 100px;
	font-weight: 700;
font-style: italic;
	line-height: 1;
background: linear-gradient(118.19848869935458deg, rgba(175, 157, 92, 1) 1.5937500000000004%, rgba(174, 156, 91, 1) 1.5937500000000004%, rgba(126, 100, 6, 1) 49.44386574074074%, rgba(204, 187, 126, 1) 101.45486111111111%);
color: transparent;
background-clip: text;
}
.top-middle-pricetx {
	writing-mode: vertical-rl;
font-size: 30px;
font-weight: 600;
color: #AF9D5C;
letter-spacing: 5px;
margin: 0;
}
.top-amazon-img {
	width: 130px;
}
.top-btn-box {
	margin-top: 20px;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.btn-blue {
	background: linear-gradient(118.19848869935458deg, rgba(20, 52, 103, 1) 1.5937500000000004%, rgba(67, 86, 133, 1) 28.015335648148152%, rgba(163, 179, 217, 1) 50.900173611111114%, rgba(67, 86, 133, 1) 74.20109953703704%, rgba(20, 52, 103, 1) 101.45486111111111%);
	color: white;
	height: 60px;
	width: 350px;
	position: relative;
	padding: 0;
}
.btn-blue-link {
	color: white;
	letter-spacing: 5px;
	text-shadow: 0 0 10px black;
	font-size: 20px;
	font-weight: 600;
	position: relative;
top: 0;
bottom: 0;
left: 0;
right: 0;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
}
/*.btn-blue:hover {
	filter:grayscale(0);
transition:0.3s;
}*/
.btn-blue:hover .btn-blue-link {
	color: white;
}
.dark-cover {
	height: 100%;
width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  opacity: .3;
	width: 100%;
height: 100%;
  transition: background-color 0.3s ease;
}
.dark-cover:hover {
  background-color: black;
}
.btn-tx-yellow {
	color: #F8EAB8;
}
.top-txbar-tx {
	background: #BCAE8A;
  color: white;
  font-weight: 600;
  text-align: center;
  padding: 2px 5px;
}
.top-bottom-box {
	height: auto;
  width: 100%;
	position: relative;
}
.top-right-box {
	margin-top: 45px;
}
.top-pointbar {
	display: flex;
	height: auto;
	justify-content: center;
	padding: 5px 10px;
	gap: 15px;
}
.top-pointbox {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
height: auto;
width: 230px;
}
.top-point-img {
	width: 110px;
height: 100%;
}
.top-point-tx {
	position: absolute;
	width: 100%;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
}
.point-big {
	font-size: 170%;
  font-style: italic;
  font-family: 'inter';
  font-weight: 700;
}
.condition-popup-link {
	font-size: 14px;
	color: #474747;
	text-align: right;
	text-decoration: underline;
	font-weight: 600;
}
.condition-popup-link:focus {
	outline: none!important;
}
.top-bg-img-tb, .top-bg-img-mb {
	display: none;
}
.top-detailbox-mb {
	display: none;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	margin: 15px auto 0 auto;
	gap: 10px;
}
.top-amazon-img-mb {
	display: none;
}
.point-citation {
	font-size: 8px;
	color: #999999;
	position: absolute;
	right: 5px;
	bottom: 5px;
}
.point-citation-mb {
	font-size: 8px;
	color: #999999;
}
.point-citation-box-mb {
	display: none;
}

/*****problem*****/
.section-problem {
	background: #F3F3F3;
}
.problem-bg {
	position: absolute;
  top: auto;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  object-fit: contain;
	object-position: bottom;
}
.container-problem {
	position: relative;
}
.problem-item {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.problem-list {
	list-style: none;
  padding-left: 0;
	margin: 0;
	flex-direction: column;
	display: flex;
	gap: 15px;
}
.problem-check-icon {
	width: 30px;
	margin-right: 10px;
	margin-top: 4px;
}
.problem-txbox {
	width: fit-content;
	margin: 0 auto;
	background: white;
	border: 2px solid #C5B88A;
	padding: 50px 50px 70px 50px;
	border-radius: 10px;
}
.problem-img {
	width: 230px;
}
.problem-imgbox {
	display: flex;
justify-content: center;
align-items: end;
gap: 10px;
margin-top: -30px;
}

/*****triangle section******/
.section-triangle {
	background: #f3f3f3;
	position: relative;
	margin: 0;
	padding-top: 5px;
}
.section-triangle:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10vw 50vw 0 50vw;
	border-color: #f3f3f3 transparent transparent transparent;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 2;
}

/*****overview********/
.section-overview {
	background: #BCAE8A;
	padding: 15vw 0px 80px 0px;
	position: relative;
	z-index: 1;
}
.section-overview .Container {
	position: relative;
	max-width: 100%!important;
}
.overview-bg {
	position: absolute;
	top: 0;
	right: 0;
	width: 400px;
}
.overview-titlebox {
	display: flex;
	justify-content: center;
	align-items: end;
}
.overview-titlelogo {
	width: 250px;
	margin-right: 10px;
}
.section-overview .section-title {
	font-weight: 600;
	line-height: 1;
}
.overview-h3 {
	margin-bottom: 30px;
	font-weight: 600;
	margin-top: 50px;
}
.overview-tx {
	line-height: 2.5;
}
.overview-br {
	display: none;
}
.overview-titlebox-mb {
	display: none;
}
/****pros section****/
.section-pros .Container {
	max-width: 100%!important;
}
.pros-row {
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 30px;
	width: 100%;
  margin: 0 auto;
  max-width: 1200px;
}
.pros-box {
	width: 100%;
	border: 3px solid #E2DCC4;
	padding: 30px 20px;
}
.pros-img {
	width: 100%;
}
.pros-imgbox {
	margin: 20px auto;
}
.pros-title {
	margin-bottom: 15px;
	font-weight: 600;
	height: 65px;
  display: flex;
  justify-content: center;
  align-items: center;
	flex-direction: column;
}
.pros-number {
	text-align: center;
	font-family: 'Montserrat';
	font-style: italic;
	font-weight: 600;
	font-size: 80px;
	color: #E2DCC4;
	line-height: 1;
}

/****** point section *****/
.section-points {
	background: #E3DFCD;
}
.section-points .Container {
	max-width: 100%!important;
}
.points-col {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: stretch;
	gap: 30px;
	margin: 0 auto;
}
.points-box {
	background: white;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 50px;
	padding: 50px 50px;
	width: 950px;
	max-width: 100%;
	position: relative;
	margin: 0 auto;
}
.points-imgbox {
	width: 40%;
	z-index: 2;
}
.points-txbox {
	width: 60%;
	z-index: 2;
}
.points-tx {
	text-align: justify;
}
.points-img {
	width: 100%;
	aspect-ratio: 3 / 2;
	object-fit: cover;
}
.point-img-graph {
	aspect-ratio: 1.2;
}
.points-number {
	font-family: 'Montserrat';
  font-size: 200px;
  color: #C5B88A;
  font-style: oblique;
  font-weight: 600;
  position: absolute;
  top: 0;
  left: 0;
  line-height: 1;
  margin-top: -32px;
  z-index: 1;
  overflow: hidden;
}
.points-title {
	margin-bottom: 15px;
	font-weight: 600;
}
/****voice*****/
.section-voice .Container {
	max-width: 95%!important;
}
.voice-sliderbox {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
}
.voice-box {
	margin: 0 15px;
	border: 3px solid #EEEADC;
	padding: 30px;
}
.voice-img {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}
.voice-title {
	margin: 20px 0 10px 0;
}
.slick-track {
  display: flex!important;
}
.slick-slide {
  height: auto !important;
}
.slick-dots li button:before {
	font-size: 10px!important;
}
.slick-dots {
	bottom: -45px!important;
}
.slick-prev:before, .slick-next:before {
	color: black!important;
	font-size: 30px!important;
}
.slick-next {
	right: -15px!important;
}
/*********CTA********/
.section-cta {
	position: relative;
}
.bg-filter-cta {
	position: absolute;
top: 0;
bottom: 0;
right: 0;
left: 0;
width: 100%;
background: black;
opacity: 0.5;
}
.cta-container {
	position: relative;
	text-align: center;
}
.cta-amazon-img {
	width: 100px;
}
.cta-title {
	background: white;
  font-weight: 600;
  width: fit-content;
  margin: 0 auto;
  border-radius: 30px;
  padding: 5px 20px 7px 20px;
}
.cta-note {
	display: block;
  font-size: 70%;
  text-align: center;
  margin: -2px 0 0px 0;
}
.cta-box {
	display: flex;
  justify-content: center;
  align-items: center;
	gap: 10px;
}
.cta-gift-tx {
	color: white;
	font-weight: 600;
	text-align: end;
}
.cta-gift-tx-mb {
	display: none;
}
.cta-price {
	color: #C5B88A;
	font-weight: 600;
}
.cta-price-number {
	font-size: 60px;
font-style: italic;
margin-right: 5px;
text-shadow: 0 0 10px black;
}
.cta-btn-box {
	text-align: center;
	margin: 0 auto;
}
.cta-popup-link {
	width: fit-content;
	color: white;
	text-align: center;
	margin: 5px auto 0 auto;
}
/*****footer****/
footer {
	padding: 10px 15px;
}

.footer-logo {
	width: 160px;
}

.footer-cr {
	font-size: 10px;
	color: #606060;
	text-align: center;
	margin-top: 15px;
}
/***fixed*****/
.fixed-banner-box {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: white;
	font-weight: 600;
	position: fixed;
bottom: 10px;
right: 10px;
	background: linear-gradient(117.67933923320652deg, rgba(69, 94, 158,1) 0.9079861111111109%,rgba(68, 93, 157,1) 0.9079861111111109%,rgba(18, 44, 87,1) 90.00520833333331%);
	padding: 10px 15px 15px;
	border: none;
	box-shadow: 0 0 15px #000000cc;
	z-index: 10;
}
.djt_cart_active {
	display: flex;
}
.fixed-banner-top {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.fixed-amazon-img {
	width: 55px;
	margin-left: 5px;
}
.fixed-price {
	font-size: 150%;
  font-family: 'Montserrat';
  background: linear-gradient(117.67933923320652deg, rgba(246, 235, 192, 1) 0.9079861111111109%, rgba(246, 235, 192, 1) 2.9497974537037033%, rgba(158, 147, 108, 1) 90.00520833333331%);
  color: transparent;
  background-clip: text;
}
.fixed-free {
	background: #fff;
color: #0A2C84;
border-radius: 20px;
padding: 0 8px 2px 8px;
margin: 0 5px;
font-weight: 700;
text-shadow: 0 4px 10px #0000004d;
font-size: 120%;
}
.fixed-link {
	position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 11;
  opacity: .3;
  transition: background-color 0.3s ease;
}
.fixed-link:hover {
	background-color: black;
}
/***pop up***/
/* モーダルCSS */
.modalArea {
  display: none;
  position: fixed;
  z-index: 10; /*サイトによってここの数値は調整 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modalBg {
  width: 100%;
  height: 100%;
  background-color: rgba(30,30,30,0.9);
}

.modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  padding: 30px 30px;
  background-color: #fff;
	overflow-y: scroll;
	width: 95%;
	max-width: 900px;
	height: 90vh;
	max-height: 500px;
	border-radius: 5px;
}

.modalContents {
	display: flex;
flex-direction: column;
gap: 25px;
}

.closeModal {
  position: absolute;
  top: 0.5rem;
  right: 1rem;
  cursor: pointer;
}

#openModal {
	position: relative;
	background: transparent;
	border: none;
}
html:has(#modalArea[open]) {
  overflow: hidden;
}
.modal-list {
	list-style: decimal;
	padding-left: 30px;
}
.condition-list {
	list-style: none;
  padding-left: 0;
}
.modal-note-list {
padding-left: 30px;
}

/****thanks****/
.thanks-bg-img {
	right: 0;
	filter: brightness(0) saturate(100%) invert(91%) sepia(22%) saturate(339%) hue-rotate(5deg) brightness(92%) contrast(90%);
	width: 400px;
	height: auto;
	margin-top: -15px;
	left: auto;
	bottom: auto;
}
.thanks-title {
  margin: 0 0 40px 0;
}
.thanks-btnbox {
	margin: 40px auto 0 auto;
	display: flex;
	justify-content: center;
	align-items: stretch;
	gap: 30px;
}
.br-mb {
	display: none;
}
.thanks-tx {
	line-height: 2;
}
.thanks-btn-black {
  background: black;
	color: white;
	height: 60px;
	width: 280px;
	position: relative;
	border: 2px solid black;
}
.thanks-link-black {
	color: white;
	font-weight: 600;
	font-size: 14px;
	position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: 0;
display: flex;
justify-content: center;
align-items: center;
}
.thanks-btn-black:hover {
	background: #BCAE8A;
	border: 2px solid #BCAE8A;
}
.thanks-btn-black:hover .thanks-link-black {
	color: white;
}
.thanks-btn-white {
  background: white;
	color: black;
	height: 60px;
	width: 280px;
	position: relative;
	border: 2px solid black;
}
.thanks-link-white {
	color: black;
	font-weight: 600;
	font-size: 14px;
	position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: 0;
display: flex;
justify-content: center;
align-items: center;
}
.thanks-btn-white:hover {
	border: 2px solid #BCAE8A;
}
.thanks-btn-white:hover .thanks-link-white {
	color: #BCAE8A;
}
.thanks-footer {
	background: #F6F6F6;
padding: 5px;
}
.thanks-section {
	display: flex;
  flex-direction: column;
}
.thanks-txbox {
	padding-left: 15px;
	padding-right: 15px;
	margin: 0 auto;
width: 100%;
position: absolute;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
}
.thanks-fv-contentbox {
	width: 100%;
}
