@charset "utf-8";

/* CSS Document */

html {
	scroll-behavior: smooth;
  }

body {
    color: #252525;
    font-family:
        'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', メイリオ, Meiryo, 'MS PGothic', 'MS UI Gothic', Helvetica, Arial, sans-serif;
    line-height: 1.6;
    background: #ffffff;
    background-size: cover;
    font-size: 16px;
}


@media screen and (max-width: 1200px) {

    /* 表示領域が1000px以下の場合に適用するスタイル */
    body {
        font-size: 1.4vw;
    }

}

@media screen and (max-width: 700px) {

    /* 表示領域が700px以下の場合に適用するスタイル */
    body {
        font-size: 16px;
    }

}


@media screen and (min-width: 700px) {

    .pc_none,
    .pcnone {
        display: none;
    }
}

@media screen and (max-width: 700px) {

    .sp_none,
    .spnone {
        display: none;
    }
}

/*=========================================================================

　　　　↓ヘッダー↓

===========================================================================*/
header {
    width: 100%;
    text-align: center;
}

.header_in {
    position: relative;
    margin: 0 auto;
    max-width: 1000px;
}

.top_head_bar01 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    padding: 1em 0.5em 0.8em;
    align-items: center;
}

.top_head_bar02 {
    background: url(../img/top_head_bar_back.png);
    padding: 0.8em 1em;
}

.mv_wrap {
    background: url(../img/back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.mv {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-start;
}

.mv_left {
    padding: 10% 1% 0% 0%;
    width: 121%;
    box-sizing: border-box;
}

.mv_right {
    padding: 2% 0.5% 1%;
    box-sizing: border-box;
    max-width: 455px;
}

a.alliance {
    /*color: #545454;
    border: 1.5px solid #545454;*/
    padding: 1em;
    font-weight: bold;
    cursor: pointer;
    transition: .2s cubic-bezier(0.45, 0, 0.55, 1);
    font-size: 80%;
    display: inline-block;
    margin-left: 3em;
}

a.alliance:hover {
    color: #fff;
    background:#545454;
}

@media screen and (max-width: 1000px) {
    .mv_right {
        max-width: 47%;
    }
}

@media screen and (max-width: 700px) {

    /* 表示領域が700px以下の場合に適用するスタイル */
    .mv {
        display: flex;
        flex-direction: column;
        align-content: center;
        align-items: center;
        flex-wrap: nowrap;
        justify-content: center;
    }

    .mv_left {
        padding: 0;
        width: 100%;
    }

    .mv_right {
        max-width: 100%;
        padding: 0;
    }

    .head_left,
    .head_right {
        width: 47.6%;
    }
	
	a.alliance {
    padding: 0.4em 0.6em;
    font-size: 50%;
    margin-left: 50px;
	}
}

/*=========================================================================

　　　　↓全体レイアウト↓

===========================================================================*/
#contents {
    width: 100%;
    background-color: #e7decf;
}


p {
    white-space: pre-line;
}

.text {
    margin: 0 6%;
}

.max95 {
    max-width: 95%;
    margin: 0 auto;
}

@media screen and (max-width: 435px) {

    /* 表示領域が435px以下の場合に適用するスタイル */
    .text {
        margin: 0 5%;
    }
}


.bord {
    border-radius: 6px;
    background-color: rgb(206, 154, 96);
    box-shadow: 1.414px 1.414px 6px 0px rgba(0, 0, 0, 0.64);
    padding: 1em 1.3% 0.5em;
    width: 100%;
    box-sizing: border-box;
}

.bord_in {
    background-color: rgb(255, 255, 255);
    box-shadow: 0.707px 0.707px 5px 0px rgba(0, 0, 0, 0.32);
    padding: 0% 2.8% 1em;
}

.bord_clip {
    margin-top: -1em;
}

.bord p {
    font-size: 78%;
    text-align: left;
    line-height: 1.5em;
    padding: 2px 0;
}

.bord p.center {
    text-align: center;
}

.simpleform select,
.simpleform input:not(input[type="radio"], input[type="image"]) {
    padding: 0.3em 0.8em;
    height: 2.2em;
    line-height: 1;
    border-radius: 0.3em;
    width: 98%;
    margin: 0 auto;
    display: block;
    text-indent: 1.4em;
    box-sizing: border-box;
    font-weight: bold;
}

input[type="tel"]::placeholder {
    color: #545454;
    text-indent: 1.7em;
}
input[type="email"]::placeholder {
    color: #545454;
}

input[type="text"]::placeholder {
    color: #545454;
    text-indent: 1.7em;
    background: white;
}

.simpleform select {
    border: 1px solid #ccc;
    background-image: linear-gradient(#fff, #eaeaea);
}

input[type="image"] {
    border: none;
    width: 96%;
    margin: 0 auto;
    padding: 0;
}

.bord03 input[type="image"] {
    max-width: 523px;
}

.radio {
    text-align: left;
    text-indent: 2.8em;
}
.radio .form_num {
    text-indent: 0;
}

.label-first{
    margin-left: 13%;
}

.label-third{
    margin-left: 18%;
}

@media screen and (max-width: 700px) {
    .label-first,.label-second{
        margin-left: 46px;
    }
}

.label-span{
    margin-left: 4px;
}

@media screen and (max-width: 700px) {
    .label-span{
        margin-left: 0;
    }
}

.form_num_wrap {
    position: relative;
    margin-bottom: 0.2em;
    border-radius: 0.3em;
    overflow: hidden;
}

.form_num {
    position: absolute;
    background: #004b9c;
    color: #fff;
    width: 1.6em;
    height: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}

.form_num_wrap:nth-child(2) .form_num {
    text-indent: 0em;
}

.form_num::after {
    content: "";
    position: absolute;
    /* width: 0;
    height: 0;
    border-style: solid;
    border-width: 1.1em 0 1.1em 0.5em;
    border-color: transparent transparent transparent #004b9c;
    right: -0.5em; */

    width: 2em;
    height: 100%;
    background: #004b9c;
    clip-path: polygon(0 0, 0% 100%, 35% 50%);
    right: -1.98em;
}

.form_num.ninni {
    background: #adadad;
}

.form_num.ninni::after {
    border-color: transparent transparent transparent #adadad;
}




.ttl {
    width: 100%;
    margin: 6rem 0 4rem;
    background-repeat: repeat-x;
    background-size: contain;
}

.ttl_in {
    margin: 0 auto;
    border-bottom: solid 3px #ffc6c7;
    position: relative;
    width: fit-content;
    display: inline-flex;
    line-height: 1.6;
    padding-bottom: 0.5em;
}

.ttl_in:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #da0001;
    bottom: -3px;
    width: 10%;
}

.ttl_text {
    width: 100%;
    margin: 3em 0 3em;
    padding: 0.5em 1em 0;
    color: #353535;
    text-align: center;
    box-sizing: border-box;
    font-weight: bold;
}

@media screen and (max-width: 435px) {

    /* 表示領域が320px以下の場合に適用するスタイル */
    .ttl_text {
        width: 100%;
        margin: 2em 0 1em;
        padding: 1em 0.5em;
        text-align: center;
    }

    .ttl {
        width: 100%;
        margin: 2.5em 0 2em;
        background-repeat: repeat-x;
        background-size: contain;
    }

    
}


/*=========================================================================

　　　　↓sec↓

===========================================================================*/

.tyui {
    max-width: 780px;
    text-align: center;
    margin: 1em auto;
}

.tyui p {
    background: #fff9e2;
    border: solid 1px #f87434;
    padding: 1em;
}

.ore_back {
    background: url(../img/back01.jpg);
    background-repeat: repeat;
    text-align: center;
    padding: 2em 3%;
}

@media screen and (max-width: 435px) {
.ore_back {
    background: url(../img/back01.jpg);
    background-repeat: repeat;
    text-align: center;
    padding: 1em 3%;
}}



.sec01 .text {
    max-width: 840px;
    margin: 0 auto;
}

.sec01 .text p {
    padding: 2em 3em;
    background-color: #fff;
    text-align: left;
}

@media screen and (max-width: 700px) {
    .sec01 .text p {
        padding: 1em 1em;
    }

    
}

.mm01{
    margin-top: 30px;
    margin-bottom: 30px;
}

@media screen and (max-width: 435px) {
    .mm01 {
        margin-bottom: 30px;
        margin-top: 0px;
    }
    
}


.ore_back02 {
    background: url(../img/back02.png);
    background-repeat: repeat;
    text-align: center;
    padding: 2em 3%;
}

.ao_back01 {
    background-color: #b0ebfd;
    text-align: center;
    padding: 2em 3%;
}



.siro_back01 {
    background-color: #fff;
    text-align: center;
    overflow: hidden;
    width: 100%;
}

.siro_back01_in {
    display: inline-block;
    max-width: 950px;
    position: relative;
}

.cv_btn01 {
    text-align: center;
    display: block;
    position: absolute;
    bottom: 6%;
    left: 14%;
    max-width: 72%;
}


.content02 {
    max-width: 1200px;
    margin: 2em auto 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

.left_col {
    max-width: 840px;
}

.right_col {
    max-width: 345px;
    position: sticky;
    top: 0;
}


@media screen and (max-width: 700px) {

    /* 表示領域が700px以下の場合に適用するスタイル */
    .left_col {
        max-width: 100%;
    }

    .right_col {
        display: none;
    }
}

.bord.bord02 {
    margin-left: 1em;
}

section.sec05 {
    overflow: hidden;
    border-radius: 1em;
    background: #fff;
    margin-bottom: 1em;
}

.sec05 .elem_wrap {
    max-width: 775px;
    margin: 1.5em 3.8% 1.5em;
}

.sec05 .elem_wrap .elem01 {
    position: relative;
    margin-bottom: 1.8em;
    text-align: left;
}

.sec05 .elem_wrap .elem01 .item01 {
    position: absolute;
    left: 12%;
    top: 49%;
    width: 72%;
}

@media screen and (max-width: 700px) {
    .sec05 .elem_wrap .elem01 .item01 {
        position: static;
        left: 0;
        top: 0;
        width: 89%;
        margin-top: -0.9%;
        margin-left: 1.3%;
        background: #fffbdf;
        padding: 5%;
        border-radius: 0 0 1em 1em;
    }
}

section.sec06 {
    overflow: hidden;
    border-radius: 1em;
    background: #fff;
    margin-bottom: 1em;
}

.sec06 .elem_wrap {
    max-width: 824px;
    margin: 1.5em 0.9% 1.5em;
}

.sec06 .elem_wrap .elem {
    position: relative;
    margin-bottom: 1em;
}

.sec06 .elem_wrap .elem01 .item01 {
    position: absolute;
    left: 58%;
    top: 44%;
    margin-right: 1.5em;
    text-align: left;
}

.sec06 .elem_wrap .elem02 .item01 {
    position: absolute;
    left: 58%;
    top: 42%;
    margin-right: 1.5em;
    text-align: left;
}


.sec06 .elem_wrap .elem03 .item01 {
    position: absolute;
    left: 4%;
    top: 83%;
    margin-right: 1.5em;
    margin-left: 1.5em;
    text-align: left;
}

@media screen and (max-width: 700px) {
    .sec06 .elem_wrap .elem01 .item01 {
        position: static;
        left: 0;
        top: 0;
        text-align: left;
        width: 91%;
        margin: 1em auto 0;
    }

    .sec06 .elem_wrap .elem02 .item01 {
        position: static;
        left: 0;
        top: 0;
        text-align: left;
        width: 91%;
        margin: 1em auto 0;
    }

    .sec06 .elem_wrap .elem03 .item01 {
        position: static;
        left: 0;
        top: 0;
        text-align: left;
        width: 91%;
        margin: 1em auto 0;
    }
}

section.sec07 {
    overflow: hidden;
    border-radius: 1em;
    margin-bottom: 1em;
    padding-top: 2em;
}

.sec07 .elem_wrap {
    max-width: 790px;
    padding: 1.5em 2.9% 1.5em;
    background: #fff;
    border-radius: 0 0 2em 2em;
    margin-bottom: 1em;
}

.sec07 .elem_wrap .elem {
    position: relative;
    margin-bottom: 2.3em;
}

.sec07 .elem_wrap .elem01 .item01 {
    position: absolute;
    left: 4.2%;
    top: 37%;
    margin-right: 1.5em;
    text-align: left;
    padding-left: 7.7%;
    width: 47%;
    height: 64%;
    background-image: url(../img/nagaao.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    padding-bottom: 1.7em;
    padding-top: 0.1em;
    margin-top: -0.1em;
}
/* 
.sec07 .elem_wrap .elem01 .item01::after {
    content: "";
    width: 1.7em;
    height: 1.7em;
    background-image: url(../img/aoya.png);
    position: absolute;
    bottom: -19%;
    left: -4.3%;
    background-size: auto;
    background-repeat: no-repeat;
} */

.sec07 .elem_wrap .elem02 .item01 {
    position: absolute;
    left: 4.2%;
    top: 38%;
    margin-right: 1.5em;
    text-align: left;
    padding-left: 7.7%;
    width: 47%;
    height: 64%;
    background-image: url(../img/nagaore.png);
    background-position: bottom left;
    background-repeat: no-repeat;
    padding-bottom: 1.7em;
    padding-top: 0.1em;
    margin-top: -0.1em;
}

/* .sec07 .elem_wrap .elem02 .item01::after {
    content: "";
    width: 1.7em;
    height: 1.7em;
    background-image: url(../img/oreya.png);
    position: absolute;
    bottom: -19%;
    left: -4.3%;
    background-size: auto;
    background-repeat: no-repeat;
} */

.sec07 .elem_wrap .elem02.last .item01 {
    /* border-left: solid 8px rgb(245 110 11 / 0%); */
    background:none;
}

.sec07 .elem_wrap .elem02.last .item01::after {
    display: none;
}

.sec07 .elem_wrap .elem02.last {
    margin-bottom: 1em;
}

@media screen and (max-width: 435px) {
.sec07 .elem_wrap .elem02.last {
    margin-bottom: -2em;
}}


@media screen and (max-width: 700px) {
    .sec07 .elem_wrap .elem01 .item01 {
        position: static;
        left: 0;
        top: 0;
        margin-right: 0;
        text-align: left;
        border-left: none;
        padding-left: 9.7%;
        width: 83%;
        height: 64%;
        margin-left: 3.6%;
        background-image: url(../img/nagaao.png);
        background-position: bottom left;
        background-repeat: no-repeat;
        padding-bottom: 1em;
        padding-top: 0.8em;
        margin-top: -0.5em;
    }

    .sec07 .elem_wrap .elem02 .item01 {
        position: static;
        left: 0;
        top: 0;
        margin-right: 0;
        text-align: left;
        border-left: none;
        padding-left: 9.7%;
        width: 83%;
        height: 64%;
        margin-left: 3.6%;
        background-image: url(../img/nagaore.png);
        background-position: bottom left;
        background-repeat: no-repeat;
        padding-bottom: 1em;
        padding-top: 0.8em;
        margin-top: -0.5em;
    }


}


section.sec08 {
    border-radius: 1em;
    margin-bottom: 2em;
    padding-top: 2em;
}

.sec08 .elem_wrap {
    max-width: 748px;
    padding: 1.5em 5.4% 1.5em;
    border-radius: 0 0 2em 2em;
    background: #fff;
}

.sec08 .elem_wrap.back_g {
    background: #f3f3f3;
}

.sec08 .elem_wrap.elem_wrap01 {
    border-radius: 0;
}

.sec08 .elem_wrap.elem_wrap02 {
    padding-top: 0;
}

.sec08 .elem_wrap .elem {
    position: relative;
    margin-bottom: 1.1em;
}

.sec08 .elem_wrap .elem01 .item01 {
    position: absolute;
    left: 31.4%;
    top: 39.1%;
    text-align: left;
    width: 64%;
}

.sec08 .elem_wrap .elem01 .item001 {
    position: absolute;
    left: 31.4%;
    top: 29.1%;
    text-align: left;
    width: 64%;
}


.sec08 .elem_wrap .elem02 .item01 {
    position: absolute;
    left: 4.4%;
    top: 47.1%;
    text-align: left;
    width: 68%;
}

.sec08 .elem_wrap .elem02 .item02 {
    position: absolute;
    left: 37.4%;
    top: 42.1%;
    text-align: left;
    width: 59%;
}

img.ya {
    margin-bottom: -2.6em;
}

@media screen and (max-width: 700px) {
    section.sec08 {
        padding-top: 0;
    }

    .sec08 .elem_wrap .elem01 .item01 {
        position: static;
        width: 72%;
        margin-left: 22%;
        padding: 0.6em;
        margin-top: -19%;
    }

    .sec08 .elem_wrap .elem01 .item001 {
        position: static;
        width: 72%;
        margin-left: 22%;
        padding: 0.6em;
        margin-top: -19%;
    }



    .sec08 .elem_wrap .elem {
        background: #fff;
    }

    .sec08 .elem_wrap .elem02 .item01 {
        position: static;
        width: 72%;
        margin-left: 2%;
        padding: 0.6em;
        margin-top: -2.2em;
    }

    .sec08 .elem_wrap .elem02 .item02 {
        position: static;
        width: 72%;
        margin-left: 22%;
        padding: 0.6em;
        margin-top: -14%;
    }

    .sec08 .elem_wrap .elem02 {
        background: #d1f3fd;
        border-radius: 1em;
    }
}


section.sec09 {
    border-radius: 1em;
    margin-bottom: 1em;
    padding-top: 2em;
}

.sec09 .elem_wrap {
    max-width: 840px;
    border-radius: 0 0 2em 2em;
    background: #fff;
}


.sec09 .elem_wrap .elem {
    position: relative;
    margin-bottom: 1.1em;
}

.sec09 .elem_wrap .elem01 .item01 {
    position: absolute;
    left: 6.9%;
    top: 30.6%;
    text-align: left;
    width: 66%;
}

section.sec10 {
    border-radius: 1em;
    margin-bottom: 1em;
    padding-top: 2em;
}

@media screen and (max-width: 700px) {
    .sec09 .elem_wrap .elem {
        background: #fff;
    }

    .sec09 .elem_wrap .elem01 .item01 {
        position: static;
        width: 90%;
        margin-left: 2%;
        padding: 0.6em;
        margin-top: -14%;
    }
}

.sec10 .elem_wrap {
    border-radius: 1em;
    background: #fff;
    overflow: hidden;
}


section.sec11 {
    border-radius: 1em;
    margin-bottom: 1em;
    overflow: hidden;
}

.sec11 .elem_wrap {
    border-radius: 0 0 1em 1em;
    background: #fff;
    overflow: hidden;
    padding: 3%;
}


@keyframes tenmetu {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-webkit-keyframes tenmetu {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

.tenmetu {
    animation: tenmetu 0.5s linear 0s infinite alternate;
}

.taiki {
    position: relative;
    max-width: 719px;
    margin: 0 auto 1.3em;
}

.taiki_img {
    position: absolute;
    top: 9%;
    left: 0%;
    width: 48%;
}

@media screen and (max-width: 700px) {
    .taiki_img {
        top: 6%;
        left: 0%;
        width: 56%;
    }
}

/*=========================================================================

　　　　↓テーブル↓

===========================================================================*/
table {
    border: solid 1px #DADADA;
}

caption {
    background: #3e3e3e;
    color: #fff;
    padding: .5em;
    border-radius: 5px 5px 0 0;
}

table tr {
    border-bottom: solid 1px #ddd;
}

table th {
    border-right: solid 1px #ddd;
    font-weight: 400;
    background: #3E3E3E;
    padding: 1em 1em;
    color: #fff;
    width: 23%;
}

table td {
    padding: 0.5em;
    /* text-align: right; */
    border: solid 1px #797979;
}

@media screen and (max-width: 435px) {

    /* 表示領域が435px以下の場合に適用するスタイル */
    table:not(.table_ichiran),
    table:not(.table_ichiran) tr,
    table:not(.table_ichiran) th,
    table:not(.table_ichiran) td,
    table:not(.table_ichiran) tbody,
    caption {
        width: 100%;
        display: block;
        box-sizing: border-box;
    }

    table th {
        padding: .5em;
        border: 0;
    }

}

#send-table {
    border-left: 1px solid #dcdcc1;
    border-top: 1px solid #dcdcc1;
    font-size: 100%;
}

#send-table th {
    background-color: #656565;
    text-align: left;
    border-right: 1px solid #dcdcc1;
    border-bottom: 1px solid #dcdcc1;
    color: #fff;
}

#send-table td {
    background-color: #fff;
    border-right: 1px solid #dcdcc1;
    border-bottom: 1px solid #dcdcc1;
}

#send-table caption {
    background: #7FBFFF;
    padding: 8px 12px;
    margin: 5px 0;
    color: #fff;
    font-size: 130%;
    font-weight: 700;
}

.hissu {
    background: #fffc80;
    border-radius: 3px;
    padding: 0 3px;
    font-size: 80%;
    color: #080808;
}

/*=========================================================================

　　　　↓Q&A↓

===========================================================================*/
.qa {
    background: #fff;
}

.qa dl {
    border-radius: 5px;
    margin: 0 0 1rem;
}

.qa dt {
    background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/q01.jpg);
    background-position: left top;
    background-size: 1.3em;
    padding: 0 0 4px 2em;
    background-repeat: no-repeat;
    font-size: 1.2rem;
    font-weight: 700;
    border-bottom: solid 1px #d10014;
    margin: 0 0 .5rem;
}

.qa dd {
    background-image: url(https://s3-ap-northeast-1.amazonaws.com/j-i-s-sl/temp/img/a01.jpg);
    background-position: left top;
    background-size: 1.3em;
    padding: 0 0 1em 2em;
    background-repeat: no-repeat;
    margin: 0;
}

/*=========================================================================

　　　　↓画像系↓

===========================================================================*/

.right_pic {
    padding: 0 0 1rem 1rem;
    float: right;
}

.left_pic {
    padding: 0 1rem 1rem 0;
    float: left;
}

@media screen and (max-width: 600px) {

    /* 表示領域が600px以下の場合に適用するスタイル */
    .right_pic {
        padding: 0 0 1rem 1rem;
        float: right;
        width: 50%;
    }

    .left_pic {
        padding: 0 1rem 1rem 0;
        float: left;
        width: 50%;
    }
}

@media screen and (max-width: 435px) {

    /* 表示領域が435px以下の場合に適用するスタイル */
    .right_pic {
        padding: 0 0 1rem;
        float: none;
        width: 60%;
        display: block;
        margin: 0 auto;
    }

    .left_pic {
        padding: 0 0 1rem;
        float: none;
        width: 60%;
    }
}

.sankaku {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1rem 2rem 0;
    border-color: #d60000 transparent transparent;
    display: block;
    text-align: center;
    margin: 0 auto -1rem;
}

.movie {
    position: relative;
    width: 90%;
    margin: 0 auto;
    padding-top: 56.25%;
    border: solid 4px #bebebe;
    box-sizing: border-box;
}

.movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*=========================================================================

　　　　↓フォーム↓

===========================================================================*/
input {
    padding: 7px 8px;
    font-size: 100%;
    margin: 8px 0 6px;
    border-radius: 5px;
    border: solid 1px #A2A2A2;
}

input[type="submit"] {
    background-color: #5DC11A;
    box-shadow: 1px 2px 0 #149421;
    text-shadow: 0 -1px #149421;
    position: relative;
    padding: .5em 1em;
    border-radius: 5px;
    color: #FFF;
    font-weight: 700;
    text-decoration: none;
    border: solid 1px;
}

input[type="submit"]:hover {
    top: 3px;
    box-shadow: none;
    color: #fff;
}

label:hover {
    background: #FFEFB7;
    cursor: pointer;
    border-radius: 6px;
}

/*=========================================================================

　　　　↓レイアウト↓

===========================================================================*/

.space-between {
    display: flex;
    justify-content: space-between;
}

.space-around {
    display: flex;
    justify-content: space-around;
}

@media screen and (max-width: 700px) {

    .space-between {
        display: block;
    }

    .space-around {
        display: block;
        width: 83%;
        margin: 0 auto;
    }

}


/*=========================================================================

　　　　↓ボタン↓

===========================================================================*/
.submit {
    background-color: #48bb00;
    box-shadow: 0 8px 0 #399400;
    text-shadow: 0 -1px #007b15;
    position: relative;
    padding: .5em;
    border-radius: 5px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: .3em 1em 1.7rem;
    text-align: center;
    box-sizing: border-box;
}

.submit:active,
.submit:hover {
    top: 8px;
    box-shadow: none;
}

.submit02 {
    background-color: #dc8e00;
    box-shadow: 0 8px 0 #945a00;
    text-shadow: 0 -1px #a36900;
    position: relative;
    padding: .5em;
    border-radius: 5px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    margin: .3em 1em 1.7rem;
    text-align: center;
    box-sizing: border-box;
}

.submit02:active,
.submit02:hover {
    top: 8px;
    box-shadow: none;
}

.imgbtn {
    display: block;
    margin: 30px auto;
}

.head_btn01 {
    display: block;
    right: 0;
    color: #000;
    font-size: 32px;
    background: #208F02;
    padding: 1.5em 0;
}

/*=========================================================================

　　　　↓フッター↓

===========================================================================*/
footer {
    border-top: 1px solid #9a9a9a;
    width: 100%;
    padding: 1em;
    color: #5F5F5F;
    box-sizing: border-box;
}

.footer_in {
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 1em;
}

footer a {
    color: #3C3C3C;
}

footer a:hover {
    color: #aaa;
}

.page_top a {
    position: fixed;
    bottom: 10px;
    right: 10px;
    display: block;
    text-align: center;
    text-decoration: none;
    background: rgba(72, 187, 0, 0.83);
    color: #fff;
    padding: 0.5em;
    line-height: 1.2;
    width: 3.5em;
    height: 3.5em;
    border-radius: 6px;
}

.page_top a:hover {
    background: rgba(121, 121, 121, 0.7);
}



/*=========================================================================

　　　　↓リンク↓

===========================================================================*/
a img {
    -webkit-transition: .2s ease-in-out;
    -moz-transition: .2s ease-in-out;
    -o-transition: .2s ease-in-out;
    transition: .2s ease-in-out;
}

a img:hover {
    opacity: .7;
    filter: alpha(opacity=70);
}



.info_bar_01 {
    background: #fef8e7;
    max-width: 782px;
    margin: 0 auto 1%;
    box-sizing: border-box;
    border-radius: 0.4em;
    border: solid 1px #f8d05d;
    padding: 1em;
  }
  
  .info_bar_elem01 {
    margin: 0 auto 0.9em;
  }
  
  .info_bar_elem02 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-around;
  }
  
  .info_bar_elem02 a:nth-child(1) {
    margin-right: 0.5%;
  }
  
  .info_bar_elem02 a:nth-child(2) {
    margin-right: 0.5%;
  }
  
  
  
  .info_bar_02 {
    background: #fef8e7;
    max-width: 800px;
    margin: 4% auto 0;
    box-sizing: border-box;
    border-radius: 0.4em;
    padding: 4%;
  }
  
  .info_bar_02 .info_bar_elem02 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-around;
    align-items: flex-start;
  }
  
  .info_bar_02 .info_bar_elem02 a:nth-child(1) {
    margin-right: 0;
    margin-bottom: 1%;
  }
  
  .info_bar_02 .info_bar_elem01 {
    width: 100%;
    display: block;
    margin: 0 auto 1%;
  }
  
  
  
  .info_bar_03 {
    background: #fef8e7e8;
    width: 100%;
    box-sizing: border-box;
    padding: 2% 0.5% 1.7%;
    position: fixed;
    bottom: -400;
    z-index: 999999;
  }
  
  .info_bar_03 .info_bar_elem02 {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: space-around;
  }
  
  .info_bar_03 .info_bar_elem02 a:nth-child(1) {
    margin-right: 0.3%;
  }
  .info_bar_03 .info_bar_elem02 a:nth-child(2) {
    margin-right: 0.3%;
  }
  
  .info_bar_03 .info_bar_elem01 {
    width: 100%;
    display: block;
    margin: 0 auto 2%;
  }

  @keyframes flash {
	0%,100% {
	  opacity: 1;
	}
  
	50% {
	  opacity: 0.5;
	}
  }
.tenmetu{
  animation: /*flash 2.5s cubic-bezier(0.5, 0, 0.5, 1.0) infinite;*/ flash 1.4s cubic-bezier(0.5, 0, 0.5, 3.0) infinite;
}