@charset "UTF-8";
.courgette {
  font-family: "Courgette", cursive;
  font-weight: 400; }

/* sec_tit */
@media (max-width: 640px) {
  .sec_tit > .title > span {
    font-size: 2.9rem;
    letter-spacing: -1px; } }

/* sec_nav */
.sec_nav .wrap {
  padding-top: 7.5rem;
  padding-bottom: 10.5rem; }
  @media (max-width: 640px) {
    .sec_nav .wrap {
      padding-top: 1rem;
      padding-bottom: 3rem; } }
  @media (max-width: 640px) {
    .sec_nav .wrap .in {
      position: relative; } }
  .sec_nav .wrap .in li {
    display: inline-block;
    width: 14%;
    text-align: center;
    vertical-align: top; }
    @media (max-width: 640px) {
      .sec_nav .wrap .in li {
        width: 49.6%; } }
    .sec_nav .wrap .in li .no_tab {
      margin-right: auto;
      margin-left: auto; }
      @media (max-width: 640px) {
        .sec_nav .wrap .in li .no_tab {
          display: none; } }
      .sec_nav .wrap .in li .no_tab .no {
        line-height: 1.8; }
    .sec_nav .wrap .in li p {
      margin-top: 2.4rem;
      margin-bottom: 2.4rem;
      color: #19216b;
      font-size: 1.8rem;
      line-height: 1.3; }
      .sec_nav .wrap .in li p.type01 {
        margin-top: 1.3rem;
        margin-bottom: 1.2rem; }
      @media (max-width: 640px) {
        .sec_nav .wrap .in li p {
          white-space: pre;
          font-size: 1.6rem;
          margin-top: 3.5rem !important;
          margin-bottom: 1.2rem !important; } }
    .sec_nav .wrap .in li .btn {
      display: block;
      position: relative;
      width: 36px;
      height: 36px;
      margin-right: auto;
      margin-left: auto;
      border-radius: 36px;
      background-color: #0d1663;
      -webkit-transition: 1.0s;
      transition: 1.0s; }
      .sec_nav .wrap .in li .btn:after {
        content: "";
        display: block;
        position: absolute;
        top: -0.4rem;
        left: 0;
        right: 0;
        bottom: 0;
        width: 7px;
        height: 7px;
        margin: auto;
        border-top: 2px solid #ffc600;
        border-right: 2px solid #ffc600;
        -webkit-transform: rotate(-225deg);
        -ms-transform: rotate(-225deg);
        transform: rotate(-225deg); }
      .sec_nav .wrap .in li .btn:hover {
        background-color: #ffc600; }
        .sec_nav .wrap .in li .btn:hover:after {
          border-top-color: #0d1663;
          border-right-color: #0d1663; }
  .sec_nav .wrap .in figcaption {
    position: absolute;
    right: 1.5rem;
    bottom: 0;
    transform: rotate(-9.5deg); }
    .sec_nav .wrap .in figcaption > span {
      display: inline-block;
      color: #f05050;
      font-size: 2.15rem;
      font-family: "Courgette", cursive;
      font-weight: 400;
      text-indent: -1em; }

/* sec_visa */
.sec_visa {
  padding-bottom: 10rem; }
  @media (max-width: 640px) {
    .sec_visa {
      padding-bottom: 4.5rem; } }
  @media (max-width: 640px) {
    .sec_visa .in {
      width: 100%; } }
  .sec_visa .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_visa .sec_tit > .title + .read {
        margin-top: 0; } }
  @media (max-width: 640px) {
    .sec_visa .sec_tit {
      margin-right: 1.5rem;
      margin-left: 1.5rem; } }
  .sec_visa .lead {
    position: relative;
    margin-bottom: 3.5rem;
    z-index: 1; }
    @media (max-width: 640px) {
      .sec_visa .lead {
        margin-right: 1.5rem;
        margin-left: 1.5rem;
        margin-bottom: 0; } }
    .sec_visa .lead .ph {
      position: relative;
      top: 0;
      float: left;
      width: 53.6%;
      max-width: 59rem;
      height: 41rem;
      margin-right: 6.8%;
      box-shadow: 2rem 2rem 0px #ffc600; }
      @media (max-width: 640px) {
        .sec_visa .lead .ph {
          position: relative;
          float: none;
          top: auto;
          right: auto;
          width: 96%;
          height: 19rem;
          margin-bottom: 1.3rem;
          box-shadow: 1.3rem 1.3rem 0px #ffc600; } }
    .sec_visa .lead .text_box {
      padding: 9.5rem 0 1.5rem;
      min-height: 340px; }
      @media (max-width: 640px) {
        .sec_visa .lead .text_box {
          padding: 3rem 0 2rem;
          min-height: 0; } }
      .sec_visa .lead .text_box .cont_tit {
        padding-bottom: 3rem;
        text-align: left; }
        @media (max-width: 640px) {
          .sec_visa .lead .text_box .cont_tit {
            padding-bottom: 1rem; } }
        .sec_visa .lead .text_box .cont_tit:before, .sec_visa .lead .text_box .cont_tit:after {
          content: "";
          display: inline-block;
          position: absolute;
          bottom: 0;
          height: 0.3rem; }
          @media (max-width: 640px) {
            .sec_visa .lead .text_box .cont_tit:before, .sec_visa .lead .text_box .cont_tit:after {
              height: 0.5rem; } }
        .sec_visa .lead .text_box .cont_tit:before {
          right: 0;
          width: 39.5%;
          margin-left: auto;
          background-color: #e1e1e9; }
          @media (max-width: 640px) {
            .sec_visa .lead .text_box .cont_tit:before {
              width: 100%; } }
        .sec_visa .lead .text_box .cont_tit:after {
          left: 60.5%;
          width: 5rem;
          background-color: #f5c51d; }
          @media (max-width: 640px) {
            .sec_visa .lead .text_box .cont_tit:after {
              left: 0;
              width: 3rem; } }
        .sec_visa .lead .text_box .cont_tit > span {
          font-size: 3.5rem;
          line-height: 1.3; }
          @media (max-width: 640px) {
            .sec_visa .lead .text_box .cont_tit > span {
              font-size: 2.2rem; } }
      .sec_visa .lead .text_box .read {
        margin-top: 2.5rem;
        font-size: 1.6rem; }
        @media (max-width: 640px) {
          .sec_visa .lead .text_box .read {
            margin-top: 1rem;
            padding: 0;
            font-size: 1.2rem;
            text-align: left; } }
        .sec_visa .lead .text_box .read a {
          color: #19216b;
          text-decoration: underline;
          word-break: break-all; }
          .sec_visa .lead .text_box .read a:hover {
            text-decoration: none; }
  .sec_visa .type h3 {
    margin-bottom: .5rem;
    color: #f05050;
    font-size: 3.5rem;
    font-weight: 500;
    text-align: center; }
    @media (max-width: 640px) {
      .sec_visa .type h3 {
        margin-right: 1.5rem;
        margin-bottom: 1rem;
        margin-left: 1.5rem;
        font-size: 2.4rem; } }
  .sec_visa .type .read {
    margin-bottom: 4.5rem;
    font-size: 1.5rem;
    text-align: center; }
    @media (max-width: 640px) {
      .sec_visa .type .read {
        margin-right: 1.5rem;
        margin-left: 1.5rem;
        margin-bottom: 3.5rem;
        font-size: 1.2rem; } }
  .sec_visa .type .descs {
    display: table;
    border-collapse: separate;
    border-spacing: 40px 0;
    max-width: 1100px;
    width: 100%;
    margin: auto;
    text-align: center; }
    @media (max-width: 640px) {
      .sec_visa .type .descs {
        display: block;
        margin-top: 2rem; } }
    .sec_visa .type .descs .desc {
      display: table-cell;
      width: 33.3%;
      vertical-align: top;
      position: relative;
      padding-top: 256px; }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc {
          display: block;
          width: 100% !important;
          min-height: 31.5rem;
          padding-top: 0 !important;
          box-sizing: border-box;
          background-color: #FFF; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc + .desc {
          margin-top: 2rem; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc + .desc .tit {
          padding-top: 5rem; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc.type01 {
          padding-left: 45%; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc.type02 {
          padding-right: 45%; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc.type02 .cap .img {
          left: auto;
          right: 0; } }
      .sec_visa .type .descs .desc .tit {
        margin-top: 16px; }
        @media (max-width: 640px) {
          .sec_visa .type .descs .desc .tit {
            margin-top: 0;
            padding-top: 7rem; } }
        .sec_visa .type .descs .desc .tit > span {
          font-size: 2.2rem;
          color: #171C61;
          font-weight: 500; }
          @media (max-width: 640px) {
            .sec_visa .type .descs .desc .tit > span {
              font-size: 2.15rem; } }
      @media (max-width: 640px) {
        .sec_visa .type .descs .desc .cap {
          padding: 0 1rem 1.5rem; } }
      .sec_visa .type .descs .desc .cap .txt {
        margin-top: 10px;
        font-size: 1.4rem;
        line-height: 2.3rem;
        text-align: left; }
        @media (max-width: 640px) {
          .sec_visa .type .descs .desc .cap .txt {
            margin-top: 1rem;
            font-size: 1.1rem;
            line-height: 1.55rem;
            text-align: center; } }
      .sec_visa .type .descs .desc .cap .link {
        margin-top: 20px; }
        @media (max-width: 640px) {
          .sec_visa .type .descs .desc .cap .link {
            margin-top: 1.5rem; } }
      .sec_visa .type .descs .desc .cap .img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 256px; }
        @media (max-width: 640px) {
          .sec_visa .type .descs .desc .cap .img {
            width: 45%;
            height: 100% !important; } }
  .sec_visa .content {
    position: relative;
    max-width: 1270px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 4rem; }
    @media (max-width: 640px) {
      .sec_visa .content {
        margin-right: 1.5rem;
        margin-left: 1.5rem;
        padding-top: 0; } }
    .sec_visa .content .ph {
      position: absolute;
      top: 0;
      width: 49.1%;
      max-width: 62.4rem;
      height: 40.6rem; }
      @media (max-width: 640px) {
        .sec_visa .content .ph {
          position: static;
          width: auto;
          height: 19rem;
          margin-bottom: 1rem; } }
    .sec_visa .content .detail {
      max-width: 97.5rem;
      margin-left: 23.2%;
      padding: 1rem;
      box-sizing: border-box; }
      @media (max-width: 640px) {
        .sec_visa .content .detail {
          width: auto;
          margin-left: auto;
          padding: 0.5rem; } }
      .sec_visa .content .detail .text_box {
        padding: 5.5rem 6.6% 6rem 40%; }
        @media (max-width: 640px) {
          .sec_visa .content .detail .text_box {
            padding: 2.5rem 1.5rem; } }
        .sec_visa .content .detail .text_box .catch {
          position: relative;
          margin-top: .5rem;
          padding-bottom: 2.5rem;
          font-size: 3.5rem;
          text-align: left; }
          @media (max-width: 640px) {
            .sec_visa .content .detail .text_box .catch {
              margin-top: .5rem;
              padding-bottom: 1.5rem;
              font-size: 2.5rem;
              width: 104%;
              margin-left: -2%; } }
          .sec_visa .content .detail .text_box .catch:before, .sec_visa .content .detail .text_box .catch:after {
            content: "";
            display: inline-block;
            position: absolute;
            bottom: 0;
            height: 0.3rem; }
          .sec_visa .content .detail .text_box .catch:before {
            width: 100%;
            background-color: #e1e1e9; }
          .sec_visa .content .detail .text_box .catch:after {
            left: 0;
            width: 5rem;
            background-color: #f5c51d; }
            @media (max-width: 640px) {
              .sec_visa .content .detail .text_box .catch:after {
                width: 3rem; } }
        .sec_visa .content .detail .text_box .read {
          margin-top: 2.5rem;
          font-size: 1.6rem; }
          @media (max-width: 640px) {
            .sec_visa .content .detail .text_box .read {
              margin-top: 1.5rem;
              padding: 0;
              font-size: 1.2rem;
              text-align: left; } }
          .sec_visa .content .detail .text_box .read a {
            color: #19216b;
            text-decoration: underline; }
            @media (max-width: 640px) {
              .sec_visa .content .detail .text_box .read a {
                word-wrap: break-word;
                overflow-wrap: break-word; } }
            .sec_visa .content .detail .text_box .read a:hover {
              text-decoration: none; }
    .sec_visa .content.bcwh .detail {
      background-image: url("../img/content_bcwh_bg.png"); }
      .sec_visa .content.bcwh .detail .text_box {
        background-color: #fff; }
    .sec_visa .content.bcbl .ph {
      right: 0; }
    .sec_visa .content.bcbl .detail {
      margin-right: 23.2%;
      margin-left: auto;
      background-image: url("../img/content_bcbl_bg.png"); }
      @media (max-width: 640px) {
        .sec_visa .content.bcbl .detail {
          margin-right: auto; } }
      .sec_visa .content.bcbl .detail .text_box {
        padding-right: 40%;
        padding-left: 6.6%;
        background-color: #19216b; }
        @media (max-width: 640px) {
          .sec_visa .content.bcbl .detail .text_box {
            padding-right: 1.5rem;
            padding-left: 1.5rem; } }
        .sec_visa .content.bcbl .detail .text_box .catch,
        .sec_visa .content.bcbl .detail .text_box .read {
          color: #fff; }
    .sec_visa .content#Waiver {
      margin-top: 10rem;
      margin-bottom: 6rem; }
      @media (max-width: 640px) {
        .sec_visa .content#Waiver {
          margin-top: 4rem;
          margin-bottom: 0; } }
    .sec_visa .content#Tourist {
      margin-top: 7rem; }
      @media (max-width: 640px) {
        .sec_visa .content#Tourist {
          margin-top: 3rem; } }
    .sec_visa .content#Working {
      margin-top: 8rem;
      margin-bottom: 8rem; }
      @media (max-width: 640px) {
        .sec_visa .content#Working {
          margin-top: 3.5rem;
          margin-bottom: 4rem; } }
  .sec_visa .waiver_tbl {
    width: 100%;
    border-collapse: collapse;
    background-color: #fff;
    font-weight: 400;
    display: table; }
    @media (max-width: 640px) {
      .sec_visa .waiver_tbl.active {
        display: table; } }
    @media (max-width: 640px) {
      .sec_visa .waiver_tbl {
        display: none;
        width: calc(100% - 3rem);
        margin-right: 1.5rem;
        margin-left: 1.5rem; } }
    .sec_visa .waiver_tbl caption {
      padding-top: 2.1rem;
      padding-bottom: 2.1rem;
      background-color: #232669;
      color: #fff;
      font-size: 2.6rem;
      font-weight: bold; }
      @media (max-width: 640px) {
        .sec_visa .waiver_tbl caption {
          display: none; } }
    .sec_visa .waiver_tbl th,
    .sec_visa .waiver_tbl td {
      border: 1px solid #8b8eb1; }
    .sec_visa .waiver_tbl thead th {
      padding-top: .6rem;
      padding-bottom: .6rem;
      background-color: #f5c51d;
      font-size: 1.8rem;
      font-weight: bold; }
      @media (max-width: 640px) {
        .sec_visa .waiver_tbl thead th {
          padding-top: 1.1rem;
          padding-bottom: 1rem;
          font-size: 1.1rem; } }
    .sec_visa .waiver_tbl tbody {
      font-size: 1.3rem; }
      @media (max-width: 640px) {
        .sec_visa .waiver_tbl tbody {
          font-size: 1.1rem; } }
      .sec_visa .waiver_tbl tbody th {
        width: 70%;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
        background-color: #ecece9;
        color: #19216b;
        font-weight: 400; }
        @media (max-width: 640px) {
          .sec_visa .waiver_tbl tbody th {
            width: 65%;
            padding: 1.1rem 1rem 1rem; } }
      .sec_visa .waiver_tbl tbody td {
        text-align: center; }
    .sec_visa .waiver_tbl + p {
      margin-top: 2rem;
      font-size: 1.5rem; }
      @media (max-width: 640px) {
        .sec_visa .waiver_tbl + p {
          margin-top: 1.5rem;
          margin-right: 1.5rem;
          margin-left: 1.5rem;
          font-size: 1.2rem; } }
      .sec_visa .waiver_tbl + p:before {
        content: "■";
        margin-right: 1rem;
        color: #f05050;
        font-size: 0.9rem; }
        @media (max-width: 640px) {
          .sec_visa .waiver_tbl + p:before {
            margin-right: 0.5rem;
            font-size: 1.2rem; } }
  .sec_visa .area_txt {
    margin: 1rem 1.5rem .5rem;
    font-size: 1.3rem; }
  .sec_visa .cmnSelector01 {
    margin: 0 1.5rem .5rem; }
  .sec_visa .working_tbl {
    display: table;
    width: 100%;
    margin-right: 1.5rem;
    margin-left: 1.5rem;
    border-top: 1px solid #8b8eb1;
    font-size: 1.3rem; }
    @media (max-width: 640px) {
      .sec_visa .working_tbl {
        width: auto; } }
    .sec_visa .working_tbl dt {
      display: table-cell;
      width: 20.1%;
      background-color: #19216b;
      color: #fff;
      font-weight: bold;
      text-align: center;
      vertical-align: middle; }
      @media (max-width: 640px) {
        .sec_visa .working_tbl dt {
          display: block;
          width: auto;
          padding-top: 1rem;
          padding-bottom: 1.4rem;
          font-size: 1.6rem; } }
    .sec_visa .working_tbl dd {
      display: table-cell;
      padding: 1rem 3.6%; }
      @media (max-width: 640px) {
        .sec_visa .working_tbl dd {
          display: block;
          padding: .5rem 0 0;
          font-size: 1.4rem;
          word-break: break-all; } }
    @media (max-width: 640px) {
      .sec_visa .working_tbl + .working_tbl {
        margin-top: 2rem; } }
    .sec_visa .working_tbl:last-child {
      border-bottom: 1px solid #8b8eb1; }
      @media (max-width: 640px) {
        .sec_visa .working_tbl:last-child {
          border-bottom: none; } }

.flow h3 {
  padding-top: 2rem;
  padding-bottom: 2.2rem;
  background-color: #232669;
  color: #fff;
  font-size: 2.6rem;
  text-align: center; }
  @media (max-width: 640px) {
    .flow h3 {
      padding-top: .7rem;
      padding-bottom: .9rem;
      font-size: 1.6rem; } }
.flow dl {
  display: table;
  width: 100%;
  font-size: 1.3rem; }
  .flow dl dt,
  .flow dl dd {
    display: table-cell;
    border-bottom: 1px solid #a9a9c3; }
    @media (max-width: 640px) {
      .flow dl dt,
      .flow dl dd {
        display: block; } }
  .flow dl dt {
    width: 10.5rem;
    background-color: #ecece9;
    font-weight: bold;
    text-align: center;
    vertical-align: middle; }
    @media (max-width: 640px) {
      .flow dl dt {
        width: auto;
        padding-top: .7rem;
        padding-bottom: .8rem;
        border-bottom: none;
        font-size: 1.45rem; } }
  .flow dl dd {
    width: 90.5rem;
    padding: 1.4rem 0 1.4rem 5rem;
    color: #505050;
    line-height: 2; }
    @media (max-width: 640px) {
      .flow dl dd {
        width: auto;
        padding: .8rem 1rem 1rem;
        font-size: 1.3rem;
        line-height: 1.6; } }

/* sec_flow01 */
.sec_flow01 .wrap {
  padding-bottom: 7rem; }
  @media (max-width: 640px) {
    .sec_flow01 .wrap {
      padding-bottom: 5rem; } }
  .sec_flow01 .wrap .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_flow01 .wrap .sec_tit > .title + .read {
        margin-top: 0; } }
  .sec_flow01 .wrap .flow dl dt {
    background-color: #d4d5de; }
  .sec_flow01 .wrap .flow dl dd {
    background-color: #fff; }

/* sec_flow02 */
.sec_flow02 {
  padding-bottom: 7.5rem; }
  @media (max-width: 640px) {
    .sec_flow02 {
      padding-bottom: 5rem; } }
  .sec_flow02 .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_flow02 .sec_tit > .title + .read {
        margin-top: 0; } }
  .sec_flow02 .flow dl dt {
    background-color: #ecece9; }

/* sec_24h */
.sec_24h .sec_tit > .title {
  background-image: none; }
  @media (max-width: 640px) {
    .sec_24h .sec_tit > .title + .read {
      margin-top: 0; } }
.sec_24h .detail {
  position: relative;
  z-index: 1;
  min-height: 430px;
  padding-bottom: 40px; }
  @media (max-width: 640px) {
    .sec_24h .detail {
      min-height: 0;
      padding-bottom: 0; } }
  .sec_24h .detail .ph {
    position: absolute;
    top: 0;
    right: 2rem;
    width: 53.6%;
    max-width: 59rem;
    height: 41rem;
    box-shadow: 2rem 2rem 0px #ffc600; }
    @media (max-width: 640px) {
      .sec_24h .detail .ph {
        position: relative;
        top: auto;
        right: auto;
        width: 96%;
        height: 19rem;
        margin-bottom: 1.3rem; } }
    @media (max-width: 640px) {
      .sec_24h .detail .ph {
        box-shadow: 1.3rem 1.3rem 0px #ffc600; } }
  .sec_24h .detail .text_box {
    padding: 4.5rem 60.4% 7.5rem 0; }
    @media (max-width: 640px) {
      .sec_24h .detail .text_box {
        padding: 3rem 0 5rem; } }
    .sec_24h .detail .text_box .cont_tit {
      padding-bottom: 2rem;
      text-align: left; }
      @media (max-width: 640px) {
        .sec_24h .detail .text_box .cont_tit {
          padding-bottom: 1.5rem; } }
      .sec_24h .detail .text_box .cont_tit:before, .sec_24h .detail .text_box .cont_tit:after {
        content: "";
        display: inline-block;
        position: absolute;
        left: 0;
        bottom: 0;
        height: 0.3rem; }
        @media (max-width: 640px) {
          .sec_24h .detail .text_box .cont_tit:before, .sec_24h .detail .text_box .cont_tit:after {
            height: 0.5rem; } }
      .sec_24h .detail .text_box .cont_tit:before {
        width: 100%;
        margin-left: auto;
        background-color: #e1e1e9; }
      .sec_24h .detail .text_box .cont_tit:after {
        width: 5rem;
        background-color: #f5c51d; }
        @media (max-width: 640px) {
          .sec_24h .detail .text_box .cont_tit:after {
            width: 3rem; } }
      .sec_24h .detail .text_box .cont_tit > span {
        font-size: 3.5rem;
        line-height: 1.3; }
        @media (max-width: 640px) {
          .sec_24h .detail .text_box .cont_tit > span {
            font-size: 2.2rem; } }
    .sec_24h .detail .text_box .read {
      margin-top: 2rem;
      font-size: 1.5rem; }
      @media (max-width: 640px) {
        .sec_24h .detail .text_box .read {
          margin-top: 1rem;
          padding: 0;
          font-size: 1.2rem;
          text-align: left; } }

/* sec_unit */
.sec_unit {
  padding-bottom: 10rem; }
  @media (max-width: 640px) {
    .sec_unit {
      padding-bottom: 5rem; } }
  .sec_unit .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_unit .sec_tit > .title + .read {
        margin-top: 0; } }
  .sec_unit .detail {
    position: relative;
    z-index: 1; }
    .sec_unit .detail .ph {
      position: absolute;
      top: 0;
      width: 53.6%;
      max-width: 59rem;
      height: 41rem;
      box-shadow: 2rem 2rem 0px #ffc600; }
      @media (max-width: 640px) {
        .sec_unit .detail .ph {
          position: relative;
          top: auto;
          right: auto;
          width: 96%;
          height: 19rem;
          margin-bottom: 1.3rem; } }
      @media (max-width: 640px) {
        .sec_unit .detail .ph {
          box-shadow: 1.3rem 1.3rem 0px #ffc600; } }
    .sec_unit .detail .text_box {
      padding: 4.5rem 0 10rem 60.4%; }
      @media (max-width: 640px) {
        .sec_unit .detail .text_box {
          padding: 3rem 0 2.5rem; } }
      .sec_unit .detail .text_box .cont_tit {
        padding-bottom: 2rem;
        text-align: left; }
        @media (max-width: 640px) {
          .sec_unit .detail .text_box .cont_tit {
            padding-bottom: 1.5rem; } }
        .sec_unit .detail .text_box .cont_tit:before, .sec_unit .detail .text_box .cont_tit:after {
          content: "";
          display: inline-block;
          position: absolute;
          left: 0;
          bottom: 0;
          height: 0.3rem; }
          @media (max-width: 640px) {
            .sec_unit .detail .text_box .cont_tit:before, .sec_unit .detail .text_box .cont_tit:after {
              height: 0.5rem; } }
        .sec_unit .detail .text_box .cont_tit:before {
          width: 100%;
          margin-left: auto;
          background-color: #e1e1e9; }
        .sec_unit .detail .text_box .cont_tit:after {
          width: 5rem;
          background-color: #f5c51d; }
          @media (max-width: 640px) {
            .sec_unit .detail .text_box .cont_tit:after {
              width: 3rem; } }
        .sec_unit .detail .text_box .cont_tit > span {
          font-size: 3.5rem;
          line-height: 1.3; }
          @media (max-width: 640px) {
            .sec_unit .detail .text_box .cont_tit > span {
              font-size: 2.2rem; } }
      .sec_unit .detail .text_box .read {
        margin-top: 2rem;
        font-size: 1.5rem; }
        @media (max-width: 640px) {
          .sec_unit .detail .text_box .read {
            margin-top: 1rem;
            padding: 0;
            font-size: 1.2rem;
            text-align: left; } }
  .sec_unit .list h3 {
    margin-bottom: 1.5rem;
    padding-top: 2rem;
    padding-bottom: 2.2rem;
    background-color: #232669;
    color: #fff;
    font-size: 2.6rem;
    text-align: center; }
    @media (max-width: 640px) {
      .sec_unit .list h3 {
        margin-bottom: 1rem;
        padding-top: .7rem;
        padding-bottom: .9rem;
        font-size: 1.6rem; } }
    .sec_unit .list h3 span {
      margin-left: .5rem;
      font-size: 1.6rem; }
      @media (max-width: 640px) {
        .sec_unit .list h3 span {
          margin-left: .3rem;
          font-size: 1.2rem; } }
  .sec_unit .list ul {
    float: left;
    width: 47.2%; }
    @media (max-width: 640px) {
      .sec_unit .list ul {
        float: none;
        width: auto; } }
    .sec_unit .list ul li {
      position: relative;
      padding-right: 14.4%;
      padding-bottom: .5rem;
      border-bottom: 1px solid #8b8b8b;
      font-size: 1.8rem;
      text-align: center; }
      @media (max-width: 640px) {
        .sec_unit .list ul li {
          padding-right: 0;
          padding-left: .5rem;
          font-size: 1.2rem;
          text-align: left; } }
      .sec_unit .list ul li img {
        position: absolute;
        top: 3px;
        right: 7.6%; }
        @media (max-width: 640px) {
          .sec_unit .list ul li img {
            right: .5rem;
            width: 19px;
            height: auto; } }
      .sec_unit .list ul li + li {
        margin-top: 1.5rem; }
        @media (max-width: 640px) {
          .sec_unit .list ul li + li {
            margin-top: .5rem; } }
    .sec_unit .list ul + ul {
      float: right; }
      @media (max-width: 640px) {
        .sec_unit .list ul + ul {
          float: none; } }
  .sec_unit .list:after {
    content: '';
    display: block;
    clear: both; }

/* sec_minor */
.sec_minor .wrap {
  padding-bottom: 9rem; }
  @media (max-width: 640px) {
    .sec_minor .wrap {
      padding-bottom: 3.5rem; } }
  @media (max-width: 640px) {
    .sec_minor .wrap .sec_tit {
      margin-top: 2.5rem; } }
  .sec_minor .wrap .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_minor .wrap .sec_tit > .title + .read {
        margin-top: 0; } }
  .sec_minor .wrap .detail {
    position: relative;
    z-index: 1; }
    .sec_minor .wrap .detail .ph {
      position: absolute;
      top: 0;
      right: 2rem;
      width: 53.6%;
      max-width: 59rem;
      height: 41rem;
      box-shadow: 2rem 2rem 0px #ffc600; }
      @media (max-width: 640px) {
        .sec_minor .wrap .detail .ph {
          position: relative;
          top: auto;
          right: auto;
          width: 96%;
          height: 19rem;
          margin-bottom: 1.3rem; } }
      @media (max-width: 640px) {
        .sec_minor .wrap .detail .ph {
          box-shadow: 1.3rem 1.3rem 0px #ffc600; } }
    .sec_minor .wrap .detail .text_box {
      padding: 4.5rem 60.4% 7.5rem 0; }
      @media (max-width: 640px) {
        .sec_minor .wrap .detail .text_box {
          padding: 3rem 0 2.5rem; } }
      .sec_minor .wrap .detail .text_box .cont_tit {
        padding-bottom: 2rem;
        text-align: left; }
        @media (max-width: 640px) {
          .sec_minor .wrap .detail .text_box .cont_tit {
            padding-bottom: 1.5rem; } }
        .sec_minor .wrap .detail .text_box .cont_tit:before, .sec_minor .wrap .detail .text_box .cont_tit:after {
          content: "";
          display: inline-block;
          position: absolute;
          left: 0;
          bottom: 0;
          height: 0.3rem; }
          @media (max-width: 640px) {
            .sec_minor .wrap .detail .text_box .cont_tit:before, .sec_minor .wrap .detail .text_box .cont_tit:after {
              height: 0.5rem; } }
        .sec_minor .wrap .detail .text_box .cont_tit:before {
          width: 100%;
          margin-left: auto;
          background-color: #e1e1e9; }
        .sec_minor .wrap .detail .text_box .cont_tit:after {
          width: 5rem;
          background-color: #f5c51d; }
          @media (max-width: 640px) {
            .sec_minor .wrap .detail .text_box .cont_tit:after {
              width: 3rem; } }
        .sec_minor .wrap .detail .text_box .cont_tit > span {
          font-size: 3.5rem;
          line-height: 1.3; }
          @media (max-width: 640px) {
            .sec_minor .wrap .detail .text_box .cont_tit > span {
              font-size: 2.2rem; } }
      .sec_minor .wrap .detail .text_box .read {
        margin-top: 2rem;
        font-size: 1.5rem; }
        @media (max-width: 640px) {
          .sec_minor .wrap .detail .text_box .read {
            margin-top: 1rem;
            padding: 0;
            font-size: 1.2rem;
            text-align: left; } }
  .sec_minor .wrap ul .list01 span {
    position: absolute;
    color: #f05050;
    font-size: 6rem;
    font-family: "vinyl", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
    font-weight: 400; }
    @media (max-width: 640px) {
      .sec_minor .wrap ul .list01 span {
        font-size: 3.1rem; } }
  .sec_minor .wrap ul .list01 .tit {
    position: relative;
    margin-bottom: 2.5rem;
    margin-left: 7.5rem;
    padding-bottom: 1rem;
    color: #19216b;
    font-size: 2.8rem; }
    @media (max-width: 640px) {
      .sec_minor .wrap ul .list01 .tit {
        margin-bottom: 0;
        margin-left: 3.5rem;
        padding-top: .4rem;
        padding-right: 2.7rem;
        padding-bottom: 0;
        font-size: 1.7rem; } }
    .sec_minor .wrap ul .list01 .tit.active .arrow {
      background-color: #ffc600; }
      .sec_minor .wrap ul .list01 .tit.active .arrow:after {
        border-bottom: 2px solid #19216b;
        border-right: 2px solid #19216b;
        transform: rotate(-135deg);
        top: 3px; }
    .sec_minor .wrap ul .list01 .tit:before, .sec_minor .wrap ul .list01 .tit:after {
      content: "";
      display: inline-block;
      position: absolute;
      left: 0;
      bottom: 0;
      height: .3rem; }
      @media (max-width: 640px) {
        .sec_minor .wrap ul .list01 .tit:before, .sec_minor .wrap ul .list01 .tit:after {
          content: none; } }
    .sec_minor .wrap ul .list01 .tit:before {
      width: 100%;
      margin-left: auto;
      background-color: #e1e1e9; }
    .sec_minor .wrap ul .list01 .tit:after {
      width: 5rem;
      background-color: #f5c51d; }
      @media (max-width: 640px) {
        .sec_minor .wrap ul .list01 .tit:after {
          width: 3rem; } }
    .sec_minor .wrap ul .list01 .tit .arrow {
      width: 2.2rem;
      height: 2.2rem;
      border-radius: 50%;
      position: absolute;
      top: 1px;
      bottom: 0;
      right: 0;
      margin: auto;
      background-color: #19216b; }
      .sec_minor .wrap ul .list01 .tit .arrow:after {
        content: "";
        display: block;
        width: 5px;
        height: 5px;
        border-bottom: 2px solid #ffc600;
        border-right: 2px solid #ffc600;
        position: absolute;
        top: -2px;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        transform: rotate(45deg); }
  .sec_minor .wrap ul .list01 .cap {
    font-size: 1.5rem; }
    @media (max-width: 640px) {
      .sec_minor .wrap ul .list01 .cap {
        font-size: 1.2rem;
        overflow: hidden;
        display: none;
        margin-top: 1rem; } }
  .sec_minor .wrap ul .list01 + li {
    margin-top: 3rem; }
    @media (max-width: 640px) {
      .sec_minor .wrap ul .list01 + li {
        margin-top: 2.5rem; } }

/* sec_other */
.sec_other {
  padding-bottom: 4.5rem; }
  @media (max-width: 640px) {
    .sec_other {
      padding-bottom: 2rem; } }
  .sec_other .sec_tit > .title {
    background-image: none; }
    @media (max-width: 640px) {
      .sec_other .sec_tit > .title + .read {
        margin-top: 0; } }
  .sec_other .detail {
    position: relative;
    z-index: 1;
    min-height: 430px;
    padding-bottom: 80px; }
    @media (max-width: 640px) {
      .sec_other .detail {
        min-height: 0;
        padding-bottom: 0; } }
    .sec_other .detail .ph {
      position: absolute;
      top: 0;
      right: 2rem;
      width: 53.6%;
      max-width: 59rem;
      height: 41rem;
      box-shadow: 2rem 2rem 0px #ffc600; }
      @media (max-width: 640px) {
        .sec_other .detail .ph {
          position: relative;
          top: auto;
          right: auto;
          width: 96%;
          height: 19rem;
          margin-bottom: 1.3rem; } }
      @media (max-width: 640px) {
        .sec_other .detail .ph {
          box-shadow: 1.3rem 1.3rem 0px #ffc600; } }
    .sec_other .detail .text_box {
      padding: 4.5rem 60.4% 10rem 0; }
      @media (max-width: 640px) {
        .sec_other .detail .text_box {
          padding: 3rem 0 3.5rem; } }
      .sec_other .detail .text_box .cont_tit {
        padding-bottom: 2rem;
        text-align: left; }
        @media (max-width: 640px) {
          .sec_other .detail .text_box .cont_tit {
            padding-bottom: 1.5rem; } }
        .sec_other .detail .text_box .cont_tit:before, .sec_other .detail .text_box .cont_tit:after {
          content: "";
          display: inline-block;
          position: absolute;
          left: 0;
          bottom: 0;
          height: 0.3rem; }
          @media (max-width: 640px) {
            .sec_other .detail .text_box .cont_tit:before, .sec_other .detail .text_box .cont_tit:after {
              height: 0.5rem; } }
        .sec_other .detail .text_box .cont_tit:before {
          width: 100%;
          margin-left: auto;
          background-color: #e1e1e9; }
        .sec_other .detail .text_box .cont_tit:after {
          width: 5rem;
          background-color: #f5c51d; }
          @media (max-width: 640px) {
            .sec_other .detail .text_box .cont_tit:after {
              width: 3rem; } }
        .sec_other .detail .text_box .cont_tit > span {
          font-size: 3.5rem;
          line-height: 1.3; }
          @media (max-width: 640px) {
            .sec_other .detail .text_box .cont_tit > span {
              font-size: 2.2rem; } }
      .sec_other .detail .text_box .read {
        margin-top: 2rem;
        font-size: 1.5rem; }
        @media (max-width: 640px) {
          .sec_other .detail .text_box .read {
            margin-top: 1rem;
            padding: 0;
            font-size: 1.2rem;
            text-align: left; } }
  .sec_other .list li {
    position: relative;
    float: left;
    width: 47.2%;
    margin-bottom: 5.5rem; }
    @media (max-width: 640px) {
      .sec_other .list li {
        float: none;
        width: auto;
        margin-bottom: 3rem; } }
    .sec_other .list li:nth-child(even) {
      float: right; }
      @media (max-width: 640px) {
        .sec_other .list li:nth-child(even) {
          float: none; } }
    .sec_other .list li div {
      position: absolute;
      display: inline-block;
      top: -1.3rem;
      left: .7rem;
      width: 5.7rem;
      height: 5.7rem;
      padding: .3rem;
      text-align: center; }
      @media (max-width: 640px) {
        .sec_other .list li div {
          width: 5.3rem;
          height: 5.3rem; } }
      .sec_other .list li div > span {
        display: inline;
        position: relative;
        margin: 0 auto;
        color: #fff;
        font-size: 3.9rem;
        font-family: "vinyl", "游ゴシック", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", verdana, "メイリオ", "Meiryo", "Osaka", sans-serif;
        font-weight: 400;
        line-height: 1.6;
        letter-spacing: 0.02em; }
        .sec_other .list li div > span:before {
          content: '';
          display: inline-block;
          height: 100%;
          vertical-align: middle; }
        @media (max-width: 640px) {
          .sec_other .list li div > span {
            font-size: 3.6rem;
            letter-spacing: .05em; } }
      .sec_other .list li div:before {
        content: '';
        display: block;
        background-color: #f05050;
        position: absolute;
        z-index: 0;
        width: 5.7rem;
        height: 5.7rem;
        top: .3rem;
        left: .3rem; }
        @media (max-width: 640px) {
          .sec_other .list li div:before {
            width: 5.3rem;
            height: 5.3rem; } }
      .sec_other .list li div:after {
        content: '';
        display: block;
        position: absolute;
        bottom: 0;
        right: 0;
        width: 5.7rem;
        height: 5.7rem;
        box-sizing: border-box;
        border-bottom: 0.1rem solid #f05050;
        border-right: 0.1rem solid #f05050; }
        @media (max-width: 640px) {
          .sec_other .list li div:after {
            width: 5.3rem;
            height: 5.3rem; } }
    .sec_other .list li img {
      float: left;
      width: 49.6%;
      height: auto; }
      @media (max-width: 640px) {
        .sec_other .list li img {
          float: none;
          width: 100%; } }
    .sec_other .list li h3 {
      margin: 1.5rem 0 1.5rem 52.8%;
      color: #19216b;
      font-size: 2.1rem; }
      @media (max-width: 640px) {
        .sec_other .list li h3 {
          margin: .5rem 0 .5rem;
          font-size: 2.1rem;
          text-align: center; } }
    .sec_other .list li p {
      margin-left: 52.8%;
      font-size: 1.4rem; }
      @media (max-width: 640px) {
        .sec_other .list li p {
          margin-left: 0;
          font-size: 1.2rem;
          text-align: center; } }
    .sec_other .list li:after {
      content: '';
      display: block;
      clear: both; }
  .sec_other .list:after {
    content: '';
    display: block;
    clear: both; }

/* sec_jals */
.sec_jals .sec_tit {
  margin-top: 5.5rem; }
  @media (max-width: 640px) {
    .sec_jals .sec_tit {
      margin-top: 4rem; } }
