@charset "utf-8";

/** ***************************************************************************
 * 共用
 * ************************************************************************* */

#main div.frame {
  padding-bottom: 100px;
  font-weight: 400;
  position: relative;
  z-index: 0;
}

#main div.frame::after {
  content: '';
  width: var(--innerWidth);
  max-width: none;
  height: 100%;
  background-color: rgb(var(--accentcolor-7));
  position: absolute;
  z-index: -1;
  top: 0;
  left: var(--innerCenter);
  clip-path: shape(
    from 0 18px,
    curve to 100% 8px with 35% 40px / 65% -17px,
    vline to 100%,
    hline to 0%,
    close
  );
}

@media screen and (min-width:768px) {

  #main div.frame {
    padding-top: 50px;
    padding-bottom: 240px;
  }

  #main div.frame::after {
    clip-path: shape(
      from 0 30px,
      curve to 100% 30px with 30% 150px / 65% -70px,
      vline to 100%,
      hline to 0%,
      close
    );
  }

}

/** ***************************************************************************
 * ページタイトル
 * ************************************************************************* */

#page-header .title {
  max-width: none;
  margin-left: -20px;
  margin-right: -20px;
  text-align: center;
}

/** ***************************************************************************
 * 紹介文
 * ************************************************************************* */

#lead {
  line-height: 2;
  font-weight: 400;
  background: url("../_image/tanpopo/index/lead.jpg") top 400px right / 312px auto no-repeat;
}

#lead p {
  text-shadow:
     0px  1px 3px #fff,
     1px  0px 3px #fff,
     0px -1px 3px #fff,
    -1px  0px 3px #fff,
     0px  1px 3px #fff,
     1px  0px 3px #fff,
     0px -1px 3px #fff,
    -1px  0px 3px #fff;
}

/** ***************************************************************************
 * お話会について
 * ************************************************************************* */

/**
 * タイトル
 */

#about [class*="section-title"] {
  min-width: 230px;
}

/** ***************************************************************************
 * お約束
 * ************************************************************************* */

/**
 * タイトル
 */

#promise [class*="section-title"] {
  min-width: 230px;
}

/**
 * お約束
 */

#promise div.promise section.item {
  padding: 20px 20px 30px;
  border-radius: 10px;
  background-color: #fff;
}

#promise div.promise section.item ~ section.item {
  margin-top: 20px;
}

@media screen and (min-width:768px) {

  #promise div.promise section.item {
    padding: 30px 30px 40px;
  }

}

/* タイトル */

#promise div.promise section.item .title {
  margin-bottom: 0.75em;
  font-size: 1.22em;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

#promise div.promise section.item .title::before {
  content: '';
  width: 1.25em;
  height: 1em;
  margin-right: 0.125em;
  background: url("../_image/_common/icon-heart-1.png") 0 0 / 100% 100% no-repeat;
}

/* 内容 */

@media screen and (min-width:768px) {

  #promise div.promise section.item div.content {
    padding: 0 2em;
  }

}

/** ***************************************************************************
 * 参加方法
 * ************************************************************************* */

/**
 * タイトル
 */

#entry [class*="section-title"] {
  min-width: 230px;
}

/**
 * ボタン
 */

#entry div.button a {
  border-color: rgb(var(--accentcolor-3));
  border-width: 2px;
  transition:
    color 0.3s ease-in-out 0.0s,
    background-color 0.3s ease-in-out 0.0s;
  color: rgb(var(--accentcolor-3));
  background-color: #fff;
}

#entry div.button a:hover {
  color: #fff;
  background-color: rgb(var(--accentcolor-3));
}

/** ***************************************************************************
 * 開催日
 * ************************************************************************* */

#detail {
  margin-top: -40px;
  padding-top: 60px;
  padding-bottom: 100px;
  position: relative;
  z-index: 0;
}

#detail::after {
  content: '';
  width: var(--innerWidth);
  max-width: none;
  height: 100%;
  background-color: #fff;
  position: absolute;
  z-index: -1;
  top: 0;
  left: var(--innerCenter);
  clip-path: shape(
    from 0 18px,
    curve to 100% 8px with 35% 40px / 65% -17px,
    vline to 100%,
    hline to 0%,
    close
  );
}

@media screen and (min-width:768px) {

  #detail {
    margin-top: -80px;
    padding-top: 200px;
    padding-bottom: 240px;
  }

  #detail::after {
    clip-path: shape(
      from 0 30px,
      curve to 100% 30px with 30% 150px / 65% -70px,
      vline to 100%,
      hline to 0%,
      close
    );
  }

}

/**
 * タイトル
 */

#detail [class*="section-title"] {
  margin-bottom: 20px;
}

/**
 * 詳細
 */

#detail div.detail table.data th {
  background-color: rgb(var(--accentcolor-7));
}

/** ***************************************************************************
 * お骨箱
 * ************************************************************************* */

#kotubako {
  margin-top: -40px;
  padding-top: 60px;
  padding-bottom: 100px;
  position: relative;
  z-index: 0;
}

#kotubako::after {
  content: '';
  width: var(--innerWidth);
  max-width: none;
  height: 100%;
  background-color: rgb(var(--accentcolor-2));
  position: absolute;
  z-index: -1;
  top: 0;
  left: var(--innerCenter);
  clip-path: shape(
    from 0 18px,
    curve to 100% 8px with 35% 40px / 65% -17px,
    vline to 100%,
    hline to 0%,
    close
  );
}

@media screen and (min-width:768px) {

  #kotubako {
    margin-top: -80px;
    padding-top: 100px;
    padding-bottom: 150px;
  }

  #kotubako::after {
    clip-path: shape(
      from 0 30px,
      curve to 100% 30px with 30% 150px / 65% -70px,
      vline to 100%,
      hline to 0%,
      close
    );
  }

}

/**
 * ボタン
 */

#kotubako div.button a {
  min-width: 230px;
}

/** ***************************************************************************
 * Instagram
 * ************************************************************************* */

#instagram {
  margin-top: -40px;
  padding-top: 80px;
  position: relative;
  z-index: 0;
}

#instagram::after {
  content: '';
  width: var(--innerWidth);
  max-width: none;
  height: 100%;
  background-color: #fff;
  position: absolute;
  z-index: -1;
  top: 0;
  left: var(--innerCenter);
  clip-path: shape(
    from 0 18px,
    curve to 100% 8px with 35% 40px / 65% -17px,
    vline to 100%,
    hline to 0%,
    close
  );
}

@media screen and (min-width:768px) {

  #instagram {
    margin-top: -80px;
    padding-top: 200px;
  }

  #instagram::after {
    clip-path: shape(
      from 0 30px,
      curve to 100% 30px with 30% 150px / 65% -70px,
      vline to 100%,
      hline to 0%,
      close
    );
  }

}

/**
 * ID
 */

#instagram div.id {
  margin-left: 20px;
  display: inline-block;
}

/**
 * Instagram
 */

#instagram div.instagram {
}

@media screen and (min-width:768px) {
}
