@charset "UTF-8";
/* ----------------------------------------------------------------------
　テキストの中央寄席
---------------------------------------------------------------------- */
.center {
  text-align: center;
}

/* ----------------------------------------------------------------------
　段落デザイン
---------------------------------------------------------------------- */
.p {
  margin: 16px 0;
  font-size: 16px;
  line-height: 1.8em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p {
    font-size: 14px;
  }
}

.p_m {
  margin: 16px 0;
  font-size: 18px;
  line-height: 1.8em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p_m {
    font-size: 16px;
  }
}

.p_b {
  margin: 16px 0;
  font-size: 20px;
  line-height: 1.8em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p_b {
    font-size: 18px;
  }
}

.p_16 {
  margin: 16px 0;
  font-size: 24px;
  line-height: 1.6em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p_16 {
    font-size: 12px;
  }
}

.p_24 {
  margin: 16px 0;
  font-size: 24px;
  line-height: 1.6em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p_24 {
    font-size: 18px;
  }
}

.p_28 {
  margin: 16px 0;
  font-size: 28px;
  line-height: 1.6em;
  font-weight: 500;
}
@media (max-width: 600px) {
  .p_28 {
    font-size: 24px;
  }
}

.p_ptn_01 {
  margin: 30px auto;
  max-width: 980px;
  font-size: 32px;
  color: #fff;
  line-height: 2em;
  text-align: center;
}
@media (max-width: 800px) {
  .p_ptn_01 {
    font-size: 24px;
  }
}
@media (max-width: 600px) {
  .p_ptn_01 {
    font-size: 20px;
  }
}
@media (max-width: 500px) {
  .p_ptn_01 {
    font-size: 18px;
  }
}

.p_ptn_02 {
  margin: 30px auto;
  max-width: 780px;
  font-size: 24px;
  color: #fff;
  line-height: 2em;
}
@media (max-width: 800px) {
  .p_ptn_02 {
    font-size: 20px;
  }
}
@media (max-width: 600px) {
  .p_ptn_02 {
    font-size: 18px;
  }
}
@media (max-width: 500px) {
  .p_ptn_02 {
    font-size: 16px;
  }
}

.p_ptn_03 {
  margin: 30px auto;
  max-width: 780px;
  font-size: 20px;
  color: #fff;
  line-height: 2em;
}
@media (max-width: 800px) {
  .p_ptn_03 {
    font-size: 18px;
  }
}
@media (max-width: 600px) {
  .p_ptn_03 {
    font-size: 16px;
  }
}
@media (max-width: 500px) {
  .p_ptn_03 {
    font-size: 14px;
  }
}

/* ----------------------------------------------------------------------
　文字の大きさ
---------------------------------------------------------------------- */
.f_s {
  font-size: 0.8em;
}

.f_m {
  font-size: 1.2em;
}

.f_l {
  font-size: 1.5em;
}

.f_ll {
  font-size: 1.8em;
}

.f_lll {
  font-size: 2em;
}

.f_llll {
  font-size: 2.2em;
}

/* ----------------------------------------------------------------------
　文字の太さ
---------------------------------------------------------------------- */
.b_900 {
  font-weight: 900 !important;
}

.b_500 {
  font-weight: 500 !important;
}

.b_300 {
  font-weight: 300 !important;
}

/* ----------------------------------------------------------------------
　文字の色
---------------------------------------------------------------------- */
.black {
  color: #000;
}

.white {
  color: #fff;
}

.red {
  color: #f02f2f;
}

.blue {
  color: #2371ca;
}

.green {
  color: #20b393;
}

.yellow {
  color: yellow;
}

.orange {
  color: orange;
}

/* ----------------------------------------------------------------------
　背景の色
---------------------------------------------------------------------- */
.bg_red {
  background: red;
}

.bg_pink {
  background: #f06e84;
}

/* ----------------------------------------------------------------------
　外側の余白 margin
---------------------------------------------------------------------- */
.m_t_0 {
  margin-top: 0px !important;
}

.m_t_24 {
  margin-top: 24px;
}

.m_t_32 {
  margin-top: 32px;
}

.m_t_40 {
  margin-top: 40px;
}

.m_t_48 {
  margin-top: 48px;
}

.m_t_56 {
  margin-top: 56px;
}

.m_t_64 {
  margin-top: 64px;
}

.m_t_72 {
  margin-top: 72px;
}

.m_t_80 {
  margin-top: 80px;
}

.m_b_24 {
  margin-bottom: 24px;
}

.m_b_32 {
  margin-bottom: 32px;
}

.m_b_40 {
  margin-bottom: 40px;
}

.m_b_48 {
  margin-bottom: 48px;
}

.m_b_56 {
  margin-bottom: 56px;
}

.m_b_64 {
  margin-bottom: 64px;
}

.m_b_72 {
  margin-bottom: 72px;
}

.m_b_80 {
  margin-bottom: 80px;
}

/* ----------------------------------------------------------------------
　内側の余白 padding
---------------------------------------------------------------------- */
.p_t_0 {
  padding-top: 0px !important;
}

.p_t_8 {
  padding-top: 8px;
}

.p_t_16 {
  padding-top: 16px;
}

.p_t_24 {
  padding-top: 24px;
}

.p_t_32 {
  padding-top: 32px;
}

.p_t_40 {
  padding-top: 40px;
}

.p_w_16 {
  padding: 0 16px;
}

.p_w_24 {
  padding: 0 24px;
}

.p_w_32 {
  padding: 0 32px;
}

/* ----------------------------------------------------------------------
スペース
---------------------------------------------------------------------- */
.space_8,
.space_16,
.space_24,
.space_32,
.space_40,
.space_48,
.space_56,
.space_64,
.space_72,
.space_80 {
  height: 8px;
  width: 100%;
  background: #fff;
}

.space_16 {
  height: 16px;
}

.space_24 {
  height: 24px;
}

.space_32 {
  height: 32px;
}

.space_40 {
  height: 40px;
}

.space_48 {
  height: 48px;
}

.space_56 {
  height: 80px;
}

.space_64 {
  height: 80px;
}

.space_72 {
  height: 72px;
}

.space_80 {
  height: 80px;
}

/* ----------------------------------------------------------------------
横幅のmax指定
---------------------------------------------------------------------- */
.max_w_1200 {
  margin: 0 auto;
  max-width: 1200px;
}

.max_w_1100 {
  margin: 0 auto;
  max-width: 1100px;
}

.max_w_1000 {
  margin: 0 auto;
  max-width: 1000px;
}

.max_w_900 {
  margin: 0 auto;
  max-width: 900px;
}

.max_w_800 {
  margin: 0 auto;
  max-width: 800px;
}

.max_w_700 {
  margin: 0 auto;
  max-width: 700px;
}

.max_w_650 {
  margin: 0 auto;
  max-width: 650px;
}

.max_w_600 {
  margin: 0 auto;
  max-width: 600px;
}

.max_w_550 {
  margin: 0 auto;
  max-width: 550px;
}

.max_w_500 {
  margin: 0 auto;
  max-width: 500px;
}

/* ----------------------------------------------------------------------
　リスト ul
---------------------------------------------------------------------- */
@media (max-width: 600px) {
  .list_01 {
    font-size: 14px;
  }
}
.list_01 li {
  margin: 24px 0;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.8em;
}

/* ----------------------------------------------------------------------
　枠をつける
---------------------------------------------------------------------- */
.waku_01 {
  padding: 24px 32px;
  border: 1px solid #000;
}
@media (max-width: 600px) {
  .waku_01 {
    padding: 24px;
  }
}

.waku_02 {
  padding: 16px 24px;
  background: #c5e3f8;
}

/* ----------------------------------------------------------------------
フレックス指定
---------------------------------------------------------------------- */
.fl {
  display: flex !important;
  flex-wrap: wrap;
}

.fl_tc {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
}

.fl_wc {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
}

.fl_wc {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  align-content: center;
}

/* ----------------------------------------------------------------------
タイトルの横幅を文字の量にフィットさせる
---------------------------------------------------------------------- */
.ttl_waku_fit {
  margin: 24px auto;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.ttl_waku_fit [class*=ttl_ptn_] {
  width: auto;
}

.ttl_waku_fit + .video_ptn_01 {
  margin-top: -16px;
}

/* ----------------------------------------------------------------------
画像レイアウト
---------------------------------------------------------------------- */
.img_cl_1 {
  position: relative;
  margin: 24px auto;
  max-width: 700px;
  width: 100%;
  height: auto;
  background: #b9b8b8;
}
@media (max-width: 500px) {
  .img_cl_1 {
    margin: 16px auto;
  }
}
.img_cl_1::after {
  padding-top: 63%;
  content: "";
  display: block;
}
.img_cl_1 img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.img_contein img {
  width: 100%;
  height: auto;
}

/* ----------------------------------------------------------------------
ユーチューブの比率を合わせるとき
video_ptn_01 > iframe
---------------------------------------------------------------------- */
.video_ptn_01 {
  position: relative;
  width: 100%;
  height: auto;
}
.video_ptn_01::before {
  padding-top: 55%;
  content: "";
  display: block;
}
.video_ptn_01 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ----------------------------------------------------------------------
  レスポンシブで無効にする
---------------------------------------------------------------------- */
@media (max-width: 950px) {
  .none_950 {
    display: none !important;
  }
}

@media (max-width: 900px) {
  .none_900 {
    display: none !important;
  }
}

@media (max-width: 850px) {
  .none_850 {
    display: none !important;
  }
}

@media (max-width: 800px) {
  .none_800 {
    display: none !important;
  }
}

@media (max-width: 750px) {
  .none_750 {
    display: none !important;
  }
}

@media (max-width: 700px) {
  .none_700 {
    display: none !important;
  }
}

@media (max-width: 650px) {
  .none_650 {
    display: none !important;
  }
}

@media (max-width: 600px) {
  .none_600 {
    display: none !important;
  }
}

@media (max-width: 550px) {
  .none_550 {
    display: none !important;
  }
}

@media (max-width: 500px) {
  .none_500 {
    display: none !important;
  }
}

@media (max-width: 450px) {
  .none_450 {
    display: none !important;
  }
}

@media (max-width: 400px) {
  .none_400 {
    display: none !important;
  }
}

@media (max-width: 350px) {
  .none_350 {
    display: none !important;
  }
}

/* ----------------------------------------------------------------------
  レスポンシブでONにする
  ---------------------------------------------------------------------- */
.on_950 {
  display: none;
}
@media (max-width: 950px) {
  .on_950 {
    display: block !important;
  }
}

.on_900 {
  display: none;
}
@media (max-width: 900px) {
  .on_900 {
    display: block !important;
  }
}

.on_850 {
  display: none;
}
@media (max-width: 850px) {
  .on_850 {
    display: block !important;
  }
}

.on_800 {
  display: none;
}
@media (max-width: 800px) {
  .on_800 {
    display: block !important;
  }
}

.on_750 {
  display: none;
}
@media (max-width: 750px) {
  .on_750 {
    display: block !important;
  }
}

.on_700 {
  display: none;
}
@media (max-width: 700px) {
  .on_700 {
    display: block !important;
  }
}

.on_650 {
  display: none;
}
@media (max-width: 650px) {
  .on_650 {
    display: block !important;
  }
}

.on_600 {
  display: none !important;
}
@media (max-width: 600px) {
  .on_600 {
    display: block !important;
  }
}

.on_550 {
  display: none;
}
@media (max-width: 550px) {
  .on_550 {
    display: block !important;
  }
}

.on_500 {
  display: none;
}
@media (max-width: 500px) {
  .on_500 {
    display: block !important;
  }
}

.on_450 {
  display: none;
}
@media (max-width: 450px) {
  .on_450 {
    display: block !important;
  }
}

.on_400 {
  display: none;
}
@media (max-width: 400px) {
  .on_400 {
    display: block !important;
  }
}

.on_370 {
  display: none;
}
@media (max-width: 370px) {
  .on_370 {
    display: block !important;
  }
}

.on_350 {
  display: none;
}
@media (max-width: 350px) {
  .on_350 {
    display: block !important;
  }
}/*# sourceMappingURL=common.css.map */