@charset "utf-8";
/* link ページ専用スタイル */

.section--link{
	margin-top: 40px;
}

/* ハンバーガーメニュー時のロゴ切り替え（linkページのみ） */
.header__logo-img--normal{
	display: none;
}
.header__logo.is-visible .header__logo-img--white{
	display: none;
}
.header__logo.is-visible .header__logo-img--normal{
	display: block;
}

 .hero {
	background: #f7eff0;
	padding-bottom: 60px;
  }
   .hero__container {
	aspect-ratio: 750/1084;
	position: relative;
  }
   .hero__image {
	position: relative;
	height: 100%;
	width: 100%;
  }
  .hero__tittle{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	font-size: 2.7rem;
	font-weight: 500;
	text-align: center;
	width: 100%;
	letter-spacing: 0.14em;
	text-shadow: 0 0 4px #3b3b3b, 0 0 8px #3b3b3b, 0 0 12px #3b3b3b;
  }
   .hero__mask {
	bottom: 0;
	position: absolute;
	width: 100%;
  }
   .hero__logo {
	bottom: 0;
	left: 0;
	margin: 0 auto;
	position: absolute;
	right: 0;
	width: 85px;
  }
   .hero__text {
	margin-top: 30px;
	padding: 0 20px;
  }
   .section {
	position: relative;
  }
   .section__title .title__lang {
	display: block;
  }
   .section__title .title__lang--en {
	color: #e07f81;
	font-size: 1.2rem;
	font-weight: 700;
	text-transform: uppercase;
  }
   .section__title .title__lang--jp {
	font-size: 2.3rem;
	font-weight: 500;
  }
   .section__title .title--center {
	text-align: center;
  }
   .section__title .title--left .title__lang--en {
	margin-bottom: 10px;
  }
   .section--news {
	background: url("../../images/top/news_bg.png") center top no-repeat;
	background-size: 100%;
	padding-bottom: 100px;
	padding-top: 70px;
  }
   .section--concept {
	padding-bottom: 80px;
	padding-top: 40px;
  }
   .section--concept .title__lang--jp {
	letter-spacing: -0.05em;
  }
   .section--concept::before {
	aspect-ratio: 510/650;
	background: #f7eff0;
	border-radius: 10px 0 0 10px/10px 0 0 10px;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 68%;
  }
   .section--link {
	padding-bottom: 80px;
	padding-top: 70px;
  }
/* =====================
   #link シンプル一覧
   ===================== */
#link .link-list li {
  display: flex;
  align-items: baseline;
  padding: 20px 0 20px;
  border-bottom: 1px dotted #cccccc;
  flex-direction: column;
  margin-bottom: 20px;
}

#link .link-list li:first-child {
  padding-top: 0;
}

#link .link-list li:last-child {
	margin-bottom: 10px;
  }

#link .link-list p {
  color: #191e1f;
  font-weight: 400;
  letter-spacing: .05em;
}

#link .link-list a {
	color: #e07f81;
	font-weight: 600;
	text-decoration: none; /* 下線は text-decoration ではなく border で表現 */
	position: relative;
	font-size: 1.6rem;
	margin-bottom: 24px;
	display: inline-block;
	line-height: 30px;
	padding-left: 16px; /* 折り返し時のインデント */
	text-indent: -16px; /* 最初の行のインデントを打ち消す */
}

#link .link-list a::before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #e07f81;
	border-bottom: none; /* サークル部分には下線を表示しない */
	margin-right: 11px; /* ドットとテキストの間隔 */
}

#link .link-list a::after {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	background-image: url("../../images/link/icon-link.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin-top: 6px;
	margin-left: 6px;
	transition: transform .25s ease;
	position: relative;
    top: 2px;
}

#link .link-list a span:hover {
	opacity: 1;
	border-bottom: 1px solid #fff;       /* guardian と同様、ホバー時は枠線を消す */
}

#link .link-list a span{
	display: inline;
	padding-bottom: 3px;
	border-bottom: 1px solid currentColor;
	transition: color .25s ease, border-bottom-color .25s ease;
}

/* 必要なら、ホバー時にアイコンだけ少し動かす場合はここに指定を追加 */

#link .link-list{
	margin-top: 50px;
}

/* timeの前にサークルを表示 */
#link .link-list time{
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

#link .link-list time::before{
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #e07f81;
}