@charset "utf-8";
/* CSS Document */
/* adobefont */
#dp_test_lp {
  font-family: "yu-mincho-pr6n", sans-serif;
  font-weight: 500;
  font-style: normal;
}
/* //adobefont */
/* もっと見る */
.block-link {
  text-align: center;
  display: none;
}
/* 表示形式を非表示にする */
.block-sort--header h2 {
  display: none;
}
/* 表示件数（上）を非表示にする */
.block-goods-list-naviframe, .pager-total {
  display: none;
}
.block-section {
  padding: 20px 0;
}
/* 商品 */
.block-top-event {
  padding: 20px 0;
}
.block-thumbnail-t--items {
  margin: 40px -5px;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: flex-start;
}
.block-section--header {
  margin-top: 1.5rem;
}
.dp_test_maintext a {
  color: #0065b3;
}
.hazard_map-text a {
  color: #0065b3;
}
.cammoc-introduction-text02 a {
  color: #0065b3;
}
/* 改行固定 */
span.aks {
  display: inline-block;
}
.text-bold {
  font-weight: 600;
}
/* main top */
.dp_test_topimg {
  text-align: center;
}
.dp_test_maintext h2 {
  font-size: 18px;
  font-size: clamp(1.125rem, 0.792rem + 1.667vw, 1.313rem);
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
  line-height: 1.75;
  margin: 2rem 0;
  text-align: center;
}
.dp_test_text01 {
  background: #ffe68d;
  margin: 1.25rem auto;
  padding: 20px;
  letter-spacing: 0.05em;
  line-height: 1.75;
  font-weight: 400;
}
.dp_test_text01 p {
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
}
/* パーソナル防災診断とは */
.block-event-dp_test h2, .useful h2 {
  text-align: center;
  background: #000000;
  color: #ffffff;
  padding: 5px;
  border-radius: 100vh;
  margin: 0 auto 2.5rem;
  font-size: 18px;
  font-size: clamp(1.125rem, 0.792rem + 1.667vw, 1.313rem);
}
.block-event-dp_test p {
  text-align: left;
  margin: 2.5rem 0;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.75;
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
}
.block-event-dp_test, .useful {
  text-align: center;
}
/* アイコン */
.block-event--main-icon {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  text-align: center;
  margin: 0 0 40px 0;
}
.main-yoshi-icon {
  background: #ffe68d;
  text-align: center;
  width: 230px;
  border-radius: 20px;
  padding: 10px;
  font-size: 1.25rem;
  margin: 5px;
}
.main-examiner-icon {
  background: #ffe68d;
  text-align: center;
  width: 230px;
  border-radius: 20px;
  padding: 10px;
  font-size: 1.25rem;
  margin: 5px;
}
.main-yoshi-icon p, .main-examiner-icon p {
  margin-top: 0;
  font-weight: 400;
  line-height: 1.25;
  padding: 10px 0;
  font-size: 12px;
}
/* 吹き出し */
/* 防災士 */
.right-side {
  display: flex;
  justify-content: flex-end;
  align-items: start;
  gap: 0 22px;
  margin: 1.25rem;
}
.right-side img {
  max-width: 70px;
  border: 3px solid #ffe68d;
  border-radius: 50%;
}
.right-side p {
  position: relative;
  margin: 3px 0 0;
  padding: .8em 1em;
  border-radius: 10px;
  background-color: #ffe68d;
  color: #333333;
  font-weight: 400;
  line-height: 1.5;
  padding-bottom: 10px;
  letter-spacing: 0.05em;
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
}
.right-side p::before {
  position: absolute;
  right: -10px;
  width: 15px;
  height: 30px;
  background-color: #ffe68d;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  content: '';
}
/* よっしー */
.left-side {
  display: flex;
  justify-content: flex-start;
  align-items: start;
  gap: 0 22px;
  margin: 1.25rem;
}
.left-side img {
  max-width: 70px;
  border: 3px solid #ffe68d;
  border-radius: 50%;
}
.left-side p {
  position: relative;
  margin: 3px 0 0;
  padding: .8em 1em;
  border-radius: 10px;
  background-color: #ffe68d;
  color: #333333;
  font-weight: 400;
  padding-bottom: 10px;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
}
.left-side p::before {
  position: absolute;
  left: -10px;
  width: 15px;
  height: 30px;
  background-color: #ffe68d;
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  content: '';
}
/* チェック */
.check {
  position: relative;
  margin: 2.75em auto 2rem;
  padding: 2em 1.15em 1.5em;
  border: solid 3px #000000;
  border-radius: 8px;
}
.check .check-title {
  position: absolute;
  display: inline-block;
  top: -13px;
  left: 10px;
  padding: 8px;
  line-height: 1;
  font-size: 19px;
  background: #000000;
  color: #ffffff;
  font-weight: bold;
  border-radius: 15px;
}
.check p {
  margin: 0;
  padding: 0;
}
.check ul {
  text-align: left;
}
.check li {
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
}
/* ハザードマップ */
.hazard_map-simulation {
  text-align: center;
  background: #ffe68d;
  padding: 20px;
  margin: 2.5rem auto;
}
.hazard_map-text {
  padding: 15px;
  background: #ffffff;
  margin: 15px auto 0;
  line-height: 1.5;
}
.hazard_map-text h3 {
  text-align: center;
  background: #000000;
  color: #ffffff;
  border-radius: 20px;
  padding: 3px;
  margin: 0 5px 10px 5px;
}
.hazard_map img {
  width: 100%;
}
/* タイトル微調整 */
.flood-damage h2 {
  margin: -20px auto 50px;
}
.commute, .test-last {
  margin: -60px auto 30px;
}
.bicycle-commuting h2 {
  margin: 50px auto;
}
.outdoor h2 {
  margin: 50px auto;
}
/* 商品紹介 */
.pickup-item {
  padding: 0.5em 1em;
  margin: 2rem auto;
  border: double 4px #000000;
}
.pickup-item h3 {
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-size: clamp(0.875rem, 0.653rem + 1.111vw, 1rem);
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
}
/* cammoc */
.lp-end h2 {
  text-align: center;
  background: #000000;
  color: #ffffff;
  padding: 8px;
  border-radius: 100vh;
  margin: 30px auto 40px;
  line-height: 1.5;
}
.lp-end p {
  font-size: 12px;
  font-size: clamp(0.75rem, 0.306rem + 2.222vw, 1rem);
  font-weight: 400;
  line-height: 1.4;
  color: #000;
  letter-spacing: 0.1em;
  text-align: center !important;
  padding-bottom: 20px;
}
.lp-end {
  position: relative;
  padding-bottom: 20px;
}
.main_under {
  background: linear-gradient(transparent 0%, #ffe27d 0%);
  padding: 4px 10px;
  font-weight: 600;
}
.text-small {
  font-size: 0.75rem;
}
.cammoc-introduction-logo {
  text-align: center;
  margin: 0 0 50px 0;
}
.cammoc-introduction p {
  font-size: 12px;
  font-size: clamp(0.75rem, 0.528rem + 1.111vw, 0.875rem);
  letter-spacing: 0.1em;
  line-height: 1.5;
}
.cammoc-introduction-text01 {
  margin: 1.5rem 0;
}
.cammoc-introduction-text01 h4, .cammoc-introduction-text02 h4 {
  margin-bottom: 10px;
  letter-spacing: 0.1em;
  line-height: 1.25;
}
.cammoc-introduction-logo img {
  margin-bottom: 0.75rem;
}