<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "UTF-8";
/*----------------------------------
 commonHeadTtl
-----------------------------------*/
#commonHeadTtl {
  position: relative;
  width: 100%;
  height: 340px;
  padding-top: 50px; }
  @media (max-width: 768px) {
    #commonHeadTtl {
      height: 280px; } }
  @media (max-width: 480px) {
    #commonHeadTtl {
      height: 180px;
      padding-top: 20px; } }
  #commonHeadTtl::before, #commonHeadTtl::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 100%;
    z-index: -1; }
  #commonHeadTtl::before {
    clip-path: polygon(0 0, 100% 0, 100% 67%, 0% 92%);
    background: #dfe88f; }
  #commonHeadTtl::after {
    clip-path: polygon(0 0, 100% 0, 100% 60%, 0% 100%);
    background: #16a68e; }
  #commonHeadTtl h2 {
    color: #fff; }

/*----------------------------------
 login
-----------------------------------*/
.loginArea {
  padding-bottom: 60px; }
  .loginArea .loginWrap {
    background: #e5f5ed;
    padding: 60px; }
    @media (max-width: 768px) {
      .loginArea .loginWrap {
        padding: 60px 40px; } }
    @media (max-width: 480px) {
      .loginArea .loginWrap {
        padding: 50px 20px; } }
  .loginArea ul {
    justify-content: center; }
    .loginArea ul li:last-of-type {
      margin-top: 30px;
      width: 100%;
      text-align: center; }
    @media (max-width: 480px) {
      .loginArea ul li {
        display: flex; }
        .loginArea ul li + li {
          margin-top: 15px; }
        .loginArea ul li:last-of-type {
          margin-top: 15px;
          text-align: left; } }
  .loginArea label {
    font-size: 2.4rem;
    font-weight: 700;
    padding: 0 1em 0 2em;
    cursor: pointer; }
    @media (max-width: 1024px) {
      .loginArea label {
        padding: 0 0.5em 0 1em; } }
    @media (max-width: 768px) {
      .loginArea label {
        font-size: 2.0rem; } }
    @media (max-width: 480px) {
      .loginArea label {
        width: 50%;
        padding: 0 0.5em; } }
  .loginArea select, .loginArea input {
    width: 200px;
    height: 70px;
    font-size: 1.8rem;
    border: solid 1px #333;
    border-radius: 5px;
    padding: 5px 5px 5px 10px; }
    @media (max-width: 1024px) {
      .loginArea select, .loginArea input {
        width: 150px; } }
    @media (max-width: 768px) {
      .loginArea select, .loginArea input {
        font-size: 1.6rem;
        width: 120px;
        height: 50px; } }
    @media (max-width: 480px) {
      .loginArea select, .loginArea input {
        width: 50%; } }
  .loginArea select {
    cursor: pointer; }

/*----------------------------------
 col2
-----------------------------------*/
.col2 {
  align-items: flex-start; }
  .col2 .txtBox {
    width: 50%;
    padding-right: 50px; }
    @media (max-width: 480px) {
      .col2 .txtBox {
        width: 100%;
        padding-right: 0; } }
    .col2 .txtBox h2 {
      margin-bottom: 70px; }
      .col2 .txtBox h2 span {
        display: block;
        line-height: 1.6; }
      @media (max-width: 1024px) {
        .col2 .txtBox h2 {
          font-size: 4.0rem; } }
      @media (max-width: 768px) {
        .col2 .txtBox h2 {
          font-size: 2.8rem; } }
      @media (max-width: 480px) {
        .col2 .txtBox h2 {
          font-size: 2.4rem;
          margin-bottom: 50px; } }
  .col2 figure {
    width: 50%;
    position: relative; }
    @media (max-width: 480px) {
      .col2 figure {
        width: 80%;
        margin: 50px auto 0; } }
    .col2 figure::before, .col2 figure::after {
      content: '';
      display: block;
      width: 100%; }
    .col2 figure::before {
      padding-top: 65.517%; }
    .col2 figure::after {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 100%;
      background: #dfe88f;
      transform: skewY(-5deg);
      z-index: -1; }
    .col2 figure picture {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      transition: all .3s; }
      .col2 figure picture source, .col2 figure picture img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0; }
  .col2.return .txtBox {
    padding-right: 0;
    padding-left: 50px; }
    @media (max-width: 480px) {
      .col2.return .txtBox {
        padding-left: 0; } }
  @media (min-width: 481px) {
    .col2.return figure {
      order: -1; } }

/*----------------------------------
 about
-----------------------------------*/
#aboutInfo ul.dotsList {
  margin-top: 1.2em; }

#examinee {
  padding: 50px 0 min(120px,13.5vw); }
  @media (max-width: 768px) {
    #examinee {
      padding: 30px 0 min(120px,13.5vw); } }
  #examinee section {
    width: 90%;
    max-width: 1160px;
    margin: 0 auto; }
    @media (max-width: 480px) {
      #examinee section {
        width: 100%; }
        #examinee section .examineeTable {
          overflow-x: scroll;
          margin-left: 5%;
          padding-right: 5%;
          padding-bottom: 10px; } }
  #examinee table {
    width: 100%;
    text-align: center;
    border-spacing: 4px; }
    @media (max-width: 480px) {
      #examinee table {
        width: 600px; } }
    #examinee table tbody {
      -webkit-text-size-adjust: 100%; }
    #examinee table tr th {
      width: calc(100% / 6);
      font-weight: 700;
      line-height: 1.4; }
    #examinee table tr td {
      width: calc(100% / 6);
      height: 56px;
      background: #e5f5ed;
      padding: 5px; }
      @media (max-width: 480px) {
        #examinee table tr td {
          padding: 10px 5px; } }
    #examinee table tr:first-of-type th {
      background: #16a68e;
      color: #fff;
      height: 78px; }
    #examinee table tr:not(first-of-type) th {
      background: #dfe88f; }

/*------------------------
 composition
------------------------*/
#composition {
  padding-bottom: min(120px,13.5vw); }
  #composition .subjectArea {
    background: #e5f5ed;
    margin-top: 50px;
    padding: 50px; }
    @media (max-width: 1024px) {
      #composition .subjectArea {
        padding: 40px 30px; } }
    @media (max-width: 480px) {
      #composition .subjectArea {
        padding: 30px 15px; } }
    #composition .subjectArea h4 {
      text-align: center;
      margin-bottom: 60px; }
      #composition .subjectArea h4 span {
        font-size: 3.6rem;
        font-weight: 700;
        padding: 0 1em 0.8em;
        border-bottom: solid 3px #333; }
      @media (max-width: 768px) {
        #composition .subjectArea h4 {
          margin-bottom: 40px; }
          #composition .subjectArea h4 span {
            font-size: 2.8rem;
            padding: 0 1em 0.5em; } }
    #composition .subjectArea section + section {
      margin-top: 60px; }
    #composition .subjectArea section .grade {
      background: #dfe88f;
      font-size: 2.8rem;
      font-weight: 700;
      text-align: center;
      padding: 0.8rem 0; }
    @media (max-width: 768px) {
      #composition .subjectArea section .grade {
        font-size: 2.2rem; } }
    @media (max-width: 480px) {
      #composition .subjectArea section .grade {
        font-size: 2.0rem; } }

/*------------------------
 composition slider
------------------------*/
.timeSlide_Btn {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 25px;
  margin: 40px 0 50px;
  position: relative;
  align-items: center; }
  .timeSlide_Btn.time3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 50px; }
  @media (max-width: 1024px) {
    .timeSlide_Btn {
      gap: 20px; }
      .timeSlide_Btn.time3 {
        gap: 20px; } }
  @media (max-width: 768px) {
    .timeSlide_Btn {
      grid-template-columns: repeat(2, 1fr);
      margin: 30px 0 40px; } }
  @media (max-width: 480px) {
    .timeSlide_Btn {
      margin: 20px 0 30px;
      gap: 10px; }
      .timeSlide_Btn.time3 {
        gap: 10px; } }
  .timeSlide_Btn .timeBtn {
    cursor: pointer;
    display: flex;
    font-size: 1.8rem;
    font-weight: 700;
    border-radius: 10px;
    justify-content: center;
    align-items: center;
    transition: all 0.5s;
    position: relative;
    background: #bdbdbd;
    color: #fff;
    height: 56px;
    line-height: 1.3;
    text-align: center; }
    .timeSlide_Btn .timeBtn:hover {
      background: #16a68e; }
  .timeSlide_Btn .timeBtn-active {
    background: #16a68e; }

.examSlideWrap {
  position: relative; }

.examSlide ul li .examBox {
  position: relative;
  margin: 0 min(90px,10.125vw);
  background: #fff; }
  @media (max-width: 1024px) {
    .examSlide ul li .examBox {
      margin: 0 min(50px,5.625vw); } }
  .examSlide ul li .examBox h3 {
    background: #16a68e;
    color: #fff;
    height: 68px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2.8rem; }
    @media (max-width: 768px) {
      .examSlide ul li .examBox h3 {
        height: 50px;
        font-size: 2.2rem; } }
  .examSlide ul li .examBox .topics {
    padding: 20px 20px 40px; }
    .examSlide ul li .examBox .topics dl {
      display: flex;
      border-bottom: solid 2px #16a68e;
      padding: 1rem 0;
      align-items: center; }
      .examSlide ul li .examBox .topics dl dt {
        color: #16a68e;
        font-weight: 700;
        width: 100px;
        text-align: center; }
      .examSlide ul li .examBox .topics dl dd {
        width: calc(100% - 100px);
        word-break: auto-phrase; }
        .examSlide ul li .examBox .topics dl dd span {
          margin: 0 1em; }
        .examSlide ul li .examBox .topics dl dd .social {
          display: flex;
          align-items: center; }
          .examSlide ul li .examBox .topics dl dd .social + .social {
            border-top: dotted 2px #16a68e; }
          .examSlide ul li .examBox .topics dl dd .social:first-of-type {
            padding-bottom: 1rem; }
          .examSlide ul li .examBox .topics dl dd .social:last-of-type {
            padding-top: 1rem; }
          .examSlide ul li .examBox .topics dl dd .social p {
            color: #16a68e;
            font-weight: 700;
            width: 100px;
            text-align: center; }
          .examSlide ul li .examBox .topics dl dd .social span {
            display: block;
            width: calc(100% - 100px);
            position: relative;
            padding-left: 1em; }
            .examSlide ul li .examBox .topics dl dd .social span::before {
              content: '';
              position: absolute;
              top: 0.8em;
              left: 0;
              display: block;
              width: 8px;
              height: 8px;
              border-radius: 15px;
              background: #16a68e; }
@media (max-width: 480px) {
  .examSlide ul li .examBox {
    margin: 0; }
    .examSlide ul li .examBox .topics {
      padding: 10px 20px 35px; }
      .examSlide ul li .examBox .topics dl {
        flex-direction: column; }
        .examSlide ul li .examBox .topics dl dt, .examSlide ul li .examBox .topics dl dd {
          width: 100%; }
        .examSlide ul li .examBox .topics dl dt {
          text-align: left; }
        .examSlide ul li .examBox .topics dl dd span {
          display: block;
          margin-left: 0; }
        .examSlide ul li .examBox .topics dl dd .social p {
          width: 5em; }
        .examSlide ul li .examBox .topics dl dd .social span {
          width: calc(100% - 5em); } }

.topicsPrev,
.topicsNext {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 36px;
  height: 66px;
  z-index: 10;
  cursor: pointer;
  margin: 0; }
  @media (max-width: 768px) {
    .topicsPrev,
    .topicsNext {
      width: 20px;
      height: 37px; } }

.topicsPrev::after,
.topicsNext::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: block;
  width: 100%;
  height: 100%;
  background: url("../img/common/slide_arrow.svg") no-repeat center center/contain; }

.topicsNext {
  right: 0; }
  @media (max-width: 480px) {
    .topicsNext {
      right: -10px; } }

.topicsPrev {
  left: 0;
  transform: translateY(-50%) scale(-1, -1); }
  @media (max-width: 480px) {
    .topicsPrev {
      left: -10px; } }

#reportSupport {
  margin-bottom: min(155px,17.4384vw); }

/*------------------------
 reportSlide
------------------------*/
.reportSlideWrap {
  margin-top: 50px;
  position: relative; }
  .reportSlideWrap section.reportSlide {
    max-width: 1000px;
    margin: 0 auto; }
    .reportSlideWrap section.reportSlide a {
      display: block;
      width: 100%; }
      .reportSlideWrap section.reportSlide a picture {
        display: block;
        position: relative;
        width: 100%; }
        .reportSlideWrap section.reportSlide a picture::before {
          content: '';
          display: block;
          width: 100%;
          padding-top: 69.026%; }
        .reportSlideWrap section.reportSlide a picture source, .reportSlideWrap section.reportSlide a picture img {
          width: 100%;
          height: 100%;
          object-fit: cover;
          object-position: center;
          position: absolute;
          top: 0;
          left: 0;
          z-index: 0; }

.reportPrev,
.reportNext {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: block;
  width: 36px;
  height: 66px;
  z-index: 10;
  cursor: pointer;
  margin: 0; }
  @media (max-width: 768px) {
    .reportPrev,
    .reportNext {
      width: 20px;
      height: 37px; } }

.reportPrev::after,
.reportNext::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  display: block;
  width: 100%;
  height: 100%;
  background: url("../img/common/slide_arrow.svg") no-repeat center center/contain; }

.reportNext {
  right: 0; }
  @media (max-width: 768px) {
    .reportNext {
      right: 3%; } }
  @media (max-width: 480px) {
    .reportNext {
      right: 0; } }

.reportPrev {
  left: 0;
  transform: translateY(-50%) scale(-1, -1); }
  @media (max-width: 768px) {
    .reportPrev {
      left: 3%; } }
  @media (max-width: 480px) {
    .reportPrev {
      left: 0; } }

.modaal-noscroll {
  overflow: auto; }

/*----------------------------------
 exam
-----------------------------------*/
#highSchoolInfo a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48%;
  height: 140px;
  border: solid 2px #333;
  border-radius: 5px;
  position: relative;
  font-size: 28px;
  font-weight: 700; }
  #highSchoolInfo a .arrow {
    position: absolute;
    bottom: 15px;
    left: 50%;
    display: block;
    width: 12px;
    height: 20px;
    transform-origin: center;
    transform: rotate(90deg);
    transition: all .3s; }
    #highSchoolInfo a .arrow svg {
      fill: #333;
      display: block;
      width: 100%;
      height: 100%; }
  #highSchoolInfo a p {
    padding-left: 1em; }
  #highSchoolInfo a:hover {
    background: #e5f5ed; }
    #highSchoolInfo a:hover img {
      opacity: 1; }
    #highSchoolInfo a:hover .arrow {
      bottom: 10px; }
  @media (max-width: 768px) {
    #highSchoolInfo a {
      height: 120px;
      font-size: 22px; }
      #highSchoolInfo a figure {
        line-height: 1;
        height: 40px; }
        #highSchoolInfo a figure img {
          height: 100%; }
      #highSchoolInfo a p {
        padding-left: 0.5em; }
      #highSchoolInfo a .arrow {
        bottom: 10px; }
      #highSchoolInfo a:hover .arrow {
        bottom: 5px; } }
  @media (max-width: 480px) {
    #highSchoolInfo a {
      width: 100%;
      height: 80px;
      font-size: 20px; }
      #highSchoolInfo a .arrow {
        bottom: auto;
        top: 45%;
        left: auto;
        right: 20px;
        transform: rotate(90deg) translateX(-50%); }
      #highSchoolInfo a figure {
        height: 30px; }
      #highSchoolInfo a + a {
        margin-top: 20px; } }

.schoolTtl {
  background: #dfe88f;
  padding: 50px 50px 60px; }
  @media (max-width: 480px) {
    .schoolTtl {
      padding: 20px 20px 30px; } }
  .schoolTtl h3 {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    font-size: min(48px,5.4vw);
    font-weight: 700;
    line-height: 1; }
    .schoolTtl h3 figure {
      width: 103px; }
      .schoolTtl h3 figure img {
        width: 100%; }
    .schoolTtl h3 p {
      margin-left: 20px; }
    @media (max-width: 480px) {
      .schoolTtl h3 {
        font-size: 24px; }
        .schoolTtl h3 figure {
          width: 60px; }
        .schoolTtl h3 p {
          margin-left: 10px; } }
  .schoolTtl ul {
    padding-top: 40px; }
    .schoolTtl ul li {
      line-height: 1; }
      .schoolTtl ul li + li {
        border-left: solid 2px #333; }
      .schoolTtl ul li a {
        font-weight: 700;
        padding: 0 15px; }
    @media (max-width: 480px) {
      .schoolTtl ul {
        padding-top: 30px; }
        .schoolTtl ul li {
          text-align: center; }
          .schoolTtl ul li + li {
            border-left: none;
            margin-top: 15px; }
          .schoolTtl ul li a {
            font-size: 1.6rem; } }

.admissionInfo {
  padding: 80px 0 min(100px,11.25vw); }

.semesterWrap:first-of-type {
  margin-top: 80px; }
.semesterWrap + .semesterWrap {
  margin-top: 40px; }
.semesterWrap li {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  width: calc((100% - 80px) / 5);
  height: 160px;
  margin-right: 20px;
  position: relative; }
  .semesterWrap li::before {
    content: '';
    position: absolute;
    top: 50%;
    right: -14px;
    transform: translateY(-50%);
    display: block;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent; }
  .semesterWrap li:first-of-type {
    color: #fff; }
  .semesterWrap li:not(first-of-type)::before {
    right: -17px; }
  .semesterWrap li:last-of-type {
    margin-right: 0; }
    .semesterWrap li:last-of-type::before {
      display: none; }
  .semesterWrap li p {
    font-size: 28px;
    letter-spacing: 0.2rem; }
  .semesterWrap li span {
    color: #d03300;
    display: block; }
  @media (max-width: 768px) {
    .semesterWrap li {
      width: calc((100% - 60px) / 4); }
      .semesterWrap li:first-of-type {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        height: 80px; }
        .semesterWrap li:first-of-type::before {
          display: none; } }
  @media (max-width: 480px) {
    .semesterWrap li {
      width: 180px;
      margin: 0 auto; }
      .semesterWrap li:not(first-of-type) {
        margin-bottom: 20px; }
        .semesterWrap li:not(first-of-type)::before {
          top: auto;
          right: auto;
          bottom: -17px;
          left: 50%;
          transform: translateX(-50%);
          display: block;
          border-bottom: none;
          border-right: 10px solid transparent;
          border-left: 10px solid transparent; }
      .semesterWrap li:last-of-type {
        margin: 0 auto; }
      .semesterWrap li p {
        font-size: 24px; } }
.semesterWrap.firstSemester li:first-of-type {
  background: #1795a3; }
.semesterWrap.firstSemester li:not(first-of-type) {
  background: #ddeff1; }
.semesterWrap.firstSemester li::before {
  border-left: 14px solid #1795a3; }
@media (max-width: 480px) {
  .semesterWrap.firstSemester li:not(first-of-type)::before {
    border-top: 14px solid #1795a3;
    border-left: 10px solid transparent; } }
.semesterWrap.secondSemester li:first-of-type {
  background: #db771b; }
.semesterWrap.secondSemester li:not(first-of-type) {
  background: #f7e4cd; }
.semesterWrap.secondSemester li::before {
  border-left: 14px solid #db771b; }
@media (max-width: 480px) {
  .semesterWrap.secondSemester li:not(first-of-type)::before {
    border-top: 14px solid #db771b;
    border-left: 10px solid transparent; } }

.entryWrap {
  background: #e5f5ed;
  padding: 50px;
  margin-top: 80px; }
  @media (max-width: 480px) {
    .entryWrap {
      padding: 30px; } }
  .entryWrap .entryFlow {
    margin: 30px 0;
    padding: 0 min(60px,6.75vw); }
    @media (max-width: 768px) {
      .entryWrap .entryFlow {
        padding: 0; } }
    .entryWrap .entryFlow li {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      font-weight: 700;
      width: calc((100% - 80px) / 3);
      height: 160px;
      margin-right: 40px;
      position: relative;
      background: #fff; }
      .entryWrap .entryFlow li::before {
        content: '';
        position: absolute;
        top: 50%;
        right: -28px;
        transform: translateY(-50%);
        display: block;
        border-top: 10px solid transparent;
        border-bottom: 10px solid transparent;
        border-left: 14px solid #1795a3; }
      .entryWrap .entryFlow li:last-of-type {
        margin-right: 0; }
        .entryWrap .entryFlow li:last-of-type::before {
          display: none; }
      .entryWrap .entryFlow li p {
        font-size: 28px;
        letter-spacing: 0.2rem; }
      .entryWrap .entryFlow li span {
        color: #d03300;
        display: block; }
      @media (max-width: 480px) {
        .entryWrap .entryFlow li {
          width: 180px;
          margin: 0 auto; }
          .entryWrap .entryFlow li:not(last-of-type) {
            margin-bottom: 20px; }
            .entryWrap .entryFlow li:not(last-of-type)::before {
              top: auto;
              right: auto;
              bottom: -17px;
              left: 50%;
              transform: translateX(-50%);
              display: block;
              border-bottom: none;
              border-top: 14px solid #1795a3;
              border-right: 10px solid transparent;
              border-left: 10px solid transparent; }
          .entryWrap .entryFlow li:last-of-type {
            margin: 0 auto; }
          .entryWrap .entryFlow li p {
            font-size: 24px; } }

.volunteer {
  padding: min(100px,11.25vw) 0; }
  .volunteer .district.container {
    margin-top: 50px; }
    @media (max-width: 480px) {
      .volunteer .district.container {
        width: 100%; }
        .volunteer .district.container .tableWrap {
          overflow-x: scroll;
          margin-left: 5%;
          padding-right: 5%;
          padding-bottom: 10px; } }
  .volunteer table.areaTable {
    width: 100%;
    text-align: center;
    border-spacing: 4px; }
    @media (max-width: 480px) {
      .volunteer table.areaTable {
        width: 700px; } }
    .volunteer table.areaTable &gt; tbody {
      -webkit-text-size-adjust: 100%; }
      .volunteer table.areaTable &gt; tbody &gt; tr th {
        width: calc(100% / 5);
        font-weight: 700;
        line-height: 1.4;
        background: #16a68e;
        color: #fff;
        height: 78px; }
      .volunteer table.areaTable &gt; tbody &gt; tr td {
        width: calc(100% / 5);
        background: #e5f5ed;
        padding: 5px 1.5em;
        text-align: left;
        vertical-align: top;
        line-height: 2.5; }
        @media (max-width: 480px) {
          .volunteer table.areaTable &gt; tbody &gt; tr td {
            padding: 10px 5px; } }
        .volunteer table.areaTable &gt; tbody &gt; tr td table td {
          padding: 0; }
      .volunteer table.areaTable &gt; tbody &gt; tr:last-of-type {
        visibility: collapse; }

.selection {
  padding: min(100px,11.25vw) 0; }
  .selection .summaryWrap {
    margin: 40px 0; }
  .selection section {
    background: #e5f5ed;
    padding: 50px; }
    .selection section + section {
      margin-top: 40px; }
    .selection section h3 {
      max-width: 400px; }
    .selection section ul.dotsList li + li {
      margin-top: 0; }
    @media (max-width: 480px) {
      .selection section {
        padding: 30px; } }

.secondFlow {
  margin: 0 0 min(155px,17.4384vw); }
  .secondFlow .note {
    margin-top: 2em; }
    .secondFlow .note span {
      display: block; }
  .secondFlow section figure, .secondFlow section .txtBox {
    width: 50%; }
  .secondFlow section .txtBox {
    padding-left: 50px; }
    .secondFlow section .txtBox h4 {
      color: #16a68e;
      font-size: 2.4rem;
      margin-bottom: 0.5em; }
  @media (min-width: 481px) {
    .secondFlow section figure {
      order: -1; } }
  @media (max-width: 480px) {
    .secondFlow section {
      margin-top: 30px; }
      .secondFlow section figure, .secondFlow section .txtBox {
        width: 100%; }
      .secondFlow section .txtBox {
        padding-left: 0;
        margin-bottom: 1em; } }
  .secondFlow .secondInfo {
    margin-top: 2em; }

/*----------------------------------
 pastexam
-----------------------------------*/
#pastmockDL {
  padding: 50px 0 min(110px,12.375vw); }
  @media (max-width: 768px) {
    #pastmockDL {
      padding-top: 30px; } }
  #pastmockDL section {
    margin-bottom: min(100px,11.25vw); }
  #pastmockDL ul {
    margin-top: 50px; }
    @media (max-width: 768px) {
      #pastmockDL ul {
        margin-top: 30px; } }
    #pastmockDL ul li {
      width: calc(90% / 6);
      margin-right: 2%; }
      #pastmockDL ul li:last-of-type {
        margin-right: 0; }
      #pastmockDL ul li a {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        border: solid 2px #333;
        border-radius: 5px;
        text-align: center;
        font-size: 2.0rem;
        font-weight: 700;
        width: 100%;
        height: 120px;
        line-height: 1.2;
        padding: 5px 5px 10px; }
        #pastmockDL ul li a span {
          display: flex;
          justify-content: center;
          align-items: center;
          height: 3em; }
        #pastmockDL ul li a figure {
          position: relative;
          transition: all .3s;
          top: 0; }
        #pastmockDL ul li a:hover {
          background: #e5f5ed; }
          #pastmockDL ul li a:hover img {
            opacity: 1; }
          #pastmockDL ul li a:hover figure {
            top: -5px; }
      @media (max-width: 768px) {
        #pastmockDL ul li {
          width: calc(96% / 3); }
          #pastmockDL ul li:nth-of-type(3n) {
            margin-right: 0; }
          #pastmockDL ul li:nth-of-type(n + 4) {
            margin-top: 2%; } }
      @media (max-width: 480px) {
        #pastmockDL ul li {
          width: calc(98% / 2); }
          #pastmockDL ul li:nth-of-type(3n) {
            margin-right: 2%; }
          #pastmockDL ul li:nth-of-type(2n) {
            margin-right: 0; }
          #pastmockDL ul li:nth-of-type(n + 3) {
            margin-top: 3%; }
          #pastmockDL ul li a {
            font-size: 1.8rem; } }

/*----------------------------------
 echallenge
-----------------------------------*/
#aboutChallenge {
  padding: 50px 0 min(110px,12.375vw); }
  @media (max-width: 768px) {
    #aboutChallenge {
      padding-top: 30px; } }
  #aboutChallenge ul {
    margin-bottom: 60px; }
    #aboutChallenge ul li {
      background: #dfe88f;
      text-align: center;
      width: 49%;
      padding: 50px;
      font-weight: 700; }
      #aboutChallenge ul li h4 {
        width: 200px; }
      #aboutChallenge ul li p {
        font-size: 1.8rem; }
    @media (max-width: 768px) {
      #aboutChallenge ul {
        margin-bottom: 40px; }
        #aboutChallenge ul li {
          padding: 30px; }
          #aboutChallenge ul li h4 {
            width: 180px; }
          #aboutChallenge ul li p {
            font-size: 1.4rem; } }
    @media (max-width: 480px) {
      #aboutChallenge ul li {
        width: 100%; }
        #aboutChallenge ul li + li {
          margin-top: 20px; } }

/*----- howToUse -----*/
.howToUse {
  padding-bottom: min(155px,17.4384vw); }
  .howToUse h3 {
    font-size: 2.4rem;
    border-bottom: solid 2px #333;
    padding-bottom: 0.5rem; }
    @media (max-width: 480px) {
      .howToUse h3 {
        font-size: 2.0rem; } }
  .howToUse .useWrap {
    margin-top: 35px; }
    .howToUse .useWrap dl {
      display: flex;
      align-items: center; }
      .howToUse .useWrap dl + dl {
        margin-top: 20px; }
      @media (max-width: 480px) {
        .howToUse .useWrap dl {
          flex-direction: column; }
          .howToUse .useWrap dl + dl {
            margin-top: 30px; } }
      .howToUse .useWrap dl dt {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 240px;
        height: 80px;
        background: #16a68e;
        color: #fff;
        font-size: 2.8rem;
        font-weight: 700;
        letter-spacing: 0.5rem;
        position: relative; }
        .howToUse .useWrap dl dt::after {
          content: '';
          position: absolute;
          bottom: -10px;
          left: 0;
          right: 0;
          margin: 0 auto;
          display: block;
          width: 0;
          height: 0;
          border-top: 10px solid #16a68e;
          border-right: 7px solid transparent;
          border-left: 7px solid transparent; }
        @media (max-width: 768px) {
          .howToUse .useWrap dl dt {
            width: 150px;
            height: 60px;
            font-size: 2.0rem; } }
        @media (max-width: 480px) {
          .howToUse .useWrap dl dt {
            height: 50px; } }
      .howToUse .useWrap dl dd {
        width: calc(100% - 240px);
        padding-left: 2em; }
        @media (max-width: 768px) {
          .howToUse .useWrap dl dd {
            width: calc(100% - 150px);
            padding-left: 1em; } }
        @media (max-width: 480px) {
          .howToUse .useWrap dl dd {
            width: 100%;
            margin-top: 20px;
            padding-left: 0; } }
      .howToUse .useWrap dl:last-of-type dt {
        color: #16a68e;
        background: #dfe88f; }
        .howToUse .useWrap dl:last-of-type dt::after {
          display: none; }
        @media (max-width: 480px) {
          .howToUse .useWrap dl:last-of-type dt::after {
            display: block;
            border-top: 10px solid #dfe88f; } }
  .howToUse .note {
    margin-top: 35px; }

/*----- mockDownload -----*/
#mockDownload {
  padding: 50px 0 min(110px,12.375vw); }
  @media (max-width: 768px) {
    #mockDownload {
      padding-top: 30px; } }
  #mockDownload ul {
    margin-top: 50px; }
    @media (max-width: 768px) {
      #mockDownload ul {
        margin-top: 30px; } }
    #mockDownload ul li {
      width: calc(92% / 5);
      margin-right: 2%; }
      #mockDownload ul li:nth-of-type(5n) {
        margin-right: 0; }
      #mockDownload ul li:nth-of-type(n + 6) {
        margin-top: 2%; }
      #mockDownload ul li a {
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        border: solid 2px #333;
        border-radius: 5px;
        text-align: center;
        font-size: 2.4rem;
        font-weight: 700;
        width: 100%;
        height: 140px;
        line-height: 1.4;
        padding: 5px 5px 10px; }
        #mockDownload ul li a span {
          display: flex;
          justify-content: center;
          align-items: center;
          height: 3em; }
        #mockDownload ul li a figure {
          position: relative;
          transition: all .3s;
          top: 0; }
        #mockDownload ul li a:hover {
          background: #e5f5ed; }
          #mockDownload ul li a:hover img {
            opacity: 1; }
          #mockDownload ul li a:hover figure {
            top: -5px; }
      @media (max-width: 768px) {
        #mockDownload ul li {
          width: calc(94% / 4); }
          #mockDownload ul li:nth-of-type(5n) {
            margin-right: 2%; }
          #mockDownload ul li:nth-of-type(4n) {
            margin-right: 0; }
          #mockDownload ul li:nth-of-type(n + 5) {
            margin-top: 2%; }
          #mockDownload ul li a {
            font-size: 2.0rem; } }
      @media (max-width: 480px) {
        #mockDownload ul li {
          width: calc(98% / 2); }
          #mockDownload ul li:nth-of-type(2n) {
            margin-right: 0; }
          #mockDownload ul li:nth-of-type(n + 3) {
            margin-top: 3%; }
          #mockDownload ul li a {
            font-size: 1.8rem;
            height: 120px; } }

/*----- submitBtn -----*/
.submit {
  margin-top: 50px; }
  @media (max-width: 480px) {
    .submit {
      margin-top: 30px; } }
  .submit button {
    position: relative;
    margin: 0 auto;
    color: #fff;
    font-size: 2.8rem;
    font-weight: 700;
    max-width: 600px;
    width: 100%;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 150px;
    background: #e25a24;
    border: none;
    transition: 0.3s;
    cursor: pointer;
    box-shadow: 0 4px 0 rgba(0, 0, 0, 0.4); }
    .submit button .arrow {
      position: absolute;
      top: 50%;
      right: 40px;
      display: block;
      width: 12px;
      height: 20px;
      transform: translateY(-50%);
      transition: all .3s; }
      .submit button .arrow svg {
        fill: #fff;
        display: block;
        width: 100%;
        height: 100%; }
    .submit button:hover {
      box-shadow: 0 0 0 rgba(0, 0, 0, 0.4); }
      .submit button:hover .arrow {
        right: 32px; }
    @media (max-width: 768px) {
      .submit button {
        font-size: 2.0rem;
        max-width: 300px;
        height: 70px; }
        .submit button .arrow {
          right: 30px; }
        .submit button:hover .arrow {
          right: 25px; } }

/*----- resultsInput -----*/
.resultsInputArea {
  padding: 50px 0 min(155px,17.4384vw); }
  .resultsInputArea .tableWrap.container {
    margin-top: 50px; }
    @media (max-width: 768px) {
      .resultsInputArea .tableWrap.container {
        margin-top: 30px; } }
    @media (max-width: 480px) {
      .resultsInputArea .tableWrap.container {
        width: 100%; } }
  @media (max-width: 480px) {
    .resultsInputArea .resultsTable {
      overflow-x: scroll;
      margin-left: 5%;
      padding-right: 5%;
      padding-bottom: 10px; } }
  @media (max-width: 480px) {
    .resultsInputArea .resultsTable table {
      width: 600px; } }
  .resultsInputArea .resultsTable table tbody {
    -webkit-text-size-adjust: 100%; }
  .resultsInputArea .resultsTable table tr th {
    width: calc(100% / 9);
    font-weight: 700; }
  .resultsInputArea .resultsTable table tr td {
    width: calc(100% / 9);
    background: #e5f5ed;
    padding: 5px; }
    @media (max-width: 480px) {
      .resultsInputArea .resultsTable table tr td {
        padding: 10px 5px; } }
  .resultsInputArea .resultsTable table tr:first-of-type th {
    background: #16a68e;
    color: #fff;
    height: 56px; }
  .resultsInputArea .resultsTable table tr:not(first-of-type) th {
    background: #dfe88f; }
  .resultsInputArea .resultsTable table tr input[type="number"]::-webkit-outer-spin-button,
  .resultsInputArea .resultsTable table tr input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .resultsInputArea .resultsTable table tr input[type="number"] {
    -moz-appearance: textfield;
    width: 100%;
    text-align: right;
    border: solid 1px #333;
    border-radius: 5px;
    height: 40px;
    padding: 5px 10px; }
  .resultsInputArea .resultsTable table tr input[type="number"]:invalid {
    border: solid 2px red; }
  .resultsInputArea .resultsTable table tr input:disabled {
    background: rgba(0, 0, 0, 0.3); }
  .resultsInputArea .resultsTable table tr select {
    margin-top: 5px;
    color: #fff;
    background: #666666;
    border-radius: 50px;
    width: 100%;
    text-align: center; }

/*----- rankArea -----*/
#rankArea {
  padding: 50px 0 min(120px,13.5vw); }
  @media (max-width: 768px) {
    #rankArea {
      padding: 30px 0 min(120px,13.5vw); } }
  @media (max-width: 480px) {
    #rankArea section {
      width: 100%; }
      #rankArea section h3 {
        margin-left: 5%;
        margin-bottom: 20px; } }
  @media (max-width: 480px) {
    #rankArea .resultsTable {
      overflow-x: scroll;
      margin-left: 5%;
      padding-right: 5%;
      padding-bottom: 10px; } }
  #rankArea .resultsTable table {
    width: 100%; }
    @media (max-width: 480px) {
      #rankArea .resultsTable table {
        width: 600px; } }
    #rankArea .resultsTable table tbody {
      -webkit-text-size-adjust: 100%; }
    #rankArea .resultsTable table tr th {
      font-weight: 700; }
    #rankArea .resultsTable table tr td {
      background: #e5f5ed;
      padding: 5px;
      text-align: center; }
      #rankArea .resultsTable table tr td.total {
        background: #f5e5e5;
        font-weight: 900; }
      @media (max-width: 480px) {
        #rankArea .resultsTable table tr td {
          padding: 10px 5px; } }
    #rankArea .resultsTable table tr:first-of-type th {
      background: #fff;
      color: #fff;
      height: 56px; }
      #rankArea .resultsTable table tr:first-of-type th.eng {
        background: #7f71ad; }
      #rankArea .resultsTable table tr:first-of-type th.mathe {
        background: #58aaeb; }
      #rankArea .resultsTable table tr:first-of-type th.lang {
        background: #eb981e; }
      #rankArea .resultsTable table tr:first-of-type th.sci {
        background: #7fb12e; }
      #rankArea .resultsTable table tr:first-of-type th.social {
        background: #ee699b; }
      #rankArea .resultsTable table tr:first-of-type th.total {
        background: #f44336; }
    #rankArea .resultsTable table tr:not(first-of-type) th {
      background: #dfe88f; }

/*----- questionsArea -----*/
#questionsArea {
  padding: 50px 0 min(120px,13.5vw); }
  @media (max-width: 768px) {
    #questionsArea {
      padding: 30px 0 min(120px,13.5vw); } }
  @media (max-width: 480px) {
    #questionsArea section {
      width: 100%; }
      #questionsArea section h3 {
        margin-left: 5%;
        margin-bottom: 20px; } }
  @media (max-width: 480px) {
    #questionsArea .resultsTable {
      overflow-x: scroll;
      margin-left: 5%;
      padding-right: 5%;
      padding-bottom: 10px; } }
  #questionsArea .resultsTable table {
    width: 100%; }
    @media (max-width: 480px) {
      #questionsArea .resultsTable table {
        width: 800px; } }
    #questionsArea .resultsTable table tbody {
      -webkit-text-size-adjust: 100%; }
    #questionsArea .resultsTable table tr th {
      font-weight: 700;
      color: #fff;
      line-height: 1.4; }
      #questionsArea .resultsTable table tr th.eng {
        background: #7f71ad; }
      #questionsArea .resultsTable table tr th.mathe {
        background: #58aaeb; }
      #questionsArea .resultsTable table tr th.lang {
        background: #eb981e; }
      #questionsArea .resultsTable table tr th.sci {
        background: #7fb12e; }
      #questionsArea .resultsTable table tr th.social {
        background: #ee699b; }
      #questionsArea .resultsTable table tr th.total {
        background: #f44336; }
    #questionsArea .resultsTable table tr td {
      background: #e5f5ed;
      text-align: center;
      padding: 0 5px; }
      #questionsArea .resultsTable table tr td:nth-of-type(2) {
        text-align: left; }
      #questionsArea .resultsTable table tr td:nth-of-type(4), #questionsArea .resultsTable table tr td:nth-of-type(5) {
        font-weight: 900; }
      @media (max-width: 480px) {
        #questionsArea .resultsTable table tr td {
          padding: 5px; } }
    #questionsArea .resultsTable table tr:first-of-type th {
      background: #16a68e;
      height: 56px; }

/*----- scoreArea -----*/
#scoreArea {
  padding: 50px 0 min(120px,13.5vw); }
  @media (max-width: 768px) {
    #scoreArea {
      padding: 30px 0 min(120px,13.5vw); } }
  @media (max-width: 480px) {
    #scoreArea section {
      width: 100%; }
      #scoreArea section h3 {
        margin-left: 5%;
        margin-bottom: 20px; } }
  @media (max-width: 480px) {
    #scoreArea .resultsTable {
      overflow-x: scroll;
      margin-left: 5%;
      padding-right: 5%;
      padding-bottom: 10px; } }
  #scoreArea .resultsTable table {
    width: 100%; }
    @media (max-width: 480px) {
      #scoreArea .resultsTable table {
        width: 700px; } }
    #scoreArea .resultsTable table tbody {
      -webkit-text-size-adjust: 100%; }
    #scoreArea .resultsTable table tr th {
      font-weight: 700; }
    #scoreArea .resultsTable table tr td {
      background: #e5f5ed;
      padding: 5px;
      text-align: center; }
      #scoreArea .resultsTable table tr td.total {
        background: #f5e5e5;
        font-weight: 900; }
      @media (max-width: 480px) {
        #scoreArea .resultsTable table tr td {
          padding: 10px 5px; } }
    #scoreArea .resultsTable table tr:first-of-type th {
      background: #fff;
      color: #fff;
      height: 56px; }
      #scoreArea .resultsTable table tr:first-of-type th.eng {
        background: #7f71ad; }
      #scoreArea .resultsTable table tr:first-of-type th.mathe {
        background: #58aaeb; }
      #scoreArea .resultsTable table tr:first-of-type th.lang {
        background: #eb981e; }
      #scoreArea .resultsTable table tr:first-of-type th.sci {
        background: #7fb12e; }
      #scoreArea .resultsTable table tr:first-of-type th.social {
        background: #ee699b; }
      #scoreArea .resultsTable table tr:first-of-type th.total {
        background: #f44336; }
    #scoreArea .resultsTable table tr:not(first-of-type) th {
      background: #dfe88f; }

.effortWrap {
  padding-bottom: min(120px,13.5vw); }
  .effortWrap .submit {
    margin-top: 0; }
  .effortWrap .commonBtn a {
    margin: 50px auto 0; }

.resultNote {
  padding: 50px 0 min(120px,13.5vw); }
  .resultNote h3 {
    font-size: 2.4rem;
    border-bottom: solid 2px #333;
    padding-bottom: 0.5rem;
    margin-bottom: 20px; }
    @media (max-width: 480px) {
      .resultNote h3 {
        font-size: 2.0rem; } }

/*----------------------------------
 ftInfo
-----------------------------------*/
#ftInfoArea {
  padding: min(190px,21.375vw) 0 min(120px,13.5vw);
  position: relative;
  background: #e5f5ed; }
  #ftInfoArea::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 140px;
    background: linear-gradient(to top left, transparent 50%, #fff 50%); }
    @media (max-width: 768px) {
      #ftInfoArea::before {
        height: 100px; } }
    @media (max-width: 480px) {
      #ftInfoArea::before {
        height: 60px; } }
  #ftInfoArea ul.menuWrap li {
    width: 49%;
    margin-right: 2%; }
    #ftInfoArea ul.menuWrap li:nth-of-type(2n) {
      margin-right: 0; }
    #ftInfoArea ul.menuWrap li:nth-of-type(n + 3) {
      margin-top: 2%; }
    @media (max-width: 480px) {
      #ftInfoArea ul.menuWrap li {
        width: 100%;
        margin-right: 0; }
        #ftInfoArea ul.menuWrap li:nth-of-type(n + 2) {
          margin-top: 12px; } }
    #ftInfoArea ul.menuWrap li a {
      display: flex;
      align-items: center;
      border-radius: 5px;
      overflow: hidden;
      background: #fff;
      color: #16a68e;
      font-size: 2.8rem;
      font-weight: 700; }
      @media (max-width: 768px) {
        #ftInfoArea ul.menuWrap li a {
          font-size: 1.8rem; } }
      #ftInfoArea ul.menuWrap li a figure {
        position: relative;
        width: 160px;
        overflow: hidden; }
        @media (max-width: 768px) {
          #ftInfoArea ul.menuWrap li a figure {
            width: 100px; } }
        #ftInfoArea ul.menuWrap li a figure::before {
          content: '';
          display: block;
          width: 100%;
          padding-top: 100%; }
        #ftInfoArea ul.menuWrap li a figure picture {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          transition: all .3s; }
          #ftInfoArea ul.menuWrap li a figure picture source, #ftInfoArea ul.menuWrap li a figure picture img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            position: absolute;
            top: 0;
            left: 0;
            z-index: 0; }
      #ftInfoArea ul.menuWrap li a p {
        width: calc(100% - 160px);
        padding-left: 1.2em;
        position: relative; }
        #ftInfoArea ul.menuWrap li a p .arrow {
          position: absolute;
          top: 50%;
          right: 40px;
          display: block;
          width: 12px;
          height: 20px;
          transform: translateY(-50%);
          transition: all .3s; }
          #ftInfoArea ul.menuWrap li a p .arrow svg {
            fill: #16a68e;
            display: block;
            width: 100%;
            height: 100%; }
        @media (max-width: 768px) {
          #ftInfoArea ul.menuWrap li a p {
            width: calc(100% - 100px); }
            #ftInfoArea ul.menuWrap li a p .arrow {
              width: 8px;
              height: 14px;
              right: 24px; } }
      #ftInfoArea ul.menuWrap li a:hover figure picture {
        transform: scale(1.1); }
      #ftInfoArea ul.menuWrap li a:hover p .arrow {
        right: 35px; }
      @media (max-width: 768px) {
        #ftInfoArea ul.menuWrap li a:hover p .arrow {
          right: 19px; } }

/*----------------------------------
 information
-----------------------------------*/
.newsWrap {
  padding: 70px 60px 80px;
  background: #fff;
  margin-top: min(120px,13.5vw); }
  @media (max-width: 768px) {
    .newsWrap {
      padding: 50px 40px 60px; } }
  @media (max-width: 480px) {
    .newsWrap {
      padding: 30px 20px 40px; } }
  .newsWrap h3 {
    font-size: 3.6rem;
    font-weight: 700;
    letter-spacing: 0.5rem;
    text-align: center;
    margin-bottom: 50px; }
    @media (max-width: 768px) {
      .newsWrap h3 {
        font-size: 2.8rem;
        margin-bottom: 10px; } }
  .newsWrap .newsList {
    margin-bottom: 80px; }
    .newsWrap .newsList a {
      display: flex;
      align-items: center;
      border-bottom: solid 1px #bdbdbd;
      padding: 30px 20px; }
      .newsWrap .newsList a span {
        display: block; }
        .newsWrap .newsList a span.date {
          color: #16a68e; }
        .newsWrap .newsList a span.nTtl {
          padding-left: 35px; }
    @media (max-width: 768px) {
      .newsWrap .newsList {
        margin-bottom: 40px; } }
    @media (max-width: 480px) {
      .newsWrap .newsList a {
        flex-direction: column;
        align-items: flex-start;
        padding: 15px 10px; }
        .newsWrap .newsList a span.nTtl {
          padding-left: 0; } }
  .newsWrap .commonBtn a {
    margin: 0 auto; }

#information .newsWrap {
  margin-top: 0; }
  @media (max-width: 768px) {
    #information .newsWrap {
      padding: 0 0 40px; } }
#information .newsList {
  margin-bottom: 0; }
  @media (max-width: 480px) {
    #information .newsList a {
      padding: 15px 0; } }
#information .pager {
  margin-bottom: min(155px,17.4384vw);
  text-align: center; }
  @media (max-width: 768px) {
    #information .pager {
      font-size: 1.4rem; } }
  @media (max-width: 480px) {
    #information .pager {
      margin-top: 60px; } }
  #information .pager a, #information .pager span {
    padding: 0 8px;
    font-size: 1.8rem; }
    @media (max-width: 768px) {
      #information .pager a, #information .pager span {
        font-size: 1.4rem;
        padding: 0 5px; } }
  #information .pager a:hover {
    color: #16a68e; }
  #information .pager .page-nums {
    text-align: center; }
  #information .pager .current {
    color: #16a68e;
    font-weight: 700;
    border-bottom: solid 1px #16a68e; }
  #information .pager .prev, #information .pager .next {
    position: relative; }
    #information .pager .prev .arrow, #information .pager .next .arrow {
      position: absolute;
      top: 50%;
      display: block;
      width: 8px;
      height: 14px;
      transform: translateY(-50%);
      transition: all .3s;
      padding: 0; }
      #information .pager .prev .arrow svg, #information .pager .next .arrow svg {
        fill: #16a68e;
        display: block;
        width: 100%;
        height: 100%; }
  #information .pager .prev .arrow {
    left: -12px;
    transform: scale(-1, 1) translateY(-50%); }
  #information .pager .next .arrow {
    right: -12px; }
#information .newsDetail {
  max-width: 1000px;
  margin: 50px auto min(155px,17.4384vw);
  background: #e5f5ed;
  padding: 50px; }
  @media (max-width: 768px) {
    #information .newsDetail {
      padding: 30px;
      margin: 30px auto min(155px,17.4384vw); } }
  @media (max-width: 480px) {
    #information .newsDetail {
      padding: 30px 10px; } }
  #information .newsDetail .ttlWrap {
    background: #fff;
    padding: 25px 40px;
    margin-bottom: 20px; }
    #information .newsDetail .ttlWrap .date {
      color: #16a68e;
      margin-bottom: 5px; }
    #information .newsDetail .ttlWrap .ttl {
      font-size: 1.8rem;
      line-height: 1.6; }
    @media (max-width: 480px) {
      #information .newsDetail .ttlWrap {
        padding: 20px 15px; }
        #information .newsDetail .ttlWrap .ttl {
          font-size: 1.6rem; } }
  #information .newsDetail .contents {
    background: #fff;
    padding: 25px 40px; }
    #information .newsDetail .contents figure {
      margin: 2em 0; }
    @media (max-width: 480px) {
      #information .newsDetail .contents {
        padding: 20px 15px; } }
  #information .newsDetail .newsNextPrev {
    padding: 10px 0; }
    #information .newsDetail .newsNextPrev .prev, #information .newsDetail .newsNextPrev .next {
      position: relative; }
      #information .newsDetail .newsNextPrev .prev .arrow, #information .newsDetail .newsNextPrev .next .arrow {
        position: absolute;
        top: 50%;
        display: block;
        width: 8px;
        height: 14px;
        transform: translateY(-50%);
        transition: all .3s;
        padding: 0; }
        #information .newsDetail .newsNextPrev .prev .arrow svg, #information .newsDetail .newsNextPrev .next .arrow svg {
          fill: #16a68e;
          display: block;
          width: 100%;
          height: 100%; }
    #information .newsDetail .newsNextPrev .prev {
      padding-left: 1em; }
      #information .newsDetail .newsNextPrev .prev .arrow {
        left: 0;
        transform: scale(-1, 1) translateY(-50%); }
    #information .newsDetail .newsNextPrev .next {
      padding-right: 1em; }
      #information .newsDetail .newsNextPrev .next .arrow {
        right: 0; }
  #information .newsDetail .commonBtn a {
    margin: 30px auto; }
#information #ftInfoArea .newsWrap {
  display: none; }

/*----------------------------------
 outline
-----------------------------------*/
/* Scss Document */
#outlineInfo section .innerBox {
  max-width: 900px;
  margin: 0 auto; }
  #outlineInfo section .innerBox .descBox dl dt {
    font-size: 2.0rem;
    font-weight: 700;
    position: relative;
    padding-left: 2.5em;
    width: fit-content; }
    #outlineInfo section .innerBox .descBox dl dt::before {
      content: '';
      position: absolute;
      background: #16a68e;
      height: 2px;
      width: 2em;
      top: 50%;
      transform: translateY(-50%);
      left: 0; }
  #outlineInfo section .innerBox .descBox dl dd {
    padding-left: 4em;
    font-size: 1.8rem; }
    #outlineInfo section .innerBox .descBox dl dd div {
      margin-top: 0.5em; }
      #outlineInfo section .innerBox .descBox dl dd div p.place {
        font-weight: 500;
        font-size: 1.8rem; }
      #outlineInfo section .innerBox .descBox dl dd div p.text {
        line-height: 1.5; }
      #outlineInfo section .innerBox .descBox dl dd div + div {
        margin-top: 0.25em; }
  #outlineInfo section .innerBox .descBox dl + dl {
    margin-top: 1em; }
  @media (max-width: 480px) {
    #outlineInfo section .innerBox .descBox dl dt {
      font-size: 1.6rem;
      padding-left: 1.5em; }
      #outlineInfo section .innerBox .descBox dl dt::before {
        width: 1em; }
    #outlineInfo section .innerBox .descBox dl dd {
      padding-left: 2.5em;
      font-size: 1.4rem; }
      #outlineInfo section .innerBox .descBox dl dd div p.place {
        font-size: 1.4rem; } }

/*----------------------------------
 contact
-----------------------------------*/
#contactArea {
  padding: min(80px,9vw) 0 min(200px,22.5vw); }
  #contactArea h2 {
    text-align: center;
    font-size: clamp(22px, 4.167vw, 40px);
    margin-bottom: 50px; }
  #contactArea .info {
    margin-bottom: min(80px,9vw); }
    #contactArea .info a {
      text-decoration: underline; }
  #contactArea .innerBox {
    max-width: 900px;
    margin: 0 auto; }
  #contactArea .moreBtn {
    margin-top: min(80px,9vw); }
  @media (max-width: 480px) {
    #contactArea {
      padding: 50px 0 min(200px,22.5vw); }
      #contactArea h2 {
        margin-bottom: 30px; }
      #contactArea .info {
        text-align: left;
        margin-bottom: 40px; } }
  #contactArea .commonBtn a {
    margin: 40px auto 0; }

#contactForm {
  /* 送信エリア */ }
  #contactForm dl {
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    justify-content: space-between; }
    #contactForm dl + dl {
      margin-top: 40px; }
    #contactForm dl dt {
      width: 230px;
      position: relative;
      align-self: flex-start;
      margin: 8px 0; }
      #contactForm dl dt .required {
        color: #FFFFFF;
        font-size: 1.2rem;
        width: 45px;
        height: 25px;
        line-height: 1;
        background: #16a68e;
        position: absolute;
        top: 0;
        left: auto;
        right: 0;
        bottom: 0;
        display: flex;
        justify-content: center;
        align-items: center; }
    #contactForm dl dd {
      width: calc(100% - 250px); }
    #contactForm dl.tel input {
      width: 28%; }
    @media (max-width: 480px) {
      #contactForm dl {
        display: block; }
        #contactForm dl dt {
          margin: 0 0 10px;
          width: 100%;
          display: flex;
          align-items: center; }
          #contactForm dl dt .required {
            position: relative;
            margin-left: 1em; }
        #contactForm dl dd {
          width: 100%; } }
  #contactForm .privacy {
    margin: min(80px,9vw) auto; }
    #contactForm .privacy .privacyBox {
      padding: 5px 10px;
      width: 100%;
      height: 50px;
      border: 1px solid #FFFFFF;
      box-sizing: border-box;
      display: -webkit-flex;
      display: -moz-flex;
      display: flex;
      -webkit-justify-content: center;
      -moz-justify-content: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      #contactForm .privacy .privacyBox .mwform-checkbox-field {
        display: block; }
      #contactForm .privacy .privacyBox a {
        font-size: 1.6rem;
        text-decoration: underline; }
  #contactForm .sentArea {
    padding: 0 0 40px;
    text-align: center; }
    #contactForm .sentArea .btn {
      margin: auto;
      max-width: 300px;
      width: 80%;
      height: 80px;
      display: block;
      position: relative; }
      @media (max-width: 480px) {
        #contactForm .sentArea .btn {
          height: 60px; } }
      #contactForm .sentArea .btn::before, #contactForm .sentArea .btn::after {
        content: '';
        margin: auto;
        display: block;
        position: absolute;
        right: 24px;
        background: #ffffff;
        transition: 0.4s; }
      #contactForm .sentArea .btn::before {
        width: 30px;
        height: 1px;
        top: calc(50% + 4px); }
      #contactForm .sentArea .btn::after {
        width: 5px;
        height: 5px;
        clip-path: polygon(0 0, 0% 100%, 100% 100%);
        top: 50%; }
    #contactForm .sentArea input[type="submit"], #contactForm .sentArea button {
      margin: auto;
      color: #FFFFFF;
      font-size: 2.0rem;
      text-align: center;
      width: 100%;
      height: 80px;
      line-height: 80px;
      background: #707070;
      transition: 0.4s;
      cursor: pointer; }
      @media (max-width: 480px) {
        #contactForm .sentArea input[type="submit"], #contactForm .sentArea button {
          height: 60px;
          line-height: 60px;
          font-size: 1.6rem; } }
      #contactForm .sentArea input[type="submit"]:hover, #contactForm .sentArea button:hover {
        background: #16a68e; }
    #contactForm .sentArea input[type="submit"][disabled] {
      opacity: 0.5; }
    #contactForm .sentArea input.backbtn {
      margin: 20px auto 0;
      color: #FFFFFF;
      font-size: 1.8rem;
      font-weight: 700;
      text-align: center;
      width: 100%;
      max-width: 360px;
      height: 70px;
      line-height: 70px;
      background: #dcdcdc;
      border-radius: 35px; }
      @media (max-width: 480px) {
        #contactForm .sentArea input.backbtn {
          height: 50px;
          line-height: 50px;
          font-size: 1.4rem; } }

/*----------------------------------
 contact
-----------------------------------*/
/*================================================================
	MW WP FORM用 フォームパーツ
================================================================*/
input, button, textarea {
  margin: 0;
  padding: 0;
  line-height: 1;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="url"],
input[type="number"],
textarea {
  padding: 8px;
  width: 100%;
  background: #ffffff;
  border: solid 1px #c6c6c6;
  -webkit-transition: all .3s;
  transition: all .3s;
  box-sizing: border-box; }
  input[type="text"]:focus,
  input[type="tel"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="number"]:focus,
  textarea:focus {
    background: #ffffff; }
  @media (max-width: 480px) {
    input[type="text"],
    input[type="tel"],
    input[type="email"],
    input[type="url"],
    input[type="number"],
    textarea {
      font-size: 1.4rem; } }

textarea {
  line-height: 1.8; }

::-webkit-input-placeholder,
::-ms-input-placeholder,
::placeholder {
  color: #c6c6c6; }

/* ラジオボタン */
span.mwform-radio-field {
  margin-left: 0 !important;
  margin-right: 15px !important;
  line-height: 1; }
  span.mwform-radio-field label {
    padding: 3px 3px 3px 25px;
    position: relative;
    display: inline-block;
    cursor: pointer; }
    span.mwform-radio-field label input[type="radio"] {
      display: none; }
      span.mwform-radio-field label input[type="radio"] + .mwform-radio-field-text::before, span.mwform-radio-field label input[type="radio"] + .mwform-radio-field-text::after {
        content: '';
        border-radius: 100%;
        -webkit-transition: all .2s;
        transition: all .2s;
        position: absolute;
        top: 50%; }
      span.mwform-radio-field label input[type="radio"] + .mwform-radio-field-text::before {
        margin-top: -6px;
        width: 14px;
        height: 14px;
        background: #f3f3f3;
        border: 1px solid #ccc;
        left: 0; }
      span.mwform-radio-field label input[type="radio"] + .mwform-radio-field-text:hover::before {
        background: #ffffff; }
      span.mwform-radio-field label input[type="radio"] + .mwform-radio-field-text::after {
        opacity: 0;
        left: 3px;
        width: 8px;
        height: 8px;
        margin-top: -3px;
        background: #55C0CC;
        -webkit-transform: scale(2);
        transform: scale(2); }
      span.mwform-radio-field label input[type="radio"]:checked + .mwform-radio-field-text::before {
        background: #fff;
        border: 1px solid #55C0CC; }
      span.mwform-radio-field label input[type="radio"]:checked + .mwform-radio-field-text::after {
        opacity: 1;
        -webkit-transform: scale(1);
        transform: scale(1); }
    @media (max-width: 480px) {
      span.mwform-radio-field label {
        display: block; } }
  @media (max-width: 480px) {
    span.mwform-radio-field + .mwform-radio-field {
      margin: 0 0 10px; } }

/* セレクトボックス */
select, option {
  padding: 5px 10px;
  border: solid 1px #c6c6c6; }

/* チェックボックス */
span.mwform-checkbox-field label {
  margin-right: 20px;
  padding: 3px 3px 3px 22px;
  position: relative;
  display: inline-block;
  cursor: pointer;
  -webkit-transition: all .2s;
  transition: all .2s; }
  span.mwform-checkbox-field label input[type="checkbox"] {
    display: none; }
    span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text {
      display: inline-block; }
      span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text::before, span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text::after {
        content: '';
        position: absolute;
        -webkit-transition: all .2s;
        transition: all .2s; }
      span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text::before {
        margin-top: -8px;
        width: 24px;
        height: 24px;
        background: #ffffff;
        border: solid 1px #c6c6c6;
        border-radius: 3px;
        top: 40%;
        left: 0; }
      span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text:hover::before {
        background: #ffffff; }
      span.mwform-checkbox-field label input[type="checkbox"] + .mwform-checkbox-field-text::after {
        margin-top: -4px;
        width: 12px;
        height: 8px;
        border-left: 2px solid #ffffff;
        border-bottom: 2px solid #ffffff;
        -webkit-transform: rotate(-45deg) scale(0.5);
        transform: rotate(-45deg) scale(0.5);
        opacity: 0;
        top: 50%;
        left: 6px; }
    span.mwform-checkbox-field label input[type="checkbox"]:checked + .mwform-checkbox-field-text::before {
      background: #16a68e; }
    span.mwform-checkbox-field label input[type="checkbox"]:checked + .mwform-checkbox-field-text::after {
      opacity: 1;
      -webkit-transform: rotate(-45deg) scale(1);
      transform: rotate(-45deg) scale(1); }

/*----------------------------------
 privacy
-----------------------------------*/
#privacyArea section .introTxt {
  font-size: 1.8rem;
  line-height: 1.75; }
#privacyArea section .descBox .lead {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 1em; }
#privacyArea section .descBox ul {
  margin-top: 1em; }
  #privacyArea section .descBox ul li + li {
    margin-top: 0.5em; }
#privacyArea section .descBox + .descBox {
  margin-top: min(40px,4.5vw); }
#privacyArea section p + p {
  margin-top: 1em; }
#privacyArea section .esta {
  text-align: right;
  margin-top: min(40px,4.5vw); }
  #privacyArea section .esta p {
    line-height: 1.75; }
    #privacyArea section .esta p + p {
      margin-top: 0.75em; }
#privacyArea section + section {
  margin-top: min(80px,9vw); }
@media (max-width: 480px) {
  #privacyArea section .introTxt {
    font-size: 1.5rem; }
  #privacyArea section .descBox .lead {
    font-size: 1.5rem; }
  #privacyArea section .descBox + .descBox {
    margin-top: 25px; }
  #privacyArea section + section {
    margin-top: 60px; }
  #privacyArea section .esta {
    margin-top: 25px; } }
</pre></body></html>