@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;

  400;700&display=swap);@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;

  300;400;500;700;900&display=swap);@charset "UTF-8";

@media screen and (max-width: 600px) {
  html[lang=ja] {
    font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  }

  .school {
    width: 100vw;
    overflow: hidden;
  }

  .school .modal {
    display: block;
    z-index: 100;
    position: fixed;
    width: 0%;
    height: 100%;
    top: 0;
    right: 0;
    background-color: #f4f1ec;
    transition: all 500ms;
    pointer-events: none;
    opacity: 0;
  }

  .school .modal .navigation__close {
    float: right;
  }

  .school .modal.show {
    pointer-events: visible;
    opacity: 1;
    width: 80%;
  }

  .school .modal .links {
    white-space: nowrap;
  }

  .school .modal .links a div {
    color: #1d2946;
    font-size: 1.4rem;
    padding-left: 2rem;
    margin-left: 1rem;
    line-height: 3rem;
    border-bottom: 1px solid #ddd;
    -webkit-font-smoothing: antialiased;
    position: relative;
    display: flex;
    align-items: center;
  }

  .school .modal .links a div:before {
    position: absolute;
    content: "\AB";
    color: #1d2946;
    top: 0;
    left: 0;
  }

  .school .modal .links a div img {
    width: 8%;
    height: 8%;
  }

  .school .header__navigation {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    height: 3rem;
  }

  .school .header__navigation__item {
    position: relative;
    display: grid;
    align-items: center;
    font-size: 0.7rem;
    text-align: center;
  }

  .school .header__navigation__item:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 1px;
    background-color: white;
  }

  .school .header__navigation__item:nth-child(1) {
    margin-left: 1rem;
  }

  .school .header__navigation__item:nth-child(1) img {
    width: 100%;
  }

  .school .header__navigation__item:nth-child(2) {
    display: none;
  }

  .school .header__navigation__item:nth-child(3) {
    display: none;
  }

  .school .header__navigation__item:nth-child(4) {
    display: none;
  }

  .school .header__navigation__item:nth-child(5) {
    display: none;
  }

  .school .header__navigation__item:nth-child(6) {
    display: none;
  }

  .school .header__navigation__item:nth-child(7) {
    color: white;
    background-color: #7bd1fa;
    padding: 1rem;
  }

  .school .header__navigation__item:nth-child(7) div {
    justify-content: center;
  }

  .school .header__navigation__item:nth-child(7) div img {
    height: 1rem;
  }

  .school .header__navigation__item:nth-child(8) {
    color: white;
    background-color: #7bd1fa;
    width: 3rem;
  }

  .school .header__navigation__item:nth-child(8) div {
    justify-content: center;
  }

  .school .header__navigation__item:nth-child(8) div img {
    height: 1.3rem;
  }

  .school .fv {
    width: 100%;
    position: relative;
  }

  .school .fv__content-left {
    background: url("https://web-img.rensa.jp.net/rensa/images/techmania/renewal/sp/top/fv_image.png") no-repeat;
    height: 35rem;
    background-size: cover;
    background-position: bottom;
  }

  .school .fv__content-left__title {
    float: left;
    text-align: center;
    font-weight: bold;
    margin: 6rem 10rem 0 0.5rem;
    width: 60%;
  }

  .school .fv__content-left__title h1 {
    font-size: 2.5rem;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title :nth-child(1) {
    display: none;
  }

  .school .fv__content-left__title :nth-child(3) {
    font-size: 1.5rem;
    margin-bottom: 1rem;
  }

  .school .fv__content-left__title :nth-child(4) {
    background: #ffffff99;
    padding: 0.5rem;
  }

  .school .fv__content-left__title :nth-child(4) br {
    display: block;
  }

  .school .fv__content-left__reserve-button {
    padding: 0.8rem;
    background: #07184e;
    text-align: center;
    line-height: 200%;
    width: 80%;
    margin-top: calc(100% - 90%);
    margin-left: calc(100% - 90%);
    font-weight: bold;
  }

  .school .fv__content-left__reserve-button p {
    color: white;
    font-size: 1.1rem;
    display: block;
  }

  .school .fv__content-left__reserve-button p span {
    font-size: 1.3rem;
  }

  .school .fv__content-left__reserve-button:active {
    background: #3560ed;
  }

  .school .fv__content-right {
    display: none;
  }

  .school .campaign {
    padding: 1rem;
    text-align: center;
    background: #fdeea1;
    background-clip: content-box;
    font-weight: bold;
  }

  .school .campaign__inform__billbord {
    font-size: 1.3rem;
    display: inline-block;
    padding: 0.8rem 1rem;
    margin: 1rem auto;
    color: white;
    background-color: #7bd1fa;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
  }

  .school .campaign__inform p {
    margin: 1rem auto;
    line-height: 1.5rem;
  }

  .school .campaign__inform span {
    color: #f81501;
    font-size: 1.3rem;
  }

  .school .campaign__inform__reserve-button {
    padding: 1% 5%;
    background: #f81501;
    text-align: center;
    line-height: 150%;
  }

  .school .campaign__inform__reserve-button p {
    margin: unset;
    color: white;
  }

  .school .campaign__inform__reserve-button span {
    font-size: 1.5rem;
  }

  .school .campaign__inform__reserve-button:active {
    background: #fe9d94;
  }

  .school .campaign__inform .sale {
    color: red;
  }

  .school .campaign__foot-note {
    margin: 1rem 0;
    padding: 0.5rem;
    font-size: 0.92rem;
  }

  .school .carrier {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    background-color: #7bd1fa;
  }

  .school .carrier__title {
    color: white;
    font-size: 1.3rem;
    font-weight: bold;
    line-height: 2.4rem;
  }

  .school .carrier__contents {
    width: 90%;
    margin: 0 auto;
    margin-top: 1rem;
    justify-content: space-around;
  }

  .school .carrier__contents__content {
    margin: 1rem 0;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .carrier__contents__content__caption {
    color: white;
    background: #072060;
    font-size: 0.95rem;
    padding: 1rem;
    font-weight: bold;
    line-height: 1.8rem;
  }

  .school .carrier__contents__content__caption .br_pc {
    display: none;
  }

  .school .carrier__contents__content__introduction {
    background: white;
    padding: 0.5rem;
  }

  .school .carrier__contents__content__introduction div {
    margin: 1rem;
    background-color: white;
    justify-content: center;
  }

  .school .carrier__contents__content__introduction div source {
    max-width: 100%;
  }

  .school .carrier__contents__content__introduction div img {
    max-width: 100%;
  }

  .school .carrier__contents__content__introduction div p {
    color: #1d2946;
    text-align: left;
    line-height: 2rem;
    font-size: 1rem;
  }

  .school .carrier__reserve-button {
    padding: 0.8rem;
    width: 80%;
    background: #07184e;
    text-align: center;
    line-height: 150%;
    margin-top: 1rem;
    font-weight: bold;
  }

  .school .carrier__reserve-button p {
    color: white;
    font-size: 1.1rem;
  }

  .school .carrier__reserve-button span {
    font-size: 1.3rem;
  }

  .school .carrier__reserve-button:active {
    background: #3560ed;
  }

  .school .curriculum {
    padding: 2rem 0;
    text-align: center;
    background-color: white;
  }

  .school .curriculum__title {
    color: #072060;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2.4rem;
  }

  .school .curriculum__contents {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .curriculum__contents__content {
    margin: 1rem 0;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .curriculum__contents__content__buillbord {
    color: white;
    background: #072060;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    padding: 1rem;
  }

  .school .curriculum__contents__content__introduction {
    background: white;
  }

  .school .curriculum__contents__content__introduction div {
    margin: 1rem;
    background-color: white;
    justify-content: center;
    min-height: 22vh;
  }

  .school .curriculum__contents__content__introduction div img {
    width: 100%;
  }

  .school .curriculum__contents__content__introduction div p {
    color: #1d2946;
    text-align: left;
    line-height: 2rem;
    font-size: 1rem;
  }

  .school .curriculum__contents__flow {
    font-size: 2rem;
    font-weight: bold;
    transform: rotate(90deg);
  }

  .school .curriculum__inform {
    padding: 0 3rem;
  }

  .school .curriculum__inform :nth-child(1) {
    color: #082060;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 0.5rem 0;
  }

  .school .curriculum__inform :nth-child(2) {
    margin: 0.5rem 0;
  }

  .school .curriculum__inform :nth-child(2) span {
    color: #000000;
    font-weight: 600;
  }

  .school .curriculum__inform :nth-child(3) {
    line-height: 2rem;
    text-align: left;
  }

  .school .curriculum__inform :nth-child(4) {
    color: #f81501;
    background: #fceca6;
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    padding: 0.2rem;
    margin: 0.5rem 0;
  }

  .school .curriculum__inform :nth-child(5) {
    line-height: 2rem;
    text-align: left;
    margin-bottom: 1rem;
  }

  .school .curriculum__reserve-button {
    padding: 1rem;
    background: #07184e;
    text-align: center;
    margin-bottom: 1rem;
  }

  .school .curriculum__reserve-button p {
    color: white;
    font-weight: bold;
  }

  .school .curriculum__reserve-button:active {
    background: #fee79a;
  }

  .school .curriculum__reserve-button.unker {
    background: #fceca6;
  }

  .school .curriculum__reserve-button.unker p {
    color: #072060;
  }

  .school .curriculum__reserve-button.unker:active {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker:active p {
    color: white;
  }

  .school .review {
    background: #7bd1fa;
    text-align: center;
    padding: 2rem 0 2rem;
  }

  .school .review__title {
    font-weight: bold;
    color: white;
    font-size: 1.5rem;
    padding: 0 2rem;
    line-height: 1.5rem;
  }

  .school .review__contents {
    display: none;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 2rem;
    justify-content: center;
  }

  .school .review__contents__content {
    padding: 1rem;
    background: white;
    cursor: pointer;
    overflow: hidden;
    border-radius: 15px;
    transition: 200ms;
    transform: translate(-0.3rem, -0.15rem);
    box-shadow: 3px 2.5px 2.5px #0008, 3px 2.5px 2.5px #0008;
    min-width: 250px;
  }

  .school .review__contents__content__caption {
    font-size: 1.1rem;
    font-weight: bold;
    text-align: left;
    line-height: 1.6rem;
    margin-top: 0.5rem;
    letter-spacing: -0.05rem;
  }

  .school .review__contents__content__under-line {
    width: 100%;
    margin: 0.5rem auto;
    height: 1px;
    background: #6668;
  }

  .school .review__contents__content__description {
    font-size: 0.8rem;
    line-height: 1.3rem;
    text-align: left;
    opacity: 0.56;
    padding: 0 0.5rem 0.5rem;
  }

  .school .review__contents__content:active {
    transform: translate(-0.1rem, 0px);
    box-shadow: -0.5px -0.5px 5px #00000089;
    filter: brightness(1.05);
  }

  .school .review__see-more-button {
    font-size: 0.8rem;
    font-weight: bold;
    padding: 0.8rem 5rem;
    margin: 1rem 0 0.5rem;
    background: #fce57c;
    transform: translate(-0.15rem, -0.15rem);
    box-shadow: 3px 2.5px 2.5px #0008, 3px 2.5px 2.5px #0008;
    border-radius: 3rem;
    transition: 200ms;
  }

  .school .review__see-more-button:active {
    background: #fdefaf;
    transform: translate(0px, 0px);
    box-shadow: -0.5px -0.5px 5px #00000089;
  }

  .school .support {
    padding: 2rem 0;
  }

  .school .support .title {
    margin: 0 auto;
    padding: 0 1rem;
    font-size: 1rem;
    text-align: center;
    line-height: 1.5rem;
    letter-spacing: 0.1rem;
    font-weight: bold;
    letter-spacing: -0.02rem;
  }

  .school .support .title .br_pc {
    display: none;
  }

  .school .support .bar {
    margin: 1rem 0;
    padding: 0.2rem;
    height: 3rem;
    background-color: #080e44;
  }

  .school .support .bar .text {
    display: inline-block;
    width: 8rem;
    height: calc(3rem - 0.3rem);
    line-height: 2rem;
    margin-left: calc(50% - 4rem);
    font-size: 0.8rem;
    text-align: center;
    background-color: white;
    letter-spacing: 0.1rem;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
  }

  .school .form {
    padding-bottom: 1rem;
  }

  .school .form .title {
    margin: 0 auto;
    padding: 0.5rem 0;
    color: white;
    background-color: #7bd1fa;
    letter-spacing: 0.5rem;
    font-size: 1.5rem;
    line-height: 2.2rem;
    text-align: center;
    font-weight: bold;
  }

  .school .form .title span {
    font-size: 70%;
    color: black;
  }

  .school .form__inform {
    padding: 1rem;
    line-height: 1.5rem;
  }

  .school .form .announce {
    text-align: left;
    margin: 0 1rem;
    line-height: 2rem;
  }

  .school .form .announce__caption {
    font-size: 1.4rem;
    font-weight: bold;
  }

  .school .form .announce__note {
    font-size: 0.8rem;
    font-weight: 100;
    display: flex;
    flex-direction: column;
    line-height: 130%;
  }

  .school .form__reservationCalendar__inform {
    line-height: 1.5rem;
    padding: 0 1rem;
  }

  .school .form__reservationCalendar__inform a {
    text-decoration: underline;
  }

  .school .form__reservationCalendar__inform a:hover {
    text-decoration: none;
  }

  .school .form__reservationCalendar__inform a:active {
    color: gray;
  }

  .school .form__reservationCalendar p {
    font-weight: bold;
  }

  .school .form__reservationCalendar p span {
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
  }

  .school .form__input-area {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__input-area__inform {
    line-height: 1.5rem;
  }

  .school .form__input-area__inform :not(.calendar) {
    text-align: left;
    line-height: 2rem;
  }

  .school .form__input-area__inform span {
    font-size: 1rem;
    font-weight: bold;
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
  }

  .school .form__input-area p {
    font-size: 0.8rem;
  }

  .school .form .items {
    width: 100%;
    color: #666;
  }

  .school .form .items .item {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2rem;
  }

  .school .form .items .item .name {
    padding-right: 0.5rem;
    line-height: 2rem;
    text-align: center;
    font-weight: bold;
    color: #000000;
  }

  .school .form .items .item .require {
    width: 3rem;
    padding: 0 0.5rem;
    margin-bottom: 0.2rem;
    line-height: 2rem;
    color: white;
    background-color: #f81501;
    text-align: center;
  }

  .school .form .items .item .require.none {
    background-color: transparent;
  }

  .school .form .items .item .value {
    width: 100%;
  }

  .school .form .items .item .value input {
    line-height: 2rem;
    padding: 0 0.5rem;
    color: #3c4e65;
    box-shadow: none;
    box-sizing: border-box;
    outline: 0;
    border-radius: 4px;
    border: solid 1px #b2c4c7;
    background-color: #fafbfc;
    width: 100%;
  }

  .school .form .items .item .value .ln:nth-child(2),
  .school .form .items .item .value .fn:nth-child(2) {
    margin-left: 0.5rem;
  }

  .school .form .items .item .value .select {
    display: inline-block;
    position: relative;
  }

  .school .form .items .item .value .select:after {
    content: "\203A";
    transform: rotate(90deg);
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
  }

  .school .form .items .item .value .select select {
    width: 20rem;
    padding: 0.5rem 1rem;
    background-color: #fafbfc;
    border: solid 1px #b2c4c7;
    border-radius: 4px;
  }

  .school .form .items .item .value .select .birthday {
    width: 5rem;
  }

  .school .form__foot-note {
    margin: 2rem 1rem;
  }

  .school .form__foot-note a {
    text-decoration: underline;
  }

  .school .form__foot-note a:active {
    text-decoration: none;
    color: gray;
  }

  .school .form .button {
    text-align: center;
  }

  .school .form .button button {
    padding: 0.8rem;
    background-color: #072060;
    color: white;
    font-size: 1.1rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
    font-weight: bold;
  }

  .school .form .button button:active {
    background: #3560ed;
  }

  .school footer hr {
    color: #ddd;
  }

  .school footer .items {
    margin: 1rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
  }

  .school footer .items .item {
    padding: 0 2rem;
    color: #999;
    border-right: 1px solid #999;
    line-height: 2rem;
    font-size: 90%;
  }

  .school footer .items .item:nth-last-child(1) {
    border-right: none;
  }

  .school footer .logo {
    padding: 3rem 0;
    background-color: #25476c;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .school footer .logo .reserve {
    width: 100%;
    text-align: center;
    color: white;
    font-size: 80%;
    line-height: 3rem;
  }

  .school footer .logo .icon {
    margin-left: 1rem;
  }

  .school footer .logo .icon img {
    height: 3rem;
    min-height: 3rem;
  }

  .school footer .logo .service-name {
    display: inline-block;
    margin-left: 0.5rem;
    line-height: 3rem;
    font-size: 1.2rem;
    font-weight: bold;
    color: white;
  }
}

@media screen and (min-width: 601px) {
  html[lang=ja] {
    font-family: "Noto Sans JP", sans-serif;
  }

  button {
    cursor: pointer;
  }

  .school {
    min-width: 1110px;
  }

  .school .modal {
    display: none;
  }

  .school .header__navigation {
    display: grid;
    grid-template-columns: 3fr 3.5fr 2fr 2fr 2fr 2.5fr;
    flex-wrap: nowrap;
    min-height: 3rem;
  }

  .school .header__navigation__item {
    position: relative;
    display: grid;
    align-items: center;
    font-size: 0.7rem;
    text-align: center;
    color: white;
    transition: 300ms;
  }

  .school .header__navigation__item:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 1px;
    background-color: white;
  }

  .school .header__navigation__item:nth-child(1) {
    margin-left: 1.5rem;
  }

  .school .header__navigation__item:nth-child(1) img {
    width: 100%;
  }

  .school .header__navigation__item:nth-child(2) {
    margin-left: 2.5rem;
    color: gray;
    text-align: left;
  }

  .school .header__navigation__item:nth-child(3) {
    background-color: #0179a5;
  }

  .school .header__navigation__item:nth-child(3):hover {
    background: #43ccfe;
  }

  .school .header__navigation__item:nth-child(4) {
    background-color: #00b2b4;
  }

  .school .header__navigation__item:nth-child(4):hover {
    background: #4dfcff;
  }

  .school .header__navigation__item:nth-child(5) {
    background-color: #25476c;
  }

  .school .header__navigation__item:nth-child(5):hover {
    background: #5f92c8;
  }

  .school .header__navigation__item:nth-child(6) {
    background-color: #0065b2;
    line-height: 140%;
  }

  .school .header__navigation__item:nth-child(6):hover {
    background: #4db2ff;
  }

  .school .header__navigation__item:nth-child(7) {
    display: none;
  }

  .school .header__navigation__item .link {
    text-align: center;
  }

  .school .header__navigation__item .link p {
    display: inline-block;
    line-height: 2.4rem;
    color: white;
  }

  .school .fv {
    width: 100%;
    height: calc(100vh - 16rem);
    position: relative;
    display: flex;
    max-height: 500px;
  }

  .school .fv__content-left {
    width: 50%;
    background: url("https://web-img.rensa.jp.net/rensa/images/techmania/renewal/top/top_fv_title.png") no-repeat;
    background-size: cover;
    background-position: bottom;
  }

  .school .fv__content-left__title {
    padding-top: 10rem;
    padding-left: 4rem;
    float: left;
    text-align: center;
    letter-spacing: 0.2em;
    white-space: nowrap;
  }

  .school .fv__content-left__title h1 {
    font-size: 3.5rem;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title p {
    font-size: 0.8rem;
    opacity: 0.5;
  }

  .school .fv__content-left__title :nth-child(3) {
    font-size: 1.2rem;
    opacity: 1;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title :nth-child(4) {
    display: none;
  }

  .school .fv__content-left__reserve-button {
    display: none;
  }

  .school .fv__content-right {
    width: 50%;
    background: #7bd1fa;
    background-clip: content-box;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
  }

  .school .fv__content-right__title {
    width: 100%;
    background: #ffffff;
    background-clip: content-box;
    text-align: center;
    margin: 0.3rem auto;
  }

  .school .fv__content-right__title p {
    padding: 0.5rem;
    font-size: 1rem;
    font-weight: bold;
  }

  .school .fv__content-right__introductions {
    display: flex;
    justify-content: space-evenly;
  }

  .school .fv__content-right__introductions img {
    width: 70%;
  }

  .school .fv__content-right__introductions__introduction {
    width: 30%;
    color: white;
    text-shadow: 1px 1px 1px #0000003d;
  }

  .school .fv__content-right__introductions__introduction__caption {
    margin: 0.5rem 0;
    text-align: center;
    letter-spacing: -0.1rem;
    font-size: 1.3rem;
    font-weight: bold;
    font-size: 1.2rem;
    text-shadow: 1px 1px 1px #07184e, 1px 1px 1px #07184e;
  }

  .school .fv__content-right__introductions__introduction__description {
    text-align: left;
    font-size: 0.9rem;
    line-height: 1.2rem;
  }

  .school .fv__content-right__reserve-button {
    padding: 0.5rem 1.5rem;
    background: #07184e;
    text-align: center;
    line-height: 150%;
    width: 50%;
    margin: 0.3rem auto;
    font-weight: bold;
    transition: 300ms;
  }

  .school .fv__content-right__reserve-button p {
    color: white;
  }

  .school .fv__content-right__reserve-button p span {
    font-size: 1.2rem;
  }

  .school .fv__content-right__reserve-button:hover {
    background: #3560ed;
  }

  .school .campaign {
    padding: 2rem;
    text-align: center;
    background: #fdeea1;
    background-clip: content-box;
    font-weight: bold;
  }

  .school .campaign__inform {
    font-size: 1.5rem;
  }

  .school .campaign__inform p {
    margin-top: 2rem;
  }

  .school .campaign__inform span {
    font-size: 2rem;
    color: #f81501;
    font-weight: bold;
  }

  .school .campaign__inform__billbord {
    display: inline-block;
    padding: 1.2rem 2.5rem;
    margin: 1rem auto;
    color: white;
    background-color: #7bd1fa;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
  }

  .school .campaign__inform__reserve-button {
    padding: 1rem 3rem;
    background: #f81501;
    text-align: center;
    line-height: 150%;
    margin: 2rem 0 1rem;
    transition: 300ms;
  }

  .school .campaign__inform__reserve-button p {
    margin: unset;
    color: white;
  }

  .school .campaign__inform__reserve-button span {
    font-size: 1.5rem;
  }

  .school .campaign__inform__reserve-button:hover {
    background: #fe9d94;
  }

  .school .campaign__foot-note {
    line-height: 2rem;
    margin-bottom: 2rem;
  }

  .school .carrier {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    background-color: #7bd1fa;
  }

  .school .carrier__title {
    color: white;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2.4rem;
  }

  .school .carrier__contents {
    width: 80%;
    margin: 0 auto;
    margin-top: 1rem;
    justify-content: space-around;
  }

  .school .carrier__contents__content {
    margin: 2rem 0;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .carrier__contents__content__caption {
    color: white;
    background: #072060;
    font-size: 1.5rem;
    padding: 1rem;
    font-weight: bold;
    line-height: 2.3rem;
  }

  .school .carrier__contents__content__caption .br_sp {
    display: none;
  }

  .school .carrier__contents__content__introduction {
    background: white;
    display: flex;
    padding: 0 3rem;
  }

  .school .carrier__contents__content__introduction div {
    width: 50%;
    margin: 1rem;
    display: flex;
    align-items: center;
    background-color: white;
  }

  .school .carrier__contents__content__introduction div img {
    max-width: 100%;
  }

  .school .carrier__contents__content__introduction div p {
    color: #1d2946;
    text-align: left;
    line-height: 2rem;
    font-size: 1.2rem;
  }

  .school .carrier__reserve-button {
    padding: 0.5rem 1.5rem;
    margin-top: 2rem;
    background: #07184e;
    text-align: center;
    line-height: 150%;
    width: 30%;
    font-weight: bold;
    transition: 300ms;
  }

  .school .carrier__reserve-button p {
    color: white;
  }

  .school .carrier__reserve-button p span {
    font-size: 1.2rem;
  }

  .school .carrier__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    background-color: white;
  }

  .school .curriculum__title {
    color: #072060;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2.4rem;
  }

  .school .curriculum__contents {
    width: 90%;
    margin: 0 auto;
    justify-content: space-around;
    align-items: center;
    display: flex;
    gap: 1rem;
  }

  .school .curriculum__contents__content {
    margin: 2rem 0 auto;
    width: 30%;
    max-width: 400px;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .curriculum__contents__content__buillbord {
    color: white;
    background: #072060;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    padding: 1rem;
  }

  .school .curriculum__contents__content__buillbord p {
    white-space: nowrap;
  }

  .school .curriculum__contents__content__introduction {
    background: white;
  }

  .school .curriculum__contents__content__introduction div {
    background-color: white;
    justify-content: center;
    overflow: hidden;
  }

  .school .curriculum__contents__content__introduction div img {
    pointer-events: none;
    width: 100%;
  }

  .school .curriculum__contents__content__introduction div p {
    padding: 1rem;
    color: #1d2946;
    text-align: left;
    line-height: 2rem;
    font-size: 1rem;
    min-height: 450px;
  }

  .school .curriculum__contents__flow {
    font-size: 2rem;
    font-weight: bold;
  }

  .school .curriculum__inform {
    padding: 0 3rem;
  }

  .school .curriculum__inform :nth-child(1) {
    color: #082060;
    font-size: 1.8rem;
    margin: 3rem 0 1rem;
    font-weight: bold;
  }

  .school .curriculum__inform :nth-child(2) {
    margin: 0.5rem 0;
  }

  .school .curriculum__inform :nth-child(2) span {
    color: #000000;
    font-weight: 600;
  }

  .school .curriculum__inform :nth-child(3) {
    line-height: 2rem;
  }

  .school .curriculum__inform :nth-child(4) {
    display: inline;
    color: #f81501;
    font-weight: bold;
    line-height: 5rem;
    font-size: 2rem;
    padding: 0.2rem;
    margin: 0.5rem 0;
    background: #fceca6;
  }

  .school .curriculum__inform :nth-child(5) {
    line-height: 2rem;
    margin-bottom: 1rem;
  }

  .school .curriculum__reserve-button {
    padding: 1rem;
    background: #07184e;
    text-align: center;
    margin: 0 auto 1rem;
    transition: 300ms;
  }

  .school .curriculum__reserve-button p {
    color: white;
    font-weight: bold;
  }

  .school .curriculum__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker {
    background: #fceca6;
    transition: 300ms;
  }

  .school .curriculum__reserve-button.unker p {
    color: #072060;
  }

  .school .curriculum__reserve-button.unker:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker:hover p {
    color: white;
  }

  .school .review {
    background: #7bd1fa;
    text-align: center;
    padding: 2rem 0 2rem;
  }

  .school .review__title {
    font-weight: bold;
    color: white;
    font-size: 2rem;
  }

  .school .review__contents {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem 2rem;
    margin: 2rem;
    justify-content: center;
  }

  .school .review__contents__content {
    padding: 0.5rem 1rem;
    width: 30%;
    background: white;
    cursor: pointer;
    transition: 300ms;
    overflow: hidden;
    border-radius: 18px;
    transform: translate(0, 0);
    box-shadow: 5px 2.5px 2.5px #0008, 5px 2.5px 2.5px #0008;
  }

  .school .review__contents__content__img {
    width: calc( 100% + 2rem);
    margin-left: -1rem;
    margin-top: -0.5rem;
  }

  .school .review__contents__content__caption {
    text-align: left;
    font-weight: bold;
    font-size: 1.1rem;
    line-height: 1.6rem;
    margin-top: 0.5rem;
  }

  .school .review__contents__content__under-line {
    width: 100%;
    margin: 0.5rem auto;
    height: 1px;
    background: #6668;
  }

  .school .review__contents__content__description {
    text-align: left;
    font-size: 0.8rem;
    line-height: 1.3rem;
    opacity: 0.56;
  }

  .school .review__contents__content:hover {
    transform: translate(0.15rem, 0.15rem);
    box-shadow: -0.5px -0.5px 2.5px #00000089;
    filter: brightness(1.05);
  }

  .school .review__contents-sp {
    display: none;
  }

  .school .review__see-more-button {
    padding: 0.8rem 3rem;
    background: #fce57c;
    border-radius: 3rem;
    transform: translate(0, 0);
    box-shadow: 3px 2.5px 2.5px #0008, 3px 2.5px 2.5px #0008;
    transition: 300ms;
  }

  .school .review__see-more-button:hover {
    background: #fdefaf;
    transform: translate(0.1rem, 0.1rem);
    box-shadow: -0.5px -0.5px 2.5px #00000089;
  }

  .school .support {
    padding: 2rem 0;
  }

  .school .support .title {
    margin: 0 auto;
    font-size: 1.5rem;
    color: #07184e;
    text-align: center;
    line-height: 2rem;
    letter-spacing: 0.1rem;
    font-weight: bold;
  }

  .school .support .bar {
    margin: 1rem 0;
    padding: 0.2rem;
    height: 6rem;
    background-color: #080e44;
  }

  .school .support .bar .text {
    display: inline-block;
    width: 16rem;
    height: calc(6rem - 0.4rem);
    line-height: 4rem;
    margin-left: calc(50% - 8rem);
    font-size: 1.6rem;
    text-align: center;
    background-color: white;
    letter-spacing: 0.2rem;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
  }

  .school .form {
    padding-bottom: 1rem;
  }

  .school .form p {
    text-align: center;
    line-height: 1.5rem;
  }

  .school .form a {
    text-decoration: underline;
  }

  .school .form a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .title {
    padding: 1rem 2rem;
    color: white;
    background-color: #7bd1fa;
    font-size: 1.8rem;
    line-height: 2rem;
    text-align: center;
    font-weight: bold;
  }

  .school .form .title span {
    font-size: 50%;
    color: black;
  }

  .school .form__inform {
    margin: 1.5rem 0;
    text-align: center;
    line-height: 1rem;
  }

  .school .form .announce {
    text-align: left;
    width: 65%;
    margin: 0 auto;
    line-height: 2rem;
    font-size: 1rem;
  }

  .school .form .announce__caption {
    font-size: 1.4rem;
    font-weight: bold;
  }

  .school .form .announce__note {
    font-size: 0.8rem;
    font-weight: 100;
  }

  .school .form__reservationCalendar {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__reservationCalendar__inform {
    width: 65%;
    text-align: left;
  }

  .school .form__reservationCalendar__calendar {
    width: 70%;
    margin: 0 auto;
  }

  .school .form__reservationCalendar .calendar {
    width: 100%;
    margin: 2rem 0;
  }

  .school .form__reservationCalendar p {
    font-weight: bold;
    margin: 0 auto;
    text-align: left;
    line-height: 1rem;
  }

  .school .form__reservationCalendar p :not(.calendar) {
    width: 50%;
    line-height: 1.5rem;
  }

  .school .form__reservationCalendar p span {
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
  }

  .school .form__reservationCalendar a {
    text-align: center;
    text-decoration: none;
  }

  .school .form__reservationCalendar a:hover {
    color: #000000;
  }

  .school .form__input-area {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__input-area__inform {
    width: 65%;
    margin: 0 auto;
    padding: 0 1rem;
    font-size: 0.8rem;
  }

  .school .form__input-area__inform span {
    display: flex;
    flex-direction: column;
    font-weight: bold;
    margin: 1rem 0;
    font-size: 1rem;
  }

  .school .form__input-area__inform p {
    text-align: left;
    line-height: 2rem;
  }

  .school .form__input-area p {
    text-align: left;
  }

  .school .form .items {
    width: 70%;
    margin: 0 auto;
  }

  .school .form .items .item {
    display: flex;
    margin-top: 2rem;
  }

  .school .form .items .item .name {
    min-width: 10rem;
    line-height: 2rem;
    text-align: center;
  }

  .school .form .items .item .name p {
    font-weight: bold;
    float: right;
    margin-right: 1rem;
  }

  .school .form .items .item .require {
    min-width: 3rem;
    padding: 0 0.5rem;
    line-height: 2rem;
    color: white;
    background-color: #f81501;
    text-align: center;
  }

  .school .form .items .item .require.none {
    background-color: transparent;
  }

  .school .form .items .item .require p {
    line-height: 2rem;
  }

  .school .form .items .item .value {
    width: 100%;
    margin-left: 0.5rem;
  }

  .school .form .items .item .value input {
    line-height: 2rem;
    padding: 0 0.5rem;
    color: #3c4e65;
    box-shadow: none;
    box-sizing: border-box;
    outline: 0;
    border-radius: 4px;
    border: solid 1px #b2c4c7;
    background-color: #fafbfc;
    width: 100%;
  }

  .school .form .items .item .value .comment {
    margin-left: 3rem;
    width: calc( 100% - 3rem);
  }

  .school .form .items .item .value .ln:nth-child(2),
  .school .form .items .item .value .fn:nth-child(2) {
    margin-left: 0.5rem;
  }

  .school .form .items .item .value .select {
    display: inline-block;
    position: relative;
  }

  .school .form .items .item .value .select:after {
    content: "\203A";
    transform: rotate(90deg);
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
  }

  .school .form .items .item .value .select select {
    width: 20rem;
    padding: 0.5rem 1rem;
    background-color: #fafbfc;
    border: solid 1px #b2c4c7;
    border-radius: 4px;
  }

  .school .form__foot-note {
    margin: 2rem 0;
  }

  .school .form__foot-note a {
    text-decoration: underline;
  }

  .school .form__foot-note a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .button {
    text-align: center;
  }

  .school .form .button button {
    padding: 0.8rem 2rem;
    background-color: #072060;
    color: white;
    font-size: 1.3rem;
    font-weight: bold;
    transition: 300ms;
  }

  .school .form .button button:hover {
    background: #3560ed;
  }

  .school footer hr {
    color: #ddd;
  }

  .school footer .items {
    margin: 1rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

  .school footer .items .item {
    padding: 0 2rem;
    color: #999;
    border-right: 1px solid #999;
    font-size: 90%;
  }

  .school footer .items .item:nth-last-child(1) {
    border-right: none;
  }

  .school footer .logo {
    padding: 3rem 0;
    background-color: #25476c;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }

  .school footer .logo .reserve {
    color: white;
    font-size: 80%;
    line-height: 3rem;
  }

  .school footer .logo .icon {
    margin-left: 1rem;
  }

  .school footer .logo .icon img {
    height: 3rem;
    min-height: 3rem;
  }

  .school footer .logo .service-name {
    margin-left: 0.5rem;
    line-height: 3rem;
    font-size: 1.2rem;
    font-weight: bold;
    color: white;
  }
}

@media screen and (min-width: 2161px) {
  html[lang=ja] {
    font-family: "Noto Sans JP", sans-serif;
  }

  button {
    cursor: pointer;
  }

  .school {
    min-width: 1110px;
  }

  .school .modal {
    display: none;
  }

  .school .header__navigation {
    display: grid;
    grid-template-columns: 3fr 3.5fr 2fr 2fr 2fr 2.5fr;
    flex-wrap: nowrap;
    min-height: 3rem;
  }

  .school .header__navigation__item {
    position: relative;
    display: grid;
    align-items: center;
    font-size: 1.03rem;
    text-align: center;
    color: white;
    transition: 300ms;
  }

  .school .header__navigation__item:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 1px;
    background-color: white;
  }

  .school .header__navigation__item:nth-child(1) {
    margin-left: 1.5rem;
  }

  .school .header__navigation__item:nth-child(1) img {
    width: 100%;
  }

  .school .header__navigation__item:nth-child(2) {
    margin-left: 2.5rem;
    color: gray;
    text-align: left;
  }

  .school .header__navigation__item:nth-child(3) {
    background-color: #0179a5;
  }

  .school .header__navigation__item:nth-child(3):hover {
    background: #43ccfe;
  }

  .school .header__navigation__item:nth-child(4) {
    background-color: #00b2b4;
  }

  .school .header__navigation__item:nth-child(4):hover {
    background: #4dfcff;
  }

  .school .header__navigation__item:nth-child(5) {
    background-color: #25476c;
  }

  .school .header__navigation__item:nth-child(5):hover {
    background: #5f92c8;
  }

  .school .header__navigation__item:nth-child(6) {
    background-color: #0065b2;
    line-height: 140%;
  }

  .school .header__navigation__item:nth-child(6):hover {
    background: #4db2ff;
  }

  .school .header__navigation__item:nth-child(7) {
    display: none;
  }

  .school .header__navigation__item .link {
    text-align: center;
  }

  .school .header__navigation__item .link p {
    display: inline-block;
    line-height: 2.4rem;
    color: white;
  }

  .school .fv {
    width: 100%;
    height: calc(100vh - 20rem);
    position: relative;
    display: flex;
    max-height: 675px;
  }

  .school .fv__content-left {
    width: 50%;
    background: url("https://web-img.rensa.jp.net/rensa/images/techmania/renewal/top/top_fv_title.png") no-repeat;
    background-size: cover;
    background-position: bottom;
  }

  .school .fv__content-left__title {
    padding-top: 10rem;
    padding-left: 4rem;
    float: left;
    text-align: center;
    letter-spacing: 0.2em;
    white-space: nowrap;
  }

  .school .fv__content-left__title h1 {
    font-size: 5.2rem;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title p {
    font-size: 1.2rem;
    opacity: 0.5;
  }

  .school .fv__content-left__title :nth-child(3) {
    font-size: 1.8rem;
    opacity: 1;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title :nth-child(4) {
    display: none;
  }

  .school .fv__content-left__reserve-button {
    display: none;
  }

  .school .fv__content-right {
    width: 50%;
    background: #7bd1fa;
    background-clip: content-box;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
  }

  .school .fv__content-right__title {
    width: 100%;
    background: #ffffff;
    background-clip: content-box;
    text-align: center;
    margin: 0.3rem auto;
  }

  .school .fv__content-right__title p {
    padding: 0.5rem;
    font-size: 1.5rem;
    font-weight: bold;
  }

  .school .fv__content-right__introductions {
    display: flex;
    justify-content: space-evenly;
  }

  .school .fv__content-right__introductions img {
    width: 70%;
  }

  .school .fv__content-right__introductions__introduction {
    width: 30%;
    color: white;
    text-shadow: 1px 1px 1px #0000003d;
  }

  .school .fv__content-right__introductions__introduction__caption {
    margin: 0.5rem 0;
    text-align: center;
    letter-spacing: -0.1rem;
    font-size: 1.9rem;
    font-weight: bold;
    text-shadow: 1px 1px 1px #07184e, 1px 1px 1px #07184e;
  }

  .school .fv__content-right__introductions__introduction__description {
    text-align: left;
    font-size: 1.3rem;
    line-height: 1.8rem;
  }

  .school .fv__content-right__reserve-button {
    padding: 0.5rem 1.5rem;
    background: #07184e;
    text-align: center;
    line-height: 220%;
    width: 50%;
    margin: 0.45rem auto;
    font-weight: bold;
    transition: 300ms;
  }

  .school .fv__content-right__reserve-button p {
    font-size: 1.5rem;
    color: white;
  }

  .school .fv__content-right__reserve-button p span {
    font-size: 1.8rem;
  }

  .school .fv__content-right__reserve-button:hover {
    background: #3560ed;
  }

  .school .campaign {
    padding: 2rem;
    text-align: center;
    background: #fdeea1;
    background-clip: content-box;
    font-weight: bold;
  }

  .school .campaign__inform {
    font-size: 2.2rem;
  }

  .school .campaign__inform p {
    margin-top: 3rem;
  }

  .school .campaign__inform span {
    font-size: 3rem;
    color: #f81501;
    font-weight: bold;
  }

  .school .campaign__inform__billbord {
    display: inline-block;
    padding: 1.8rem 3.7rem;
    margin: 2rem auto;
    color: white;
    background-color: #7bd1fa;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
  }

  .school .campaign__inform__reserve-button {
    padding: 1rem 3rem;
    background: #f81501;
    text-align: center;
    line-height: 225%;
    margin: 2rem 0 1rem;
    transition: 300ms;
  }

  .school .campaign__inform__reserve-button p {
    margin: unset;
    color: white;
    font-size: 2rem;
    line-height: 2rem;
  }

  .school .campaign__inform__reserve-button span {
    font-size: 2.2rem;
  }

  .school .campaign__inform__reserve-button:hover {
    background: #fe9d94;
  }

  .school .campaign__foot-note {
    font-size: 1.3rem;
    line-height: 2rem;
    margin-bottom: 2rem;
  }

  .school .carrier {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    background-color: #7bd1fa;
  }

  .school .carrier__title {
    color: white;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 3.6rem;
  }

  .school .carrier__contents {
    width: 80%;
    margin: 0 auto;
    margin-top: 1rem;
    justify-content: space-around;
  }

  .school .carrier__contents__content {
    margin: 2rem 0;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .carrier__contents__content__caption {
    color: white;
    background: #072060;
    font-size: 2.2rem;
    padding: 2rem;
    font-weight: bold;
    line-height: 3.5rem;
  }

  .school .carrier__contents__content__caption .br_sp {
    display: none;
  }

  .school .carrier__contents__content__introduction {
    background: white;
    display: flex;
    padding: 0 3rem;
  }

  .school .carrier__contents__content__introduction div {
    width: 50%;
    margin: 1rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: white;
  }

  .school .carrier__contents__content__introduction div img {
    width: 100%;
  }

  .school .carrier__contents__content__introduction div p {
    color: #1d2946;
    text-align: left;
    line-height: 3rem;
    font-size: 1.8rem;
  }

  .school .carrier__reserve-button {
    padding: 0.75rem 2.2rem;
    margin-top: 2rem;
    background: #07184e;
    text-align: center;
    line-height: 225%;
    width: 30%;
    font-weight: bold;
    transition: 300ms;
  }

  .school .carrier__reserve-button p {
    font-size: 1.5rem;
    color: white;
  }

  .school .carrier__reserve-button p span {
    font-size: 1.8rem;
  }

  .school .carrier__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum {
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;
    background-color: white;
  }

  .school .curriculum__title {
    color: #072060;
    font-size: 2.7rem;
    font-weight: bold;
    line-height: 3.6rem;
  }

  .school .curriculum__contents {
    width: 90%;
    margin: 0 auto;
    justify-content: space-around;
    align-items: center;
    display: flex;
    gap: 1.5rem;
  }

  .school .curriculum__contents__content {
    margin: 2rem 0 auto;
    width: 30%;
    max-width: 600px;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .curriculum__contents__content__buillbord {
    color: white;
    background: #072060;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    padding: 1rem;
  }

  .school .curriculum__contents__content__buillbord p {
    white-space: nowrap;
  }

  .school .curriculum__contents__content__introduction {
    background: white;
  }

  .school .curriculum__contents__content__introduction div {
    background-color: white;
    justify-content: center;
    overflow: hidden;
  }

  .school .curriculum__contents__content__introduction div img {
    pointer-events: none;
    width: 100%;
  }

  .school .curriculum__contents__content__introduction div p {
    padding: 1rem;
    color: #1d2946;
    text-align: left;
    line-height: 3rem;
    font-size: 1.5rem;
    min-height: 675px;
  }

  .school .curriculum__contents__flow {
    font-size: 3rem;
    font-weight: bold;
  }

  .school .curriculum__inform {
    padding: 0 3rem;
  }

  .school .curriculum__inform :nth-child(1) {
    color: #082060;
    font-size: 2.7rem;
    margin: 3rem 0 1rem;
    font-weight: bold;
  }

  .school .curriculum__inform :nth-child(2) {
    margin: 0.5rem 0;
    font-size: 1.5rem;
  }

  .school .curriculum__inform :nth-child(2) span {
    color: #000000;
    font-weight: 600;
  }

  .school .curriculum__inform :nth-child(3) {
    font-size: 1.5rem;
    line-height: 3rem;
  }

  .school .curriculum__inform :nth-child(4) {
    display: inline;
    color: #f81501;
    font-weight: bold;
    line-height: 5rem;
    font-size: 3rem;
    padding: 0.4rem;
    margin: 1rem 0;
    background: #fceca6;
  }

  .school .curriculum__inform :nth-child(5) {
    font-size: 1.5rem;
    line-height: 3rem;
    margin-bottom: 2rem;
  }

  .school .curriculum__reserve-button {
    padding: 1.5rem;
    background: #07184e;
    text-align: center;
    font-size: 1.5rem;
    margin: 0 auto 1rem;
    transition: 300ms;
  }

  .school .curriculum__reserve-button p {
    color: white;
    font-weight: bold;
  }

  .school .curriculum__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker {
    background: #fceca6;
    transition: 300ms;
  }

  .school .curriculum__reserve-button.unker p {
    color: #072060;
  }

  .school .curriculum__reserve-button.unker:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker:hover p {
    color: white;
  }

  .school .review {
    background: #7bd1fa;
    text-align: center;
    padding: 3rem 0;
  }

  .school .review__title {
    font-weight: bold;
    color: white;
    font-size: 3rem;
  }

  .school .review__contents {
    display: flex;
    flex-wrap: wrap;
    gap: 2.2rem 3rem;
    margin: 3rem;
    justify-content: center;
  }

  .school .review__contents__content {
    padding: 1rem 1.7rem;
    width: 30%;
    background: white;
    cursor: pointer;
    transition: 300ms;
    overflow: hidden;
    border-radius: 27px;
    transform: translate(0, 0);
    box-shadow: 5px 2.5px 2.5px #0008, 5px 2.5px 2.5px #0008;
  }

  .school .review__contents__content__img {
    width: 110%;
    margin: -1rem -2rem 0;
  }

  .school .review__contents__content__caption {
    text-align: left;
    font-weight: bold;
    font-size: 1.7rem;
    line-height: 1.6rem;
    margin-top: 0.5rem;
  }

  .school .review__contents__content__under-line {
    width: 100%;
    margin: 1rem auto;
    height: 1px;
    background: #6668;
  }

  .school .review__contents__content__description {
    text-align: left;
    font-size: 1.5rem;
    line-height: 2rem;
    opacity: 0.56;
  }

  .school .review__contents__content:hover {
    transform: translate(0.15rem, 0.15rem);
    box-shadow: -0.5px -0.5px 2.5px #00000089;
    filter: brightness(1.05);
  }

  .school .review__contents-sp {
    display: none;
  }

  .school .review__see-more-button {
    padding: 0.8rem 3rem;
    background: #fce57c;
    border-radius: 3rem;
    transform: translate(0, 0);
    box-shadow: 3px 2.5px 2.5px #0008, 3px 2.5px 2.5px #0008;
    transition: 300ms;
    font-size: 1.8rem;
  }

  .school .review__see-more-button:hover {
    background: #fdefaf;
    transform: translate(0.1rem, 0.1rem);
    box-shadow: -0.5px -0.5px 2.5px #00000089;
  }

  .school .support {
    padding: 2rem 0;
  }

  .school .support .title {
    margin: 0 auto;
    font-size: 2.2rem;
    color: #07184e;
    text-align: center;
    line-height: 3rem;
    letter-spacing: 0.1rem;
    font-weight: bold;
  }

  .school .support .bar {
    margin: 1rem 0;
    padding: 0.2rem;
    height: 6rem;
    background-color: #080e44;
  }

  .school .support .bar .text {
    display: inline-block;
    width: 16rem;
    height: calc(6rem - 0.4rem);
    line-height: 4rem;
    margin-left: calc(50% - 8rem);
    font-size: 1.6rem;
    text-align: center;
    background-color: white;
    letter-spacing: 0.2rem;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
  }

  .school .form {
    padding-bottom: 1rem;
  }

  .school .form p {
    text-align: center;
    line-height: 1.5rem;
  }

  .school .form a {
    text-decoration: underline;
  }

  .school .form a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .title {
    padding: 1rem 2rem;
    color: white;
    background-color: #7bd1fa;
    font-size: 2.7rem;
    line-height: 3rem;
    text-align: center;
    font-weight: bold;
  }

  .school .form .title span {
    font-size: 50%;
    color: black;
  }

  .school .form__inform {
    margin: 1.5rem 0;
    text-align: center;
    line-height: 1rem;
    font-size: 1.5rem;
  }

  .school .form .announce {
    text-align: left;
    width: 65%;
    margin: 0 auto;
    line-height: 2rem;
    font-size: 1.5rem;
  }

  .school .form .announce__caption {
    font-size: 2.1rem;
    font-weight: bold;
  }

  .school .form .announce__note {
    font-size: 1.3rem;
    font-weight: 100;
  }

  .school .form__reservationCalendar {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__reservationCalendar__inform {
    width: 65%;
    text-align: left;
  }

  .school .form__reservationCalendar__calendar {
    width: 70%;
    margin: 0 auto;
  }

  .school .form__reservationCalendar .calendar {
    width: 100%;
    margin: 2rem 0;
  }

  .school .form__reservationCalendar p {
    font-weight: bold;
    margin: 0 auto;
    text-align: left;
    line-height: 1rem;
    font-size: 1rem;
  }

  .school .form__reservationCalendar p :not(.calendar) {
    width: 50%;
    line-height: 1.5rem;
  }

  .school .form__reservationCalendar p span {
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
  }

  .school .form__reservationCalendar a {
    text-align: center;
    text-decoration: none;
  }

  .school .form__reservationCalendar a:hover {
    color: #000000;
  }

  .school .form__input-area {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__input-area__inform {
    width: 65%;
    margin: 0 auto;
    padding: 0 1rem;
    font-size: 0.8rem;
  }

  .school .form__input-area__inform span {
    display: flex;
    flex-direction: column;
    font-weight: bold;
    margin: 1rem 0;
    font-size: 1rem;
  }

  .school .form__input-area__inform p {
    text-align: left;
    line-height: 2rem;
  }

  .school .form__input-area p {
    text-align: left;
  }

  .school .form .items {
    width: 70%;
    margin: 0 auto;
  }

  .school .form .items .item {
    display: flex;
    margin-top: 2rem;
  }

  .school .form .items .item .name {
    min-width: 15rem;
    text-align: center;
  }

  .school .form .items .item .name p {
    font-size: 1.5rem;
    font-weight: bold;
    float: right;
    margin-right: 1rem;
    line-height: 3rem;
  }

  .school .form .items .item .require {
    min-width: 3rem;
    padding: 0 0.5rem;
    line-height: 2rem;
    color: white;
    background-color: #f81501;
    text-align: center;
    font-size: 1rem;
  }

  .school .form .items .item .require.none {
    background-color: transparent;
  }

  .school .form .items .item .require p {
    line-height: 3rem;
  }

  .school .form .items .item .value {
    width: 100%;
    margin-left: 0.5rem;
  }

  .school .form .items .item .value input {
    line-height: 3rem;
    padding: 0 0.5rem;
    color: #3c4e65;
    box-shadow: none;
    box-sizing: border-box;
    outline: 0;
    border-radius: 4px;
    border: solid 1px #b2c4c7;
    background-color: #fafbfc;
    width: 100%;
    font-size: 1.5rem;
  }

  .school .form .items .item .value .comment {
    margin-left: 3rem;
    width: calc( 100% - 3rem);
  }

  .school .form .items .item .value .ln:nth-child(2),
  .school .form .items .item .value .fn:nth-child(2) {
    margin-left: 0.5rem;
  }

  .school .form .items .item .value .select {
    display: inline-block;
    position: relative;
  }

  .school .form .items .item .value .select:after {
    content: "\203A";
    transform: rotate(90deg);
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
  }

  .school .form .items .item .value .select select {
    width: 20rem;
    padding: 0.5rem 1rem;
    background-color: #fafbfc;
    border: solid 1px #b2c4c7;
    border-radius: 4px;
  }

  .school .form__foot-note {
    margin: 3rem 0;
    font-size: 1.5rem;
  }

  .school .form__foot-note a {
    text-decoration: underline;
  }

  .school .form__foot-note a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .button {
    text-align: center;
    margin: 1.5rem 0;
  }

  .school .form .button button {
    padding: 1.2rem 3rem;
    background-color: #072060;
    color: white;
    font-size: 2rem;
    font-weight: bold;
    transition: 300ms;
  }

  .school .form .button button:hover {
    background: #3560ed;
  }

  .school footer hr {
    color: #ddd;
  }

  .school footer .items {
    margin: 1.5rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 1.5rem;
  }

  .school footer .items .item {
    padding: 0 2rem;
    color: #999;
    border-right: 1px solid #999;
    font-size: 90%;
  }

  .school footer .items .item:nth-last-child(1) {
    border-right: none;
  }

  .school footer .logo {
    padding: 3rem 0;
    background-color: #25476c;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }

  .school footer .logo .reserve {
    color: white;
    font-size: 1.5rem;
    line-height: 3rem;
  }

  .school footer .logo .icon {
    margin-left: 1rem;
  }

  .school footer .logo .icon img {
    height: 3rem;
    min-height: 3rem;
  }

  .school footer .logo .service-name {
    margin-left: 0.5rem;
    line-height: 3rem;
    font-size: 1.5rem;
    font-weight: bold;
    color: white;
  }
}

@media screen and (min-width: 2881px) {
  html[lang=ja] {
    font-family: "Noto Sans JP", sans-serif;
  }

  button {
    cursor: pointer;
  }

  .school {
    min-width: 1110px;
  }

  .school .modal {
    display: none;
  }

  .school .header__navigation {
    display: grid;
    grid-template-columns: 3fr 3.5fr 2fr 2fr 2fr 2.5fr;
    flex-wrap: nowrap;
    min-height: 6rem;
  }

  .school .header__navigation__item {
    position: relative;
    display: grid;
    align-items: center;
    font-size: 1.4rem;
    text-align: center;
    color: white;
    transition: 300ms;
  }

  .school .header__navigation__item:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 1px;
    background-color: white;
  }

  .school .header__navigation__item:nth-child(1) {
    margin-left: 1.5rem;
  }

  .school .header__navigation__item:nth-child(1) img {
    width: 100%;
  }

  .school .header__navigation__item:nth-child(2) {
    margin-left: 2.5rem;
    color: gray;
    text-align: left;
  }

  .school .header__navigation__item:nth-child(3) {
    background-color: #0179a5;
  }

  .school .header__navigation__item:nth-child(3):hover {
    background: #43ccfe;
  }

  .school .header__navigation__item:nth-child(4) {
    background-color: #00b2b4;
  }

  .school .header__navigation__item:nth-child(4):hover {
    background: #4dfcff;
  }

  .school .header__navigation__item:nth-child(5) {
    background-color: #25476c;
  }

  .school .header__navigation__item:nth-child(5):hover {
    background: #5f92c8;
  }

  .school .header__navigation__item:nth-child(6) {
    background-color: #0065b2;
    line-height: 140%;
  }

  .school .header__navigation__item:nth-child(6):hover {
    background: #4db2ff;
  }

  .school .header__navigation__item:nth-child(7) {
    display: none;
  }

  .school .header__navigation__item .link {
    text-align: center;
  }

  .school .header__navigation__item .link p {
    display: inline-block;
    line-height: 2.4rem;
    color: white;
  }

  .school .fv {
    width: 100%;
    height: calc(100vh - 20rem);
    position: relative;
    display: flex;
    max-height: 900px;
  }

  .school .fv__content-left {
    width: 50%;
    background: url("https://web-img.rensa.jp.net/rensa/images/techmania/renewal/top/top_fv_title.png") no-repeat;
    background-size: cover;
    background-position: bottom;
  }

  .school .fv__content-left__title {
    padding-top: 13rem;
    padding-left: 7rem;
    float: left;
    text-align: center;
    letter-spacing: 0.2em;
    white-space: nowrap;
  }

  .school .fv__content-left__title h1 {
    font-size: 7rem;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title p {
    font-size: 1.6rem;
    opacity: 0.5;
  }

  .school .fv__content-left__title :nth-child(3) {
    font-size: 2.4rem;
    opacity: 1;
    font-weight: bold;
    font-family: "Arial Black";
  }

  .school .fv__content-left__title :nth-child(4) {
    display: none;
  }

  .school .fv__content-left__reserve-button {
    display: none;
  }

  .school .fv__content-right {
    width: 50%;
    background: #7bd1fa;
    background-clip: content-box;
    display: flex;
    text-align: center;
    flex-direction: column;
    justify-content: center;
  }

  .school .fv__content-right__title {
    width: 100%;
    background: #ffffff;
    background-clip: content-box;
    text-align: center;
    margin: 0.6rem auto;
  }

  .school .fv__content-right__title p {
    padding: 0.5rem;
    font-size: 2rem;
    font-weight: bold;
  }

  .school .fv__content-right__introductions {
    display: flex;
    justify-content: space-evenly;
  }

  .school .fv__content-right__introductions img {
    width: 70%;
  }

  .school .fv__content-right__introductions__introduction {
    width: 30%;
    color: white;
    text-shadow: 1px 1px 1px #0000003d;
  }

  .school .fv__content-right__introductions__introduction__caption {
    margin: 0.5rem 0;
    text-align: center;
    letter-spacing: -0.1rem;
    font-size: 2.6rem;
    font-weight: bold;
    text-shadow: 1px 1px 1px #07184e, 1px 1px 1px #07184e;
  }

  .school .fv__content-right__introductions__introduction__description {
    text-align: left;
    font-size: 1.8rem;
    line-height: 2.4rem;
  }

  .school .fv__content-right__reserve-button {
    padding: 1rem 3rem;
    background: #07184e;
    text-align: center;
    line-height: 150%;
    width: 50%;
    margin: 0.3rem auto;
    font-weight: bold;
    transition: 300ms;
  }

  .school .fv__content-right__reserve-button p {
    color: white;
    line-height: 2.5rem;
    font-size: 2rem;
  }

  .school .fv__content-right__reserve-button p span {
    font-size: 2.4rem;
  }

  .school .fv__content-right__reserve-button:hover {
    background: #3560ed;
  }

  .school .campaign {
    padding: 2rem;
    text-align: center;
    background: #fdeea1;
    background-clip: content-box;
    font-weight: bold;
  }

  .school .campaign__inform {
    font-size: 3rem;
  }

  .school .campaign__inform p {
    margin-top: 2rem;
  }

  .school .campaign__inform span {
    font-size: 4rem;
    color: #f81501;
    font-weight: bold;
  }

  .school .campaign__inform__billbord {
    display: inline-block;
    padding: 2.4rem 2.5rem;
    margin: 1rem auto;
    color: white;
    background-color: #7bd1fa;
    letter-spacing: 0.1em;
    text-align: center;
    width: 100%;
  }

  .school .campaign__inform__reserve-button {
    padding: 1rem 3rem;
    background: #f81501;
    text-align: center;
    margin: 2rem 0 1rem;
    transition: 300ms;
    font-size: 2rem;
  }

  .school .campaign__inform__reserve-button p {
    margin: unset;
    color: white;
    font-size: 2.5rem;
    line-height: 3rem;
  }

  .school .campaign__inform__reserve-button span {
    font-size: 3rem;
  }

  .school .campaign__inform__reserve-button:hover {
    background: #fe9d94;
  }

  .school .campaign__foot-note {
    font-size: 1.5rem;
    line-height: 2rem;
    margin-bottom: 2rem;
  }

  .school .carrier {
    padding: 3rem 0;
    text-align: center;
    background-color: #7bd1fa;
  }

  .school .carrier__title {
    color: white;
    font-size: 3.5rem;
    font-weight: bold;
    line-height: 4.8rem;
  }

  .school .carrier__contents {
    width: 80%;
    margin: 0 auto;
    margin-top: 1rem;
    justify-content: space-around;
  }

  .school .carrier__contents__content {
    margin: 4rem 0;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .carrier__contents__content__caption {
    color: white;
    background: #072060;
    font-size: 3rem;
    padding: 1rem;
    font-weight: bold;
    line-height: 4.6rem;
  }

  .school .carrier__contents__content__caption .br_sp {
    display: none;
  }

  .school .carrier__contents__content__introduction {
    background: white;
    display: flex;
    padding: 0 3rem;
  }

  .school .carrier__contents__content__introduction div {
    width: 50%;
    margin: 2rem auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background-color: white;
    padding: 1rem;
  }

  .school .carrier__contents__content__introduction div img {
    width: 100%;
  }

  .school .carrier__contents__content__introduction div p {
    color: #1d2946;
    text-align: left;
    line-height: 5rem;
    font-size: 2.4rem;
  }

  .school .carrier__reserve-button {
    padding: 1rem 3rem;
    margin-top: 3.5rem;
    background: #07184e;
    text-align: center;
    line-height: 150%;
    width: 30%;
    font-weight: bold;
    transition: 300ms;
  }

  .school .carrier__reserve-button p {
    font-size: 2rem;
    line-height: 2.5rem;
    color: white;
  }

  .school .carrier__reserve-button p span {
    font-size: 2.4rem;
  }

  .school .carrier__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum {
    padding: 3.5rem 0;
    text-align: center;
    background-color: white;
  }

  .school .curriculum__title {
    color: #072060;
    font-size: 3.6rem;
    font-weight: bold;
    line-height: 2.8rem;
    margin: 2rem 0;
  }

  .school .curriculum__contents {
    width: 90%;
    margin: 0 auto;
    justify-content: space-around;
    align-items: center;
    display: flex;
    gap: 2rem;
  }

  .school .curriculum__contents__content {
    margin: 2rem 0 auto;
    width: 30%;
    max-width: 800px;
    box-shadow: 2px 2px 5px #00000078, 2px 2px 5px #00000078;
  }

  .school .curriculum__contents__content__buillbord {
    color: white;
    background: #072060;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    padding: 2rem;
  }

  .school .curriculum__contents__content__buillbord p {
    white-space: nowrap;
  }

  .school .curriculum__contents__content__introduction {
    background: white;
  }

  .school .curriculum__contents__content__introduction div {
    background-color: white;
    justify-content: center;
    overflow: hidden;
  }

  .school .curriculum__contents__content__introduction div img {
    pointer-events: none;
    width: 100%;
  }

  .school .curriculum__contents__content__introduction div p {
    padding: 1rem;
    color: #1d2946;
    text-align: left;
    line-height: 4rem;
    font-size: 2rem;
    min-height: 900px;
  }

  .school .curriculum__contents__flow {
    font-size: 4rem;
    font-weight: bold;
  }

  .school .curriculum__inform {
    padding: 0 3rem;
  }

  .school .curriculum__inform :nth-child(1) {
    color: #082060;
    font-size: 3.6rem;
    margin: 6rem 0 2rem;
    font-weight: bold;
  }

  .school .curriculum__inform :nth-child(2) {
    font-size: 3rem;
    margin: 1rem 0;
  }

  .school .curriculum__inform :nth-child(2) span {
    font-size: 4rem;
    color: #000000;
    font-weight: 600;
  }

  .school .curriculum__inform :nth-child(3) {
    font-size: 2rem;
    line-height: 4rem;
    margin-bottom: 2rem;
  }

  .school .curriculum__inform :nth-child(4) {
    display: inline;
    color: #f81501;
    font-weight: bold;
    line-height: 5rem;
    font-size: 5rem;
    padding: 0.4rem;
    margin: 1.5rem 0;
    background: #fceca6;
  }

  .school .curriculum__inform :nth-child(5) {
    font-size: 2rem;
    line-height: 5rem;
    margin: 2rem 0;
  }

  .school .curriculum__reserve-button {
    padding: 2rem;
    font-size: 2rem;
    background: #07184e;
    text-align: center;
    margin: 0 auto 2rem;
    transition: 300ms;
  }

  .school .curriculum__reserve-button p {
    color: white;
    font-weight: bold;
  }

  .school .curriculum__reserve-button:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker {
    background: #fceca6;
    transition: 300ms;
  }

  .school .curriculum__reserve-button.unker p {
    color: #072060;
  }

  .school .curriculum__reserve-button.unker:hover {
    background: #3560ed;
  }

  .school .curriculum__reserve-button.unker:hover p {
    color: white;
  }

  .school .review {
    background: #7bd1fa;
    text-align: center;
    padding: 4rem 0;
  }

  .school .review__title {
    font-weight: bold;
    color: white;
    font-size: 4rem;
  }

  .school .review__contents {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem 4rem;
    margin: 4rem;
    justify-content: center;
  }

  .school .review__contents__content {
    padding: 1rem 2rem;
    width: 30%;
    background: white;
    cursor: pointer;
    transition: 300ms;
    overflow: hidden;
    border-radius: 36px;
    transform: translate(0, 0);
    box-shadow: 7.5px 3.75px 3.75px #0008, 7.5px 3.75px 3.75px #0008;
  }

  .school .review__contents__content__img {
    width: 110%;
    margin: -1rem -2rem 0;
  }

  .school .review__contents__content__caption {
    text-align: left;
    font-weight: bold;
    font-size: 2.2rem;
    line-height: 3.2rem;
    margin-top: 1rem;
  }

  .school .review__contents__content__under-line {
    width: 100%;
    margin: 1rem auto;
    height: 1px;
    background: #6668;
  }

  .school .review__contents__content__description {
    text-align: left;
    font-size: 1.6rem;
    line-height: 2.6rem;
    opacity: 0.56;
  }

  .school .review__contents__content:hover {
    transform: translate(0.15rem, 0.15rem);
    box-shadow: -0.75px -0.75px 3.75px #00000089;
    filter: brightness(1.05);
  }

  .school .review__contents-sp {
    display: none;
  }

  .school .review__see-more-button {
    padding: 1.6rem 6rem;
    background: #fce57c;
    font-size: 2rem;
    border-radius: 3rem;
    transform: translate(0, 0);
    box-shadow: 4.5px 1.75px 3.75px #0008, 4.5px 3.75px 3.75px #0008;
    transition: 300ms;
  }

  .school .review__see-more-button:hover {
    background: #fdefaf;
    transform: translate(0.1rem, 0.1rem);
    box-shadow: -0.75px -0.75px 3.75px #00000089;
  }

  .school .support {
    padding: 4rem 0;
  }

  .school .support .title {
    margin: 0 auto;
    font-size: 3rem;
    color: #07184e;
    text-align: center;
    line-height: 4rem;
    letter-spacing: 0.2rem;
    font-weight: bold;
  }

  .school .support .bar {
    margin: 1rem 0;
    padding: 0.2rem;
    height: 6rem;
    background-color: #080e44;
  }

  .school .support .bar .text {
    display: inline-block;
    width: 16rem;
    height: calc(6rem - 0.4rem);
    line-height: 4rem;
    margin-left: calc(50% - 8rem);
    font-size: 1.6rem;
    text-align: center;
    background-color: white;
    letter-spacing: 0.2rem;
    clip-path: polygon(100% 0, 0 0, 50% 100%);
  }

  .school .form {
    padding-bottom: 2rem;
  }

  .school .form p {
    text-align: center;
    line-height: 2rem;
    font-size: 2rem;
  }

  .school .form a {
    text-decoration: underline;
  }

  .school .form a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .title {
    padding: 2rem 4rem;
    color: white;
    background-color: #7bd1fa;
    font-size: 3.6rem;
    line-height: 4rem;
    text-align: center;
    font-weight: bold;
  }

  .school .form .title span {
    font-size: 50%;
    color: black;
  }

  .school .form__inform {
    margin: 3rem 0;
    text-align: center;
    line-height: 2rem;
  }

  .school .form .announce {
    text-align: left;
    width: 65%;
    margin: 0 auto;
    line-height: 4rem;
    font-size: 2rem;
  }

  .school .form .announce__caption {
    font-size: 2.8rem;
    font-weight: bold;
  }

  .school .form .announce__note {
    font-size: 1.8rem;
    font-weight: 100;
  }

  .school .form__reservationCalendar {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__reservationCalendar__inform {
    width: 65%;
    text-align: left;
  }

  .school .form__reservationCalendar__calendar {
    width: 70%;
    margin: 0 auto;
  }

  .school .form__reservationCalendar .calendar {
    width: 100%;
    margin: 2rem 0;
  }

  .school .form__reservationCalendar p {
    font-weight: bold;
    margin: 0 auto;
    text-align: left;
    line-height: 2rem;
    font-size: 1rem;
  }

  .school .form__reservationCalendar p :not(.calendar) {
    width: 50%;
    line-height: 1.5rem;
  }

  .school .form__reservationCalendar p span {
    display: flex;
    flex-direction: column;
    margin: 1rem 0;
  }

  .school .form__reservationCalendar a {
    text-align: center;
    text-decoration: none;
  }

  .school .form__reservationCalendar a:hover {
    color: #000000;
  }

  .school .form__input-area {
    width: 90%;
    margin: 0 auto;
    align-items: center;
  }

  .school .form__input-area__inform {
    width: 65%;
    margin: 0 auto;
    padding: 0 1rem;
    font-size: 0.8rem;
  }

  .school .form__input-area__inform span {
    display: flex;
    flex-direction: column;
    font-weight: bold;
    margin: 1rem 0;
    font-size: 1rem;
  }

  .school .form__input-area__inform p {
    text-align: left;
    line-height: 2rem;
  }

  .school .form__input-area p {
    text-align: left;
  }

  .school .form .items {
    width: 70%;
    margin: 0 auto;
  }

  .school .form .items .item {
    display: flex;
    margin-top: 3rem;
    height: 4rem;
    line-height: 4rem;
  }

  .school .form .items .item .name {
    min-width: 20rem;
    line-height: 2rem;
    text-align: center;
  }

  .school .form .items .item .name p {
    font-weight: bold;
    float: right;
    margin-right: 1rem;
    line-height: 4rem;
  }

  .school .form .items .item .require {
    min-width: 6rem;
    padding: 0 0.5rem;
    line-height: 2rem;
    color: white;
    background-color: #f81501;
    text-align: center;
  }

  .school .form .items .item .require.none {
    background-color: transparent;
  }

  .school .form .items .item .require p {
    line-height: 4rem;
    text-align: center;
  }

  .school .form .items .item .value {
    width: 100%;
    margin-left: 1rem;
  }

  .school .form .items .item .value input {
    font-size: 2rem;
    line-height: 2rem;
    padding: 0 1rem;
    color: #3c4e65;
    box-shadow: none;
    box-sizing: border-box;
    outline: 0;
    border-radius: 8px;
    border: solid 1px #b2c4c7;
    background-color: #fafbfc;
    width: 100%;
    height: 4rem;
  }

  .school .form .items .item .value .comment {
    margin-left: 6rem;
    width: calc( 100% - 6rem);
  }

  .school .form .items .item .value .ln:nth-child(2),
  .school .form .items .item .value .fn:nth-child(2) {
    margin-left: 0.5rem;
  }

  .school .form__foot-note {
    margin: 4rem 0;
  }

  .school .form__foot-note a {
    text-decoration: underline;
  }

  .school .form__foot-note a:hover {
    text-decoration: none;
    color: gray;
  }

  .school .form .button {
    text-align: center;
  }

  .school .form .button button {
    padding: 1.6rem 4rem;
    background-color: #072060;
    color: white;
    font-size: 2.6rem;
    font-weight: bold;
    transition: 300ms;
  }

  .school .form .button button:hover {
    background: #3560ed;
  }

  .school footer hr {
    color: #ddd;
  }

  .school footer .items {
    margin: 2rem 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 2rem;
  }

  .school footer .items .item {
    padding: 0 2rem;
    color: #999;
    border-right: 1px solid #999;
    font-size: 90%;
  }

  .school footer .items .item:nth-last-child(1) {
    border-right: none;
  }

  .school footer .logo {
    padding: 6rem 0;
    background-color: #25476c;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
  }

  .school footer .logo .reserve {
    color: white;
    font-size: 80%;
    line-height: 6rem;
    font-size: 1.5rem;
  }

  .school footer .logo .icon {
    margin-left: 2rem;
  }

  .school footer .logo .icon img {
    height: 3rem;
    min-height: 6rem;
  }

  .school footer .logo .service-name {
    margin-left: 2rem;
    line-height: 6rem;
    font-size: 2.5rem;
    font-weight: bold;
    color: white;
  }
}

