@charset "UTF-8";
@media screen and (min-width: 641px) {
  /*---------------------------*/
  body {
    min-width: 1000px; }
  /* PC/SP ------------------- */
  .only_sp {
    display: none; }
  .only_pc {
    display: block; }
  /* --------------------
HEADER-TABLET
-------------------- */
  header {
    height: 72px; }
  .headerInner {
    height: 72px; }
    .headerInner h1 a {
      display: inline-block;
      width: 265px;
      margin: 0;
      padding: 16px 0;
      font-size: 0;
      /* img */ }
      .headerInner h1 a img {
        display: inline-block;
        vertical-align: bottom; }
        .headerInner h1 a img.header-logo {
          width: 100%; }
  /* headerInner */
  .entry {
    right: 72px;
    width: 72px;
    height: 72px; }
    .entry img {
      height: 50px;
      margin: 11px auto; }
    .entry:hover {
      background-color: #005034; }
  /* entry */
  .hamburger {
    padding: 27px 21px; }
  .hamburger-box {
    width: 30px;
    height: 18px; }
  .hamburger-inner {
    margin-top: -2px; }
    .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
      width: 30px; }
    .hamburger-inner::before {
      top: -8px; }
    .hamburger-inner::after {
      bottom: -8px; }
  /* hamburger-inner */
  /* --------------------
NAV-TABLET
----------------------- */
  .menulist {
    width: calc(50% - 490px + 640px);
    min-width: 640px;
    height: 100%;
    padding: 70px 0 0 40px;
    transition: 0.3s;
    /* ul */ }
    .menulist.is-active {
      right: -17px; }
    .menulist img {
      display: block;
      transition: 0.3s; }
    .menulist h3 {
      padding: 30px 0 20px;
      font-size: 18px; }
      .menulist h3.other {
        font-size: 13px;
        padding: 30px 0 20px; }
    .menulist ul {
      width: 220px; }
      .menulist ul li {
        padding: 14px 0  14px 14px;
        font-size: 15px;
        border-bottom: none;
        /* ul */ }
        .menulist ul li a:hover {
          color: #ccc; }
        .menulist ul li ul {
          display: block !important;
          position: absolute;
          top: 90px;
          left: 240px;
          width: 325px;
          height: 0;
          margin: 0;
          opacity: 0;
          transition: all .5s;
          overflow: hidden; }
          .menulist ul li ul.open {
            opacity: 1;
            height: 680px; }
          .menulist ul li ul li {
            padding: 0;
            margin-bottom: 20px;
            width: 100%; }
          .menulist ul li ul a {
            font-size: 12px; }
            .menulist ul li ul a:active {
              color: #ccc; }
            .menulist ul li ul a:hover {
              color: #ccc; }
  /* menulist */
  .navParent:hover {
    cursor: pointer; }
  .navParent.open::after {
    -webkit-transform: translateY(-50%) rotate(0);
    transform: translateY(-50%) rotate(0); }
  .navEntry {
    display: block;
    position: static;
    width: 200px;
    margin: 20px 0 40px;
    padding: 8px 0; }
    .navEntry.pc {
      display: block; }
    .navEntry.sp {
      display: none; }
    .navEntry:hover {
      color: #fff;
      background-color: #005034; }
  /* ------------------------------
BREADCRUMS-TABLET
--------------------------------- */
  .breadcrums > div {
    height: 12px;
    padding: 10px 0; }
  .breadcrums a {
    height: 12px;
    padding: 0 25px 0 0;
    font-size: 12px; }
  .breadcrums a[href]::after {
    right: 5px;
    border: solid 5px transparent;
    border-left: solid 5px #29973c; }
  .breadcrums a[href]:hover {
    color: #29973c; }
  /* breadcrums */
  /* COMMON-TABLET ------ */
  .maxWidth {
    width: 960px;
    margin: 0 auto; }
  .readmore {
    width: 128px;
    padding: 10px 0; }
    .readmore:hover {
      background-color: #13be67; }
  .minchoHead {
    margin: 0 0 40px;
    font-size: 31px;
    line-height: 1.9;
    letter-spacing: 0.15em; }
  .commonTopimage {
    height: 350px;
    background-size: cover; }
    .commonTopimage h2 {
      display: table;
      margin: 0 auto;
      width: 100%; }
      .commonTopimage h2 img {
        max-width: 224px;
        margin: 0 auto; }
    .commonTopimage p {
      font-size: 20px; }
  /* --------------------
FOOTER-TABLET
----------------------- */
  .othercontent {
    padding: 55px 0 120px;
    /* ul */ }
    .othercontent h2 {
      margin: 0 0 40px;
      font-size: 19px; }
    .othercontent ul {
      display: flex;
      justify-content: center; }
      .othercontent ul li {
        width: 300px;
        height: 275px; }
        .othercontent ul li a {
          padding-bottom: 30px;
          font-size: 19px;
          line-height: 1.8;
          letter-spacing: 0.2em; }
          .othercontent ul li a span {
            display: block;
            position: absolute;
            bottom: 50px;
            left: 50%;
            margin-left: -64px;
            width: 128px;
            padding: 10px 0;
            font-size: 11px;
            line-height: 1;
            color: #29973c;
            background: #fff;
            letter-spacing: 0; }
          .othercontent ul li a::after {
            display: none; }
          .othercontent ul li a:hover {
            background-color: #308165; }
        .othercontent ul li:nth-of-type(2) a:hover {
          background-color: #308165; }
  /* othercontent */
  .sitemap {
    padding: 30px 0; }
    .sitemap ul {
      text-align: center; }
      .sitemap ul li {
        display: inline;
        font-size: 13.6px;
        line-height: 2;
        margin: 0 40px 0 0; }
        .sitemap ul li:first-child {
          margin: 0 40px 0 0; }
        .sitemap ul li a:hover {
          text-decoration: underline; }
  /* sitemap */
  /* --------------------
TOP-TABLET
----------------------- */
  .topImage {
    margin-bottom: 0;
    height: 46.7vw;
    min-height: 715px;
    max-height: calc(100vh - 72px);
    /* swiper-slide */
    /* img1 */
    /* img2 */
    /* img3 */
    /* img4 */
    /* img5 */
    /* mainCatch */ }
    .topImage .swiper-slide {
      /* topImageText2 */ }
      .topImage .swiper-slide .topImageText1 {
        width: 30%;
        max-width: 560px;
        left: 50%;
        margin-left: -460px;
        bottom: auto;
        top: 50%;
        transform: translateY(-50%); }
        .topImage .swiper-slide .topImageText1 img.topImageText1-1 {
          margin-bottom: 60px; }
          .topImage .swiper-slide .topImageText1 img.topImageText1-1.sp {
            display: none; }
          .topImage .swiper-slide .topImageText1 img.topImageText1-1.pc {
            display: block; }
        .topImage .swiper-slide .topImageText1 img.topImageText1-2 {
          margin-bottom: 20px; }
      .topImage .swiper-slide .topImageText2.topImageText2-2 {
        width: 380px;
        left: auto;
        right: 50%;
        margin-right: -480px;
        bottom: 18%; }
      .topImage .swiper-slide .topImageText2.topImageText2-3 {
        width: 324px;
        left: 50%;
        margin-left: -420px;
        bottom: 40%; }
      .topImage .swiper-slide .topImageText2.topImageText2-4 {
        width: 310px;
        left: auto;
        right: 50%;
        margin-right: -480px;
        bottom: 14%; }
      .topImage .swiper-slide .topImageText2.topImageText2-5 {
        width: 338px;
        left: 50%;
        margin-left: -420px;
        bottom: 40%; }
      .topImage .swiper-slide .topImageText2 p.post {
        font-size: 14px; }
      .topImage .swiper-slide .topImageText2 p.name {
        margin: 10px 0 15px;
        font-size: 24px; }
      .topImage .swiper-slide .topImageText2 .text p {
        padding: 5px 10px;
        font-size: 14px; }
    .topImage .subCatch {
      width: 63px;
      height: 400px; }
    .topImage .topImage1 {
      background-image: url(../images/top_header-1-pc.jpg?0927); }
    .topImage .img1 .subCatch {
      top: 23%;
      right: 25%; }
    .topImage .topImage2 {
      background-image: url(../images/top_header-2-pc.jpg); }
    .topImage .img2 .subCatch {
      top: 23%;
      left: 25%; }
    .topImage .topImage3 {
      background-image: url(../images/top_header-3-pc.jpg?0919); }
    .topImage .img3 .subCatch {
      top: 23%;
      right: 25%;
      left: auto; }
    .topImage .topImage4 {
      background-image: url(../images/top_header-4-pc.jpg); }
    .topImage .img4 .subCatch {
      top: 23%;
      right: 25%;
      left: auto; }
    .topImage .topImage5 {
      background-image: url(../images/top_header-5-pc.jpg); }
    .topImage .img5 .subCatch {
      top: 23%;
      left: 25%; }
    .topImage .mainCatch {
      position: absolute;
      top: 30%;
      bottom: auto;
      width: 224px; }
  /* topImage */
  .topH2 {
    margin: 0 0 30px;
    font-size: 19px;
    letter-spacing: 0.3em; }
  .topInformation {
    padding: 10px 0; }
    .topInformation h2 {
      display: inline-block;
      margin: 0;
      font-size: 17px;
      line-height: 1.3; }
    .topInformation p {
      display: inline-block;
      margin: 0 0 0 25px;
      font-size: 17px; }
  /* topInformation */
  /* ABOUT --------------- */
  .topSection1 {
    max-height: 582px;
    height: 58.5vw;
    padding: 0;
    background-image: url(../images/top_about_bg.jpg);
    background-color: #f6f8fb;
    background-position: center bottom;
    background-size: cover; }
    .topSection1 > div {
      padding-top: 5%;
      padding-bottom: 5%;
      max-width: 540px; }
    .topSection1 h2 {
      text-align: center;
      margin-bottom: 30px; }
    .topSection1 h3 {
      margin: 0 auto 5% auto;
      max-width: 350px; }
    .topSection1 img {
      margin: 0 0 0px; }
    .topSection1 p {
      text-align: center;
      line-height: 2.5;
      font-size: 14px;
      font-weight: normal; }
    .topSection1 .readmore {
      position: relative;
      right: 0;
      left: 0;
      margin-right: auto;
      bottom: 0px; }
  /* topSection1 */
  /* LINK BANNER --------------- */
  .topSection2 {
    padding: 70px 0; }
    .topSection2 ul {
      display: block;
      /* li */ }
      .topSection2 ul li {
        display: block;
        max-width: 960px;
        width: 100%; }
        .topSection2 ul li:first-of-type {
          margin-bottom: 10px; }
        .topSection2 ul li:nth-of-type(2) {
          margin-top: 0; }
        .topSection2 ul li a {
          max-height: 179px;
          background-position: center; }
          .topSection2 ul li a div {
            transition: 0.3s; }
          .topSection2 ul li a:hover div {
            transform: scale(1.1); }
        .topSection2 ul li h2 {
          top: 0%;
          font-size: 31px;
          letter-spacing: 0.3em; }
          .topSection2 ul li h2 span {
            font-size: 15px; }
  /* topSection2 */
  /* INTERVIEW --------------- */
  .topSection3 {
    /* li */ }
    .topSection3:after {
      background-size: 50%; }
    .topSection3 h2 {
      margin: 0 auto 100px auto;
      font-size: 31px; }
      .topSection3 h2 span {
        display: block;
        margin-top: 8px;
        font-size: 15px; }
    .topSection3 ul {
      margin: 0 auto;
      max-width: 930px; }
    .topSection3 li {
      margin-bottom: 30px;
      width: 18%; }
      .topSection3 li:last-of-type {
        margin-bottom: 0px; }
      .topSection3 li .fukidashi {
        width: 100%; }
      .topSection3 li a > span {
        position: relative;
        top: -20px;
        margin: 0 auto;
        width: 100%;
        max-width: 110px;
        height: 410vw;
        max-height: 369px;
        transition: 0.3s; }
      .topSection3 li a:hover > span {
        transform: translateY(-5px); }
      .topSection3 li .name {
        text-align: center;
        letter-spacing: 0.2em; }
        .topSection3 li .name span {
          display: block;
          font-size: 12px; }
  /* topSection3 */
  /* PRESIDENT --------------- */
  .topSection4 {
    margin-right: auto;
    margin-left: auto;
    padding: 60px 0 20px 0;
    max-width: 960px; }
    .topSection4 a > span {
      right: 0;
      bottom: 20px;
      width: 543px;
      height: 290px;
      background-image: url(../images/top_president-pc.jpg?230222);
      background-size: cover;
      background-position: left center; }
    .topSection4 > div {
      margin: 0 auto;
      width: 90%; }
    .topSection4 h2 {
      margin: 0 auto 30px auto; }
    .topSection4 p {
      position: relative;
      z-index: 9;
      width: 70%; }
      .topSection4 p:first-of-type {
        font-size: 31px; }
  /* topSection4 */
  /* SPECIAL --------------- */
  .topSection5 {
    max-height: 429px; }
    .topSection5 a > span {
      background-image: url(../images/top_special-pc.jpg);
      background-position: center;
      transition: 0.3s; }
    .topSection5 a:hover > span {
      transform: scale(1.1); }
    .topSection5 h2 {
      top: 20%;
      right: 0%;
      width: 60%;
      max-width: 412px; }
      .topSection5 h2 span {
        display: table;
        margin-bottom: 12px;
        padding: 8px 30px;
        background-color: #29973c;
        letter-spacing: 0.5em;
        font-weight: bold;
        font-size: 16px;
        color: #ffffff; }
    .topSection5 .small {
      right: 10%;
      bottom: 10px;
      padding: 0;
      width: auto;
      background-color: transparent;
      text-align: left; }
    .topSection5 a > div {
      position: relative;
      margin: 0 auto;
      width: 100%;
      height: 100%;
      max-width: 960px; }
  /* topSection5 */
  .topSection6 {
    padding: 70px 0 0;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
  }
  .topSection6 .imageBox {
    display: flex;
    justify-content: center;
    margin-bottom: 24px;
  }
  .topSection6 .imageBox .pc_MV {
    position: relative;
    width: 560px;
    display: block;
  }
  .topSection6 .imageBox .bubble {
    position: absolute;
    top: 128px;
    left: -82px;
    width: 236px;
    height: 148px;
  }
  .topSection6 .imageBox .mvText {
    position: absolute;
    top: 134px;
    right: -37px;
    width: 163px;
    height: 70px;
  }
  .topSection6 .imageBox .sp_mvText {
    display: none;
  }
  .topSection6 .imageBox .sp_MV {
    display: none;
  }
  .topSection6 .employees_pc {
    display: flex;
    justify-content: center;
    width: 100%;
    position: relative;
    overflow: hidden;
  }
  .topSection6 .employees_pc .employee {
    width: 100%;
    max-height: 128px;
    max-width: 1436px;
    height: 100%;
  }
  .topSection6 .employees_pc .bg {
    max-height: 128px;
    height: 100%;
  }
  .topSection6 .employees_sp {
    display: none;
  }
  .topSection6 .discussionGroup {
    display: flex;
    justify-content: center;
    flex-direction: row;
  }
  .topSection6 .discussionGroup .discussionBox {
    display: block;
    width: 304px;
    margin-left: 12px;
    margin-right: 12px;
    margin-top: 32px;
    position: relative;
  }
  .topSection6 .discussionGroup .discussionBox > p {
    border-top: 1px solid #5B79B9;
    border-bottom: 1px solid #5B79B9;
    padding: 12px 0;
    display: flex;
    justify-content: center;
    font-size: 24px;
    font-family :
    YuMincho,    /* Mac用 */
    'Yu Mincho', /* Windows用 */
    serif;
  }
  .topSection6 .discussionGroup .discussionBox div {
    width: 304px;
    height: 179px;
    margin-top: 8px;
  }
  .topSection6 .discussionGroup .discussionBox:hover {
    background-color: #F3F7FF;
  }
  .topSection6 .discussionGroup .discussionBox:active {
    background-color: #F3F7FF;
  }
  .topSection6 .discussionGroup .discussionBox {
    transition: 0.3s;
  }
  .topSection6 .discussionGroup .discussionBox > img {
    width: 304px;
    margin-top: 8px;
  }
  .topSection6 .discussionGroup .discussionBox span {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 16px;
    height: 35px;
    position: relative;
    box-shadow: none;
    background-color: inherit;
    right: 0;
    transition: 0s;
  }
  .topSection6 .discussionGroup .discussionBox span p {
    margin-right: 8px;
    font-size: 16px;
    font-family :
    YuMincho,    /* Mac用 */
    'Yu Mincho', /* Windows用 */
    serif;
  }
  .topSection6 .discussionGroup .discussionBox:active {
    background-color: #F3F7FF;
  }
  .topSection6 .discussionGroup .discussionBox:active span{
    background-color: #F3F7FF;
  }
  .topSection6 .discussionGroup .discussionBox:active span p{
    color: #303030;
  }
  .topSection6 .discussionGroup .discussionBox:active span > img{
    display: block;
  }
  .topSection6 .discussionGroup .discussionBox:active span .hoverButton{
    display: none;
  }
  .topSection6 .discussionGroup .discussionBox span .hoverButton{
    display: none;
  }
  .topSection6 .discussionGroup .discussionBox span > img {
    width: 16px;
    height: 16px;
  }
  /* topSection6 */
  /* ROOKIE --------------- */
  .topSection7 {
    padding-bottom: 50px;
    /* li */
    /* a */ }
    .topSection7:after {
      top: 8%;
      min-width: 800px;
      width: 70%;
      height: 88%;
      background-color: #ffffff; }
    .topSection7 h2 {
      margin: 0 auto 30px auto;
      width: 100%;
      font-size: 35px;
      line-height: 1; }
      .topSection7 h2 span {
        display: inline; }
    .topSection7 .lead br {
      display: none; }
    .topSection7 ul {
      max-width: 880px;
      width: 90%; }
    .topSection7 li {
      width: 30%; }
      .topSection7 li:first-of-type img {
        border: 3px solid #1eb4ff; }
      .topSection7 li:first-of-type p {
        color: #1eb4ff; }
      .topSection7 li:nth-of-type(2) img {
        border: 3px solid #ff7896; }
      .topSection7 li:nth-of-type(2) p {
        color: #ff7896; }
      .topSection7 li:nth-of-type(3) {
        margin-top: 0px; }
        .topSection7 li:nth-of-type(3) img {
          border: 3px solid #13ae67; }
        .topSection7 li:nth-of-type(3) p {
          color: #13ae67; }
    .topSection7 a {
      overflow: hidden; }
      .topSection7 a > img {
        margin-bottom: 12px;
        border-radius: 10px;
        transition: 0.3s; }
      .topSection7 a p {
        text-align: center;
        letter-spacing: 0.1em; }
        .topSection7 a p span {
          display: block;
          font-size: 12px; }
  /* topSection7 */
  /* ------------------------
WOMENSTALK-TABLET
--------------------------- */
  .womenSection1 {
    height: 620px;
    background-image: url(../images/top_woman.png?0919); }
    .womenSection1 h2 {
      max-width: 613px;
      left: 0;
      right: 0;
      top: 30px;
      margin: 0 auto; }
    .womenSection1 > div {
      left: auto;
      right: 15%;
      max-width: 193px;
      width: 100%; }
      .womenSection1 > div p {
        margin: 0 auto; }
  /* womenSection1 */
  .womenSection2 {
    max-width: 960px;
    margin: 0 auto;
    padding: 50px 0 70px; }
    .womenSection2 > p {
      width: 100%;
      font-size: 14px;
      line-height: 2; }
      .womenSection2 > p br {
        display: inline; }
  /* womenSection2 */
  .womenSection3 {
    margin-bottom: 60px; }
    .womenSection3 h2 {
      color: #ff7896; }
    .womenSection3 ul {
      display: flex;
      justify-content: space-around;
      max-width: 827px; }
      .womenSection3 ul li {
        display: block;
        width: 30%;
        margin-bottom: 0; }
        .womenSection3 ul li > span {
          width: 200px;
          border-radius: 100px;
          margin: 0 auto 25px; }
        .womenSection3 ul li div {
          margin: 0 auto 20px;
          padding: 0;
          width: 100%; }
          .womenSection3 ul li div h4 {
            margin-bottom: 20px;
            text-align: center;
            font-size: 20px; }
            .womenSection3 ul li div h4 span {
              margin-bottom: 4px;
              letter-spacing: 0.1em;
              font-size: 12px; }
          .womenSection3 ul li div p {
            text-align: center;
            font-size: 14px; }
        .womenSection3 ul li > p {
          width: 216px;
          margin: 20px auto 0;
          font-size: 14px;
          line-height: 2;
          color: #333; }
  /* womenSection3 */
  .womenSection4 {
    padding: 60px 0 60px 0;
    background-color: #fff1f4;
    /* txtWrap */ }
    .womenSection4 > div {
      margin: 0 auto !important;
      overflow: hidden;
      width: 800px; }
    .womenSection4 .txtWrap {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto 60px auto;
      width: 100%;
      /* right */
      /* right */ }
      .womenSection4 .txtWrap p {
        align-self: center;
        width: 75%;
        font-size: 14px; }
        .womenSection4 .txtWrap p.large {
          font-size: 20px; }
        .womenSection4 .txtWrap p.large_big {
          font-size: 23px; }
      .womenSection4 .txtWrap span {
        width: 160px; }
      .womenSection4 .txtWrap.right p {
        order: 1; }
      .womenSection4 .txtWrap.right span {
        order: 2;
        float: none;
        margin-left: 12px; }
      .womenSection4 .txtWrap.left span {
        float: none;
        margin-right: 12px; }
      .womenSection4 .txtWrap .photoWrap {
        max-width: 440px;
        width: 50%;
        margin: 0; }
        .womenSection4 .txtWrap .photoWrap span {
          max-width: 160px;
          width: 100%; }
          .womenSection4 .txtWrap .photoWrap span:first-of-type {
            margin: 0 auto 0 0; }
          .womenSection4 .txtWrap .photoWrap span:nth-of-type(2) {
            position: absolute;
            left: 30%; }
          .womenSection4 .txtWrap .photoWrap span:nth-of-type(3) {
            margin: 0 0 0 auto; }
      .womenSection4 .txtWrap.wrap2 p {
        width: 48%; }
  /* womenSection4 */
  .womenSection5 {
    height: 685px; }
    .womenSection5 h3 {
      position: absolute;
      z-index: 2;
      top: 140px;
      right: 50%;
      margin: 0 -415px 0 0;
      width: 460px;
      font-size: 35px;
      line-height: 1.6; }
    .womenSection5 .swiper-slide {
      height: 685px;
      background-position: center top !important; }
      .womenSection5 .swiper-slide .womenSec5Text {
        width: 390px;
        right: 50%;
        bottom: auto;
        top: 340px;
        margin: 0 -415px 0 auto;
        padding: 20px 30px;
        background: #fff; }
        .womenSection5 .swiper-slide .womenSec5Text span {
          right: auto;
          left: -60px;
          top: -70px;
          width: 100px;
          height: 100px;
          font-size: 24px;
          border-radius: 50px; }
        .womenSection5 .swiper-slide .womenSec5Text p {
          position: relative;
          font-size: 16px;
          line-height: 40px;
          background-image: linear-gradient(to right, #fff 1.1px, transparent 1px), linear-gradient(to bottom, #ff7896 1.1px, transparent 1px);
          background-size: 2px 40px; }
          .womenSection5 .swiper-slide .womenSec5Text p::after {
            position: absolute;
            content: '';
            width: 100%;
            height: 2px;
            top: 0;
            left: 0;
            background: #fff; }
    .womenSection5 .prev:hover,
    .womenSection5 .next:hover {
      cursor: pointer; }
    .womenSection5 .prev {
      left: 50%;
      margin-left: -490px; }
    .womenSection5 .next {
      right: 50%;
      margin-right: -490px; }
  /* womenSection5 */
  /* ---------------------------
SPECIAL
------------------------------- */
  .specialSection1 {
    margin-bottom: 50px;
    max-height: 429px;
    background-image: url(../images/special_hd-pc.jpg); }
    .specialSection1 > div {
      position: relative;
      margin: 0 auto;
      max-width: 960px;
      height: 100%; }
    .specialSection1 h2 {
      top: 20%;
      max-width: 414px; }
      .specialSection1 h2 span {
        display: table;
        margin: 0 auto 20px 0;
        padding: 4px 30px;
        letter-spacing: 0.5em;
        font-size: 17px; }
    .specialSection1 .small {
      right: 0;
      left: auto;
      bottom: 10px;
      padding: 0;
      width: auto;
      background-color: transparent; }
  /* specialSection1 */
  .specialSection2 {
    margin: 0 auto 140px auto;
    max-width: 960px; }
    .specialSection2 h2 {
      font-size: 28px; }
      .specialSection2 h2 br {
        display: none; }
      .specialSection2 h2 strong {
        font-size: 34px; }
  /* specialSection2 */
  .specialSection3 {
    /* top */
    /* bottom */ }
    .specialSection3 .maxWidth {
      margin: 0 auto;
      width: 960px; }
    .specialSection3 h3 {
      top: -75px;
      width: 100%; }
    .specialSection3 h4 {
      margin-bottom: 25px;
      font-size: 17px; }
    .specialSection3 .top {
      margin-bottom: 30px; }
    .specialSection3 .bottom {
      width: 680px;
      margin: 0 auto; }
      .specialSection3 .bottom li {
        margin-bottom: 20px;
        width: 170px; }
        .specialSection3 .bottom li span {
          margin-top: 0;
          font-size: 16px; }
  /* specialSection3 */
  /* --- STAFF-TABLET --- */
  .staffSection1 {
    position: relative;
    max-width: 1600px;
    margin: 0 auto;
    padding: 0;
    /* staffProfile */ }
    .staffSection1 .maxWidth {
      position: relative;
      padding: 0 0 50px; }
    .staffSection1 .staffImage {
      position: relative;
      margin: 0;
      width: calc(50% + 200px);
      height: 410px; }
    .staffSection1 .block0 {
      width: 600px;
      margin: 60px 0 40px;
      margin-left: calc(50% - 480px); }
      .staffSection1 .block0 .catch {
        margin: 0;
        text-align: left;
        font-size: 28px;
        line-height: 1.8; }
        .staffSection1 .block0 .catch span {
          text-align: right; }
    .staffSection1 .staffProfile {
      position: absolute;
      right: calc(50% - 480px);
      top: 290px;
      width: 290px;
      padding: 35px 15px 20px; }
      .staffSection1 .staffProfile p {
        font-size: 14px; }
        .staffSection1 .staffProfile p.profName {
          margin: 10px 0;
          font-size: 30px; }
          .staffSection1 .staffProfile p.profName::after {
            width: 72px;
            margin: 10px auto 15px; }
        .staffSection1 .staffProfile p.profText {
          width: 100%;
          margin: 15px auto 0;
          line-height: 1.6; }
    .staffSection1 .note {
      position: absolute;
      right: 0; }
  /* staffSection1 */
  .staffSection2 {
    /* sectionBox */
    /* sec2 */
    /* bgImage */ }
    .staffSection2 h2 {
      font-size: 28px;
      line-height: 1.8; }
    .staffSection2 .sectionBox {
      position: relative;
      padding-bottom: 60px;
      min-height: 600px; }
      .staffSection2 .sectionBox h2 {
        margin-bottom: 30px;
        text-align: left;
        padding-left: 20px; }
      .staffSection2 .sectionBox p {
        line-height: 2;
        font-size: 14px; }
      .staffSection2 .sectionBox .block1,
      .staffSection2 .sectionBox .block2 {
        margin: 0 0 0px 0;
        width: 65%; }
      .staffSection2 .sectionBox .block1 {
        padding-bottom: 0; }
      .staffSection2 .sectionBox .block2 {
        margin-top: 40px; }
      .staffSection2 .sectionBox .imgBox1 {
        position: absolute;
        right: calc(50% - 400px);
        bottom: 20px;
        max-width: 180px; }
      .staffSection2 .sectionBox .bg {
        background-color: #eaf5eb; }
    .staffSection2 .sec2 {
      /* block1 */ }
      .staffSection2 .sec2 .block1 {
        width: 100%;
        padding: 0; }
        .staffSection2 .sec2 .block1 > div {
          display: flex;
          justify-content: space-between;
          flex-direction: row-reverse; }
          .staffSection2 .sec2 .block1 > div .txtBox {
            align-self: center;
            width: 500px;
            margin: 0; }
      .staffSection2 .sec2 .block2 {
        padding: 60px 0 50px;
        margin: 0 auto; }
      .staffSection2 .sec2 .imgBox2 {
        margin: 0;
        max-width: 406px;
        max-height: 414px; }
    .staffSection2 .bgImage {
      position: relative;
      background-image: url(../images/top_staff-bg.png?0917b);
      background-repeat: repeat-x;
      background-position: bottom center;
      background-size: 80%; }
      .staffSection2 .bgImage:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        z-index: -1;
        width: 100%;
        height: 100%;
        background: #ffffff;
        background: -moz-linear-gradient(top, #ffffff 40%, #eaf5eb 100%);
        background: -webkit-linear-gradient(top, #ffffff 40%, #eaf5eb 100%);
        background: linear-gradient(to bottom, #ffffff 40%, #eaf5eb 100%);
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eaf5eb',GradientType=0 ); }
  /* staffSection2 */
  .staffSection3 {
    padding: 60px 0 80px;
    /* staffSection3Schedule */ }
    .staffSection3 h2 {
      margin-bottom: 35px;
      font-size: 24px; }
    .staffSection3 .staffSection3Schedule {
      margin: 0 auto;
      max-width: 935px;
      /* div */
      /* schedule */ }
      .staffSection3 .staffSection3Schedule > div {
        width: 31.875%;
        margin: 0 0 20px; }
        .staffSection3 .staffSection3Schedule > div a:hover .schedule {
          opacity: 1; }
        .staffSection3 .staffSection3Schedule > div.box2-left {
          margin-left: 17.1%; }
        .staffSection3 .staffSection3Schedule > div.box2-right {
          margin-right: 17.1%; }
      .staffSection3 .staffSection3Schedule .schedule {
        opacity: 0;
        transition: 0.3s; }
        .staffSection3 .staffSection3Schedule .schedule p.scheduleTime {
          margin: 0 0 10px;
          font-size: 64px; }
        .staffSection3 .staffSection3Schedule .schedule p.scheduleText {
          font-size: 36px;
          letter-spacing: 0.2em; }
          .staffSection3 .staffSection3Schedule .schedule p.scheduleText span {
            font-size: 17px; }
  /* staffSection3 */
  .pswp__caption {
    top: calc(50% + 220px); }
  .pswp__caption__center {
    min-height: 85px;
    font-size: 14px; }
  .staffSection4 {
    padding: 15px 0 50px;
    position: relative;
    /* staffSection4Text */ }
    .staffSection4 .staffSection4Img {
      display: block;
      width: 225px;
      height: 225px;
      margin: 10px auto 40px auto;
      border-radius: 112.5px; }
    .staffSection4 h2 {
      font-size: 24px; }
    .staffSection4 .staffSection4Text {
      width: 100%;
      line-height: 2;
      text-align: center; }
      .staffSection4 .staffSection4Text br {
        display: inline; }
      .staffSection4 .staffSection4Text span {
        margin-bottom: 40px; }
  /* staffSection4 */
  .staffSection5 {
    padding: 70px 0 30px;
    /* ul */ }
    .staffSection5 h3 {
      margin: 0 0 45px;
      font-size: 24px;
      letter-spacing: 0.3em; }
    .staffSection5 ul {
      justify-content: center;
      width: 100%; }
      .staffSection5 ul li {
        margin: 0 5% 20px 0;
        max-width: 313px;
        width: 30%; }
        .staffSection5 ul li p {
          padding: 15px 0 40px;
          font-size: 13px; }
          .staffSection5 ul li p span {
            margin-bottom: 8px;
            font-size: 25px; }
          .staffSection5 ul li p:after {
            border-width: 0 0 20px 20px; }
        .staffSection5 ul li img {
          margin: 0 auto; }
        .staffSection5 ul li:hover img {
          opacity: 0.6; }
  /* staffSection5 */
  /* --- staff2固有 --- */
  #staff2 .staffSection1 .staffProfile {
    position: absolute;
    right: 5%;
    left: auto;
    bottom: 0;
    border-radius: 20px;
    width: 32%;
    padding: 35px 25px 25px; }
  /* staff2 */
  /* ---------------------
INFO-TABLET
------------------------ */
  .infoSection2 {
    max-height: 811px;
    padding: 80px 0 0; }
    .infoSection2 > div {
      margin: 0 auto;
      max-width: 960px; }
      .infoSection2 > div:after {
        right: -20%;
        bottom: 0px;
        width: 100%;
        max-width: 1002px;
        max-height: 360px;
        height: 35.964vw;
        background-image: url(../images/president_triangle.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center bottom; }
    .infoSection2 h2 {
      position: relative;
      margin-bottom: 40px;
      padding-top: 118px;
      font-size: 26px; }
      .infoSection2 h2 span {
        position: absolute;
        top: 0;
        left: -5%;
        width: 522px; }
    .infoSection2 h3 {
      font-size: 31px; }
      .infoSection2 h3 span {
        margin: 0 auto 40px;
        font-size: 22px; }
    .infoSection2 .name {
      position: relative;
      bottom: 0px;
      letter-spacing: 0.1em;
      font-size: 29px; }
      .infoSection2 .name span {
        display: inline;
        margin-right: 20px;
        font-size: 14px; }
    .infoSection2 .img {
      bottom: 4px;
      right: 0%;
      max-width: 221px;
      width: 100%; }
  /* infoSection2 */
  .infoSection3 {
    padding: 80px 0 50px 0;
    /* flexWrap */ }
    .infoSection3 h3 {
      margin: 0 auto 40px auto;
      font-size: 26px; }
    .infoSection3 p {
      max-width: 960px;
      margin: 0 auto; }
    .infoSection3 .imageArea {
      max-width: 960px;
      max-height: 356px;
      margin: 0 auto; }
      .infoSection3 .imageArea.photo1 {
        margin: 50px auto 60px; }
    .infoSection3 .bg {
      margin-top: 65px;
      padding-top: 75px; }
    .infoSection3 .flexWrap {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto 50px auto;
      max-width: 960px; }
      .infoSection3 .flexWrap > div:first-of-type {
        width: 55%; }
      .infoSection3 .flexWrap h3 {
        margin-bottom: 20px;
        text-align: left; }
      .infoSection3 .flexWrap p {
        width: 100%; }
      .infoSection3 .flexWrap .imageArea {
        width: 40%;
        max-height: 292px; }
      .infoSection3 .flexWrap.bottom > div:first-of-type {
        order: 2; }
      .infoSection3 .flexWrap.bottom .imageArea {
        order: 1; }
  /* infoSection3 */
  /* ---------------------
ABOUT-TABLET
------------------------ */
  #aboutPage .arSection1 {
    margin-bottom: 100px; }
  #aboutPage .workSection2 h3 {
    width: auto; }
  #aboutPage h3 {
    margin: 0 auto 36px auto;
    width: 508px;
    line-height: 2;
    font-size: 26px; }
    #aboutPage h3 span {
      font-size: 18px; }
  #aboutPage h4 {
    font-size: 26px; }
  /* aboutPage */
  .arSection1 {
    background-size: cover;
    background-position: center center; }
    .arSection1 h2 {
      margin: 0 auto;
      width: 100%; }
      .arSection1 h2 img {
        margin: 0 auto; }
  /* arSection1 */
  .arSection2 {
    padding: 40px 0; }
    .arSection2 .top {
      margin-bottom: 60px; }
    .arSection2 .figArea {
      margin-bottom: 60px; }
    .arSection2 dt {
      display: table;
      padding: 18px 0 18px 12px;
      text-align: center; }
      .arSection2 dt:after {
        top: 0;
        bottom: auto;
        right: -187px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 30px 0 30px 30px;
        border-color: transparent transparent transparent #29973c; }
    .arSection2 dd {
      width: 65%; }
  /* arSection2 */
  .arSection3 {
    padding: 80px 0 1px 0;
    /* flexWrap */ }
    .arSection3 h3 {
      width: auto; }
    .arSection3 .flexWrap {
      margin-bottom: 20px !important; }
      .arSection3 .flexWrap div:first-of-type {
        width: 55%; }
      .arSection3 .flexWrap div:nth-of-type(2) {
        align-self: center;
        width: 43%; }
      .arSection3 .flexWrap:nth-of-type(2) div:first-of-type {
        order: 1;
        align-self: center;
        width: 43%; }
      .arSection3 .flexWrap:nth-of-type(2) div:nth-of-type(2) {
        order: 2;
        width: 55%; }
      .arSection3 .flexWrap p {
        margin-bottom: 20px; }
  /* arSection3 */
  .arSection4 {
    padding-bottom: 80px; }
    .arSection4 table {
      max-width: 960px;
      width: 100%; }
    .arSection4 th {
      display: table-cell;
      border-bottom: 1px solid #e4e4e4;
      box-sizing: border-box;
      background-color: #005034;
      width: 20%;
      font-size: 17px;
      color: #ffffff; }
    .arSection4 td {
      display: table-cell;
      border: 1px solid #e4e4e4;
      padding: 18px 0px 18px 20px;
      box-sizing: border-box;
      width: 80%;
      font-size: 16px;
      line-height: 1.8; }
      .arSection4 td li, .arSection4 td p {
        font-size: 16px;
        line-height: 1.8; }
    .arSection4 tr:last-of-type th {
      border-bottom: 0; }
  /* arSection4 */
  /* ---------------------
RECRUIT-TABLET
------------------------ */
  #recruitPage h3 {
    margin: 0 auto 36px auto;
    width: 100%;
    line-height: 2;
    font-size: 26px; }
    #recruitPage h3 span {
      font-size: 18px; }
  /* aboutPage */
  .recSection1 {
    background-size: cover;
    background-position: center center; }
    .recSection1 h2 {
      margin: 0 auto;
      width: 100%; }
      .recSection1 h2 img {
        margin: 0 auto; }
  /* recSection1 */
  .recSection2 {
    margin-bottom: 60px;
    padding: 80px 0 1px 0;
    /* flexWrap */ }
    .recSection2 h3 {
      margin-bottom: 50px !important;
      width: auto; }
    .recSection2 h4 {
      text-align: left;
      font-size: 24px; }
    .recSection2 .flexWrap {
      margin-bottom: 20px !important; }
      .recSection2 .flexWrap div:first-of-type {
        align-self: center;
        width: 48%; }
      .recSection2 .flexWrap div:nth-of-type(2) {
        align-self: center;
        width: 48%; }
      .recSection2 .flexWrap:first-of-type div:first-of-type, .recSection2 .flexWrap:nth-of-type(3) div:first-of-type {
        order: 2;
        align-self: center; }
      .recSection2 .flexWrap:first-of-type div:nth-of-type(2), .recSection2 .flexWrap:nth-of-type(3) div:nth-of-type(2) {
        order: 1; }
      .recSection2 .flexWrap p {
        margin-bottom: 20px; }
  /* recSection2 */
  .recruitSection3 {
    padding: 50px 0 25px;
    /* recruitSection3B */ }
    .recruitSection3 .recruitSection3B {
      width: 960px;
      margin: 0 auto 50px; }
      .recruitSection3 .recruitSection3B h3 {
        padding-bottom: 25px;
        font-size: 25px;
        color: #29973c;
        letter-spacing: 0.1em;
        border-bottom: solid 1px #333; }
      .recruitSection3 .recruitSection3B li {
        padding: 26px 0;
        font-size: 0; }
      .recruitSection3 .recruitSection3B h4 {
        display: inline-block;
        vertical-align: middle;
        width: 120px;
        margin: 0 30px 0 0;
        font-size: 20px; }
        .recruitSection3 .recruitSection3B h4 br {
          display: inline; }
      .recruitSection3 .recruitSection3B p {
        display: inline-block;
        vertical-align: middle;
        text-align: left;
        width: calc(100% - 150px);
        font-size: 16px !important;
        line-height: 1.8; }
      .recruitSection3 .recruitSection3B div {
        display: inline-block;
        vertical-align: middle;
        width: calc(100% - 150px); }
        .recruitSection3 .recruitSection3B div dt, .recruitSection3 .recruitSection3B div dd {
          font-size: 16px;
          line-height: 1.8; }
        .recruitSection3 .recruitSection3B div dl {
          display: flex;
          vertical-align: middle;
          text-align: left;
          width: calc(100% - 150px); }
        .recruitSection3 .recruitSection3B div dt {
          margin-right: 20px;
          width: 13%; }
  /* recruitSection3 */
  /* ------------------
FAQ-TABLET
--------------------- */
  .faqAbout {
    padding: 60px 0; }
    .faqAbout h2 {
      font-size: 30px; }
    .faqAbout p {
      text-align: center;
      line-height: 1.85;
      font-size: 16px; }
      .faqAbout p br {
        display: block; }
  /* faqAbout */
  .faqSection1 {
    position: relative;
    background-position: center center; }
  .faqSection3 {
    padding: 80px 0 1px 0;
    /* faqSection3B */ }
    .faqSection3 .faqSection3B {
      width: 960px;
      margin: 0 auto 90px;
      /* ul */ }
      .faqSection3 .faqSection3B ul li {
        margin-bottom: 30px;
        /* faqQuestion */
        /* faqAnswer */ }
        .faqSection3 .faqSection3B ul li .faqQuestion {
          padding: 20px 60px 20px 80px;
          font-size: 17px;
          letter-spacing: 0.1em; }
          .faqSection3 .faqSection3B ul li .faqQuestion::before {
            top: 24px;
            left: 26px;
            font-size: 17px; }
          .faqSection3 .faqSection3B ul li .faqQuestion::after {
            right: 20px;
            width: 24px;
            height: 24px;
            font-size: 24px; }
          .faqSection3 .faqSection3B ul li .faqQuestion:hover {
            cursor: pointer; }
        .faqSection3 .faqSection3B ul li .faqAnswer {
          margin: 40px 0 50px;
          font-size: 16px;
          line-height: 2.2; }
          .faqSection3 .faqSection3B ul li .faqAnswer > div span:first-of-type {
            font-size: 16px;
            width: 90px;
            height: 16px;
            padding: 7px 0;
            margin-top: 4px; }
          .faqSection3 .faqSection3B ul li .faqAnswer a {
            width: 240px;
            margin: 30px auto 0;
            padding: 15px 30px 15px 0;
            font-size: 15px;
            line-height: 1; }
            .faqSection3 .faqSection3B ul li .faqAnswer a::after {
              top: 15px;
              right: 15px;
              font-size: 15px; }
            .faqSection3 .faqSection3B ul li .faqAnswer a:hover {
              background-color: #29973c; }
  /* faqSection3 */
  /* -------------
BUSINESS
--------------- */
  .businessSection1 {
    margin-bottom: 100px; }
  .businessSection2 {
    padding: 70px 0 40px 0; }
  .businessSection3 {
    padding: 85px 0;
    /* dataSection2Button */
    /* dataSection2Fig */ }
    .businessSection3 .businessSection3B {
      position: relative;
      width: 790px;
      display: flex;
      justify-content: space-between;
      margin: 0 auto 25px; }
    .businessSection3 .businessSection3Button {
      width: 260px;
      height: 120px;
      margin: 0;
      padding: 20px 0 30px 0;
      transition: 0.3s; }
      .businessSection3 .businessSection3Button h4 {
        margin-bottom: 15px;
        text-align: center;
        font-size: 20px;
        letter-spacing: 0.2em; }
      .businessSection3 .businessSection3Button p {
        text-align: center;
        font-size: 20px !important;
        line-height: 1.8;
        letter-spacing: 0.2em; }
      .businessSection3 .businessSection3Button::before, .businessSection3 .businessSection3Button::after {
        top: auto;
        bottom: 15px;
        right: 50%;
        -webkit-transform: translateX(50%);
        transform: translateX(50%);
        background: #fff; }
      .businessSection3 .businessSection3Button::before {
        bottom: 23.5px; }
      .businessSection3 .businessSection3Button:hover {
        cursor: pointer;
        opacity: 0.6; }
      .businessSection3 .businessSection3Button.open {
        margin-bottom: 200px; }
        .businessSection3 .businessSection3Button.open::after {
          -webkit-transform: translateX(50%) rotate(90deg);
          transform: translateX(50%) rotate(90deg); }
    .businessSection3 .businessSection3Fig {
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: 0;
      display: none;
      margin: 0;
      width: 100%;
      height: 200px;
      padding: 40px 0;
      box-sizing: border-box; }
      .businessSection3 .businessSection3Fig h4 {
        margin-bottom: 30px;
        text-align: left;
        font-size: 22px; }
        .businessSection3 .businessSection3Fig h4 span {
          max-width: 156px; }
      .businessSection3 .businessSection3Fig p {
        font-size: 16px;
        line-height: 2.2; }
  /* dataSection2 */
  .businessSection4 {
    margin: 80px auto 100px;
    /* a */ }
    .businessSection4 a {
      height: 216px; }
      .businessSection4 a:hover .readmore {
        background-color: #29973c;
        color: #fff; }
    .businessSection4 p {
      margin-bottom: 20px;
      font-size: 25px; }
  /* workSection4 */
  #businessPage {
    /* workSection4 */ }
    #businessPage .workSection4 {
      /* flexWrap */ }
      #businessPage .workSection4 h2 {
        margin-bottom: 50px;
        font-size: 30px; }
      #businessPage .workSection4 .flexWrap {
        display: flex;
        justify-content: space-between; }
        #businessPage .workSection4 .flexWrap.flexWrap3 {
          width: 960px; }
        #businessPage .workSection4 .flexWrap.flexWrap2 {
          width: 624px; }
      #businessPage .workSection4 .textBox {
        width: 288px; }
        #businessPage .workSection4 .textBox img {
          margin-bottom: 30px; }
        #businessPage .workSection4 .textBox h3 {
          width: 188px;
          margin: 0 auto 30px;
          padding-bottom: 15px;
          font-size: 22px; }
        #businessPage .workSection4 .textBox p {
          font-size: 15px !important; }
        #businessPage .workSection4 .textBox:nth-of-type(2) {
          transition-delay: 0.3s; }
        #businessPage .workSection4 .textBox:nth-of-type(3) {
          transition-delay: 0.6s; }
    #businessPage .staffSection5 h3 {
      margin: 0 0 40px;
      font-size: 31px;
      line-height: 1.9;
      letter-spacing: 0.15em;
      color: #29973c;
      transition-delay: 0.5s; }
  /* businessPage */
  /* -------------
ROOKIE
--------------- */
  #rookiePage {
    /* section1 */
    /* section2 */
    /* section3 */ }
    #rookiePage .section1 {
      max-height: 620px; }
      #rookiePage .section1 h2 {
        right: -80px;
        left: auto;
        top: 30px;
        bottom: auto; }
      #rookiePage .section1 .ttl {
        width: 184px;
        height: 92px;
        font-size: 20px; }
    #rookiePage .section2 {
      padding: 60px 0;
      width: 100%;
      /* itemBox*/ }
      #rookiePage .section2 .flexWrap {
        justify-content: space-between; }
      #rookiePage .section2 .top {
        margin-bottom: 80px; }
      #rookiePage .section2 h3 {
        font-size: 22px; }
      #rookiePage .section2 .itemBox {
        width: 32%; }
        #rookiePage .section2 .itemBox p {
          margin: 0 auto;
          width: 90%; }
    #rookiePage .section3 {
      /* question */
      /* rookie2 */ }
      #rookiePage .section3 .maxWidth {
        min-height: 500px;
        padding-top: 83px;
        margin: 0 auto; }
      #rookiePage .section3 .rookieSlideContainer {
        z-index: 2;
        width: 600px;
        min-height: 500px;
        padding: 0;
        margin: 0 auto 0 0; }
      #rookiePage .section3 .rookieSlide li {
        padding: 0; }
        #rookiePage .section3 .rookieSlide li p {
          margin-top: 45px;
          line-height: 2; }
      #rookiePage .section3 .qa {
        margin-bottom: 35px;
        font-size: 0; }
        #rookiePage .section3 .qa span {
          font-size: 22px; }
          #rookiePage .section3 .qa span.text {
            width: calc(100% - 100px);
            margin-left: 30px; }
      #rookiePage .section3 .rookiePagenation {
        position: absolute;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: flex-end;
        width: 340px;
        height: 36px;
        min-height: 0;
        margin-left: 0;
        left: 0;
        bottom: 75px; }
        #rookiePage .section3 .rookiePagenation li {
          width: 30px;
          height: 18px;
          padding: 9px 0;
          margin-bottom: 0;
          font-size: 18px;
          transition: 0.3s; }
          #rookiePage .section3 .rookiePagenation li:hover {
            opacity: 0.6;
            cursor: pointer; }
        #rookiePage .section3 .rookiePagenation a {
          margin: 0;
          padding: 0 30px 3px 2px;
          font-size: 15px; }
          #rookiePage .section3 .rookiePagenation a:hover {
            cursor: pointer; }
      #rookiePage .section3 .imgBox {
        width: 396px;
        height: 583px; }
      #rookiePage .section3 .rookie2 {
        background-color: #fff1f4; }
        #rookiePage .section3 .rookie2 .rookieSlideContainer {
          margin: 0 0 0 auto; }
        #rookiePage .section3 .rookie2 .imgBox {
          right: auto;
          left: 0; }
  /* rookiePage */
  /* ------------------
WORK-TABLET
--------------------- */
  .workSection1 {
    margin-bottom: 70px;
    background-position: center center; }
  .workSection2 {
    margin-bottom: 80px; }
    .workSection2 h3 {
      margin-bottom: 50px;
      font-size: 26px;
      line-height: 2.2; }
  .workSection3 {
    margin-bottom: 100px; }
    .workSection3 table {
      width: 960px; }
      .workSection3 table td, .workSection3 table th {
        padding: 10px 20px;
        font-size: 20px;
        line-height: 1.6; }
      .workSection3 table th {
        width: 100px;
        border: solid 2px #fff; }
      .workSection3 table td {
        border: solid 2px #29973c; }
        .workSection3 table td.top {
          border: none;
          padding: 0;
          height: 100%; }
          .workSection3 table td.top span {
            width: 90%;
            padding: 8px 0;
            border-top-left-radius: 10px;
            border-top-right-radius: 10px; }
            .workSection3 table td.top span br {
              display: none; }
        .workSection3 table td.space {
          width: 10px; }
        .workSection3 table td.col1 {
          background: #eaf5eb; }
        .workSection3 table td.text {
          font-size: 15px; }
  /* ------------------
ENTRY-TABLET
--------------------- */
  #entry .flexWrap {
    justify-content: space-between; }
  #entry .topH2 {
    font-size: 30px; }
  #entry .underLine {
    margin-bottom: 60px; }
  /* entry */
  .entrySection1 {
    background-position: center center; }
    .entrySection1 h2 {
      font-size: 40px;
      color: #333; }
      .entrySection1 h2 img {
        max-width: 116px; }
  .entrySection2 {
    padding: 60px 0 0; }
    .entrySection2 ul {
      width: 888px;
      /* li */ }
      .entrySection2 ul li {
        width: 19%; }
        .entrySection2 ul li span {
          padding: 8px 8px 8px 0px;
          font-size: 18px; }
          .entrySection2 ul li span:after {
            border-width: 22px 0 22px 10px; }
  /* recruitSection2 */
  .entrySection3 {
    padding: 60px 0 1px; }
    .entrySection3 .underLine {
      margin-bottom: 0 !important; }
    .entrySection3 p {
      text-align: center;
      font-size: 19px !important; }
    .entrySection3 .error {
      position: absolute;
      bottom: -25px; }
    .entrySection3.thankyou .topH2 {
      letter-spacing: 0.2em !important; }
    .entrySection3.thankyou p {
      margin: 50px 0; }
  /* recruitSection3 */
  .entryTable {
    width: 830px;
    margin: 0px auto 60px; }
    .entryTable th {
      display: table-cell;
      width: 180px;
      font-size: 19px;
      padding: 67px 0 12px 15px; }
    .entryTable td {
      position: relative;
      display: table-cell;
      padding: 55px 0 0 115px; }
      .entryTable td span {
        font-size: 19px;
        padding: 13px 0;
        margin: 0 20px 0 0; }
        .entryTable td span input {
          margin-right: 5px; }
      .entryTable td input[type="text"] {
        box-sizing: border-box;
        width: 100%;
        padding: 10px 5px;
        font-size: 19px; }
        .entryTable td input[type="text"].text2 {
          width: 49%; }
        .entryTable td input[type="text"].text3 {
          width: 31%; }
  .entryAgreement {
    padding: 30px;
    width: 770px;
    height: 170px; }
    .entryAgreement ul li {
      margin-bottom: 0.8em;
      padding-left: 1em;
      font-size: 14px;
      line-height: 1.5; }
  .entryAgreementCheck {
    position: relative;
    width: 830px;
    margin: 20px auto 40px;
    text-align: right;
    font-size: 19px; }
    .entryAgreementCheck .error {
      right: 0; }
  .entrySubmit {
    width: 170px;
    margin: 0 auto 80px;
    padding: 12px 0;
    font-size: 18px;
    transition: 0.3s; }
    .entrySubmit:hover {
      opacity: 0.6; }
  .confirmTable {
    width: 820px;
    margin: 60px auto 50px; }
    .confirmTable th {
      display: table-cell;
      width: 165px;
      font-size: 19px;
      padding: 10px 15px;
      border-bottom: solid 3px #fff; }
    .confirmTable td {
      display: table-cell;
      font-size: 19px;
      padding: 10px 15px;
      border: none;
      border-bottom: solid 3px #fff; }
  .entryBack {
    margin: 0 auto 80px;
    background: #b5b5b5; }
  .confirmButton {
    display: flex;
    justify-content: space-between;
    width: 400px;
    margin: 0 auto; }
  /* --- SESSION-TABLET --- */
  .sessionSection1 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 350px;
    max-height: 615px; }
    .sessionSection1.session01 {
      background: url(../images/session01_header-pc.jpg?0208) center center no-repeat;
      background-size: cover; }
    .sessionSection1::before {
      display: none; }
    .sessionSection1 h2 {
      margin: 0 0 20px; }
      .sessionSection1 h2 span {
        padding: 0 10px 20px;
        font-size: 40px;
        color: #333; }
        .sessionSection1 h2 span::after {
          background: #333; }
    .sessionSection1 p {
      font-size: 19px;
      line-height: 1.6;
      color: #29973c; }
      .sessionSection1 p:last-child {
        margin: 0;
        color: #333; }
      .sessionSection1 p br {
        display: inline; }
  /* sessionSection1 */
  .sessionSection2 {
    padding: 60px 0 40px;
    /* ul */ }
    .sessionSection2 > p {
      margin-bottom: 60px;
      text-align: center;
      line-height: 1.8;
      letter-spacing: .1em;
      font-size: 20px; }
      .sessionSection2 > p br {
        display: inline; }
    .sessionSection2 ul {
      max-width: 500px;
      margin: 0 auto; }
      .sessionSection2 ul li {
        width: 42%;
        /* p */ }
        .sessionSection2 ul li img {
          margin: 0 auto;
          max-width: 200px;
          width: 100%; }
        .sessionSection2 ul li p {
          margin: 20px 0 0;
          line-height: 1.8;
          font-size: 12px; }
          .sessionSection2 ul li p span {
            margin: 0 0 5px;
            font-size: 20px; }
  /* sessionSection2 */
  .sessionSection3 {
    padding: 70px 0 70px;
    /* h3 */
    /* sessionSection3B */
    /* sessionSection3Text */
    /* sessionSection3Img */
    /* sessionFooterImage */ }
    .sessionSection3 h3.minchoHead {
      font-size: 25px; }
    .sessionSection3 h3 br.sp {
      display: none; }
    .sessionSection3 .sessionSection3B {
      display: flex;
      justify-content: space-between;
      margin: 0 auto 50px; }
      .sessionSection3 .sessionSection3B:nth-of-type(odd) {
        flex-direction: row-reverse; }
    .sessionSection3 .sessionSection3Text {
      width: 56.25%;
      margin: 0; }
      .sessionSection3 .sessionSection3Text h3 {
        margin: 0 0 30px 0.5em;
        font-size: 18px; }
      .sessionSection3 .sessionSection3Text p {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        align-items: start;
        margin: 0 auto 1em auto;
        font-size: 14px;
        line-height: 2; }
        .sessionSection3 .sessionSection3Text p .name {
          font-size: 12px;
          height: 24px; }
        .sessionSection3 .sessionSection3Text p span:nth-of-type(2) {
          width: 80%; }
    .sessionSection3 .sessionSection3Img {
      position: relative;
      width: 37.5%;
      height: auto;
      margin: 0; }
      .sessionSection3 .sessionSection3Img .coverImageW {
        top: 0;
        left: 0;
        -webkit-transform: none;
        transform: none; }
        .sessionSection3 .sessionSection3Img .coverImageW:nth-of-type(2) {
          top: auto;
          bottom: 0; }
    .sessionSection3 .sessionSection3Img2 {
      display: block; }
      .sessionSection3 .sessionSection3Img2 img {
        display: block;
        float: none;
        width: 100%;
        margin-bottom: 10px; }
    .sessionSection3 .sessionFooterImage {
      height: 400px;
      background-image: url(../images/session01_sec3-img7-pc.jpg);
      background-position: center top;
      background-size: auto 100%; }
  /* sessionSection3 */
  /* ---------------
DATA-TABLET
------------------ */
  .dataSection1 {
    height: 615px; }
    .dataSection1 div {
      width: 400px;
      height: 190px;
      left: 50%;
      top: 50%;
      margin: -85px 0 0 -200px; }
    .dataSection1 h2 {
      font-size: 32px; }
    .dataSection1 span {
      margin: 20px 0; }
    .dataSection1 p {
      font-size: 14px; }
  .dataSection2 {
    padding: 80px 0 50px;
    /* dataSection2Button */
    /* dataSection2Fig */ }
    .dataSection2 h3 {
      margin: 0 0 60px;
      font-size: 23px;
      letter-spacing: 0.1em; }
    .dataSection2 .small {
      margin-top: 20px;
      max-width: 960px; }
    .dataSection2 .dataSection2B {
      position: relative;
      width: 960px;
      display: flex;
      justify-content: space-between;
      margin: 0 auto 5px; }
    .dataSection2 .dataSection2Button {
      width: 33%;
      height: 174px;
      margin: 0; }
    .dataSection2 .dataSection2Button.dataSection2ColumnLeft {
      margin-left: 160px; }
    .dataSection2 .dataSection2Button.dataSection2ColumnRight {
      margin-right: 160px; }
      .dataSection2 .dataSection2Button > div {
        display: block;
        height: 164px;
        padding: 10px 0 0; }
        .dataSection2 .dataSection2Button > div span {
          width: 140px;
          height: 100px;
          margin: 0 auto; }
        .dataSection2 .dataSection2Button > div p {
          position: absolute;
          top: 40%;
          width: 100%;
          text-align: center;
          font-size: 19px; }
      .dataSection2 .dataSection2Button::before, .dataSection2 .dataSection2Button::after {
        top: auto;
        bottom: 15px;
        right: 50%;
        -webkit-transform: translateX(50%);
        transform: translateX(50%);
        background: #fff; }
      .dataSection2 .dataSection2Button::before {
        bottom: 23.5px; }
      .dataSection2 .dataSection2Button.open {
        margin-bottom: 510px; }
        .dataSection2 .dataSection2Button.open::after {
          -webkit-transform: translateX(50%) rotate(90deg);
          transform: translateX(50%) rotate(90deg); }
      .dataSection2 .dataSection2Button:hover {
        cursor: pointer;
        opacity: 0.6; }
    .dataSection2 .dataSection2Fig {
      position: absolute;
      z-index: 1;
      bottom: 0;
      left: 0;
      display: none;
      margin: 0;
      width: 100%;
      height: 480px;
      overflow: hidden; }
      .dataSection2 .dataSection2Fig img {
        max-width: 960px; }
  /* dataSection2 */
  .dataSection3 {
    padding: 50px 0 40px; }
    .dataSection3 h3 {
      margin-bottom: 40px;
      font-size: 24px;
      line-height: 1;
      letter-spacing: 0.2em; }
      .dataSection3 h3 br {
        display: none; }
      .dataSection3 h3 span {
        display: inline-block;
        margin: 0 10px; }
    .dataSection3 ul {
      width: 450px; }
      .dataSection3 ul li {
        padding: 20px 0;
        font-size: 25px;
        letter-spacing: 0.1em; }
        .dataSection3 ul li img {
          margin: -8px 15px 0 0; }
  .pswp__top-bar {
    width: 960px;
    left: 50%;
    margin-left: -480px; }
  .pswp__ui .pswp__button--arrow--left {
    left: calc(50% - 480px); }
  .pswp__ui .pswp__button--arrow--right {
    right: calc(50% - 480px); }
  /* pswp__ui */ }

/*min-width: 641px*/
