


@media only screen and (max-width: 480px) {




.sec{
	width: 100%;
	margin: 45px 0 60px 0;
	text-align: left;
}

.sec p{
	font-size:16px;
	line-height: 2;
	margin: 0 0 12px 0;
	padding: 0;
}

.h2-special{
	font-size:24px;
	font-weight: 600;
	color:#444;
	margin: 0 0 16px 0;
	padding: 0;
	text-align: left;
}

.sec-lead{
	font-size:16px;
	text-align: left;
	margin: 0 0 45px 0;
}



.h2-overview{
	font-size:24px;
	font-weight: 600;
	color:#bbab83;
	margin: 0 0 24px 0;
}

.h2-check{
	font-size:21px;
	font-weight: 600;
	color:#444;
	margin: 0 0 24px 0;
}




.sec h3{
	font-size:18px;
	line-height: 2;
	margin: 12px 0 9px 0;
}

.sec-image{
	width: 100%;
}

.sec ul{
	padding: 0 0 0 16px;
	margin: 0;
}

.sec ul li{
	font-size:16px;
	margin-bottom: 12px;
}




.sec-overview{
	display: block;
	justify-content: space-between;
	align-items: center;
}

.sec-overview-left{
	width: 100%;
}

.sec-overview-right{
	width: 100%;
	margin-top: 18px;
}
.sec-overview-image{
	width: 100%;
}



.sec-feature{
	display: block;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.sec-feature-left{
	width: 100%;
}
.sec-feature-right{
	width: 100%;
}



.sec-feature{
	display: block;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.sec-feature-left{
	width: 60%;
	text-align: center;
	margin: 24px auto;
}
.sec-feature-right{
	width: 100%;
}


.sec-check{
	display: block;
	justify-content: space-between;
	align-items: center;
	padding: 30px;
	background: #d6e0e5;
}

.sec-check-left{
	width: 100%;
}

.sec-check-right{
	width: 100%;
	margin-top: 18px;
}




/*======================================

	model-link
	
========================================*/

.model-links__grid{
	 display: grid;
	 grid-template-columns: repeat(2, 48%); /* ボタン幅に合わせる */
	 gap: 2%;
	 justify-content: center; /* ← 半端な件数でも中央寄せ */
	 margin-top: 45px;
}

.model-btn{
	display: block;
	height: 60px;
	border:1px solid #999;
	border-radius: 6px;
	padding: 15px 12px 12px 15px;
	margin-bottom: 9px;
}

.model-btn__en{
	display: block;
	font-size:15px;
	font-weight: 600;
	margin: 0 0 6px 0;
	padding: 0;
	line-height: 1;
}

.model-btn__jp{
	display: block;
	font-size:12px;
	margin: 0;
	padding: 0;
	line-height: 1;
}


a.model-btn {
	position: relative;
	background-color: transparent;
	transition:
		background-color 0.35s ease,
		border-color 0.35s ease;
}





/* a（リンクあり）のときだけ矢印を出す */
a.model-btn {
	position: relative;
}

a.model-btn::after {
	content: "›";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(calc(-50% - 3px)) scaleX(0.75); /* ← 横70% */
	font-size: 24px;
	font-weight: 300;
	color: #666;
	transition: transform 0.2s ease, color 0.2s ease;
}




/*======================================

	sales
	
========================================*/




.sales-grid{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 9px;
  justify-content: center;
  margin-top: 45px;
}

.sales-card{
  display: block;
}

.sales-card__img{
  width: 100%;
  aspect-ratio: 4 / 3;   /* トリム */
  object-fit: cover;
  border-radius: 0px;    /* 今のトーンに合わせて */
  display: block;
}



/*======================================

	purchese
	
========================================*/



.purchase-grid{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 9px;
  justify-content: center;
  margin-top: 45px;
}

/* a をブロック化して、画像をカードにフィット */
.purchase-card a{
  display: block;
}

/* サムネの比率（販売実績と揃えるなら3:2がおすすめ） */
.purchase-card img{
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  display: block;
  border-radius: 0px; /* トーンに合わせて */
}



/*======================================

	faq
	
========================================*/


.faq { width: 100%; }

.faq-item-wrapper { margin-top: 45px; }


.faq-item {
	margin-bottom: 21px;
	text-align: left;
}

.faq-q{
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;

  border: 0px solid #999;
  border-radius: 0px;
  background: transparent;

  padding: 9px 18px;
  cursor: pointer;
  background: #f3f2ed;

  transition: background-color 0.35s ease, border-color 0.35s ease;
}

span.q-mark{
	color:#f3f2ed;
}

.faq-q:hover{
	opacity: 0.8;
}

.faq-q__text{
  font-size: 15px;
  line-height: 1.5;
  text-align: left;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.faq-q__text span.faq-q__text__q{
  font-size: 21px;
  font-weight: 500;
  color:#bbab83;
  margin-right: 6px;
}

.faq-q__icon{
  font-size: 21px;
  font-weight: 300;
  color: #666;

  /* 例の扁平 + 縦位置微調整 */
  transform: translateY(-3px) scaleX(0.8);
  transform-origin: center;
  transition: transform 0.2s ease, color 0.2s ease;
}

/* 開いたら「下向き」に（› を 90deg 回転） */
.faq-q[aria-expanded="true"] .faq-q__icon{
  transform: translateY(-3px) rotate(90deg) scaleX(0.7);
  color: #000;
}

/* 回答エリア（高さアニメーション） */
.faq-a{
  overflow: hidden;
  height: 0;
  transition: height 0.28s ease;
}

.faq-a__inner{
  padding: 14px 18px 18px;
  line-height: 1.75;
}

.faq-a__inner p{
  font-size: 15px;
	text-align: left;
}






/*======================================

	faq
	
========================================*/


.flow-grid{
  max-width: 1000px;
  margin-top:45px;
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 0px;
}

.flow-card{
  position: relative;
  background: #d6e0e5;
  padding: 15px 30px 22px 21px;
  box-sizing: border-box;
  margin-bottom: 12px;
  border-radius: 12px;
}

/* 見出し */
.flow-h3{
  margin: 0 0 10px;
  padding: 0;
  display: flex;
  align-items: baseline;
  gap: 10px;
  align-items: center;
}

.flow-h3__num{
 	font-family: "Libre Baskerville", serif;
 font-size: 40px;
  line-height: 1;
  font-weight: 300;
  color: #ffffff;
}

.flow-h3__text{
  font-size: 18px;
  font-weight: 700;
  color: #111;
}

/* 本文 */
.flow-card p{
  margin: 0;
  font-size: 15px;
  line-height: 1.9;
  color: #111;
}







/*======================================

	to-form
	
========================================*/


.to-form{
	display: block;
	width: 100%;
	height: 300px;
	background: #666;
	position: relative;
}

.to-form-bg{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 300px;
	object-fit:cover;
	z-index: 1;
}

.to-form-bg-over{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 300px;
	z-index: 2;
	mix-blend-mode: multiply; /* オーバーレイを指定 */
	opacity: 0.8;
	background-color: #082752;
}

.to-form-inner{
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
	text-align: center;
	padding: 21px;
}

.to-form-lead{
	font-size: 16px;
	font-weight: 600;
	color:#fff;
	text-align: left;
}

.to-form-btn{
	width: 100%;
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	color:#fff;
	background: #ef260f;
	padding: 15px 27px 15px 27px;
	line-height: 1.5;
	margin: 24px auto;
	border-radius: 9px;
}

.to-form-btn span{
	display: block;
}

.to-form-foot{
	font-size: 14px;
	font-weight: 500;
	color:#fff;
	text-align: left;
}





/*======================================

	index
	
========================================*/

.sec-country{
	display: block;
	justify-content: space-between;
}

.country-left{
	width: 150px;
	margin-bottom: 30px
}

.country-right{
	width: 100%;
}

.country-name-icon{
	width: 30px;
	margin-bottom: 18px;
}

.country-name-icon img{
	width: 100%;
}

.country-name-jp{
	font-size: 21px;
	font-weight: 600;
	margin-bottom: 9px;
	line-height: 1;
	margin-bottom: 18px;
}

.country-name-en{
 	font-family: "Libre Baskerville", serif;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 9px;
	color:#bbab83;
	line-height: 1;
}


.maker-box{
	display: block;
	justify-content: space-between;
	align-items: center;
	border:1px solid #d6e0e5;
	border-radius: 12px;
	padding: 21px 21px 21px 21px;
	margin-bottom: 36px;
	color:#333;
	position: relative;
	transition:
		background-color 0.75s ease,
		border-color 0.75s ease;
}



.maker-box-left{
	width: 90px;
	text-align: center;
	margin-bottom: 15px;
}

.maker-box-left img{
	width: 100%;
}


.maker-box-right{
	width: 100%;
	padding-right: 0;
}

.maker-name-en{
	font-size: 21px;
	font-weight: 600;
	margin-bottom: 12px;
	line-height: 1;
}

.maker-name-jp{
	font-size: 15px;
	font-weight: 600;
	margin-bottom: 18px;
	color:#bbab83;
	line-height: 1;
}

.maker-lead{
	font-size: 14px;
	line-height: 1.8;
}



.maker-box::after {
	content: "›";
	position: absolute;
	right: 27px;
	top: 50%;
	transform: translateY(calc(-50% - 3px)) scaleX(0.75); /* ← 横70% */
	font-size: 30px;
	font-weight: 300;
	color: #666;
	transition: transform 0.35s ease, color 0.35s ease;
}






}/*//end  max-width: 480px ///////////////////////*/







@media only screen and (min-width: 481px) {


.sec{
	width: 100%;
	margin: 90px 0 90px 0;
	text-align: left;
}

.sec p{
	font-size:16px;
	line-height: 2;
	margin: 0 0 12px 0;
	padding: 0;
}

.h2-special{
	font-size:30px;
	font-weight: 600;
	color:#444;
	margin: 0 0 16px 0;
	padding: 0;
	text-align: center;
}

.sec-lead{
	font-size:16px;
	text-align: center;
	margin: 0 0 45px 0;
}



.h2-overview{
	font-size:30px;
	font-weight: 600;
	color:#bbab83;
	margin: 0 0 24px 0;
}

.h2-check{
	font-size:25px;
	font-weight: 600;
	color:#444;
	margin: 0 0 24px 0;
}




.sec h3{
	font-size:19px;
	line-height: 2;
	margin: 12px 0 9px 0;
}

.sec-image{
	width: 100%;
}

.sec ul{
	padding: 0 0 0 16px;
	margin: 0;
}

.sec ul li{
	font-size:16px;
	margin-bottom: 12px;
}




.sec-overview{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.sec-overview-left{
	width: 45%;
}

.sec-overview-right{
	width: 50%;
}
.sec-overview-image{
	width: 100%;
}



.sec-feature{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.sec-feature-left{
	width: 30%;
}
.sec-feature-right{
	width: 65%;
}



.sec-feature{
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-direction: row-reverse;
}
.sec-feature-left{
	width: 30%;
}
.sec-feature-right{
	width: 65%;
}


.sec-check{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 70px;
	background: #d6e0e5;
}

.sec-check-left{
	width: 40%;
}

.sec-check-right{
	width: 55%;
}




/*======================================

	model-link
	
========================================*/

.model-links__grid{
	 display: grid;
	 grid-template-columns: repeat(4, 210px); /* ボタン幅に合わせる */
	 gap: 54px;
	 justify-content: center; /* ← 半端な件数でも中央寄せ */
	 margin-top: 45px;
}

.model-btn{
	display: block;
	width: 210px;
	height: 70px;
	border:1px solid #999;
	border-radius: 6px;
	padding: 15px 12px 12px 21px;
}

.model-btn__en{
	display: block;
	font-size:18px;
	font-weight: 600;
	margin: 0 0 6px 0;
	padding: 0;
	line-height: 1;
}

.model-btn__jp{
	display: block;
	font-size:13px;
	margin: 0;
	padding: 0;
	line-height: 1;
}


a.model-btn {
	position: relative;
	background-color: transparent;
	transition:
		background-color 0.35s ease,
		border-color 0.35s ease;
}

a.model-btn:hover {
	background-color: #d6e0e5;
	border-color: #d6e0e5;
	color: #333;
}


/* a（リンクあり）のときだけ矢印を出す */
a.model-btn {
	position: relative;
}

a.model-btn::after {
	content: "›";
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(calc(-50% - 3px)) scaleX(0.75); /* ← 横70% */
	font-size: 30px;
	font-weight: 300;
	color: #666;
	transition: transform 0.2s ease, color 0.2s ease;
}

a.model-btn:hover::after {
	transform: translate(calc(3px), calc(-50% - 3px)) scaleX(0.7);
	color: #000;
}



/*======================================

	sales
	
========================================*/




.sales-grid{
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 9px;
  justify-content: center;
  margin-top: 45px;
}

.sales-card{
  display: block;
}

.sales-card__img{
  width: 100%;
  aspect-ratio: 4 / 3;   /* トリム */
  object-fit: cover;
  border-radius: 0px;    /* 今のトーンに合わせて */
  display: block;
}



/*======================================

	purchese
	
========================================*/



.purchase-grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 9px;
  justify-content: center;
  margin-top: 45px;
}

/* a をブロック化して、画像をカードにフィット */
.purchase-card a{
  display: block;
}

/* サムネの比率（販売実績と揃えるなら3:2がおすすめ） */
.purchase-card img{
  width: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  display: block;
  border-radius: 0px; /* トーンに合わせて */
}



/*======================================

	faq
	
========================================*/


.faq { width: 100%; }

.faq-item-wrapper { margin-top: 45px; }


.faq-item {
	margin-bottom: 21px;
}

.faq-q{
  width: 100%;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;

  border: 0px solid #999;
  border-radius: 0px;
  background: transparent;

  padding: 0 18px;
  cursor: pointer;
  background: #f3f2ed;

  transition: background-color 0.35s ease, border-color 0.35s ease;
}

span.q-mark{
	color:#f3f2ed;
}

.faq-q:hover{
	opacity: 0.8;
}

.faq-q__text{
  font-size: 17px;
  line-height: 1.2;
  text-align: left;
}

.faq-q__text span{
  font-size: 24px;
  font-weight: 500;
  color:#bbab83;
}

.faq-q__icon{
  font-size: 24px;
  font-weight: 300;
  color: #666;

  /* 例の扁平 + 縦位置微調整 */
  transform: translateY(-3px) scaleX(0.8);
  transform-origin: center;
  transition: transform 0.2s ease, color 0.2s ease;
}

/* 開いたら「下向き」に（› を 90deg 回転） */
.faq-q[aria-expanded="true"] .faq-q__icon{
  transform: translateY(-3px) rotate(90deg) scaleX(0.7);
  color: #000;
}

/* 回答エリア（高さアニメーション） */
.faq-a{
  overflow: hidden;
  height: 0;
  transition: height 0.28s ease;
}

.faq-a__inner{
  padding: 14px 18px 18px;
  line-height: 1.75;
}





/*======================================

	faq
	
========================================*/


.flow-grid{
  max-width: 1000px;
  margin-top:45px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0px;
}

.flow-card{
  position: relative;
  background: #d6e0e5;
  padding: 22px 30px 22px 24px;
  height: 240px;
  box-sizing: border-box;

  /* 右向き矢印の五角形 */
  clip-path: polygon(
    0 0,
    calc(100% - 35px) 0,
    100% 50%,
    calc(100% - 35px) 100%,
    0 100%
  );
}

/* 見出し */
.flow-h3{
  margin: 0 0 10px;
  display: flex;
  align-items: baseline;
  gap: 10px;
  align-items: center;
}

.flow-h3__num{
 	font-family: "Libre Baskerville", serif;
 font-size: 40px;
  line-height: 1;
  font-weight: 300;
  color: #ffffff;
}

.flow-h3__text{
  font-size: 18px;
  font-weight: 700;
  color: #111;
}

/* 本文 */
.flow-card p{
  margin: 0;
  font-size: 15px;
  line-height: 1.9;
  color: #111;
}





/*======================================

	to-form
	
========================================*/


.to-form{
	display: block;
	width: 100%;
	height: 400px;
	background: #666;
	position: relative;
}

.to-form-bg{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 400px;
	object-fit:cover;
	z-index: 1;
}

.to-form-bg-over{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	height: 400px;
	z-index: 2;
	mix-blend-mode: multiply; /* オーバーレイを指定 */
	opacity: 0.8;
	background-color: #082752;
}

.to-form-inner{
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
	text-align: center;
}

.to-form-lead{
	font-size: 25px;
	font-weight: 600;
	color:#fff;
}

.to-form-btn{
	display: inline-block;
	font-size: 20px;
	font-weight: 600;
	color:#fff;
	background: #ef260f;
	padding: 15px 27px 15px 27px;
	line-height: 1;
	margin: 24px auto;
	border-radius: 9px;
}

.to-form-foot{
	font-size: 17px;
	font-weight: 600;
	color:#fff;
}





/*======================================

	index
	
========================================*/

.sec-country{
	display: flex;
	justify-content: space-between;
}

.country-left{
	width: 150px;	
}

.country-right{
	width: 780px;
}

.country-name-icon{
	width: 30px;
	margin-bottom: 18px;
}

.country-name-icon img{
	width: 100%;
}

.country-name-jp{
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 9px;
	line-height: 1;
	margin-bottom: 18px;
}

.country-name-en{
 	font-family: "Libre Baskerville", serif;
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 9px;
	color:#bbab83;
	line-height: 1;
}


.maker-box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	border:1px solid #d6e0e5;
	border-radius: 12px;
	padding: 30px 21px 30px 12px;
	margin-bottom: 36px;
	color:#333;
	position: relative;
	transition:
		background-color 0.75s ease,
		border-color 0.75s ease;
}

a.maker-box:hover img{
	opacity: 1;
}

.maker-box-left{
	width: 135px;
}

.maker-box-left img{
	width: 100%;
}

.maker-box a img:hover{
	opacity: 1;
}

.maker-box-right{
	width: 600px;
	padding-right: 36px;
}

.maker-name-en{
	font-size: 25px;
	font-weight: 600;
	margin-bottom: 12px;
	line-height: 1;
}

.maker-name-jp{
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 18px;
	color:#bbab83;
	line-height: 1;
}

.maker-lead{
	font-size: 15px;
	line-height: 1.8;
}

.maker-box:hover{
	color:#333;
	background: #d6e0e5;
	border:1px solid #d6e0e5;
}


.maker-box::after {
	content: "›";
	position: absolute;
	right: 27px;
	top: 50%;
	transform: translateY(calc(-50% - 3px)) scaleX(0.75); /* ← 横70% */
	font-size: 30px;
	font-weight: 300;
	color: #666;
	transition: transform 0.35s ease, color 0.35s ease;
}




}/*//end  min-width: 481px ///////////////////////*/











