@charset "UTF-8";
/* Scss Document
*****************************************************************/
/* mixin
*********************************************************************/
/* カラー */
/* media query */
/* SP縦から */
/* SP横から */
/* タブレット縦から */
/* フルワイド */
/* 1280 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;700&display=swap");
/*　font-family: 'Noto Serif JP', serif;　*/
@import url("https://fonts.googleapis.com/css2?family=Yuji+Syuku&display=swap");
/*　font-family: 'Yuji Syuku', serif;　*/
.area_contents .block_contents .intro {
  padding: 20px 30px 30px;
  background: rgba(255, 255, 255, 0.4);
  margin: 30px 0 80px; }
  @media all and (max-width: 896px) {
    .area_contents .block_contents .intro {
      padding: 20px 20px 50px; } }
  .area_contents .block_contents .intro h2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    font-size: 2.5rem;
    font-weight: bold;
    letter-spacing: 0.2rem;
    line-height: 1.8em;
    padding-left: 1.2em;
    text-indent: -1.1em; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .intro h2 {
        font-size: 2rem;
        padding-left: 0;
        text-indent: 0;
        text-align: center; } }
    .area_contents .block_contents .intro h2 img {
      max-width: 150px;
      margin-right: 40px;
      border-radius: 5px; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .intro h2 img {
          display: block;
          margin-right: 0;
          margin-bottom: 20px; } }
  .area_contents .block_contents .intro p {
    text-align: center;
    margin-top: 10px;
    font-size: 1.6rem;
    line-height: 1.8em;
    letter-spacing: 0.05em; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .intro p {
        text-align: left;
        margin-top: 30px;
        font-size: 1.6rem; } }
.area_contents .block_contents .info {
  padding: 20px;
  margin-top: 30px;
  background: #fff;
  border-radius: 10px; }
  .area_contents .block_contents .info > div {
    display: flex;
    justify-content: center; }
    .area_contents .block_contents .info > div p {
      display: flex;
      justify-content: center;
      align-items: center;
      margin-top: 0; }
      .area_contents .block_contents .info > div p:first-child {
        position: relative;
        font-size: 1.8rem;
        font-weight: bold;
        letter-spacing: 0.2rem;
        line-height: 1.8em;
        margin-right: 50px; }
        @media all and (max-width: 896px) {
          .area_contents .block_contents .info > div p:first-child {
            font-size: 1.6rem;
            line-height: 1.6em;
            margin-right: 30px; } }
        .area_contents .block_contents .info > div p:first-child::after {
          position: absolute;
          content: "";
          top: 50%;
          transform: translateY(-50%);
          right: -30px;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 10px 0 10px 15px;
          border-color: transparent transparent transparent #1b3993; }
          @media all and (max-width: 896px) {
            .area_contents .block_contents .info > div p:first-child::after {
              right: -20px;
              border-width: 7px 0 7px 9.5px; } }
      .area_contents .block_contents .info > div p:last-child img {
        max-width: 120px;
        border-radius: 5px;
        margin: auto; }
        @media all and (max-width: 896px) {
          .area_contents .block_contents .info > div p:last-child img {
            max-width: 100px; } }
    .area_contents .block_contents .info > div + p {
      text-align: center;
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      align-items: center;
      font-size: 1.2rem; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .info > div + p {
          margin-top: 10px; } }
      .area_contents .block_contents .info > div + p img {
        max-width: 150px;
        margin-left: 10px; }
.area_contents .block_contents .box_readcopy p {
  margin-bottom: 50px; }
.area_contents .block_contents .tab {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1000px;
  margin: auto; }
  @media all and (max-width: 896px) {
    .area_contents .block_contents .tab {
      display: block; } }
  .area_contents .block_contents .tab li {
    display: inline-block;
    position: relative;
    border: #2A1710 solid 1px;
    border-radius: 50px;
    font-size: 2rem;
    line-height: 1em;
    letter-spacing: 0.2em;
    padding: 16px;
    text-align: center;
    max-width: 300px;
    min-width: 210px;
    width: 100%;
    cursor: pointer;
    margin: auto; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tab li {
        display: block; } }
    .area_contents .block_contents .tab li::after {
      content: "▲";
      font-size: 9px;
      position: absolute;
      top: 35%;
      transform: rotate(180deg);
      right: 16px; }
    .area_contents .block_contents .tab li.modelcourse1.active {
      border: #E75A25 solid 1px;
      background: #E75A25;
      color: #fff; }
    .area_contents .block_contents .tab li.modelcourse1:hover {
      border: #E75A25 solid 1px; }
    .area_contents .block_contents .tab li.modelcourse2.active {
      border: #05432C solid 1px;
      background: #05432C;
      color: #fff; }
    .area_contents .block_contents .tab li.modelcourse2:hover {
      border: #05432C solid 1px; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tab li.modelcourse2 {
        margin-top: 20px; } }
    .area_contents .block_contents .tab li.modelcourse3.active {
      border: #552A95 solid 1px;
      background: #552A95;
      color: #fff; }
    .area_contents .block_contents .tab li.modelcourse3:hover {
      border: #552A95 solid 1px; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tab li.modelcourse3 {
        margin-top: 20px; } }
  .area_contents .block_contents .tab.bottom {
    margin: 50px auto 0; }
    .area_contents .block_contents .tab.bottom li::after {
      transform: none; }
.area_contents .block_contents .tabcontents .tablist .coursename {
  text-align: center;
  padding: 30px 30px 60px;
  background: rgba(255, 255, 255, 0.4);
  margin: 50px 0 20px;
  letter-spacing: 0.2em; }
  @media all and (max-width: 896px) {
    .area_contents .block_contents .tabcontents .tablist .coursename {
      padding: 20px 10px 25px;
      margin: 50px 0 10px; } }
  .area_contents .block_contents .tabcontents .tablist .coursename p:first-child {
    position: relative;
    font-size: 3.5rem;
    line-height: 1em; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tabcontents .tablist .coursename p:first-child {
        font-size: 2.4rem; } }
    .area_contents .block_contents .tabcontents .tablist .coursename p:first-child::after {
      position: absolute;
      content: "";
      display: inline-block;
      width: 60px;
      bottom: -25px;
      left: 50%;
      transform: translateX(-50%);
      height: 5px; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .coursename p:first-child::after {
          width: 50px;
          bottom: -20px;
          height: 3px; } }
    .area_contents .block_contents .tabcontents .tablist .coursename p:first-child + p {
      font-size: 2rem;
      margin-top: 50px;
      line-height: 1.5em; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .coursename p:first-child + p {
          font-size: 1.5rem;
          margin-top: 40px; } }
      .area_contents .block_contents .tabcontents .tablist .coursename p:first-child + p span.bold {
        font-weight: bold; }
      .area_contents .block_contents .tabcontents .tablist .coursename p:first-child + p span.small {
        font-size: 1.5rem; }
      .area_contents .block_contents .tabcontents .tablist .coursename p:first-child + p span.last {
        display: block;
        margin-top: 20px;
        font-weight: bold; }
  .area_contents .block_contents .tabcontents .tablist .coursename img {
    margin-top: 80px; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tabcontents .tablist .coursename img {
        width: 100%;
        margin-top: 50px; } }
.area_contents .block_contents .tabcontents .tablist.modelcourse1 .coursename p:first-child::after {
  background-color: #E75A25; }
.area_contents .block_contents .tabcontents .tablist.modelcourse2 .coursename p:first-child::after {
  background-color: #05432C; }
.area_contents .block_contents .tabcontents .tablist.modelcourse3 .coursename p:first-child::after {
  background-color: #552A95; }
.area_contents .block_contents .tabcontents .tablist .box_twocolumn {
  position: relative;
  padding: 100px 0 50px; }
  @media all and (max-width: 480px) {
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn {
      padding: 40px 0; } }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn.border {
    margin-top: 70px;
    border-top: 2px solid #2A1710; }
    @media all and (max-width: 480px) {
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn.border {
        margin-top: 0; } }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn.border::before {
      position: absolute;
      top: -10px;
      left: 50%;
      transform: translateX(-50%);
      content: "または";
      background-color: #F8E8CF;
      color: #2A1710;
      width: 85px;
      padding: 0 10px;
      font-size: 2.5rem;
      font-weight: bold;
      letter-spacing: 0.1em; }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium {
    display: flex;
    align-items: flex-end;
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 1px;
    border-top: none;
    line-height: 1.2em; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium {
        font-size: 2.5rem;
        align-items: center; } }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium img {
      width: 40px;
      vertical-align: middle;
      margin-right: 10px; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium img {
          width: 30px; } }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium span.ruby {
      display: block;
      font-weight: normal;
      font-size: 1.2rem;
      line-height: 1em; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium span.ruby {
          font-size: 1rem; } }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium span.kakko {
      font-weight: normal;
      font-size: 2rem; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .headline_medium span.kakko {
          font-size: 1.8rem; } }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt p.copy {
    font-size: 2.2rem; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt p.copy {
        font-size: 2rem; } }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access {
    padding: 3.7vh 0 0; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access p {
      padding: 0; }
    @media all and (max-width: 896px) {
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more {
        text-align: left; } }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more.map {
      padding: 1vh 0 0; }
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more.map a::after {
        content: "";
        background: url(../../common/images/icon_map.svg);
        width: 15px;
        height: 19px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: 16px; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more.externallink a::after {
      content: "";
      background: url(../../common/images/icon_externallink.svg);
      width: 20px;
      height: 18px;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 12px; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more + .btn_more {
      padding: 2vh 0 0; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .access .btn_more a {
      font-size: 1.5rem;
      letter-spacing: 0.1em; }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .notice {
    margin-top: 10px;
    line-height: 1.6em;
    font-size: 1.4rem; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .notice li {
      padding-left: 1em;
      text-indent: -1em; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_txt .notice.red {
      color: #D50E25; }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img.tate {
    text-align: center; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img.tate img {
      max-height: 400px;
      width: auto; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img.tate img {
          max-height: none;
          width: 300px; } }
      @media all and (max-width: 480px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img.tate img {
          width: 220px; } }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .caption {
    margin-top: 15px;
    font-size: 1.5rem;
    text-align: right; }
    @media all and (max-width: 480px) {
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .caption {
        margin-top: 10px;
        font-size: 1.4rem; } }
  .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .movielink {
    font-size: 1.5rem;
    line-height: 1.8em;
    padding: 15px 0 0; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .movielink a {
      color: #456fa8;
      font-family: "游ゴシック", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, sans-serif;
      margin-left: 1em; }
      @media all and (max-width: 896px) {
        .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .movielink a {
          margin-left: 0;
          display: block; } }
      .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .movielink a.ml0 {
        margin-left: 0; }
    .area_contents .block_contents .tabcontents .tablist .box_twocolumn .side_img .movielink + .movielink {
      padding: 5px 0 0; }
.area_contents .block_contents .tabcontents .tablist .root {
  position: relative;
  background: #fff;
  border-radius: 5px;
  padding: 20px;
  text-align: center;
  margin-top: 50px; }
  .area_contents .block_contents .tabcontents .tablist .root h3 {
    font-size: 2rem;
    font-weight: bold; }
.area_contents .block_contents .tabcontents .tablist .arrow {
  position: relative;
  font-size: 2rem;
  color: #E83725;
  text-align: center;
  font-weight: bold;
  margin-top: 20px; }
  .area_contents .block_contents .tabcontents .tablist .arrow::after {
    position: absolute;
    display: block;
    content: "";
    bottom: -37px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #e83925 transparent transparent transparent; }
  .area_contents .block_contents .tabcontents .tablist .arrow.train::before {
    position: absolute;
    content: "";
    background: url(../images/icon_train.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    top: 50%;
    transform: translateY(-50%);
    margin-left: -2em;
    width: 30px;
    height: 30px; }
  .area_contents .block_contents .tabcontents .tablist .arrow.bus::before {
    position: absolute;
    content: "";
    background: url(../images/icon_bus.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    top: 50%;
    transform: translateY(-50%);
    margin-left: -2em;
    width: 30px;
    height: 30px; }
