@charset "UTF-8";

/* --------------------------------
	common
-------------------------------- */
figure {
	padding-top: 20px;
}

#main p {
	font-size: min(22px, 4.5vw);
	padding-top: 20px!important;
}

.marker {
  background-color: #f8d2bd;
  padding: 0 2px;
	line-height: 1;
}

#sec02 {
	padding-bottom: 40px;
	padding-top: 40px;
	background-color: #f6e59e;
}

#sec03 {
	background-color: #fff;
	padding-bottom: 60px;
}

.btn .coming-soon {
  color: #f6e59e;
}


#main h2 {
	font-size: min(30px, 5.5vw);
	font-family: "Noto Sans JP", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 游ゴシック体, "Yu Gothic", YuGothic, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-align: center;
	line-height: 1.4;
	font-weight: 400;
}
#main h2 img {
	padding-bottom: 20px;
}

#main h3 {
	color: #ff5353;
	font-size: 36px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	padding-top: 40px;
	text-align: center;
	line-height: 1.4;
}

.

@media (max-width: 768px) {
	#sec02, #sec03, #sec04, #sec05 {
		padding-bottom: 3rem;
		padding-top: 3rem;
	}
		#sec03 {
		padding-top: 1rem;
	}
	#main h2 {
		font-size: 5.5vw;
	}
	#main h3 {
		font-size: 6vw;
		padding-top: 2rem;
	}
	figure {
		padding-top: 1rem;
	}

	#main p {
		padding-top: 1rem!important;
	}
}


/* --------------------------------
	#sec01
-------------------------------- */

    .talk-block {
      display: flex;
      align-items: center;
      margin: 20px 0;
    }

    .talk-block.reverse {
      flex-direction: row-reverse;
    }

    .speaker-photo {
      width: 90px;
      height: auto;
      object-fit: cover;
      flex-shrink: 0;
    }

    .speech-bubble {
		flex: 1;
		font-size: min(22px, 4.5vw);
      background-color: #fff;
/*      border: 1px solid #ccc;*/
      padding: 10px 15px;
      border-radius: 10px;
    }





#sec02 h2{
	color: #e7336e;
}

#sec01 p {
	padding-top: 20px;
    padding-bottom: 20px;
}

@media (max-width: 768px) {
	#sec01 {
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
}



/* --------------------------------
	speech-bubble
-------------------------------- */
.reverse .speech-bubble {
  position: relative;
  display: inline-block;
  margin-right: 16px;
  padding: 17px 16px;
  border-radius: 25px;
  background-color: #ffffff;
  text-align: left;
  font-size: min(21px, 4.5vw);
  line-height: 1.7;
  color: #000000;
	letter-spacing: 0.1em;
}

.reverse .speech-bubble::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  border-style: solid;
  border-width: 8px 0 8px 16px;
  border-color: transparent transparent transparent #ffffff;
  translate: 100% -50%;
  transform: skew(0, -10deg);
  transform-origin: left;
}

.speech-bubble {
  position: relative;
  display: inline-block;
  margin-left: 16px;
  padding: 17px 16px;
  border-radius: 25px;
  background-color: #ffffff;
  text-align: left;
 font-size: min(21px, 4.5vw);
  line-height: 1.7;
  color: #000000;
	letter-spacing: 0.1em;
}

.speech-bubble::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  border-style: solid;
  border-width: 8px 16px 8px 0;
  border-color: transparent #ffffff transparent transparent;
  translate: -100% -50%;
  transform: skew(0, -10deg);
  transform-origin: right;
}

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

-------------------------------- */
/*# sourceMappingURL=style.css.map */