#lead .lead_top { padding: 10rem 0; background: #fff url(../img/lead_bg.jpg) no-repeat center bottom/100%; }
#lead .lead_btm { padding: 6rem 0 9rem; }
#lead .lead_ttl { font-size: 4rem; font-weight: 600; text-align: center; color: #07a33e; }
#lead .lead_txt { font-size: 1.8rem; line-height: 1.8; }
#lead .lead_img { max-width: 555px; margin: 4rem auto 0; }

#tsmile { margin-bottom: 10rem; }
#tsmile .tsmile_ttl { font-size: 3rem; font-weight: 600; text-align: center; padding: 1em 0; border: 1px solid #07a33e; border-left: none; border-right: none; }
#tsmile .tsmile_ttl span { display: inline-block; position: relative; padding-left: 5rem; }
#tsmile .tsmile_ttl span::before, #tsmile .tsmile_ttl span::after { content: ''; width: 2.6rem; height: 0.8rem; position: absolute; top: calc(50% - 0.2rem); left: 0; }
#tsmile .tsmile_ttl span::before { background-color: #fb505d; transform: rotate(90deg); }
#tsmile .tsmile_ttl span::after { background-color: #07a33e; }
#tsmile .tsmile_ttl span span { padding: 0 3rem 0 0; }
#tsmile .tsmile_ttl span span::before, #tsmile .tsmile_ttl span span::after { left: auto; right: 0; }
#tsmile .tsmile_txt { margin-top: 4rem; font-size: 2rem; font-weight: 600; text-align: center; }
#tsmile .tsmile_img { max-width: 475px; margin: 3rem auto 0; }
#tsmile .tsmile_list { width: 78%; margin: 3rem auto 0; display: flex; flex-wrap: wrap; }
#tsmile .tsmile_list dt { width: 22%; font-size: 2rem; font-weight: bold; font-feature-settings: normal; padding: 0.6rem 0; }
#tsmile .tsmile_list dd { width: 78%; font-size: 1.6rem; padding: 1rem 0; }
#tsmile .tsmile_list .col_green { color: #07a33e; }
#tsmile .tsmile_list .col_yellow { color: #d4c802; }
#tsmile .tsmile_list .col_pink { color: #ec6d65; }
#tsmile .tsmile_list .col_orange { color: #f6ab00; }
#tsmile .tsmile_list .col_skyblue { color: #23b8bc; }
#tsmile .tsmile_list .col_blue { color: #118ccf; }

@media screen and (min-width: 768px) and (max-width: 1240px) { #lead .lead_ttl { font-size: 3.2vw; }
  #lead .lead_txt { font-size: 1.4vw; }
  #tsmile .tsmile_ttl { font-size: 2.4vw; }
  #tsmile .tsmile_txt { font-size: 1.6vw; }
  #tsmile .tsmile_list dt { font-size: 1.6vw; }
  #tsmile .tsmile_list dd { font-size: 1.29vw; } }
@media screen and (max-width: 767px) { #lead .lead_top { padding: 10vw 0 17vw; background-image: url(../img/lead_bg_sp.jpg); }
  #lead .lead_btm { padding: 8vw 0; }
  #lead .lead_ttl { font-size: 5.3vw; }
  #lead .lead_txt { font-size: 4vw; }
  #lead .lead_img { width: 80%; margin: 4vw auto 0; }
  #tsmile { margin-bottom: 18vw; }
  #tsmile .tsmile_ttl { font-size: 5vw; padding: 5.3vw 0; }
  #tsmile .tsmile_ttl span { padding-left: 8vw; }
  #tsmile .tsmile_ttl span::before, #tsmile .tsmile_ttl span::after { width: 4.2vw; height: 1.2vw; top: calc(50% - 0.6vw); }
  #tsmile .tsmile_ttl span span { padding: 0 5.4vw 0 0; }
  #tsmile .tsmile_txt { margin-top: 5.3vw; font-size: 4vw; }
  #tsmile .tsmile_img { width: 80%; margin: 5.3vw auto 0; }
  #tsmile .tsmile_list { width: 100%; margin: 5.3vw auto 0; display: block; }
  #tsmile .tsmile_list dt { width: 100%; font-size: 4vw; padding: 0; }
  #tsmile .tsmile_list dd { width: 100%; font-size: 3.4vw; padding: 0.6vw 0 0 5.4vw; margin-bottom: 4vw; } }

/*# sourceMappingURL=philosophy.css.map */
