@charset "UTF-8";
/* CSS Document */
body {
    overflow-x: hidden;
}
.inner880 {
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 1000px) {
    .inner880 {
        width: 100%;
        padding: 0 4%;
    }
}
.inner1000 {
    max-width: 920px;
    width: 100%;
    margin: 0 auto;
}
@media screen and (max-width: 1000px) {
    .inner1000 {
        width: 100%;
        padding: 0 4%;
    }
}
.txt_orange {
    color: #fc7101;
}
.wrapper {
    position: relative;
    width: 100%;
}
.mainArea {
    margin: 0 auto;
    text-align: center;
}
@media screen and (max-width: 768px) {
    .inner1000 {
        width: 100%;
        padding: 0 4%;
    }
}
@media screen and (max-width: 768px) {
    .mainArea .readArea {
        padding-bottom: 70px;
    }
}
#KV {
    position:relative;
    height: 590px;
    background-image: url("../img/main_back_pc.jpg");
    background-position: center center;
    background-size: auto;
    background-repeat: no-repeat;
    margin: 0 auto;
}
@media screen and (max-width: 768px) {
    #KV {
        height: 340px;
        background-image: url("../img/main_back_sp7.jpg");
        background-position: center bottom;
        background-size: auto;
        background-repeat: no-repeat;
    }
}
@media screen and (max-width: 300px) {
    #KV {
        height: 330px;
        background-image: url("../img/main_back_sp7.jpg");
        background-position: center bottom;
        background-size: auto;
        background-repeat: no-repeat;
    }
}
#KV:before{
    content: url(../img/main_side2.png);
    display: inline-block;
    position:absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

@media screen and (max-width: 768px) {
    #KV:before{
        display: none;
    }
}

.KV_title {
    position: relative;
    content: url(../img/main_title.png);
    display: inline-block;
    height: 400px;
}
@media screen and (max-width: 768px) {
    .KV_title  {
        content: '';
        width: 240px;
        height: 240px;
        background-image: url(../img/main_title.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center -26px;
    }
}
@media screen and (max-width: 300px) {
    .KV_title  {
        content: '';
        width: 220px;
        height: 220px;
        background-image: url(../img/main_title.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center -26px;
    }
}


#KV h1{
    text-indent: -9999px;
}


.pc {
    position: relative;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    padding: 1em 0;
}
@media screen and (max-width: 768px) {
   .pc {
       width: 20rem;
   padding: 0.6em 0;
       margin-top: -20px;
} 
}

/* ↓受賞ページリンク */

.read_btnArea{
    margin: 20px auto;
}

@media screen and (max-width: 768px) {
    .read_btnArea {
        margin-top: 10px;
        margin-bottom: 40px;
        padding: 0 20px;
    }
}

.read_btn{
    position: relative;
    display: inline-block;
    width: 540px;
    height: 130px;
    background: repeating-linear-gradient(-45deg, #fdf99d, #fdf99d 30px, #fbf43c 0, #fbf43c 60px);
    border-radius: 10px;
    box-shadow: 6px 6px #56dcff;
    transition: 0.3s;
}

@media screen and (max-width: 768px) {
    .read_btn {
        width: 100%;
        height: 80px;
    }
}

.readBtn-img{
    height: 92px;
    position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width: 768px) {
    .readBtn-img {
        height: 56px;
        width: auto;
    }
}

@media screen and (max-width: 300px) {
    .readBtn-img {
        height: 44px;
        width: auto;
    }
}

.read_btn:hover{
    transform: translate3d(0px, 12px, 0);
    box-shadow: none;
}

/* ↑受賞ページリンク */

.read_txt {
    font-size: 24px;
    font-weight: 600;
    color: #1f3357;
    line-height: 1.6em;
}
@media screen and (max-width: 768px) {
    .read_txt {
        font-size: 18px;
    }
}
.read_txt span {
    font-size: 1.2em;
}
.read_logo {
    padding: 10px 0;
    margin: 20px 0 30px 0;
    border-top: 1px solid #1f3357;
    border-bottom: 1px solid #1f3357;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media screen and (max-width: 768px) {
    .read_logo {
        flex-direction: column;
        margin: 30px 0px 40px 0px;
    }
}
.read_logo img {
    padding: 0 10px;
}
.cross {
    font-size: 20px;
    color: #1f3357;
    padding: 0 1em;
}
.deadlineArea {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 90px;
}
@media screen and (max-width: 768px) {
    .deadlineArea {
        flex-direction: column;
        width: 85%;
        margin: 0 auto;
        margin-bottom: -40px;
    }
}
.deadline_ttl {
    padding: 0.4em 2.1em;
    margin-right: 1em;
    background-color: #1f3357;
    color: #FFFFFF;
    font-size: 20px;
    font-weight: 600;
    border-radius: 100vh;
}
@media screen and (max-width: 768px) {
    .deadline_ttl {
        max-width: 140px;
        font-size: 18px;
        padding: 5px 20px;
        margin-bottom: 6px;
    }
}

.deadline_txt2 {
    font-size: 20px;
    font-weight: 600;
    color: #1f3357;
}
@media screen and (max-width: 768px) {
    .deadline_txt2 {
        margin-top: 10px;
        font-size: 16px;
        line-height: 1em;
    }
}

.deadline_txt {
    font-size: 50px;
    font-weight: 600;
    color: #fc7101;
}
@media screen and (max-width: 768px) {
    .deadline_txt {
        margin-top: 10px;
        font-size: 32px;
        line-height: 1em;
    }
}
.date {
    font-size: 26px;
    color: #1f3357;
}
@media screen and (max-width: 768px) {
    .date {
        font-size: 20px;
    }
}
.contArea {
    transform: translateY(50%)
}
/* ↓contArea */
.anchBtn {
    max-width: 720px;
    margin: -50px auto 0;
    display: flex;
    justify-content: space-around;
}
@media screen and (max-width: 550px) {
    .anchBtn {
        margin: -30px auto 0;
    }
}
@media screen and (max-width: 768px) {
    .anchBtn {
        justify-content: space-evenly;
    }
}
.anch {
    width: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #1f3357;
    font-size: 30px;
    font-weight: bold;
    text-decoration: none;
    padding: 10px 0;
    background: #faf33b;
    border-radius: 16px;
    border: 3px solid #1f3357;
    box-shadow: 4px 4px #56dcff;
    transition: 0.3s;
}
@media screen and (max-width: 550px) {
    .anch {
        width: 160px !important;
        padding: 15px 0;
        box-shadow: 4px 4px #56dcff;
    }
}
@media screen and (max-width: 768px) {
    .anch {
        max-width: 260px;
        padding: 15px 0;
        box-shadow: 4px 4px #56dcff;
    }
}
@media screen and (max-width: 350px) {
    .anch {
        max-width: 130px;
        padding: 6px 0;
        border: 2px solid #1f3357;
        box-shadow: 4px 4px #56dcff;
    }
}
@media screen and (max-width: 550px) {
    .anch_txt {
        font-size: 16px !important;
    }
}
@media screen and (max-width: 768px) {
    .anch_txt {
        font-size: 24px;
    }
}
.anch span {
    font-size: 22px;
}
@media screen and (max-width: 550px) {
    .anch span {
        font-size: 12px !important;
    }
}
@media screen and (max-width: 768px) {
    .anch span {
        font-size: 18px;
    }
}
.anchBtn li .anch:hover {
    transform: translate3d(0px, 8px, 0);
    box-shadow: none;
}
/* ↓firstArea */
#firstArea {
    background-color: #afefff;
    margin: 0 auto;
    text-align: center;
}
@media screen and (max-width: 768px) {
    #firstArea {
        margin-bottom: 60px;
    }
}
@media screen and (max-width: 500px) {
    .expBox {
        flex-direction: column-reverse;
        justify-content: center;
    }
}
.firstBox {
    margin-bottom: 80px;
}
.bubbleBox {
    display: flex;
    align-items: center;
    padding-top: 136px;
    padding-left: 40px;
    padding-right: 40px;
}
@media screen and (max-width: 1000px) {
    .bubbleBox {
        padding-top: 100px;
    }
}
@media screen and (max-width: 750px) {
    .bubbleBox {
        padding-top: 80px;
        padding-left: 5px;
        padding-right: 5px;
    }
}
@media screen and (max-width: 550px) {
    .bubbleBox {
        flex-direction: column;
        padding-top: 70px;
    }
}
.bubble_exp {
    font-size: 28px;
    color: #1f3357;
    line-height: 1.8em;
    padding: 0 20px;
    text-justify: inter-ideograph;
    align-items: center;
    white-space: nowrap;
    margin: 0 auto;
}
@media screen and (max-width: 1000px) {
    .bubble_exp {
        font-size: 22px;
        line-height: 2em;
        padding: 0 15px;
    }
}
@media screen and (max-width: 750px) {
    .bubble_exp {
        font-size: 18px;
        line-height: 1.8em;
        padding: 0 10px;
    }
}
@media screen and (max-width: 550px) {
    .bubble_exp {
        font-size: 5vw;
        line-height: 1.8em;
        padding: 10px 10px;
    }
}
@media screen and (max-width: 400px) {
    .bubble_exp {
        font-size: 5vw;
        line-height: 2em;
    }
}
.bubble_exp span {
    font-size: 42px;
}
@media screen and (max-width: 1000px) {
    .bubble_exp span {
        font-size: 36px;
    }
}
@media screen and (max-width: 750px) {
    .bubble_exp span {
        font-size: 28px;
    }
}
@media screen and (max-width: 550px) {
    .bubble_exp span {
        font-size: 7vw;
    }
}
@media screen and (max-width: 400px) {
    .bubble_exp span {
        font-size: 8vw;
    }
}
.bubbleBox:before {
    content: url("../img/taxi1.png");
}
@media screen and (max-width: 1000px) {
    .bubbleBox:before {
        content: '';
        width: 140px;
        height: 60px;
        background-image: url(../img/taxi1.png);
        background-size: contain;
        background-repeat: no-repeat;
    }
}

.bubbleBox:after {
    content: url("../img/taxi2.png");
}
@media screen and (max-width: 1000px) {
    .bubbleBox:after {
        content: '';
        width: 140px;
        height: 60px;
        background-image: url("../img/taxi2.png");
        background-size: contain;
        background-repeat: no-repeat;
    }
}

.first_copy {
    margin: 50px 0;
}
@media screen and (max-width: 768px) {
    .first_copy {
        width: 350px;
        margin: 50px 0 10px 0;
    }
}
.exp_txt {
    text-align: justify;
    max-width: 740px;
    margin: 0 auto;
    font-size: 20px;
    font-weight: 600;
    color: #000000;
}
@media screen and (max-width: 768px) {
    .exp_txt {
        font-size: 16px;
        font-weight: 600;
        line-height: 2.2rem;
        margin: 20px 10px 0 10px;
    }
}
.exp_1 {
    padding-bottom: 1em;
}
@media screen and (max-width: 768px) {
    .exp_1 {
        padding-bottom: 0.2em;
    }
}
.exp_2 {
    line-height: 2em;
}
@media screen and (max-width: 768px) {
    .exp_2 {
        line-height: 2.2em;
    }
}
.pointArea1 {
    max-width: 920px;
    margin: 0 auto;
}
.pointArea1 li {
    position: relative;
    background-color: #FFFFFF;
    border: 4px solid #1f3357;
    border-radius: 10px;
    padding: 50px 60px 20px;
    margin: 0 0 60px 0;
}
@media screen and (max-width: 768px) {
    .pointArea1 li {
        padding: 40px 30px 10px;
        margin-bottom: 60px;
        margin-top: -20px;
    }
}
.point_h {
    position: absolute;
    max-width: 270px;
    background: repeating-linear-gradient(-45deg, #2f4163, #2f4163 12px, #1f3357 0, #1f3357 32px);
    border-radius: 50px;
    padding: 8px 0;
    font-size: 20px;
    color: #FFFFFF;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -5%;
    left: 0;
    right: 0;
    margin: 0 auto;
}
@media screen and (max-width: 768px) {
    .point_h {
        top: -6%;
        left: 0;
        right: 0;
        margin: 0 auto;
        padding: 5px 0;
        font-size: 18px;
    }
}
@media screen and (max-width: 700px) {
    .point_h {
        top: -5%;
    }
}
@media screen and (max-width: 550px) {
    .point_h {
        top: -4%;
    }
}
@media screen and (max-width: 400px) {
    .point_h {
        top: -3%;
    }
}
.point_h.h02 {
    top: -9%;
}
@media screen and (max-width: 768px) {
    .point_h.h02 {
        top: -6%;
    }
}
.point_ttl {
    text-align: justify;
    text-justify: inter-ideograph;
    color: #fc7101;
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
    .point_ttl {
        font-size: 20px;
        letter-spacing: -0.02em;
    }
}
.point_txt {
    text-align: justify;
    text-justify: inter-ideograph;
    color: #000000;
    margin: 1.6em 0;
    line-height: 2em;
}
.result_banner {
    padding: 20px 0 70px 0;
}

@media screen and (max-width: 768px) {
    .result_banner {
        padding: 0 0 30px 0;
        margin-top: -40px;
    }
}
.result_banner p {
    font-weight: 600;
    color: #1f3357;
    line-height: 2.4em;
}
.result2022 {
    font-size: 20px;
}
@media screen and (max-width: 768px) {
    .result2022 {
        font-size: 16px;
    }
}
.result2022 span {
    font-size: 16px;
}
@media screen and (max-width: 768px) {
    .result2022 span {
        font-size: 14px;
    }
}
.result_banner img{
    width:320px;
}
.result_banner a:hover{
    opacity: 0.5 ;
}


/* ↓secondArea */
#secondArea {
    margin: 0 auto;
    text-align: center;
    padding: 60px 0 90px 0;
}
@media screen and (max-width: 768px) {
    #secondArea {
        padding: 30px 0 30px;
    }
}
.tax_h2 {
    font-size: 40px;
    color: #1f3357;
}
@media screen and (max-width: 768px) {
    .tax_h2 {
        font-size: 30px;
        color: #1f3357;
    }
}
.pointArea2 {
    max-width: 920px;
    position: relative;
    background-color: #FFFFFF;
    border: 4px solid #fc7101;
    border-radius: 10px;
    padding: 50px 80px 0 80px;
    margin: 60px 10px 0 10px;
}
@media screen and (max-width: 768px) {
    .pointArea2 {
        padding: 40px 25px 0px 35px;
        margin: 30px 0 0;
    }
}
.point_h2 {
    position: absolute;
    max-width: 270px;
    background: repeating-linear-gradient(-45deg, #fc7f1b, #fc7f1b 12px, #fc7101 0, #fc7101 32px);
    border-radius: 50px;
    padding: 8px 0;
    font-size: 18px;
    color: #FFFFFF;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
    top: -6%;
    left: 0;
    right: 0;
    margin: 0 auto;
}
@media screen and (max-width: 768px) {
    .point_h2 {
        font-size: 18px;
        padding: 5px 0 5px 0px;
        top: -5%;
        left: 0;
        right: 0;
        margin: 0 auto;
    }
}
@media screen and (max-width: 400px) {
    .point_h2 {
        top: -3%;
    }
}
.caution_list li {
    text-align: justify;
    text-justify: inter-ideograph;
    color: #000000;
    font-size: 18px;
    margin-bottom: 20px;
    text-indent: -1em;
}
@media screen and (max-width: 768px) {
    .caution_list li {
        font-size: 16px;
        margin: 0px 10px 10px 10px;
    }
}
.caution_list li .bullet {
    color: #fc7101;
    font-size: 14px;
}
@media screen and (max-width: 768px) {
    .caution_list li .bullet {
        font-size: 12px;
    }
}
.car1 {
    padding-left: 88%;
}
@media screen and (max-width: 768px) {
    .car1 {
        padding-left: 80%;
    }
}
.dtlTbl {
    border-top: #1f3357 1px solid;
    margin: 30px 0;
}
.dtlTbl tr {
    border-bottom: #1f3357 1px solid;
}
.dtlTbl th {
    padding: 15px 50px 15px 0;
    text-align: left;
    width: 260px;
    line-height: 1.5;
    color: #1f3357;
    font-weight: 600;
}
@media screen and (max-width: 768px) {
    .dtlTbl th {
        width: 100%;
        display: inline-block;
        padding: 10px 3% 5px 3%;
        font-size: 16px;
        font-weight: 600;
    }
}
.dtlTbl td {
    text-align: justify;
    text-justify: inter-ideograph;
    padding: 15px 0;
    line-height: 1.8;
    color: #000000;
}
@media screen and (max-width: 768px) {
    .dtlTbl td {
        width: 100%;
        display: inline-block;
        padding: 5px 3% 10px 3%;
    }
}
.dtlTbl li {
    text-align: justify;
    text-justify: inter-ideograph;
}
.table li .bullet {
    font-size: 12px;
}
@media screen and (max-width: 768px) {
    .table li .bullet {
        font-size: 8px;
    }
}
.bold {
    font-weight: 600;
}
.index_oac {
    margin-top: 1em;
}
.copyright1{
    text-indent: -1rem; 
    padding-left: 16px;
}
.copyright2{
    text-indent: -1rem; 
    padding-left: 16px;
}
/* ↓thirdArea */
#thirdArea {
    background-color: #afefff;
    margin: 0 auto;
    text-align: center;
    padding-top: 60px;
}
@media screen and (max-width: 768px) {
    #thirdArea {
        padding: 30px 0 0 0;
    }
}
.tax_h2_copy {
    font-size: 26px;
    font-weight: 600;
    color: #1f3357;
}
@media screen and (max-width: 768px) {
    .tax_h2_copy {
        font-size: 18px;
    }
}
.tax_h2_copy span {
    font-size: 30px;
}
@media screen and (max-width: 768px) {
    .tax_h2_copy span {
        font-size: 20px;
    }
}
.app_formBox {
    max-width: 920px;
    margin: 0 auto;
    position: relative;
    background-color: #FFFFFF;
    border: 4px solid #1f3357;
    border-radius: 10px;
    padding: 50px 80px 0 80px;
    margin-top: 30px;
    margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
    .app_formBox {
        padding: 30px 20px 0px 30px;
        margin: 20px 0;
    }
}
.form_list {
    color: #000000;
    font-size: 18px;
    margin-bottom: 20px;
    text-align: justify;
    text-justify: inter-ideograph;
}
.form_list li {
    margin-bottom: 20px;
    text-indent: -1rem;
}
@media screen and (max-width: 768px) {
    .form_list li {
        font-size: 16px;
        margin: 0px 10px 10px 10px;
    }
}
.form_list li .bullet {
    font-size: 14px;
}
@media screen and (max-width: 768px) {
    .form_list li .bullet {
        font-size: 12px;
    }
}
.form_notes {
    text-align: justify;
    text-justify: inter-ideograph;
    color: #000000;
    font-size: 14px;
    text-indent: -1rem;
    margin-bottom: 40px;
}
@media screen and (max-width: 768px) {
    .form_notes {
        text-indent: -1rem;
        padding-left: 10px;
        padding-right: 10px;
    }
}
.formBox_btn {
    margin: 50px 20px;
}
@media screen and (max-width: 768px) {
    .formBox_btn {
        margin: -20px 10px 30px 0;
    }
}
.form_btn {
    display: block;
    color: #FFFFFF;
    font-weight: 600;
    font-size: 28px;
    text-decoration: none;
    background: #fc7101;
    border-radius: 100vh;
    padding: 30px 50px;
    box-shadow: 8px 8px #1f3357;
    transition: 0.3s;
}
@media screen and (max-width: 800px) {
    .form_btn {
        position: relative;
        display: block;
        width: 100%;
        font-size: 18px;
        padding: 10px 12px 12px 12px;
        box-shadow: 6px 6px #1f3357;
        margin: 0 auto;
        line-height: 1.4em;
    }
}
.form_btn img {
    margin-right: 10px;
}
@media screen and (max-width: 800px) {
    .form_btn img {
        height: 22px;
        margin: 5px 0;
    }
}
@media screen and (max-width: 800px) {
    .form_btn span {
        display: block;
    }
}
.form_btn:hover {
    position:relative;
    transform: translate3d(8px, 8px, 0);
    box-shadow: none; 
}
@media screen and (max-width: 800px) {
  .form_btn:hover {
      position:relative;
    transform: translate3d(6px, 6px, 0);
    box-shadow: none;
}  
}

.car2 {
    padding-right: 84%;
}
@media screen and (max-width: 768px) {
    .car2 {
        padding-right: 80%;
    }
}
@media screen and (max-width: 768px) {
    .third_deadlineArea {
        padding-top: 6px;
        padding-bottom: 50px;
    }
}
/* ↓contact */
.contact {
    background-color: #fbf43c;
    color: #000000;
}
.contArea2 {
    display: flex;
    padding: 30px 20px 30px 20px;
}
@media screen and (max-width: 768px) {
    .contArea2 {
        flex-direction: column;
        padding: 30px 20px 10px 20px;
    }
}
.contArea2 h2 {
    font-size: 20px;
}
@media screen and (max-width: 768px) {
    .contArea2 h2 {
        font-size: 16px;
    }
}
.contArea2 p {
    font-size: 16px;
    margin-left: 20px;
    padding-left: 20px;
    border-left: 1px solid #000000;
}
@media screen and (max-width: 768px) {
    .contArea2 p {
        font-size: 14px;
        border-top: 1px solid #000000;
        border-left: none;
        margin: 8px 0;
        padding: 10px 0;
    }
}
.contArea2 a {
    color: #000000;
}
.footer {
    font-size: 14px;
    text-align: center;
    padding: 15px 0;
    color: #1f3357;
}