@charset "utf-8";
/* =============
  theme original
================ */
.h_bar {
    display: none
}
#beltbnr {
    display: none
}
/* =======
  common
========== */

html {
  font-size: 62.5%;
  scroll-padding-top: 100px;
}
*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
body{
	background-color: #b6d9dd;
}

 main {
    overflow: hidden;
    margin: 0 auto;
    text-align: center;
  }
  main h2, main h3, main h4 {
    font-family: serif !important;
    font-size: 3.25vw;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    color: #333;
  }

ul,li {
  list-style: none;
}

/* 不要箇所 */
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  object-fit: cover;
}

/* ==========
  contents
=========== */
.pc-img {
  display: block;
}
.sp-img {
  display: none;
}
/* 変更しない */
.wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.column {
  display: flex;
  align-items: center;
  justify-content: space-between;
}



.l-content__header {
  width: 900px;
  margin-inline: auto;
}
.lead {
  margin-top: 75px;
  padding: 55px;
  text-align: center;
}
.p-article-vis__img {
  /* padding-top: 10px; */
}




.area{
	width: 900px;
	margin: 0 auto;
	/* border: solid 1px #fff; */
	border-radius: 10px;
	/* padding-bottom: 100px; */
	background-color: #b6d9dd;
}


.slide-items{
	border-radius: 32.5px;
	margin: 20px 0;
}


.slidenone-items{
	border-radius: 0 32.5px 0 0;
	margin: 20px;
}
.slidenone-guide2{
	border-radius: 0  0 0 32.5px;
	background-color: #fff;
	border: solid 1px #000;
	margin: 20px 0 30px;
}
.slidenone-items2{
	border-radius: 0 32.5px 0 0;
	margin: 20px;
}

/* sliderをカスタマイズするCSS */
.slick-dots {
	bottom: -30px!important;
	width: initial;
	left: auto;
	right: 0;
}
.slick-dots li button:before{
	font-size: 8px!important;
}

.slick-dotted.slick-slider {
    margin-bottom: 20px!important;
}





/*--SP--*/
@media screen and (max-width: 767px) {
	html {
    scroll-padding-top: 0;
  }
  .pc-img {
    display: none;
  }
  .sp-img {
    display: block;
  }
  .column {
    display: block;
  }
  .l-content__header,
  .section-container {
    width: 100%;
  }
  .p-article__header,
  .l-col {
    padding: 0 20px;
    margin-inline: auto;
  }
.font-ja {
  font-family: serif !important;
  color: #000;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "palt"; /* 句読点を詰める */
  letter-spacing: 2px;
  line-height: 1.75;
  text-align: justify; /* 両橋を揃える */
}
 
.lead {
    /*コレ*/
    border-top: 1px solid #fff;
    /*コレ*/
    border-bottom: 1px solid #fff;
    text-align: left;
    margin-top: 10.45%;
    padding-bottom: 10.45%;
    color: #9f4b71;
  }
  .sp {
    display: block;
  }
  .pc {
    display: none;
  }
	
  main {
    overflow: hidden;
    margin: 0 auto;
    text-align: center;
  }
 main h2, main h3, main h4 {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0;
    color: #333333;
  }

  .lead {
    width: 100%;
    margin: 50px auto 0;
    text-align: justify;
    padding: 30px 15px;
  }
  .lead br {
    display: none;;
  }
	

	
	
.area{
	border: none;
	margin: 0 auto;
	width: auto;
	padding: 0 0 0px 0;
}
	
	


	
/*ボックスアニメーション*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box {position: relative;width: min(82%, 100%);margin: -17px 20px 0;padding: 5px 0;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text {position: relative;z-index: 2;font-size: 17px;letter-spacing: .02em;margin: 0;font-family: serif;color: #9f4b71;}


.box__outline {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box.is-visible .box__rect { stroke-dashoffset: 0; }


.box:nth-of-type(2) .box__rect { transition-delay: 120ms; }
.box:nth-of-type(3) .box__rect { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect { transition: none; stroke-dashoffset: 0 !important; }
}

/*ボックスアニメーション2*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box2 {position: relative;width: min(33%, 100%);margin: 35px 20px 0 auto;padding: 3px 0px 1px;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text2 {position: relative;z-index: 2;font-size: 18px;letter-spacing: .02em;margin: 0;font-family: serif;color: #3b3b3b;}


.box__outline2 {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect2 {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box2.is-visible .box__rect2 { stroke-dashoffset: 0; }


.box2:nth-of-type(2) .box__rect2 { transition-delay: 120ms; }
.box2:nth-of-type(3) .box__rect2 { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect2 { transition: none; stroke-dashoffset: 0 !important; }
}	

/*ボックスアニメーション3*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box3 {position: relative;width: min(47%, 100%);margin: 50px auto;padding: 5px 0px;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text3 {position: relative;z-index: 2;font-size: 24px;letter-spacing: .02em;margin: 0;font-family: serif;color: #3b3b3b;}


.box__outline3 {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect3 {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box3.is-visible .box__rect3 { stroke-dashoffset: 0; }


.box3:nth-of-type(2) .box__rect3 { transition-delay: 120ms; }
.box3:nth-of-type(3) .box__rect3 { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect3 { transition: none; stroke-dashoffset: 0 !important; }
}	
	
/*カラープライス*/

.product-card {
   /* 背景（水色） */
   padding: 10px 20px;
   text-align: center;
}

.product-info {
  display: flex;
  justify-content: center;
  gap: 30px;
  font-size: 14px;
  /* padding: 0 0 15px; */
  font-family: serif;
  color: #3b3b3b;
}
.product-name{
		font-family: serif;
	}
.product-price {
	font-family: serif;
}

.color-options {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin: 15px 0;
  pointer-events: none;
}

.color-btn {
  width: 80px;
  border: none;
  border-radius: 20px;
  padding: 6px 0px;
  letter-spacing: 1px;
  font-size: 12px;
  background: #fff;
  color: #3b3b3b;
  transition: all 0.3s ease;
  font-family: serif;
}

.color-btn.active {
  background: #3b3b3b;
  color: #fff;
  width: 80px;
}

.color-btn.yellow {
  background: #f4eb6f;
}
.color-btn.navy {
  background: #021c57;
  color: #fff;
}

.color-btn:hover {
  opacity: 0.8;
}

.buy-btn {
  display: block;
  width: 100%;
  background: #fff;
  color: #000;
  text-align: center;
  padding: 12px 0;
  font-size: 16px;
  font-family: Georgia, serif;
  text-decoration: none;
  border: none;
  transition: background 0.3s ease;
}

.buy-btn:hover {
  background: #eee;
}

/*１ヶ月先までの STYLING IDEA*/	
.styling-section {
   /* 背景は仮の水色 */
   width: 500px;
   margin: 0;
}

.styling-title {
  margin-left: 20px;
  margin-bottom: 10px;
  text-align: left;
}

.styling-title img {
  max-width: 45%;
  height: auto;
  display: block;
}

/* アニメーションする横線 */
.styling-line {
  height: 1px;
  background: #fff;
  width: 49%;              /* 最終幅を100%にしておく */
  transform: scaleX(0);     /* 初期状態は0倍（見えない） */
  transform-origin: left;   /* 左基点で伸びる */
  transition: transform 1s ease;
}

.styling-line.active {
  transform: scaleX(1);     /* アクティブ時に左から右へ伸びる */
}
.styling-line2 {
  height: 1px;
  background: #fff;
  width: 49%;              /* 最終幅を100%にしておく */
  transform: scaleX(0);     /* 初期状態は0倍（見えない） */
  transform-origin: left;   /* 左基点で伸びる */
  transition: transform 1s ease;
}

.styling-line2.active2 {
  transform: scaleX(1);     /* アクティブ時に左から右へ伸びる */
}
.styling-subtitle {
  font-family: serif;
  display: inline-block; /* → block に変える */
  display: block;
  margin-top: 24px;
  padding: 3px 22px 3px 20px;
  background: #fff;
  font-size: 18px;
  border-radius: 0 50px 50px 0;
  width: fit-content; /* 内容分の幅だけに */
}

/*１ヶ月先までの STYLING IDEA　end*/
	
	.content02{
		display: block;
	}


/*画像テキスト横並び*/
.t-flex {
  width: 100%;
  margin: 0 auto;
  align-items: center; /* ← 高さを揃える */
  padding: 0;
}
.ttl01 p{
  font-family: serif !important;
}
.t-flex2 {
  width: 100%;
  margin: 25px auto;
   /* ← 高さを揃える */
  padding: 0;
}

.t-flex img {
  height: auto;
  object-fit: cover; /* ← 必要なら画像トリミングして高さ揃える */
}
.t-flex2 img {
  height: auto;
  object-fit: cover; /* ← 必要なら画像トリミングして高さ揃える */
}
	.text{
		color: #9f4b71;
		font-size: 17.5px;
		font-family: serif;
		font-weight: 500;
	}


/* テキストを上下中央に配置 */
.caption{
  width: 100%;
  font-size: 13px;
  margin: 0 auto;
  padding: 12px 20px 30px;
  line-height: 1.8;
  text-align: justify;
  letter-spacing: 1px;
  font-family: serif !important;
  color: #000;
}

	.t-flex img{
    width: 100%;
    font-size: 12px;
  }

/* ------------------*/
	
	.credit{
	font-family: serif;
	font-size: 1.2rem;
	color: #000;
	font-weight: 400;
	display: block;
	letter-spacing: 2px;
	padding-bottom: 15px;
	}
	.t-flex2 ul a{
	font-family: serif;
	font-size: 1.1rem;
	color: #000;
	font-weight: 400;
	display: block;
	text-decoration: none;
	cursor: pointer;
	letter-spacing: 0.5px;
	padding: 3px 0;
	font-weight: 500;
	}
	ul, li {
    list-style: none;
    /* padding: 0 10px; */
}
	.t-flex2 ul span{
		    text-decoration: underline;
		    font-family: serif;
	}
/*画像テキスト横並び*/

	.price{
		font-size: 14px;
		text-align: center;
		margin: 30px auto;
		font-family: serif !important;
	}
.button_lg {
    width: 100%;
    height: 23px;
    line-height: 23px;
    border: solid 1px #fff;
    background: #fff;
    text-align: center;
    transition: 0.5s;
    display: block;
    color: #3b3b3b;
    text-decoration: none;
    font-size: 14px;
    font-weight: normal;
    letter-spacing: 1px;
    margin: 0 auto;
    font-family: serif !important;
 }
.btn {
  text-decoration: none;
  margin: 0 auto;
  padding: 10px 0px 40px;
}
.btn a:hover{
    background-color: #fff;
    opacity: 0.5;
  }
.btn2 {
  text-decoration: none;
  margin: 0 auto;
  padding: 20px 30px 40px;
}
.btn2 a:hover{
    background-color: #fff;
    opacity: 0.5;
  }

  section {
    margin: 80px auto;
    padding-top: 0px;
  }

  /*--section01,03,05,07--*/
  .section01 h2, 
  .section03 h2,
  .section04 h2 {
    text-align: center;
  }
  .section02 h2,   
  .section05 h2{
    text-align: center;
  }
 
  .section01 .slide-area, 
  .section02 .slide-area,
  .section04 .slide-area{
    width: 100%;
    order: 0;
    position: relative;
    padding-bottom: 1px;
 }
  
  
  
 
	
  /*--section02,04,06--*/
  .section02, 
  .section03,
  .section04, 
  .section05{
  }
  
  .section03 .slide-area,
  .section05 .slide-area {
    width: 100%;
    border-bottom: solid 1px #fff;
    order: 1;
  }
  .section02 .caption-area, 
  .section04 .caption-area{
    width: 100%;
    margin: 50px auto 0;
    text-align: left;
  }
  
  

	.styling_inner .slide-box .text{
		font-size: 2.2rem;
		display: block;
		height: 20px;
		line-height: 20px;
	}
	.fs-en01{
		font-size: 14px;
	}
	
 

	

  /*--related link--*/
  .related-link {
    margin: 90px auto;
  }
  .related-link a {
    padding: 0.8% 10%;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    background-color: #bc1414;
    color: #fff;
    text-decoration: none;
    transition: background 1s;
	font-family: serif !important;
  }
  .related-link a:hover {
    background-color: #000;
    color: #fff;
  }
}


/*--PC--*/
@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }

  .bgcolor {
    background-color: #207baf;
  }

  main {
    width: 900px;
    overflow: hidden;
    margin: 0 auto;
    text-align: center;
  }
.font-ja {
  font-family: serif !important;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  font-feature-settings: "palt"; /* 句読点を詰める */
  letter-spacing: 2px;
  line-height: 1.75;
  text-align: justify; /* 両橋を揃える */
}
	
  .lead {
    /*コレ*/
    border-top: 1px solid #fff;
    /*コレ*/
    border-bottom: 1px solid #fff;
    width: 600px;
    margin: 45px auto;
    text-align: center;
    color: #9f4b71;
  }
	
	
/*ボックスアニメーション*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box {position: relative;width: min(90%, 100%);margin: -28px -50px 0;padding: 10px;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text {position: relative;z-index: 2;font-size: 22px;letter-spacing: .02em;margin: 0;font-family: serif;color: #9f4b71;}


.box__outline {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box.is-visible .box__rect { stroke-dashoffset: 0; }


.box:nth-of-type(2) .box__rect { transition-delay: 120ms; }
.box:nth-of-type(3) .box__rect { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect { transition: none; stroke-dashoffset: 0 !important; }
}

/*ボックスアニメーション2*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box2 {position: relative;width: min(20%, 100%);margin: 50px 0px 0 auto;padding: 5px 10px;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text2 {position: relative;z-index: 2;font-size: 24px;letter-spacing: .02em;margin: 0;font-family: serif;color: #3b3b3b;}


.box__outline2 {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect2 {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box2.is-visible .box__rect2 { stroke-dashoffset: 0; }


.box2:nth-of-type(2) .box__rect2 { transition-delay: 120ms; }
.box2:nth-of-type(3) .box__rect2 { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect2 { transition: none; stroke-dashoffset: 0 !important; }
}	

/*ボックスアニメーション3*/
:root {
--border-color: #fff; /* 枠線の色 */
--border-width: 1; /* 枠線の太さ(px) */
--anim-duration: 1200ms; /* アニメーション時間 */
--anim-ease: cubic-bezier(.22,.61,.36,1); /* イージング */
--corner-radius: 0; /* 角丸(px)。0で角ばった四角 */
--bg: #f7f7f7;
}

.box3 {position: relative;width: min(25%, 100%);margin: 50px auto;padding: 5px 10px;background: transparent;box-sizing: border-box;isolation: isolate;}


.box__text3 {position: relative;z-index: 2;font-size: 24px;letter-spacing: .02em;margin: 0;font-family: serif;color: #3b3b3b;}


.box__outline3 {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
z-index: 1;
overflow: visible;
pointer-events: none;
}


.box__rect3 {
fill: transparent;
stroke: var(--border-color);
stroke-width: var(--border-width);
vector-effect: non-scaling-stroke;
shape-rendering: crispEdges;
stroke-linejoin: miter;
stroke-linecap: butt;
transition: stroke-dashoffset var(--anim-duration) var(--anim-ease);
/* stroke-dasharray / stroke-dashoffset は JS 側でセットします（より確実） */
}


.box3.is-visible .box__rect3 { stroke-dashoffset: 0; }


.box3:nth-of-type(2) .box__rect3 { transition-delay: 120ms; }
.box3:nth-of-type(3) .box__rect3 { transition-delay: 180ms; }


@media (prefers-reduced-motion: reduce) {
.box__rect3 { transition: none; stroke-dashoffset: 0 !important; }
}	
	
/*カラープライス*/

.product-card {
   /* 背景（水色） */
  padding: 20px;
  text-align: center;
}

.product-info {
  display: flex;
  justify-content: center;
  gap: 30px;
  font-size: 16px;
  margin-bottom: 15px;
  padding: 0 0 15px;
  font-family: serif;
  color: #3b3b3b;
}

.product-name{
		font-family: serif;
	}
.product-price {
	font-family: serif;
}

.color-options {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin: 20px 0;
  pointer-events: none;
}

.color-btn {
  width: 100px;
  border: none;
  border-radius: 20px;
  padding: 6px 0px;
  letter-spacing: 1px;
  font-size: 14px;
  background: #fff;
  color: #3b3b3b;
  transition: all 0.3s ease;
  font-family: serif;
}

.color-btn.active {
  background: #3b3b3b;
  color: #fff;
  width: 100px;
}

.color-btn.yellow {
  background: #f4eb6f;
}
.color-btn.navy {
  background: #021c57;
  color: #fff;
}

.color-btn:hover {
  opacity: 0.8;
}

.buy-btn {
  display: block;
  width: 100%;
  background: #fff;
  color: #000;
  text-align: center;
  padding: 12px 0;
  font-size: 16px;
  font-family: Georgia, serif;
  text-decoration: none;
  border: none;
  transition: background 0.3s ease;
}

.buy-btn:hover {
  background: #eee;
}

/*１ヶ月先までの STYLING IDEA*/	
.styling-section {
   /* 背景は仮の水色 */
   width: 500px;
   margin: 0;
}

.styling-title {
  margin-bottom: 10px;
  text-align: left;
}

.styling-title img {
  max-width: 60%;
  height: auto;
  display: block;
}

/* アニメーションする横線 */
.styling-line {
  height: 1px;
  background: #fff;
  width: 64%;              /* 最終幅を100%にしておく */
  transform: scaleX(0);     /* 初期状態は0倍（見えない） */
  transform-origin: left;   /* 左基点で伸びる */
  transition: transform 1s ease;
}
.styling-line2 {
  height: 1px;
  background: #fff;
  width: 64%;              /* 最終幅を100%にしておく */
  transform: scaleX(0);     /* 初期状態は0倍（見えない） */
  transform-origin: left;   /* 左基点で伸びる */
  transition: transform 1s ease;
}

.styling-line.active {
  transform: scaleX(1);     /* アクティブ時に左から右へ伸びる */
}
.styling-line2.active2 {
  transform: scaleX(1);     /* アクティブ時に左から右へ伸びる */
}

.styling-subtitle {
  font-family: serif;
  display: inline-block; /* → block に変える */
  display: block;
  margin-top: 32px;
  padding: 5px 30px 5px 40px;
  background: #fff;
  font-size: 21px;
  border-radius: 0 50px 50px 0;
  width: fit-content; /* 内容分の幅だけに */
}

/*１ヶ月先までの STYLING IDEA　end*/
	
	.content02{
		display: flex;
		justify-content: space-between;
		gap: 10px;
		align-items: center;
	}


/*画像テキスト横並び*/
.t-flex {
  width: 100%;
  margin: 0 auto;
  align-items: center; /* ← 高さを揃える */
  padding: 0;
}
.ttl01 p{
  font-family: serif !important;
}
.t-flex2 {
  width: 40%;
  margin: 0 auto;
   /* ← 高さを揃える */
  padding: 0;
}

.t-flex img {
  height: auto;
  object-fit: cover; /* ← 必要なら画像トリミングして高さ揃える */
}
.t-flex2 img {
  height: auto;
  object-fit: cover; /* ← 必要なら画像トリミングして高さ揃える */
}
	.text{
		color: #9f4b71;
		font-size: 19px;
		font-family: serif;
	}


/* テキストを上下中央に配置 */
.caption{
  width: 100%;
  font-size: 14px;
  margin: 0;
  padding: 23px 0px 40px  0;
  line-height: 1.9;
  text-align: justify;
  letter-spacing: 1px;
  font-family: serif !important;
  color: #3b3b3b;
}

	.t-flex img{
    width: 100%;
    font-size: 12px;
  }

/* ------------------*/
	
	.credit{
	font-family: serif;
	font-size: 1.4rem;
	color: #3b3b3b;
	font-weight: 400;
	display: block;
	letter-spacing: 2px;
	padding-bottom: 15px;
	}
	.t-flex2 ul a{
	font-family: serif;
	font-size: 1.2rem;
	color: #3b3b3b;
	font-weight: 400;
	display: block;
	text-decoration: none;
	cursor: pointer;
	/* letter-spacing: 1px; */
	padding: 5px 0;
	}
	ul, li {
    list-style: none;
}
	.t-flex2 ul span{
		    text-decoration: underline;
	        font-family: serif;
	}
/*画像テキスト横並び*/

	.price{
		font-size: 14px;
		text-align: center;
		margin: 30px auto;
		font-family: serif !important;
	}
.button_lg {
    width: 100%;
    height: 23px;
    line-height: 23px;
    border: solid 1px #fff;
    background: #fff;
    text-align: center;
    transition: 0.5s;
    display: block;
    color: #3b3b3b;
    text-decoration: none;
    font-size: 16px;
    font-weight: normal;
    letter-spacing: 1px;
    margin: 0 auto;
    font-family: serif !important;
 }
.btn {
  text-decoration: none;
  margin: 0 auto;
  padding: 20px 0px 40px;
}
.btn a:hover{
    background-color: #fff;
    opacity: 0.5;
  }
.btn2 {
  width: 500px;
  text-decoration: none;
  margin: 0 auto;
  padding: 20px 0px 40px;
}
.btn2 a:hover{
    background-color: #fff;
    opacity: 0.5;
  }

  section {
    width: 500px;
    margin: 80px auto;
    padding-top: 0px;
  }

  /*--section01,03,05,07--*/
  .section01 h2, 
  .section03 h2,
  .section04 h2 {
    text-align: center;
  }
  .section02 h2,   
  .section05 h2{
    text-align: center;
  }
 
  .section01 .slide-area, 
  .section02 .slide-area,
  .section04 .slide-area{
    width: 50%;
    order: 0;
    position: relative;
 }
  
  
  
 
	
  /*--section02,04,06--*/
  .section02, 
  .section03,
  .section04, 
  .section05{
    width: 900px;
  }
  
  .section03 .slide-area,
  .section05 .slide-area {
    width: 50%;
    order: 1;
  }
  .section02 .caption-area, 
  .section04 .caption-area{
    width: 100%;
    margin: 50px auto 0;
    text-align: left;
  }
  
  

	.styling_inner .slide-box .text{
		font-size: 2.2rem;
		display: block;
		height: 20px;
		line-height: 20px;
	}
	.fs-en01{
		font-size: 14px;
	}
	
 

	

  /*--related link--*/
  .related-link {
    margin: 90px auto;
  }
  .related-link a {
    padding: 0.8% 10%;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 1px;
    background-color: #bc1414;
    color: #fff;
    text-decoration: none;
    transition: background 1s;
	font-family: serif !important;
  }
  .related-link a:hover {
    background-color: #000;
    color: #fff;
  }
}





/*--slick カスタマイズ--*/
.content01 .slick-dots li {
  margin: 0;
}
.content01 .slick-dots li button:before {
  opacity: 1;
  color: #333;
}
.content01 .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #848484;
}
.content02 .slick-dots li {
  margin: 0;
}
.content02 .slick-dots li button:before {
  opacity: 1;
  color: #333;
}
.content02 .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #cccccc;
}


/*--スクロール　アニメーション--*/
.fade-in {
  opacity: 0;
  transform: translate(0,0);
  transition: all 1.5s;
}
.fade-up {
  transform: translate(0, 30px);
}
.fade-in.scroll-in {
  opacity: 1;
  transform: translate(0,0);
}

/*----------

スッタフスタイリング表示調整

----------*/

.hacobune-app-container {

  background-color: #b6d9dd !important;

}



.hacobune-media-post-list-item {

  border-top: 1px solid #b6d9dd !important;

  border-bottom: 1px solid #b6d9dd !important;

  background-color: #b6d9dd !important;

  border-color: #b6d9dd !important;

}
