@charset "UTF-8";
/* ----------------------------------------------

PC設定

------------------------------------------------*/
@media all and (min-width: 1100px) {
  /* ----------------------------------------------
トップイメージ
------------------------------------------------*/
  #mainImage {
    width: 100%;
    background: url(../image/mainImage.jpg) center/cover no-repeat;
    margin-top: 90px;
    padding: 90px 0 calc(90px * 1.3);
  }
  #mainImage div.title {
    width: 57.5%;
    max-width: 690px;
    padding: calc(2rem * 2);
    background-color: rgba(255, 255, 255, 0.8);
  }
  #mainImage div.title h1 .h1_1 {
    font-size: calc(16px * 1.5);
    display: block;
    margin-bottom: calc(2rem * 0.75);
    position: relative;
  }
  #mainImage div.title h1 .h1_1::before, #mainImage div.title h1 .h1_1::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #094c83;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
  }
  #mainImage div.title h1 .h1_1::after {
    height: 4px;
    width: 50%;
    -webkit-transform: translateY(1.1rem);
            transform: translateY(1.1rem);
  }
  #mainImage div.title h1 .h1_2 {
    font-size: calc(16px * 2.125);
    display: block;
    margin-top: 1.5em;
  }
  #mainImage div.title h1 .h1_3 {
    font-size: calc(16px * 2.125);
    display: block;
    margin-bottom: 1em;
  }
  #mainImage div.title p span {
    display: block;
  }
  /* ----------------------------------------------
contents1
------------------------------------------------*/
  #contents .contents1 {
    width: 100%;
    background: url(../image/top1.png) left center/50% 100% no-repeat, #f2f2f2;
    padding: 90px 0;
  }
  #contents .contents1 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #contents .contents1 .wrapper .textarea {
    width: 55%;
  }
  #contents .contents1 .wrapper .textarea h2 {
    margin-bottom: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 span {
    display: block;
    font-size: calc(16px * 1.75);
    color: #f7931e;
  }
  #contents .contents1 .wrapper .textarea p span {
    display: block;
  }
  /* ----------------------------------------------
contents2
------------------------------------------------*/
  #contents .contents2 {
    width: 100%;
    background: url(../image/top2.png) top/cover no-repeat, #fff;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents2::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents2 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #contents .contents2 .wrapper .textarea {
    width: 55%;
    margin-bottom: calc(2rem * 1.5);
  }
  #contents .contents2 .wrapper .textarea h2 {
    margin-bottom: 1em;
    font-size: calc(16px * 1.75);
    text-align: center;
  }
  #contents .contents2 .wrapper .textarea h2 span {
    color: #0071bc;
  }
  #contents .contents2 .wrapper .textarea p span {
    display: block;
    text-align: center;
  }
  #contents .contents2 .wrapper ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
  }
  #contents .contents2 .wrapper ol li {
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    text-align: center;
    position: relative;
    font-size: calc(16px * 1.375);
    background-color: #FFF;
    padding: 2em 1em;
    border-radius: 100px;
    border: solid 1px #000;
  }
  #contents .contents2 .wrapper ol span.arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  #contents .contents2 .wrapper ol span.arrow::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 3px solid;
    border-color: #29abe2 #29abe2 transparent transparent;
    -webkit-transform: rotate(45deg) translateY(1%);
            transform: rotate(45deg) translateY(1%);
    margin-right: 0.5vw;
  }
  /* ----------------------------------------------
contents3
------------------------------------------------*/
  #contents .contents3 {
    width: 100%;
    background: #f2f2f2;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents3::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents3 .wrapper {
    width: 68.75%;
    max-width: 1200px;
    margin: 0 auto;
  }
  #contents .contents3 .wrapper h2 {
    margin-bottom: 1em;
    font-size: calc(16px * 2.125);
    text-align: center;
  }
  #contents .contents3 .wrapper h2 span {
    color: #0071bc;
  }
  #contents .contents3 .wrapper p span {
    display: block;
  }
  #contents .contents3 .wrapper .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    border: solid #000 2px;
    padding: 2rem 0;
    margin: 2rem 0;
  }
  #contents .contents3 .wrapper .list ol li {
    font-size: calc(16px * 1.25);
    font-weight: bold;
  }
  #contents .contents3 .wrapper p.yellow {
    font-size: calc(16px * 1.25);
    color: #0071bc;
    margin: 2rem 0;
    font-weight: bold;
    display: inline-block;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(229, 245, 120, 0)), color-stop(50%, rgba(229, 245, 120, 0)), color-stop(60%, #ffff00), color-stop(99%, #ffff00), to(rgba(229, 245, 120, 0)));
    background-image: linear-gradient(to bottom, rgba(229, 245, 120, 0), rgba(229, 245, 120, 0) 50%, #ffff00 60%, #ffff00 99%, rgba(229, 245, 120, 0));
  }
  #contents .contents3 .wrapper section {
    margin-bottom: calc(2rem * 1.5);
  }
  #contents .contents3 .wrapper section h3 {
    font-size: calc(16px * 1.125);
    color: #0071bc;
    font-weight: bold;
  }
  #contents .contents3 .wrapper section h3::after {
    content: "";
    display: block;
    width: 100%;
    height: 1.5px;
    background-color: #000;
  }
  #contents .contents3 .wrapper section p.bold {
    font-weight: bold;
    margin-bottom: 0.5em;
  }
  #contents .contents3 .wrapper section:last-of-type {
    margin-bottom: 0;
  }
  /* ----------------------------------------------
contents4
------------------------------------------------*/
  #contents .contents4 {
    width: 100%;
    background: url(../image/top_ope.png) top/cover no-repeat, #fff;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents4::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents4 .wrapper h2 {
    font-size: calc(16px * 2.125);
    text-align: center;
  }
  #contents .contents4 .wrapper h2 span {
    color: #0071bc;
  }
  #contents .contents4 .wrapper p {
    text-align: center;
    margin-bottom: calc(2rem * 2);
  }
  #contents .contents4 .wrapper .button {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents4 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(16px * 1.25);
    border-radius: 50px;
  }
  /* ----------------------------------------------
contents5
------------------------------------------------*/
  #contents .contents5 {
    width: 100%;
    background: #e6e6e6;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents5::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents5 .wrapper h2 {
    font-size: calc(16px * 2.125);
    color: #0071bc;
    text-align: center;
    margin-bottom: 0.5em;
  }
  #contents .contents5 .wrapper p {
    text-align: center;
    margin-bottom: calc(2rem * 2);
  }
  #contents .contents5 .wrapper .button {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents5 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(16px * 1.25);
    border-radius: 50px;
  }
}

/* ----------------------------------------------

PC~Pad設定

------------------------------------------------*/
@media all and (min-width: 768px) and (max-width: 1100px) {
  /* ----------------------------------------------
トップイメージ
------------------------------------------------*/
  #mainImage {
    width: 100%;
    background: url(../image/mainImage.jpg) center/cover no-repeat;
    margin-top: 90px;
    padding: 90px 0 calc(90px * 1.3);
  }
  #mainImage div.title {
    width: 80%;
    max-width: 690px;
    padding: calc(2rem * 1.5);
    background-color: rgba(255, 255, 255, 0.8);
  }
  #mainImage div.title h1 .h1_1 {
    font-size: calc(16px * 1.5);
    display: block;
    margin-bottom: calc(2rem * 0.75);
    position: relative;
  }
  #mainImage div.title h1 .h1_1::before, #mainImage div.title h1 .h1_1::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #094c83;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
  }
  #mainImage div.title h1 .h1_1::after {
    height: 4px;
    width: 50%;
    -webkit-transform: translateY(1.1rem);
            transform: translateY(1.1rem);
  }
  #mainImage div.title h1 .h1_2 {
    font-size: calc(16px * 2);
    display: block;
    margin-top: 1.5em;
  }
  #mainImage div.title h1 .h1_3 {
    font-size: calc(16px * 2);
    display: block;
    margin-bottom: 1em;
  }
  #mainImage div.title p span {
    display: block;
  }
  /* ----------------------------------------------
contents1
------------------------------------------------*/
  #contents .contents1 {
    width: 100%;
    background: url(../image/top1.png) left center/80% 100% no-repeat, #f2f2f2;
    padding: 90px 0;
  }
  #contents .contents1 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #contents .contents1 .wrapper .textarea {
    width: 80%;
    background-color: rgba(242, 242, 242, 0.8);
    padding: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 {
    margin-bottom: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 span {
    display: block;
    font-size: calc(16px * 1.5);
    color: #f7931e;
  }
  #contents .contents1 .wrapper .textarea p span {
    display: block;
  }
  /* ----------------------------------------------
contents2
------------------------------------------------*/
  #contents .contents2 {
    width: 100%;
    background: url(../image/top2.png) top/cover no-repeat, #fff;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents2::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents2 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #contents .contents2 .wrapper .textarea {
    width: 100%;
    margin-bottom: calc(2rem * 1.5);
  }
  #contents .contents2 .wrapper .textarea h2 {
    margin-bottom: 1em;
    font-size: calc(16px * 1.75);
    text-align: center;
  }
  #contents .contents2 .wrapper .textarea h2 span {
    color: #0071bc;
  }
  #contents .contents2 .wrapper .textarea p span {
    display: block;
    text-align: center;
  }
  #contents .contents2 .wrapper ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 80%;
  }
  #contents .contents2 .wrapper ol li {
    text-align: center;
    position: relative;
    font-size: calc(16px * 1.375);
    background-color: #FFF;
    padding: 1em 0;
    border-radius: 100px;
    border: solid 1px #000;
  }
  #contents .contents2 .wrapper ol span.arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents .contents2 .wrapper ol span.arrow::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 3px solid;
    border-color: #29abe2 #29abe2 transparent transparent;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    margin: 0.5rem 0 1rem;
  }
  /* ----------------------------------------------
contents3
------------------------------------------------*/
  #contents .contents3 {
    width: 100%;
    background: #f2f2f2;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents3::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents3 .wrapper {
    width: auto;
  }
  #contents .contents3 .wrapper h2 {
    margin-bottom: 1em;
    font-size: calc(16px * 2.125);
    text-align: center;
  }
  #contents .contents3 .wrapper h2 span {
    color: #0071bc;
  }
  #contents .contents3 .wrapper p span {
    display: block;
  }
  #contents .contents3 .wrapper .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    border: solid #000 2px;
    padding: 2rem 0;
    margin: 2rem 0;
  }
  #contents .contents3 .wrapper .list ol li {
    font-size: calc(16px * 1.25);
    font-weight: bold;
  }
  #contents .contents3 .wrapper p.yellow {
    font-size: calc(16px * 1.25);
    color: #0071bc;
    margin: 2rem 0;
    font-weight: bold;
    display: inline-block;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(229, 245, 120, 0)), color-stop(50%, rgba(229, 245, 120, 0)), color-stop(60%, #ffff00), color-stop(99%, #ffff00), to(rgba(229, 245, 120, 0)));
    background-image: linear-gradient(to bottom, rgba(229, 245, 120, 0), rgba(229, 245, 120, 0) 50%, #ffff00 60%, #ffff00 99%, rgba(229, 245, 120, 0));
  }
  #contents .contents3 .wrapper section {
    margin-bottom: calc(2rem * 1.5);
  }
  #contents .contents3 .wrapper section h3 {
    font-size: calc(16px * 1.125);
    color: #0071bc;
    font-weight: bold;
  }
  #contents .contents3 .wrapper section h3::after {
    content: "";
    display: block;
    width: 100%;
    height: 1.5px;
    background-color: #000;
  }
  #contents .contents3 .wrapper section p.bold {
    font-weight: bold;
    margin-bottom: 0.5em;
  }
  #contents .contents3 .wrapper section:last-of-type {
    margin-bottom: 0;
  }
  /* ----------------------------------------------
contents4
------------------------------------------------*/
  #contents .contents4 {
    width: 100%;
    background: url(../image/top_ope.png) top/cover no-repeat, #fff;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents4::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents4 .wrapper h2 {
    font-size: calc(16px * 2.125);
    text-align: center;
  }
  #contents .contents4 .wrapper h2 span {
    color: #0071bc;
    display: block;
  }
  #contents .contents4 .wrapper p {
    text-align: center;
    margin-bottom: calc(2rem * 2);
  }
  #contents .contents4 .wrapper .button {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents4 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(16px * 1.25);
    border-radius: 50px;
  }
  /* ----------------------------------------------
contents5
------------------------------------------------*/
  #contents .contents5 {
    width: 100%;
    background: #e6e6e6;
    padding: calc(90px * 2) 0 160px;
    position: relative;
  }
  #contents .contents5::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(90px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents5 .wrapper h2 {
    font-size: calc(16px * 2.125);
    color: #0071bc;
    text-align: center;
    margin-bottom: 0.5em;
  }
  #contents .contents5 .wrapper p {
    text-align: center;
    margin-bottom: calc(2rem * 2);
  }
  #contents .contents5 .wrapper .button {
    width: 30%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents5 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(16px * 1.25);
    border-radius: 50px;
  }
}

/* ----------------------------------------------

pad設定

------------------------------------------------*/
@media all and (min-width: 520px) and (max-width: 768px) {
  /* ----------------------------------------------
トップイメージ
------------------------------------------------*/
  #mainImage {
    width: 100%;
    background: url(../image/mainImage.jpg) center/cover no-repeat;
    margin-top: 70px;
    padding: 70px 0 calc(70px * 1.3);
  }
  #mainImage div.title {
    width: 100%;
    max-width: 690px;
    padding: calc(1.5rem * 1.5);
    background-color: rgba(255, 255, 255, 0.8);
  }
  #mainImage div.title h1 .h1_1 {
    font-size: calc(14.4px * 1.5);
    display: block;
    margin-bottom: calc(1.5rem * 0.75);
    position: relative;
  }
  #mainImage div.title h1 .h1_1::before, #mainImage div.title h1 .h1_1::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #094c83;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
  }
  #mainImage div.title h1 .h1_1::after {
    height: 4px;
    width: 50%;
    -webkit-transform: translateY(1.1rem);
            transform: translateY(1.1rem);
  }
  #mainImage div.title h1 .h1_2 {
    font-size: calc(14.4px * 2);
    display: block;
    margin-top: 1.5em;
  }
  #mainImage div.title h1 .h1_3 {
    font-size: calc(14.4px * 2);
    display: block;
    margin-bottom: 1em;
  }
  #mainImage div.title p span {
    display: block;
  }
  /* ----------------------------------------------
contents1
------------------------------------------------*/
  #contents .contents1 {
    width: 100%;
    background: url(../image/top1.png) left center/100% 100% no-repeat, #f2f2f2;
    padding: 70px 0;
  }
  #contents .contents1 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #contents .contents1 .wrapper .textarea {
    width: 100%;
    background-color: rgba(242, 242, 242, 0.8);
    padding: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 {
    margin-bottom: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 span {
    font-size: calc(14.4px * 1.5);
    color: #f7931e;
  }
  #contents .contents1 .wrapper .textarea p span {
    display: block;
  }
  /* ----------------------------------------------
contents2
------------------------------------------------*/
  #contents .contents2 {
    width: 100%;
    background: url(../image/top2.png) top/cover no-repeat, #fff;
    padding: calc(70px * 2) 0 110px;
    position: relative;
  }
  #contents .contents2::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents2 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #contents .contents2 .wrapper .textarea {
    width: 100%;
    margin-bottom: calc(1.5rem * 1.5);
  }
  #contents .contents2 .wrapper .textarea h2 {
    margin-bottom: 1em;
    font-size: calc(14.4px * 1.75);
    text-align: center;
  }
  #contents .contents2 .wrapper .textarea h2 span {
    color: #0071bc;
    display: inline-block;
  }
  #contents .contents2 .wrapper .textarea p span {
    display: block;
    text-align: center;
  }
  #contents .contents2 .wrapper ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 80%;
  }
  #contents .contents2 .wrapper ol li {
    text-align: center;
    position: relative;
    font-size: calc(14.4px * 1.375);
    background-color: #FFF;
    padding: 1em 0;
    border-radius: 100px;
    border: solid 1px #000;
  }
  #contents .contents2 .wrapper ol span.arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents .contents2 .wrapper ol span.arrow::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 3px solid;
    border-color: #29abe2 #29abe2 transparent transparent;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    margin: 0.5rem 0 1rem;
  }
  /* ----------------------------------------------
contents3
------------------------------------------------*/
  #contents .contents3 {
    width: 100%;
    background: #f2f2f2;
    padding: calc(70px * 2) 0 110px;
    position: relative;
  }
  #contents .contents3::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents3 .wrapper {
    width: auto;
  }
  #contents .contents3 .wrapper h2 {
    margin-bottom: 1em;
    font-size: calc(14.4px * 2.125);
    text-align: center;
  }
  #contents .contents3 .wrapper h2 span {
    color: #0071bc;
    display: inline-block;
  }
  #contents .contents3 .wrapper p span {
    display: block;
  }
  #contents .contents3 .wrapper .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    border: solid #000 2px;
    padding: 1.5rem 0;
    margin: 1.5rem 0;
  }
  #contents .contents3 .wrapper .list ol li {
    font-size: calc(14.4px * 1.25);
    font-weight: bold;
  }
  #contents .contents3 .wrapper p.yellow {
    font-size: calc(14.4px * 1.25);
    color: #0071bc;
    margin: 1.5rem 0;
    font-weight: bold;
    display: inline-block;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(229, 245, 120, 0)), color-stop(50%, rgba(229, 245, 120, 0)), color-stop(60%, #ffff00), color-stop(99%, #ffff00), to(rgba(229, 245, 120, 0)));
    background-image: linear-gradient(to bottom, rgba(229, 245, 120, 0), rgba(229, 245, 120, 0) 50%, #ffff00 60%, #ffff00 99%, rgba(229, 245, 120, 0));
  }
  #contents .contents3 .wrapper section {
    margin-bottom: calc(1.5rem * 1.5);
  }
  #contents .contents3 .wrapper section h3 {
    font-size: 16px;
    color: #0071bc;
    font-weight: bold;
  }
  #contents .contents3 .wrapper section h3::after {
    content: "";
    display: block;
    width: 100%;
    height: 1.5px;
    background-color: #000;
  }
  #contents .contents3 .wrapper section p.bold {
    font-weight: bold;
    margin-bottom: 0.5em;
  }
  #contents .contents3 .wrapper section:last-of-type {
    margin-bottom: 0;
  }
  /* ----------------------------------------------
contents4
------------------------------------------------*/
  #contents .contents4 {
    width: 100%;
    background: url(../image/top_ope.png) top/cover no-repeat, #fff;
    padding: calc(70px * 2) 0 110px;
    position: relative;
  }
  #contents .contents4::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents4 .wrapper h2 {
    font-size: calc(14.4px * 2.125);
    text-align: center;
  }
  #contents .contents4 .wrapper h2 span {
    color: #0071bc;
    display: block;
  }
  #contents .contents4 .wrapper p {
    text-align: center;
    margin-bottom: calc(1.5rem * 2);
  }
  #contents .contents4 .wrapper .button {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents4 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(14.4px * 1.25);
    border-radius: 50px;
  }
  /* ----------------------------------------------
contents5
------------------------------------------------*/
  #contents .contents5 {
    width: 100%;
    background: #e6e6e6;
    padding: calc(70px * 2) 0 110px;
    position: relative;
  }
  #contents .contents5::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents5 .wrapper h2 {
    font-size: calc(14.4px * 2.125);
    color: #0071bc;
    text-align: center;
    margin-bottom: 0.5em;
  }
  #contents .contents5 .wrapper p {
    text-align: center;
    margin-bottom: calc(1.5rem * 2);
  }
  #contents .contents5 .wrapper .button {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents5 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(14.4px * 1.25);
    border-radius: 50px;
  }
}

/* ----------------------------------------------

sp設定

------------------------------------------------*/
@media all and (max-width: 520px) {
  /* ----------------------------------------------
トップイメージ
------------------------------------------------*/
  #mainImage {
    width: 100%;
    background: url(../image/mainImage.jpg) center/cover no-repeat;
    margin-top: 70px;
    padding: 70px 0 calc(70px * 1.3);
  }
  #mainImage div.title {
    width: 100%;
    max-width: 690px;
    padding: calc(1rem * 1.5);
    background-color: rgba(255, 255, 255, 0.8);
  }
  #mainImage div.title h1 .h1_1 {
    font-size: calc(12.8px * 1.5);
    display: block;
    margin-bottom: calc(1rem * 0.75);
    position: relative;
  }
  #mainImage div.title h1 .h1_1::before, #mainImage div.title h1 .h1_1::after {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #094c83;
    -webkit-transform: translateY(1rem);
            transform: translateY(1rem);
  }
  #mainImage div.title h1 .h1_1::after {
    height: 4px;
    width: 50%;
    -webkit-transform: translateY(1.1rem);
            transform: translateY(1.1rem);
  }
  #mainImage div.title h1 .h1_2 {
    font-size: calc(12.8px * 2);
    display: block;
    margin-top: 1.5em;
  }
  #mainImage div.title h1 .h1_3 {
    font-size: calc(12.8px * 2);
    display: block;
    margin-bottom: 1em;
  }
  #mainImage div.title p span {
    display: block;
  }
  /* ----------------------------------------------
contents1
------------------------------------------------*/
  #contents .contents1 {
    width: 100%;
    background: url(../image/top1.png) left center/100% 100% no-repeat, #f2f2f2;
    padding: 70px 0;
  }
  #contents .contents1 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  #contents .contents1 .wrapper .textarea {
    width: 100%;
    background-color: rgba(242, 242, 242, 0.8);
    padding: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 {
    margin-bottom: 1em;
  }
  #contents .contents1 .wrapper .textarea h2 span {
    font-size: calc(12.8px * 1.5);
    color: #f7931e;
  }
  #contents .contents1 .wrapper .textarea p span {
    display: block;
  }
  /* ----------------------------------------------
contents2
------------------------------------------------*/
  #contents .contents2 {
    width: 100%;
    background: url(../image/top2.png) top/cover no-repeat, #fff;
    padding: calc(70px * 2) 0 80px;
    position: relative;
  }
  #contents .contents2::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents2 .wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #contents .contents2 .wrapper .textarea {
    width: 100%;
    margin-bottom: calc(1rem * 1.5);
  }
  #contents .contents2 .wrapper .textarea h2 {
    margin-bottom: 1em;
    font-size: calc(12.8px * 1.75);
    text-align: center;
  }
  #contents .contents2 .wrapper .textarea h2 span {
    color: #0071bc;
    display: inline-block;
  }
  #contents .contents2 .wrapper .textarea p span {
    display: block;
    text-align: center;
  }
  #contents .contents2 .wrapper ol {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 80%;
  }
  #contents .contents2 .wrapper ol li {
    text-align: center;
    position: relative;
    font-size: calc(12.8px * 1.375);
    background-color: #FFF;
    padding: 1em 0;
    border-radius: 100px;
    border: solid 1px #000;
  }
  #contents .contents2 .wrapper ol span.arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #contents .contents2 .wrapper ol span.arrow::after {
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    border: 3px solid;
    border-color: #29abe2 #29abe2 transparent transparent;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
    margin: 0.5rem 0 1rem;
  }
  /* ----------------------------------------------
contents3
------------------------------------------------*/
  #contents .contents3 {
    width: 100%;
    background: #f2f2f2;
    padding: calc(70px * 2) 0 80px;
    position: relative;
  }
  #contents .contents3::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents3 .wrapper {
    width: auto;
  }
  #contents .contents3 .wrapper h2 {
    margin-bottom: 1em;
    font-size: calc(12.8px * 2.125);
    text-align: center;
  }
  #contents .contents3 .wrapper h2 span {
    color: #0071bc;
    display: inline-block;
  }
  #contents .contents3 .wrapper p span {
    display: block;
  }
  #contents .contents3 .wrapper .list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    border: solid #000 2px;
    padding: 1rem;
    margin: 1rem 0;
  }
  #contents .contents3 .wrapper .list ol li {
    font-size: calc(12.8px * 1.25);
    font-weight: bold;
  }
  #contents .contents3 .wrapper p.yellow {
    font-size: calc(12.8px * 1.25);
    color: #0071bc;
    margin: 1rem 0;
    font-weight: bold;
    display: inline-block;
    background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(229, 245, 120, 0)), color-stop(50%, rgba(229, 245, 120, 0)), color-stop(60%, #ffff00), color-stop(99%, #ffff00), to(rgba(229, 245, 120, 0)));
    background-image: linear-gradient(to bottom, rgba(229, 245, 120, 0), rgba(229, 245, 120, 0) 50%, #ffff00 60%, #ffff00 99%, rgba(229, 245, 120, 0));
  }
  #contents .contents3 .wrapper section {
    margin-bottom: calc(1rem * 1.5);
  }
  #contents .contents3 .wrapper section h3 {
    font-size: 16px;
    color: #0071bc;
    font-weight: bold;
  }
  #contents .contents3 .wrapper section h3::after {
    content: "";
    display: block;
    width: 100%;
    height: 1.5px;
    background-color: #000;
  }
  #contents .contents3 .wrapper section p.bold {
    font-weight: bold;
    margin-bottom: 0.5em;
  }
  #contents .contents3 .wrapper section:last-of-type {
    margin-bottom: 0;
  }
  /* ----------------------------------------------
contents4
------------------------------------------------*/
  #contents .contents4 {
    width: 100%;
    background: url(../image/top_ope.png) top/cover no-repeat, #fff;
    padding: calc(70px * 2) 0 80px;
    position: relative;
  }
  #contents .contents4::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents4 .wrapper h2 {
    font-size: calc(12.8px * 2.125);
    text-align: center;
  }
  #contents .contents4 .wrapper h2 span {
    color: #0071bc;
  }
  #contents .contents4 .wrapper p {
    text-align: center;
    margin-bottom: calc(1rem * 2);
  }
  #contents .contents4 .wrapper .button {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents4 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(12.8px * 1.25);
    border-radius: 50px;
  }
  /* ----------------------------------------------
contents5
------------------------------------------------*/
  #contents .contents5 {
    width: 100%;
    background: #e6e6e6;
    padding: calc(70px * 2) 0 80px;
    position: relative;
  }
  #contents .contents5::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 1px;
    height: calc(70px * 1.5);
    background-color: #0071bc;
  }
  #contents .contents5 .wrapper h2 {
    font-size: calc(12.8px * 2.125);
    color: #0071bc;
    text-align: center;
    margin-bottom: 0.5em;
  }
  #contents .contents5 .wrapper p {
    text-align: center;
    margin-bottom: calc(1rem * 2);
  }
  #contents .contents5 .wrapper .button {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
  }
  #contents .contents5 .wrapper .button a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 1.5em 0;
    color: #fff;
    background-color: #094c83;
    font-size: calc(12.8px * 1.25);
    border-radius: 50px;
  }
}
/*# sourceMappingURL=top.css.map */