@charset "UTF-8";
@import url("variables.css");
/****************************************
1.HOME

*****************************************/
@media screen and (max-width: 912px) {
  /****************************************
  1.HOME
  *****************************************/
  main#home {
    /*section.heading-wrap*/
  }
  main#home section.hero-image {
    height: 510px;
    margin-top: 45px;
    overflow: hidden;
  }
  main#home div.korokara-pj {
    width: 92%;
    margin: -100px auto 0 auto;
    border-bottom: 1px solid #989898;
    padding: 16px 0 16px 0;
  }
  main#home section.heading-wrap {
    background: url(../img/home/bg-green.png) repeat-x center top #a7dad4;
  }
  main#home section.heading-wrap div.heading-01 {
    width: 100%;
    margin: 0 auto 0 auto;
    display: grid;
    grid-template-columns: 53% 47%;
    padding: 24px 0 24px 0;
    /*
    grid-template-columns: repeat(2, 1fr);
    grid-template-columns: 420px 1fr;
    */
  }
  main#home section.heading-wrap div.heading-01 div.h1-img {
    width: 100%;
    max-width: 180px;
    margin: 0 auto;
  }
  main#home section.heading-wrap div.heading-01 div.h1-caption {
    margin-top: 48px;
  }
  main#home section.heading-wrap div.heading-01 div.h1-caption h1 {
    font-size: clamp(36px, 7vw, 48px);
    line-height: 1.25;
    font-weight: 300;
  }
  main#home section.heading-wrap div.heading-01 div.h1-caption p {
    font-size: 16px;
    margin: 32px 0 32px 0;
    max-width: 480px;
  }
  main#home section.heading-wrap div.h1-caption-sp {
    width: var(--width-common-sp);
    max-width: 520px;
    margin: 0 auto 0 auto;
    border-bottom: 1px solid #989898;
  }
  main#home section.heading-wrap div.h1-caption-sp .center-flex-sp {
    margin-top: 24px;
  }
  main#home section.heading-wrap div.h1-caption-sp img {
    width: 90%;
    margin: 0 auto;
    max-width: 320px;
  }
  main#home section.heading-wrap div.heading-02-wrap {
    position: relative;
    overflow: hidden;
    background-image: none, none, none, none;
    /**/
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-02 {
    width: var(--width-common-sp);
    max-width: 520px;
    margin: 0 auto;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-02 h2 {
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5;
    margin-top: 32px;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-02 p {
    width: 100%;
    font-size: 1.6rem;
    margin: 24 px 0 32px 0;
    line-height: 1.8;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-02 div {
    display: flex;
    justify-content: center;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 {
    width: 100%;
    height: auto;
    margin: 24px auto 0 auto;
    padding-bottom: 160px;
    background: url(../img/home/ils02.webp) no-repeat 2% 51.5%/clamp(88px, 24%, 120px) auto, url(../img/home/ils01.webp) no-repeat right 24px bottom 24px/130px auto, url(../img/home/tree.webp) no-repeat left 8px bottom 8px/130px auto, url(../img/home/awa-sp.webp) no-repeat center top 80px/max(610px, 90%), url(../img/home/window-sp.webp) no-repeat right 8px top 0/188px auto;
    /*  
      @media (max-width: 725px) {
        .your-element {
          background-size: 580px auto;
        }
      }
    */
  }
  /*main#home*/
  /****************************************
  2.school-sex-education
  *****************************************/
  /****************************************
  3.book
  *****************************************/
  /****************************************
  4.REPORT
  *****************************************/
  /****************************************
  5.REPORT-BODY
  *****************************************/
  /*NEWS*/
  /****************************************
  5.CONTACT
  *****************************************/
  /****************************************
  5.購入案内
  *****************************************/
  /****************************************
  6.ABOUT
  *****************************************/
  /****************************************
  CLOSE Smart phone
  *****************************************/
}
@media screen and (max-width: 912px) and (min-width: 550px) and (max-width: 912px) {
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 {
    background: url(../img/home/ils02.webp) no-repeat 17% 51.5%/clamp(88px, 24%, 120px) auto, url(../img/home/ils01.webp) no-repeat right 24px bottom 24px/130px auto, url(../img/home/tree.webp) no-repeat left 8px bottom 8px/130px auto, url(../img/home/awa-sp.webp) no-repeat center top 80px/max(610px, 90%), url(../img/home/window-sp.webp) no-repeat right 8px top 0/188px auto;
  }
}
@media screen and (max-width: 912px) {
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 p.sp-txt {
    font-size: 14px;
    margin-top: -8px;
    margin-bottom: 20px;
    line-height: 1.6;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 {
    width: var(--width-common-sp);
    padding-top: 64px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 0;
    /*left*/
    /*center*/
    /*right*/
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(1) {
    margin-top: 52px;
    margin-bottom: 24px;
    grid-column: 1/-1;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(1) img {
    width: 70%;
    max-width: 300px;
    margin: 0 auto;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(2) {
    text-align: center;
    margin: -16px auto 0 auto;
    max-width: 480px;
    grid-column: 1/-1;
    /* 1列目から最終列まで跨ぐ */
    justify-self: center;
    background: url(../img/home/text-book.webp) no-repeat right 0 top/33% auto;
    /* 横方向中央寄せ 

    */
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(2) img {
    width: 50%;
    max-width: 380px;
    margin: 0 auto 0 auto;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(2) p {
    text-align: center;
    margin: -16px 0 16px 0;
    font-size: 14px;
    white-space: nowrap;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(2) a {
    margin-left: 0;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-01 div:nth-of-type(3) {
    display: none;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 {
    width: 100%;
    display: flex;
    flex-direction: column;
    grid-auto-rows: auto;
    gap: 0;
    margin: -80px 0 0 0;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 div:nth-of-type(1) {
    z-index: 10;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 div:nth-of-type(1) img {
    width: 112px;
    margin-left: 24px;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 div:nth-of-type(2) {
    text-align: center;
    margin-top: -16px;
    padding-top: 64px;
    padding-bottom: 0;
    background: url(../img/home/movie.webp) no-repeat calc(50% - 120px) top/106px auto;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 div:nth-of-type(2) img {
    width: 248px;
    margin: 12px auto 0 auto;
    display: block;
  }
  main#home section.heading-wrap div.heading-02-wrap div.heading-03 div.heading-03-02 div:nth-of-type(2) p {
    text-align: center;
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.6;
  }
  main#home section.new-wrap {
    background-color: #e6f5f3;
  }
  main#home section.new-wrap div.news {
    width: var(--width-common-sp);
    margin: 0 auto;
    padding: 32px 0 60px 0;
    display: grid;
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    gap: 32px;
  }
  main#home section.new-wrap div.news div.news-icon {
    width: 42%;
    margin: 0 auto;
    max-width: 180px;
  }
  main#home section.new-wrap div.news div.news-box ul {
    margin-bottom: 32px;
  }
  main#home section.new-wrap div.news div.news-box ul li {
    margin-bottom: 16px;
  }
  main#home section.new-wrap div.news div.news-box ul li a.list-link {
    display: block;
    padding: 18px 18px 18px 18px;
    text-decoration: none;
    color: inherit;
    border: 1px solid var(--cls-green);
    border-radius: 16px;
    background-color: #fff;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  main#home section.new-wrap div.news div.news-box ul li a.list-link p:nth-of-type(1) {
    font-size: 12px;
  }
  main#home section.new-wrap div.news div.news-box ul li a.list-link p:nth-of-type(2) {
    font-size: 14px;
    line-height: 1.5;
    font-weight: 700;
    margin-top: 6px;
  }
  main#home section.new-wrap div.news div.news-box ul li a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  main#home section.new-wrap div.news div.news-box div.center-sp {
    display: flex;
    justify-content: center;
  }
  main#home section.new-wrap div.news div.news-box div.center-sp a.button-common {
    display: flex;
    clear: both;
  }
  main#home section.footer-nav-wrap {
    background-color: #a7dad4;
  }
  main#home section.footer-nav-wrap ul {
    padding: 80px 0 120px 0;
    width: var(--width-common-sp);
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, auto);
    gap: 8px;
  }
  main#home section.footer-nav-wrap ul li a.list-link {
    display: block;
    text-decoration: none;
    color: inherit;
    border: 1px solid #81cbc2;
    border-radius: 12px;
    background-color: #fff;
    padding: 16px 8px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  main#home section.footer-nav-wrap ul li a.list-link p {
    font-size: 12px;
  }
  main#home section.footer-nav-wrap ul li a.list-link p:nth-of-type(1) {
    font-size: 12px;
    line-height: 1.5;
    font-weight: 700;
    text-align: center;
  }
  main#home section.footer-nav-wrap ul li a.list-link img {
    margin: 16px auto;
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico01 {
    height: 80px;
    width: auto;
    /*
    width: 80%;
    max-width: 160px;
    padding-top: 0;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico02 {
    /*
    width: 200px;
    */
    height: 80px;
    width: auto;
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico03 {
    height: 80px;
    width: auto;
    margin-top: 16px;
    /*
     width: 120px;
    margin-top: 32px;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico04 {
    height: 80px;
    width: auto;
    /*
    width: 140px;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico05 {
    height: 80px;
    width: auto;
    margin-top: 16px;
    /*
    width: 164px;
    margin-top: 0;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link .ico06 {
    height: 80px;
    width: auto;
    /*
    width: 120px;
    margin-top: 24px;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link p:nth-of-type(2) {
    font-size: clamp(11px, 1.2vw, 14px);
    text-align: center;
    line-height: 1.6;
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt01 {
    margin-top: 12px;
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt02 {
    margin-top: -10px;
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt03 {
    margin-top: 12px;
    /*
    margin-top: 24px;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt04 {
    margin-top: -10px;
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt05 {
    margin-top: 12px;
    /*
    margin-top: 0;
    */
  }
  main#home section.footer-nav-wrap ul li a.list-link p.txt06 {
    margin-top: 0;
  }
  main#home section.footer-nav-wrap ul li a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  main#sse {
    background: url(../img/sse/bg.svg) center top;
    padding: 0 0 80px 0;
    padding-top: 64px;
  }
  main#sse p {
    font-size: 1.6rem;
    line-height: 27px;
    margin-top: 32px;
  }
  main#sse .title {
    font-size: 18px;
    font-weight: 700;
    border-radius: 32px;
    padding: 16px 0;
    text-align: center;
    background: linear-gradient(to top, #b8e0f4 0%, #d8edf9 100%);
    margin-top: 48px;
  }
  main#sse section.edu-01 {
    width: var(--width-common-sp);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    /* 1 列 */
    grid-template-rows: auto auto;
    /* 2 行 */
    gap: 0;
  }
  main#sse section.edu-01 div h1 {
    font-size: 62px;
    font-weight: 300;
    line-height: 82px;
    text-align: center;
    margin-top: 32px;
  }
  main#sse section.edu-01 div img {
    width: 100%;
    margin-top: 0;
    margin-left: 0;
  }
  main#sse section.edu-01 div p:nth-of-type(1) {
    margin-top: 42px;
  }
  main#sse section.edu-02 {
    width: var(--width-common-sp);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    /* 1 列 */
    grid-template-rows: auto auto;
    /* 2 行 */
    gap: 0;
  }
  main#sse section.edu-02 p:nth-of-type(1) {
    margin: 20px 0 40px 0;
  }
  main#sse section.edu-02 img {
    display: none;
  }
  main#sse section.edu-03 {
    width: var(--width-common-sp);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    /* 1 列 */
    grid-template-rows: auto auto;
    /* 2 行 */
    gap: 0;
  }
  main#sse section.edu-03 p:nth-of-type(1) {
    margin: 20px 0 40px 0;
  }
  main#sse section.edu-03 img {
    display: none;
  }
  main#sse section.edu-03 div:nth-of-type(1) {
    margin: auto;
  }
  main#sse section.edu-03 h3 {
    margin-top: 0;
  }
  main#sse section.about-edu {
    width: var(--width-common-sp);
    margin: 40px auto 0 auto;
    border: 1px solid #80c8ef;
    border-radius: 8px;
    padding: 36px 40px;
    background-color: #fff;
  }
  main#sse section.about-edu h4 {
    font-size: 32px;
    color: #83c6ec;
    font-weight: 300;
    text-align: center;
  }
  main#sse section.about-edu h4 span {
    font-size: 26px;
  }
  main#sse section.about-edu p {
    font-size: 1.6rem;
    line-height: 27px;
    margin-top: 16px;
  }
  main#sse section.about-edu img {
    margin: 24px 0 32px 0;
  }
  main#book {
    margin-top: 46px;
    /*前半*/
    /*後半*/
  }
  main#book p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  main#book section.book-h1 {
    width: var(--width-wrap-sp);
    margin: 0 auto;
  }
  main#book section.book-h1 h1 {
    font-size: 18px;
    margin-top: 32px;
    font-weight: 700;
    line-height: 30px;
  }
  main#book section.book-h1 p {
    padding-top: 16px;
    padding-bottom: 40px;
    font-size: 1.6rem;
  }
  main#book .q-ttl {
    font-size: 16px;
    font-weight: 700;
    font-weight: 700;
    border-radius: 0;
    height: auto;
    line-height: 26px;
    padding: 24px 0 24px 76px;
    background: url(../img/book/icon-q.webp) no-repeat left 3% center #ecf7f6;
    background-size: 48px;
    margin-bottom: 32px;
  }
  main#book .margin-ctl {
    margin-left: 3%;
    margin-right: 3%;
  }
  main#book section.q1 {
    width: var(--width-wrap-max);
    margin: 0 auto;
  }
  main#book section.q1 div.frame {
    border: none;
    border-radius: 0;
    margin: 24px 0 72px 0;
  }
  main#book section.q1 div.frame p.frame-ttl {
    font-size: 18px;
    font-weight: 700;
    background-color: #f5f5f5;
    border-radius: 8px 8px 0 0;
    padding: 12px 12px;
    width: 88%;
    margin: 24px auto 0 auto;
    border-top: 1px solid #c1c1c1;
    border-right: 1px solid #c1c1c1;
    border-left: 1px solid #c1c1c1;
    border-bottom: none;
  }
  main#book section.q1 div.frame ul {
    display: grid;
    grid-template-columns: 52px 34px 1fr;
    gap: 0;
    margin: 0;
    padding: 0 3% 24px 3%;
    border-top: 1px solid #ccc;
    border-bottom: none;
  }
  main#book section.q1 div.frame ul li {
    padding: 24px 0 0 0;
  }
  main#book section.q1 div.frame ul li:nth-of-type(1) img {
    width: 52px;
    margin: 0 0 0 0;
  }
  main#book section.q1 div.frame ul li:nth-of-type(2) img {
    width: 30px;
    margin: 0 0 0 8px;
  }
  main#book section.q1 div.frame ul li:nth-of-type(3) p {
    font-size: 1.6rem;
    font-weight: 700;
    margin: 14px 0 0 16px;
  }
  main#book section.q1 div.frame ul li:nth-of-type(3) p.line-02 {
    margin-top: 0;
    line-height: 24px;
  }
  main#book section.q1 div.frame ul li:nth-of-type(4) {
    grid-column: 1/-1;
    grid-row: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-content: flex-start;
  }
  main#book section.q1 div.frame ul li:nth-of-type(4) p {
    font-weight: 700;
    background-color: #f5f5f5;
    font-size: 12px;
    padding: 2px 16px 4px 16px;
    border-radius: 16px;
    display: inline-block;
    font-weight: 500;
  }
  main#book section.q1 div.frame ul li.line-01 {
    padding-top: 42px;
  }
  main#book section.q1 div.frame ul.border-none {
    border-bottom: 1px solid #ccc;
  }
  main#book section.q02 div.frame-q02 {
    width: var(--width-wrap-max);
    margin: 0 auto;
  }
  main#book section.q02 div.frame-q02 div.index {
    display: flex;
    flex-direction: column;
    margin: 40px 0 8px 0;
    padding-left: 3%;
    padding-right: 3%;
  }
  main#book section.q02 div.frame-q02 div.index a.list-link {
    display: block;
    text-decoration: none;
    color: inherit;
    border-radius: 16px;
    margin-bottom: 24px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  main#book section.q02 div.frame-q02 div.index a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  main#book section.q02 div.frame-q02 div.index div.box {
    width: 100%;
    max-width: 420px;
    border: 2px solid #7eccc2;
    border-radius: 16px;
    margin: 0 auto;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(1) {
    display: grid;
    grid-template-columns: 64px 1fr;
    padding: 16px 0;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(1) p:nth-of-type(1) {
    margin-left: 0;
    font-size: 20px;
    text-align: left;
    color: var(--cls-green);
    font-weight: 700;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(1) p:nth-of-type(2) {
    font-size: 20px;
    font-weight: bold;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(1) p.second {
    color: #ffb27d;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(2) {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    background-color: #ecf7f6;
    padding: 0 0;
    border-radius: 0 0 16px 16px;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(2) p {
    font-weight: 700;
    font-size: 12px;
    text-align: center;
    padding: 16px 0;
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(2) p:nth-of-type(1) {
    border-right: 1px solid var(--cls-green);
  }
  main#book section.q02 div.frame-q02 div.index div.box div:nth-of-type(2) p.second {
    border-right: 1px solid #ffb27d;
  }
  main#book section.q02 div.frame-q02 div.index div.box div.second {
    background-color: #fff4ed;
  }
  main#book section.q02 div.frame-q02 div.index div.box-ctr {
    width: 68%;
    min-width: 216px;
    margin: 0 auto;
  }
  main#book section.q02 div.frame-q02 div.index div.box-sesond {
    border: 2px solid #ffb27d;
  }
  main#book #first {
    scroll-margin-top: 32px;
  }
  main#book #second {
    scroll-margin-top: 124px;
  }
  main#book div.frame-wide {
    width: var(--width-wrap-sp);
    margin: 48px auto 0 auto;
    background: none, url(../img/book/first-sp.webp) no-repeat left 0 top 10px/70px auto;
  }
  main#book div.frame-wide div.frame-classroom {
    width: 100%;
    margin: 0 auto;
  }
  main#book div.frame-wide div.frame-classroom div.title {
    display: grid;
    grid-template-columns: 1fr;
    padding-bottom: 40px;
  }
  main#book div.frame-wide div.frame-classroom div.title h2 {
    font-size: 43px;
    line-height: 58px;
    font-weight: 300;
    margin-top: 0;
    text-align: right;
  }
  main#book div.frame-wide div.frame-classroom div.title h2 span {
    color: var(--cls-green);
  }
  main#book div.frame-wide div.frame-classroom div.title h2 span.second {
    color: #fdb383;
  }
  main#book div.frame-wide div.frame-classroom div.title p {
    line-height: 27px;
    margin-top: 24px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box {
    height: 158px;
    max-width: 640px;
    margin: 0 auto;
    padding: 20px 0 0 16px;
    border-radius: 16px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box img {
    width: 118px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p:nth-of-type(1) {
    font-size: 16px;
    font-weight: 700;
    margin: 8px 0 8px 0;
    line-height: 27px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p.line-02 {
    margin-top: 0;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p:nth-of-type(2) {
    font-style: 14px;
    line-height: 26px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p.line-03 {
    margin-top: -2px;
    line-height: 22px;
    font-size: 14px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p.second {
    margin-top: 24px;
  }
  main#book div.frame-wide div.frame-classroom div.contents-box p.sml {
    font-size: 14px;
    line-height: 22px;
  }
  main#book div.frame-wide div.frame-classroom div.arrow {
    text-align: center;
    padding: 8px 0;
  }
  main#book div.frame-wide div.frame-classroom div.arrow img {
    display: none;
  }
  main#book div.frame-wide div.frame-classroom div.bg01 {
    background: url(../img/book/step01-sp.webp) no-repeat right bottom/320px auto, url(../img/book/gra-bg-sp.webp) repeat left top/100% auto;
  }
  main#book div.frame-wide div.frame-classroom div.bg-02-wrap {
    background-color: #f5f5f5;
    max-width: 640px;
    margin: 0 auto;
  }
  main#book div.frame-wide div.frame-classroom div.bg-02-wrap img.youtube-banner {
    width: 88%;
    margin: 0 auto;
    padding: 24px 0;
  }
  main#book div.frame-wide div.frame-classroom div.bg02 {
    background: url(../img/book/step02-sp.webp) no-repeat right bottom/324px auto, url(../img/book/gra-bg-sp.webp) repeat left top/100% auto;
    box-shadow: 4px 4px 8px rgba(0, 0, 0, 0);
    border-radius: 16px 16px 0 0;
  }
  main#book div.frame-wide div.frame-classroom div.bg03 {
    background: url(../img/book/step03-sp.webp) no-repeat right bottom/320px auto, url(../img/book/gra-bg-sp.webp) repeat left top/100% auto;
  }
  main#book div.frame-wide div.frame-classroom div.proceed {
    background-color: #f5f5f5;
    max-width: 640px;
    border-radius: 16px;
    margin: 40px auto 80px auto;
    padding: 24px 0;
  }
  main#book div.frame-wide div.frame-classroom div.proceed img {
    width: 88%;
    margin: 0 auto;
  }
  main#book div.frame-wide div.frame-classroom div.bg-second-01 {
    background: url(../img/book/sec-04-sp.webp) no-repeat right bottom/160px auto, url(../img/book/gra-bg-org-sp.webp) repeat left top/100% auto;
    margin-bottom: 48px;
  }
  main#book div.frame-wide div.frame-classroom div.bg-second-02 {
    background: url(../img/book/sec-05-sp.webp) no-repeat right bottom/160px auto, url(../img/book/gra-bg-org-sp.webp) repeat left top/100% auto;
    margin-bottom: 48px;
  }
  main#book div.frame-wide div.frame-classroom div.bg-second-03 {
    background: url(../img/book/sec-06-sp.webp) no-repeat right bottom/160px auto, url(../img/book/gra-bg-org-sp.webp) repeat left top/100% auto;
    margin-bottom: 48px;
  }
  main#book div.frame-wide div.frame-classroom div.bg-second-04 {
    background: url(../img/book/sec-07-sp.webp) no-repeat right bottom/160px auto, url(../img/book/gra-bg-org-sp.webp) repeat left top/100% auto;
    margin-bottom: 48px;
  }
  main#book div.frame-second {
    background: none, url(../img/book/second-sp.webp) no-repeat left 0 top 8px/70px auto;
  }
  main#book div.meclip {
    width: 74%;
    margin: 120px auto 60px auto;
  }
  main#book div.meclip img {
    width: 48%;
    margin: 0 auto;
    max-width: 200px;
  }
  main#book ul.supervision {
    width: var(--width-wrap-sp);
    margin: -32px auto 32px auto;
  }
  main#book ul.supervision li {
    border-bottom: none;
    padding: 4px 0;
    font-size: 12px;
  }
  main#book ul.supervision li span {
    font-size: 10px;
  }
  main#book ul.supervision li span.bold {
    font-size: 12px;
    font-weight: 700;
  }
  main#book ul.supervision li.font-l {
    font-size: 16px;
    font-weight: 700;
  }
  main#book ul.supervision li.font-l span {
    font-size: 12px;
    font-weight: 400;
  }
  main#book ul.supervision li.flex {
    margin-top: -12px;
    display: flex;
    flex-direction: column;
  }
  main#book ul.supervision li.flex p:nth-of-type(1) {
    margin-top: 12px;
  }
  main#book ul.supervision li.flex p {
    font-size: 12px;
    line-height: 20px;
  }
  main#book ul.supervision li.flex p span {
    font-size: 10px;
  }
  main#book ul.supervision li.flex p span.font-12 {
    font-size: 12px;
  }
  main#book section.q03 {
    width: var(--width-wrap-max);
    margin: 0 auto;
  }
  main#book section.q03 p {
    font-size: 1.6rem;
    margin-bottom: 34px;
    margin-left: 3%;
    margin-right: 3%;
  }
  main#book section.q03-b {
    width: var(--width-wrap-sp);
    margin: 0 auto;
    padding-top: 24px;
    padding-bottom: 40px;
  }
  main#book section.q03-b ul {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  main#book section.q03-b ul li {
    border-radius: 16px;
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    /* 3 列を均等幅で */
    grid-template-rows: auto auto;
    gap: 0;
  }
  main#book section.q03-b ul li a.list-link {
    border: 1px solid var(--cls-green);
    display: block;
    text-decoration: none;
    color: inherit;
    border-radius: 16px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  main#book section.q03-b ul li a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  main#book section.q03-b ul li a.list-link div.flex {
    display: flex;
    height: 160px;
  }
  main#book section.q03-b ul li a.list-link div.flex div {
    width: 50%;
    text-align: center;
    border-radius: 16px 0 0 16px;
  }
  main#book section.q03-b ul li a.list-link div.flex div p {
    font-size: 14px;
  }
  main#book section.q03-b ul li a.list-link div.flex div p:nth-of-type(1) {
    margin-top: 40px;
  }
  main#book section.q03-b ul li a.list-link div.flex div p:nth-of-type(2) {
    margin-top: 16px;
    background-color: #66bbae;
    border-radius: 32px;
    padding: 6px 16px;
    color: #fff;
    font-weight: 700;
    display: inline-block;
  }
  main#book section.q03-b ul li a.list-link div.flex div p.line-02 {
    margin-top: 32px;
  }
  main#book section.q03-b ul li a.list-link div.flex div:nth-of-type(1) {
    background-color: #ecf7f6;
  }
  main#book section.q03-b ul li a.list-link div.flex div:nth-of-type(2) {
    padding: 0 16px;
    display: flex;
    align-items: center;
    height: 160px;
  }
  main#book section.q03-b ul li a.list-link div.flex div.img01 img {
    max-width: 160px;
    margin: 0 auto;
  }
  main#book section.q03-b ul li a.list-link div.flex div.img02 img {
    width: 88px;
    margin: 0 auto;
  }
  main#book section.q04 {
    width: var(--width-wrap-max);
    margin: 0 auto;
  }
  main#book section.q04 p,
  main#book section.q04 div,
  main#book section.q04 img {
    margin-top: 24px;
    margin-left: 3%;
    margin-right: 3%;
  }
  main#book section.q04 div.q-ttl {
    width: 100%;
    margin: 0;
  }
  main#book section.q04 a.button-common {
    margin: 64px 0 24px 0;
    display: inline-block;
    padding: 6px 24px 8px 24px;
    font-weight: 700;
  }
  main#book section.q04 img.attention02 {
    text-align: center;
    width: 92%;
    margin: 48px auto 0 auto;
    max-width: 360px;
  }
  main#book section.q04 a.to-contact {
    display: inline-block;
    background-color: #fdb383;
    padding: 16px 0;
    font-size: 20px;
    font-weight: 700;
    border-radius: 12px;
    display: block;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    color: #fff;
    margin: -16px auto 120px auto;
    width: 100%;
    max-width: 360px;
  }
  main#book section.q04 a.to-contact:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  #report p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  #report section.report-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    padding: 32px 0 48px 0;
  }
  #report section.report-h1 div:nth-of-type(1) img {
    min-width: 180px;
    width: 60%;
    max-width: 360px;
    margin: 48px auto 0 auto;
  }
  #report section.report-h1 div:nth-of-type(2) h1 {
    font-size: 18px;
    font-weight: 700;
    margin: 32px 0 24px 0;
  }
  #report div.interview-title {
    margin-top: 40px;
    padding: 40px 0 16px 0;
  }
  #report div.interview-title p {
    width: var(--width-common-sp);
    margin: 0 auto 24px auto;
    font-size: 18px;
    font-weight: 700;
  }
  #report ul.interview-box {
    width: var(--width-common-sp);
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  #report ul.interview-box li {
    display: block;
  }
  #report ul.interview-box li a.list-link {
    height: auto;
    border-radius: 16px;
    border: 1px solid var(--cls-green);
    display: block;
    text-decoration: none;
    color: inherit;
    border-radius: 16px;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  #report ul.interview-box li a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  #report ul.interview-box li a.list-link div.box {
    display: grid;
    grid-template-columns: 120px 1fr;
    background: linear-gradient(#f2faf9, #ccebe7);
    border-radius: 16px 16px 0 0;
    padding: 16px 16px;
  }
  #report ul.interview-box li a.list-link div.box .img {
    width: 105px;
  }
  #report ul.interview-box li a.list-link div.box .name {
    padding-top: 32px;
  }
  #report ul.interview-box li a.list-link div.box .name p {
    font-size: 20px;
    font-weight: 700;
  }
  #report ul.interview-box li a.list-link div.box .name p span {
    font-size: 14px;
  }
  #report ul.interview-box li a.list-link div.box .name p:nth-of-type(2) {
    font-size: 12px;
    font-weight: 400;
    margin-top: -4px;
  }
  #report ul.interview-box li a.list-link p.local {
    font-size: 12px;
    margin: 8px 16px 0 16px;
  }
  #report ul.interview-box li a.list-link p.report-caption {
    font-size: 20px;
    font-weight: 700;
    margin: 0 16px;
    line-height: 34px;
  }
  #report ul.interview-box li a.list-link div.tag {
    display: flex;
    flex-wrap: wrap;
    margin: 16px 16px;
    gap: 8px;
  }
  #report ul.interview-box li a.list-link div.tag p {
    font-size: 12px;
    padding: 2px 6px;
    border-radius: 16px;
    background: #f5f5f5;
  }
  #report div.interview-more {
    width: var(--width-common-sp);
    display: flex;
    justify-content: center;
  }
  #report section.report-h2-wrap {
    padding-top: 48px;
    border-top: 1px solid #c1c1c1;
    background: url(../img/report/grid.webp) center top;
    /*tab*/
  }
  #report section.report-h2-wrap div.report-h2 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    padding: 32px 0 0 0;
  }
  #report section.report-h2-wrap div.report-h2 div:nth-of-type(1) img {
    width: 258px;
    margin: 48px 0 0 0;
  }
  #report section.report-h2-wrap div.report-h2 div:nth-of-type(2) h1 {
    font-size: 18px;
    font-weight: 700;
    margin: 32px 0 24px 0;
  }
  #report section.report-h2-wrap div.report-h2 div:nth-of-type(2) p.small {
    font-size: 12px;
    margin-top: 32px;
    line-height: 20px;
  }
  #report section.report-h2-wrap div.report-h2 div:nth-of-type(2) p.small a {
    color: #f46610;
  }
  #report section.report-h2-wrap div.report-h2 div:nth-of-type(2) p.small a:hover {
    text-decoration: underline;
  }
  #report section.report-h2-wrap div.report-h2 div.illust {
    margin: 40px 0 0 0;
  }
  #report section.report-h2-wrap div.report-h2 div.illust img {
    width: 170px;
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.tab-wrap {
    width: var(--width-common-max);
    margin: 0 auto;
    padding-top: 48px;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab {
    width: var(--width-common-sp);
    max-width: 480px;
    display: grid;
    grid-template-columns: repeat(4, auto);
    padding-left: 4%;
    gap: 0;
    margin-top: 8px;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li {
    position: relative;
    margin-left: -18px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: box-shadow 0.2s;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:hover {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.95);
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:not(:first-child) {
    margin-left: -6px;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li .tab-img {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li .active-img {
    display: none;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li .inactive-img {
    display: block;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li.active {
    z-index: 10 !important;
    margin-left: -18px;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li.active .tab-img {
    z-index: 11 !important;
    border-radius: 8px 8px 0 0;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li.active .active-img {
    display: block;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li.active .inactive-img {
    display: none;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li.pc {
    display: none;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:nth-child(5) {
    z-index: 4;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:nth-child(6) {
    z-index: 3;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:nth-child(7) {
    z-index: 2;
  }
  #report section.report-h2-wrap div.tab-wrap ul.tab li:nth-child(8) {
    z-index: 1;
  }
  #report section.report-h2-wrap div.tab-wrap div.pdf {
    float: right;
    margin: -56px 88px 0 0;
  }
  #report section.report-h2-wrap div.tab-wrap div.pdf img {
    width: 162px;
  }
  #report section.report-h2-wrap div.tab-wrap div.pdf {
    float: right;
    margin: -56px 88px 0 0;
  }
  #report section.report-h2-wrap div.tab-wrap div.pdf img {
    width: 162px;
  }
  #report section.report-h2-wrap div.line-std {
    height: 14px;
    background: url(../img/report/line-std.png) repeat-x;
  }
  #report section.report-h2-wrap div.line-tea {
    height: 14px;
    background: url(../img/report/line-tea.png) repeat-x;
  }
  #report section.report-h2-wrap div.line-par {
    height: 14px;
    background: url(../img/report/line-par.png) repeat-x;
  }
  #report section.report-h2-wrap div.line-all {
    height: 14px;
    background: url(../img/report/line-all.png) repeat-x;
  }
  #report section.report-h2-wrap div.anq-wrap {
    padding: 80px 0 0 0;
    width: var(--width-common-max);
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.title {
    font-size: 16px;
    font-weight: 700;
    line-height: 27px;
    padding: 16px 16px 16px 68px;
    background: #ecf7f6;
    border-radius: 0 0 0 0;
  }
  #report section.report-h2-wrap div.anq-wrap p.title span {
    font-size: 13px;
    font-weight: 400;
    padding-left: 8px;
  }
  #report section.report-h2-wrap div.anq-wrap p.no01 {
    background: #ecf7f6 url(../img/report/no01.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.no02 {
    background: #ecf7f6 url(../img/report/no02.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.no03 {
    background: #ecf7f6 url(../img/report/no03.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.no04 {
    background: #ecf7f6 url(../img/report/no04.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.tea-no01 {
    background: #f4f2fb url(../img/report/tea-no01.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.tea-no02 {
    background: #f4f2fb url(../img/report/tea-no02.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.tea-no03 {
    background: #f4f2fb url(../img/report/tea-no03.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.tea-no04 {
    background: #f4f2fb url(../img/report/tea-no04.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.par-no01 {
    background: #fff3ed url(../img/report/par-no01.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.par-no02 {
    background: #fff3ed url(../img/report/par-no02.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.par-no03 {
    background: #fff3ed url(../img/report/par-no03.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.anq-wrap p.par-no04 {
    background: #fff3ed url(../img/report/par-no04.webp) no-repeat left 12px center/40px auto;
  }
  #report section.report-h2-wrap div.pat-0 {
    padding-top: 0;
  }
  #report section.report-h2-wrap div.evaluation {
    width: var(--width-common-max);
    margin: 0 auto 0 auto;
    background: #fff;
    border-radius: 0 0 0 0;
    padding: 0;
    border-top: solid 1px #c1c1c1;
    border-right: solid 2px #f5f5f5;
    border-left: solid 2px #f5f5f5;
    border-bottom: solid 2px #f5f5f5;
  }
  #report section.report-h2-wrap div.evaluation img {
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.graph-box-wrap {
    width: var(--width-common-sp);
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 0;
    /*棒グラフ*/
  }
}
@media screen and (max-width: 912px) and (min-width: 480px) and (max-width: 912px) {
  #report section.report-h2-wrap div.graph-box-wrap {
    /* 500px以上912px以下 */
    padding: 32px 0 48px 0;
  }
}
@media screen and (max-width: 912px) {
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box {
    display: flex;
    flex-direction: column;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box div {
    width: 100%;
    padding: 0;
    margin: 0;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box div .graph-area {
    width: 100%;
    margin: -24px auto;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box div .stick-width {
    width: 100%;
    margin-left: -24px;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box div p.edit-comment {
    text-align: center;
    width: 151px;
    margin-bottom: 16px;
    background: url(../img/report/edit.webp) no-repeat center center/151px auto;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box-stick {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box-stick div.stick {
    width: 100% !important;
    background: #fff;
    margin: 40px auto 0 0;
    border-radius: 16px;
    border: 1px solid #c1c1c1;
    padding: 0 0 40px 0;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.graph-box-stick div.stick p.graph-title-header {
    text-align: center;
    margin: 24px 0 8px 0;
  }
  #report section.report-h2-wrap div.graph-box-wrap div.comment {
    margin: 0;
    padding-top: 24px;
  }
  #report section.report-h2-wrap p.graph-title-footer {
    margin-top: -32px;
    text-align: center;
    padding: 2px 0;
    border-radius: 32px;
    display: inline-block;
    background-color: #fff;
    border: 1px solid #c1c1c1;
    line-height: 30px;
    width: 140px;
  }
  #report section.report-h2-wrap p.graph-title-footer span {
    font-size: 28px;
  }
  #report section.report-h2-wrap div.center-sp-button {
    display: flex;
  }
  #report section.report-h2-wrap div.center-sp-button a.button-common {
    text-align: center;
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.anq02-wrap {
    width: var(--width-common-sp);
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.anq02-wrap div.sticky-wrap {
    padding: 24px 0 40px 0;
    position: relative;
  }
  #report section.report-h2-wrap div.anq02-wrap div.sticky-wrap p.speech-bubble-std,
  #report section.report-h2-wrap div.anq02-wrap div.sticky-wrap p.speech-bubble-tea,
  #report section.report-h2-wrap div.anq02-wrap div.sticky-wrap p.speech-bubble-par,
  #report section.report-h2-wrap div.anq02-wrap div.sticky-wrap p.speech-bubble-blu {
    display: block;
    width: 100% !important;
    margin: 16px 0 !important;
  }
  #report section.report-h2-wrap div.anq02-wrap div.edit-comment-wrap {
    margin: 32px 0 0 0;
    padding: 56px 0;
  }
  #report section.report-h2-wrap div.anq02-wrap div.edit-comment-wrap p.pos-02 {
    width: auto;
    padding: 0;
  }
  #report section.report-h2-wrap .illust-footer {
    width: var(--width-common-sp);
    margin: 0 auto 60px auto;
  }
  #report section.report-h2-wrap .illust-footer img {
    width: 98px;
    margin: 0 auto;
  }
  #report section.report-h2-wrap section.summary {
    width: var(--width-common-sp);
    margin: 0 auto;
    padding: 40px 24px 80px 24px;
  }
  #report section.report-h2-wrap section.summary p.summary-title {
    font-size: 20px;
    padding: 16px 0;
    line-height: 28px;
    margin: 16px 0;
  }
  #report section.report-h2-wrap section.summary p.sum-ttl01 {
    font-size: 20px;
    font-weight: 700;
    text-align: left;
    padding: 40px 0;
  }
  #report section.report-h2-wrap section.summary p.title-box {
    font-size: 18px;
    font-weight: 700;
    padding: 16px 16px 16px 72px;
    background: #ecf7f6;
    border-radius: 16px 16px 16px 16px;
    line-height: 24px;
  }
  #report section.report-h2-wrap section.summary p.title-box span {
    font-size: 2rem;
    font-weight: 400;
    padding-left: 8px;
  }
  #report section.report-h2-wrap section.summary p.all-no01 {
    background: #e3edf3 url(../img/report/sum-no01.webp) no-repeat left 16px center/40px auto;
  }
  #report section.report-h2-wrap section.summary p.all-no02 {
    background: #e3edf3 url(../img/report/sum-no02.webp) no-repeat left 16px center/40px auto;
  }
  #report section.report-h2-wrap section.summary p.all-no03 {
    background: #e3edf3 url(../img/report/sum-no03.webp) no-repeat left 16px center/40px auto;
  }
  #report section.report-h2-wrap section.summary p.all-no04 {
    background: #e3edf3 url(../img/report/sum-no04.webp) no-repeat left 16px center/40px auto;
  }
  #report section.report-h2-wrap section.summary div.title-box-sml {
    border: 1px solid #b5e6e0;
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 8px;
  }
  #report section.report-h2-wrap section.summary div.title-box-sml p.number {
    background: #f0faf9 url(../img/report/sumg-no01.webp) no-repeat right 16px top 18px/24px auto;
    width: 100px;
    font-weight: 700;
    padding: 16px 16px 16px 16px;
    font-size: 18px;
  }
  #report section.report-h2-wrap section.summary div.title-box-sml p.number02 {
    background: #f0faf9 url(../img/report/sumg-no02.webp) no-repeat right 16px top 18px/24px auto;
  }
  #report section.report-h2-wrap section.summary div.title-box-sml p.word {
    font-size: 18px;
    width: calc(100% - 100px);
    font-weight: 700;
    padding: 16px 24px 16px 24px;
  }
  #report section.report-h2-wrap section.summary div.title-box-sml p.word span {
    font-size: 12px;
    font-weight: 400;
  }
  #report section.report-h2-wrap section.summary div.keyword-sp {
    display: flex !important;
    flex-wrap: wrap;
    padding: 0;
  }
  #report section.report-h2-wrap section.summary div.keyword-sp p {
    padding: 8px 8px 8px 0;
    width: auto;
    font-size: 14px !important;
    color: #232323;
    margin: 0 6px 0 0;
  }
  #report section.report-h2-wrap section.summary div.keyword-sp p span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    background-color: #8ed0c8;
    border-radius: 50%;
    padding: 0;
    font-size: 12px;
    color: #fff;
    margin-right: 8px;
  }
  #report section.report-h2-wrap section.summary p.caption {
    margin-bottom: 24px;
  }
  #report section.report-h2-wrap section.summary .summary-int {
    display: flex;
    flex-direction: column;
    border-bottom: 4px solid #6891b2;
    padding: 0 0 16px 0;
    text-align: center;
    /*left*/
    /*right*/
  }
  #report section.report-h2-wrap section.summary .summary-int div:nth-of-type(1) img {
    margin: 0 auto;
    width: 104px;
  }
  #report section.report-h2-wrap section.summary .summary-int div:nth-of-type(2) p.name {
    margin-top: 20px;
    font-size: 22px;
    font-weight: 700;
  }
  #report section.report-h2-wrap section.summary .summary-int div:nth-of-type(2) p.name span {
    font-size: 20px;
  }
  #report section.report-h2-wrap section.summary .summary-int div:nth-of-type(2) p.post {
    font-size: 12px;
    margin-top: 4px;
    line-height: 20px;
  }
  #report section.report-h2-wrap div.footer-page {
    width: var(--width-common-sp);
    margin: 0 auto 24px auto;
  }
  #report section.report-h2-wrap div.footer-page img {
    width: 100%;
  }
  #report section.report-h2-wrap div.pdf-dl-sp {
    width: 234px;
    margin: 0 auto;
  }
  #report section.report-h2-wrap div.pdf-dl-sp img {
    padding: 32px 0;
  }
  #report p.edit-comment {
    text-align: center;
    width: 151px;
    margin: 24px auto 0 auto;
    margin-bottom: 16px;
    background: url(../img/report/edit.webp) no-repeat center center/151px auto;
  }
  #std-top {
    scroll-margin-top: 78px;
    /* ヘッダー分の高さ */
  }
  #tea-top {
    scroll-margin-top: -4px;
  }
  #par-top {
    scroll-margin-top: -4px;
  }
  #summary-top {
    scroll-margin-top: 64px;
  }
  #int-list {
    scroll-margin-top: 38px;
  }
  main.report-body {
    background-color: #f2faf9;
    margin-top: 45px;
  }
  main.report-body section.report-body-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    padding: 32px 0 24px 0;
    gap: 36px;
  }
  main.report-body section.report-body-h1 div:nth-of-type(1) {
    display: flex;
    justify-content: center;
  }
  main.report-body section.report-body-h1 div:nth-of-type(1) img {
    width: 206px;
    margin: auto 0;
  }
  main.report-body section.report-body-h1 div.body {
    margin-top: 24px;
    background: #fff;
    border-radius: 16px;
    padding: 24px 16px;
  }
  main.report-body section.report-body-h1 div.body p.date {
    margin: 0 0 4px 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header {
    border-top: 4px solid var(--cls-green);
    border-bottom: 4px solid var(--cls-green);
    padding: 0 0 0 0;
    display: flex;
    flex-direction: column;
    margin: 0 0 32px 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.left {
    display: flex;
    flex-direction: column;
    margin: 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.left h1 {
    font-size: 20px;
    font-weight: 700;
    line-height: 34px;
    padding-top: 16px;
    margin: 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.left div.tag {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 16px 0 24px 0;
    gap: 12px;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.left div.tag p {
    margin: 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right {
    border-top: #c1c1c1 solid 2px;
    border-left: none;
    margin: -8px 0 0 0;
    padding: 16px 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.img img {
    width: 105px;
    height: 105px;
    margin: 0 auto;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.name-body {
    padding: 16px 16px 0 16px;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.name-body p {
    text-align: center;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.name-body p.local {
    font-size: 12px !important;
    font-weight: 400;
    margin: 0 0;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.name-body p:nth-of-type(2) {
    margin: 0 0;
    padding: 0 0;
    font-size: 20px !important;
    font-weight: 700;
  }
  main.report-body section.report-body-h1 div.body div.report-header div.right div.name-body p:nth-of-type(2) span {
    font-size: 14px;
    color: #232323;
  }
  main.report-body section.report-body-h1 div.body p {
    font-size: 1.6rem;
    line-height: 27px;
    margin-bottom: 32px;
  }
  main.report-body section.report-body-h1 div.body p span {
    color: var(--cls-green);
  }
  main.report-body ul.interview-box {
    padding-bottom: 80px;
  }
  main.report-body ul.interview-box li div.box div.img img {
    width: 88px !important;
    height: 88px !important;
    margin: 0 auto;
    border-radius: 50%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #news {
    background-color: #f2f9fd;
  }
  #news p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  #news section.news-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    gap: 40px;
    padding: 80px 0 80px 0;
  }
  #news section.news-h1 div:nth-of-type(1) {
    width: 156px;
    min-width: 156px;
    width: 60%;
    margin: 0 auto;
  }
  #news section.news-h1 div:nth-of-type(1) img.title,
  #news section.news-h1 div:nth-of-type(1) img.title-body {
    width: 100%;
  }
  #news section.news-h1 div:nth-of-type(1) img.illust {
    display: none;
  }
  #news section.news-h1 div:nth-of-type(2) {
    padding-top: 0;
    /*NEWS-BODY*/
  }
  #news section.news-h1 div:nth-of-type(2) ul.index {
    margin-bottom: 24px;
  }
  #news section.news-h1 div:nth-of-type(2) ul.index li {
    margin-bottom: 16px;
  }
  #news section.news-h1 div:nth-of-type(2) ul.index li a.list-link {
    display: block;
    padding: 18px 18px 24px 18px;
    text-decoration: none;
    color: inherit;
    border: 1px solid var(--cls-green);
    border-radius: 16px;
    background-color: #fff;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
  }
  #news section.news-h1 div:nth-of-type(2) ul.index li a.list-link p:nth-of-type(1) {
    font-size: 12px;
  }
  #news section.news-h1 div:nth-of-type(2) ul.index li a.list-link p:nth-of-type(2) {
    font-size: 14px;
    line-height: 23px;
    font-weight: 700;
    margin-top: 6px;
  }
  #news section.news-h1 div:nth-of-type(2) ul.index li a.list-link:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  #news section.news-h1 div:nth-of-type(2) div.news-body {
    background-color: #fff;
    border-radius: 16px;
    padding: 16px 24px;
    margin: 0;
    width: 100%;
  }
  #news section.news-h1 div:nth-of-type(2) div.news-body h1 {
    font-size: 18px;
    line-height: 28px;
    padding: 16px 0 32px 0;
    border-bottom: 1px solid #cacaca;
    font-weight: 700;
    margin-bottom: 32px;
  }
  #news section.news-h1 div:nth-of-type(2) div.news-body .wp-block-embed__wrapper,
  #news section.news-h1 div:nth-of-type(2) div.news-body .youtube-wrapper {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 */
    overflow: hidden;
  }
  #news section.news-h1 div:nth-of-type(2) div.news-body p {
    margin-bottom: 32px;
  }
  #news section.news-h1 div:nth-of-type(2) div.center-wrap {
    display: flex;
    justify-content: center;
    margin-top: 24px;
  }
  #news section.news-h1 .illust02 {
    width: 202px;
    margin: 0 auto;
    display: block;
  }
  #contact {
    background-color: #f2faf9;
    padding-bottom: 80px;
  }
  #contact p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  #contact section.contact-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    gap: 40px;
    padding: 84px 0 24px 0;
  }
  #contact section.contact-h1 div:nth-of-type(1) {
    min-width: 156px;
    width: 60%;
    margin: 0 auto;
    background: none;
  }
  #contact section.contact-h1 div:nth-of-type(1) img.title {
    width: 100%;
  }
  #contact section.contact-h1 div:nth-of-type(2) {
    padding-top: 0;
  }
  #contact section.contact-h1 div:nth-of-type(2) h1 {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 24px;
    font-weight: 700;
  }
  #contact section.mail-form {
    margin: 0 auto;
    width: 88%;
  }
  #contact section.mail-form iframe {
    width: 100%;
    height: 1480px;
  }
  #contact div.illust-pos {
    width: var(--width-common-sp);
    display: block;
    padding: 0 0 24px 0;
  }
  #contact div.illust-pos img {
    width: 40%;
    max-width: 300px;
    min-width: 140px;
    margin: 0 auto;
  }
  #buying-info {
    background-color: #fff;
    padding-bottom: 64px;
  }
  #buying-info p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  #buying-info section.contact-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    margin: 0 auto;
    gap: 40px;
    padding: 84px 0 0 0;
    /*left*/
    /*right*/
  }
  #buying-info section.contact-h1 div:nth-of-type(1) {
    text-align: center;
    min-width: 156px;
    width: 60%;
    margin: 0 auto;
  }
  #buying-info section.contact-h1 div:nth-of-type(1) img.title {
    width: 100%;
    margin-left: 0;
  }
  #buying-info section.contact-h1 div:nth-of-type(1) div.book-wrap {
    width: 100%;
    margin: 40px auto 8px auto;
  }
  #buying-info section.contact-h1 div:nth-of-type(1) div.book-wrap img.book {
    width: 100%;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) {
    padding-top: 0;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) h1 {
    font-size: 18px;
    line-height: 30px;
    margin-bottom: 16px;
    font-weight: 700;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) p {
    margin-bottom: 24px;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) a.to-contact {
    display: inline-block;
    background-color: #fdb383;
    padding: 24px 0;
    font-size: 20px;
    font-weight: 700;
    border-radius: 12px;
    border: 1px solid #f2986e;
    display: block;
    text-decoration: none;
    color: inherit;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    color: #fff;
    margin: 0 auto 120px auto;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) a.to-contact:hover {
    box-shadow: 0 8px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
  }
  #buying-info section.contact-h1 div:nth-of-type(2) a.to-contact-green {
    background-color: #81cbc2;
    border: 1px solid #66bbae;
    padding: 8px 16px;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) a.to-contact-green:hover {
    background-color: #66bbae;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) div.book-wrap {
    width: 100%;
    max-width: 320px;
    margin: 40px auto 8px auto;
  }
  #buying-info section.contact-h1 div:nth-of-type(2) div.book-wrap img.book {
    width: 100%;
  }
  #buying-info section.comingsoon-wrap {
    margin: 0 auto 0 auto;
    padding: 0;
    width: var(--width-common-max);
    border-top: 1px solid #c1c1c1;
  }
  #buying-info section.comingsoon-wrap div.comingsoon {
    width: var(--width-common-max);
    margin: 0 auto;
    padding: 40px 0;
  }
  #buying-info section.comingsoon-wrap div.comingsoon p.title {
    margin: 0 24px;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 16px;
  }
  #buying-info section.comingsoon-wrap div.comingsoon div.box {
    height: 200px;
    line-height: 200px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 40px;
  }
  #about {
    background-color: #fff;
    padding-bottom: 64px;
  }
  #about p {
    font-size: 1.6rem;
    line-height: 27px;
  }
  #about section.contact-h1 {
    display: flex;
    flex-direction: column;
    width: var(--width-common-max);
    margin: 0 auto;
    gap: 0;
    padding: 48px 0 0 0;
    /*left*/
    /*right*/
  }
  #about section.contact-h1 div:nth-of-type(1) {
    text-align: center;
  }
  #about section.contact-h1 div:nth-of-type(1) img.title {
    width: 100%;
  }
  #about section.contact-h1 div:nth-of-type(2) {
    margin: 0 auto;
    padding-top: 24px;
  }
  #about section.contact-h1 div:nth-of-type(2) h1 {
    margin: 0 3%;
    font-size: 18px;
    line-height: 40px;
    margin-bottom: 24px;
    font-weight: 700;
  }
  #about section.contact-h1 div:nth-of-type(2) p {
    margin: 0 3% 24px 3%;
  }
  #about section.contact-h1 div:nth-of-type(2) div.button-flex {
    display: flex;
    flex-direction: column;
    margin: 0;
  }
  #about section.contact-h1 div:nth-of-type(2) div.button-flex a.button-green {
    align-self: flex-start;
    width: -moz-fit-content;
    width: fit-content;
    width: -webkit-fit-content;
    font-size: 15px !important;
    border-radius: 24px;
    margin: 24px auto 0 auto;
    padding: 6px 28px 8px 38px;
    color: #232323;
    font-size: 1.6rem;
    border: 1px solid #b2ddd6;
    background: #f2faf9 url(../img/buying-info/arrow_1.svg) no-repeat left 12px center/10px auto;
    display: inline-block;
  }
  #about section.contact-h1 div:nth-of-type(2) div.button-flex a.button-green:hover {
    background-color: #d8e5e4;
    text-decoration: none;
  }
  #about section.intro-wrap {
    position: relative;
    margin-top: 40px;
    background-color: #ecf7f6;
    /*
    overflow-x: auto;
    */
    overflow-x: auto;
    overflow-y: hidden;
    width: 100%;
    /* スクロールバーを非表示 */
    -ms-overflow-style: none;
    /* IE, Edge */
    scrollbar-width: none;
    /* Firefox */
    /* Chrome, Safari, Opera */
  }
  #about section.intro-wrap::-webkit-scrollbar {
    display: none;
  }
  #about section.intro-wrap .intro {
    /* 横スクロールの中身は固定幅 */
    position: relative;
    width: 1240px;
    height: 581px;
    /* 画像がはみ出るので nowrap */
    white-space: nowrap;
    margin: 0 auto;
    cursor: grab;
  }
  #about section.intro-wrap .intro img {
    width: 1240px;
    height: 581px;
    display: block;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  #about section.intro-wrap .intro.grabbing {
    cursor: grabbing;
  }
  #about .img-slide-wrap {
    top: 24px;
    position: relative;
    z-index: 9999;
    pointer-events: none;
    margin-top: -580px;
  }
  #about .img-slide-wrap img.img-slide {
    margin: 0 auto;
    width: 104px;
    height: 16px;
    display: block;
  }
  #about section.h2 {
    margin: 580px auto 0 auto;
    display: flex;
    flex-direction: column;
    width: var(--width-common-sp);
    align-items: center;
    padding: 40px 0 48px 0;
    /*left*/
    /*right*/
  }
  #about section.h2 div:nth-of-type(1) {
    text-align: left;
  }
  #about section.h2 div:nth-of-type(1) h2 {
    font-size: 18px;
    margin-bottom: 24px;
  }
  #about section.h2 div:nth-of-type(2) p {
    margin: 0;
  }
  #about section.member-intro {
    width: 88%;
    margin: 0 auto;
  }
  #about section.member-intro ul {
    display: flex;
    flex-direction: column;
    align-items: initial;
  }
  #about section.member-intro ul li {
    padding: 24px 21px;
    background-color: #e0f2f0;
    height: auto;
    margin-right: 4%;
  }
  #about section.member-intro ul li div {
    margin-bottom: 24px;
  }
  #about section.member-intro ul li div p {
    font-size: 12px;
    line-height: 20px;
  }
  #about section.member-intro ul li div p span {
    color: #f16829 !important;
  }
  #about section.member-intro ul li div p:nth-of-type(2n) {
    margin-top: 4px;
  }
  #about section.member-intro ul li div:nth-last-of-type(1) {
    margin-bottom: 0;
  }
  #about section.member-intro ul li:nth-of-type(2n) {
    background: #ecf7f6;
    background-image: none;
    margin: 0 0 0 4%;
  }
  #about section.member-intro ul li.shadow01 {
    border-top: 5px solid #d9e3e2;
  }
  #about section.member-intro ul li.shadow02 {
    border-top: 5px solid #cededc;
  }
  #about img.media-img-sp {
    width: 142px;
    float: right;
    margin: 24px 0 -24px 0;
  }
  #about section.media {
    width: var(--width-common-sp);
    margin: 0 auto 0 auto;
    display: flex;
    flex-direction: column;
    padding-bottom: 120px;
    /*left*/
    /*right*/
  }
  #about section.media div:nth-of-type(1) h3 {
    font-size: 20px;
    padding-bottom: 24px;
  }
  #about section.media div:nth-of-type(2) ul li {
    border-top: 1px solid #c1c1c1;
    padding: 24px 0 40px 0;
  }
  #about section.media div:nth-of-type(2) ul li p:nth-of-type(1) {
    font-size: 18px;
    list-style: 34px;
  }
  #about section.media div:nth-of-type(2) ul li p:nth-of-type(2) {
    margin: 16px 0 0 0;
    font-size: 14px;
    line-height: 23px;
  }
  #about section.media div:nth-of-type(2) ul li p:nth-of-type(3) {
    font-size: 12px;
    float: right;
    margin-top: 0;
  }
  #about section.media div:nth-of-type(2) ul li a.link {
    color: #f16829;
  }
  #about section.media div:nth-of-type(2) ul li:nth-last-of-type(1) {
    border-bottom: 1px solid #c1c1c1;
  }
}