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

body{
    margin: 0;
}

.sp{
    display: none;
}

.pc{
    display: inherit;
}


/*動き*/
.kv_fadein {
  opacity: 0;
  transform: translateY(20px);
}

.kv_fadein.animate {
  animation: kv_fadein 1s ease forwards;
}

@keyframes kv_fadein {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/**/
/* 新しく追加するふわふわアニメーション */
.kv_fadein.fuwafuwa {
    animation: fuwafuwa 3s ease-in-out infinite alternate;
    opacity: 1;
}

@keyframes fuwafuwa {
    0% {
        transform: translate(0, 0) rotate(0deg);
    }
    30% {
        transform: translate(0, 0) rotate(2deg);
    }
    70% {
        transform: translate(0, 0) rotate(0deg);
    }
    100% {
        transform: translate(0, 0) rotate(2deg);
  }
}
/**/

.fadein_element {
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
    transition: opacity 1s, visibility 1s, transform 1s;
}

.fadein_element_is_fadein {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
    left: 0;
    right: 0;
}

.shivering,
#about .wchance::before{
    animation: shivering 2s linear infinite;
}

@keyframes shivering{
    0%, 7% {
        transform: rotateZ(0);
    }
    15% {
        transform: rotateZ(-10deg);
    }
    20% {
        transform: rotateZ(5deg);
    }
    25% {
        transform: rotateZ(-5deg);
    }
    30% {
        transform: rotateZ(3deg);
    }
    35% {
        transform: rotateZ(-2deg);
    }
    40%, 100% {
        transform: rotateZ(0);
    }
}

/*buruburu-hover*/
.buruburu_hover:hover {
    display: block;
    animation: hurueru .1s  infinite;
}

@keyframes hurueru {
    0% {transform: translate(0px, 0px) rotateZ(0deg)}
    25% {transform: translate(1%, 0px) rotateZ(1deg)}
/*    50% {transform: translate(0px, 1px) rotateZ(0deg)}*/
/*    75% {transform: translate(1px, 0px) rotateZ(-1deg)}*/
    100% {transform: translate(0px, 0px) rotateZ(0deg)}
}

/* fuwafuwa */
@keyframes fuwafuwa-uesita {
  0%   { transform: translateY(-8px); }
  50%  { transform: translateY(8px); }
  100% { transform: translateY(-8px); }
}

@keyframes fuwafuwa-uesita2 {
  0%   { transform: translateY(8px); }
  50%  { transform: translateY(-8px); }
  100% { transform: translateY(8px); }
}



.fuwafuwa-uesita2 {
    animation: fuwafuwa-uesita2 3s linear infinite;
/*    animation-delay: 3s;*/
} 

/* fuwafuwa-uesita */
.fuwafuwa-uesita{
    animation: fuwafuwa-uesita 3s linear infinite;
} 

@keyframes fuwafuwa-uesita {
  0% { transform: translateY(0) }
  50% { transform: translateY(5px) }
  100% { transform: translateY(0) }
}

/*fuwafuwa*/
/*
.fuwafuwa{
  animation: fuwafuwa 3s infinite ease-in-out .8s alternate;
  display: inline-block;
  transition: 1.5s ease-in-out;
}
 
@keyframes fuwafuwa {
  0% {
    transform:translate(0, 0) rotate(-3deg);
  }
  50% {
    transform:translate(0, -7px) rotate(0deg);
  }
  100% {
    transform:translate(0, 0) rotate(3deg);
  }
}
*/

/*yurayura*/
.yurayura,
.fukidashi::after{
    transform-origin: center bottom;
    animation: yurayura 2s linear infinite;
}

@keyframes yurayura {
  0% , 100%{
      transform:translate(0, 0)  rotate(3deg);
  }
  50%{
      transform:translate(0, 0)  rotate(-3deg);
  }
}

/* slidein_shu_left */
.slidein_shu_left{
    opacity: 0;
    visibility: hidden;
    z-index: 0;
    position: relative;
}
.slidein_shu_left_move {
    animation: slidein_shu_left_move 3s 1;
    opacity: 1;
    visibility: visible;
}

@keyframes slidein_shu_left_move {
  0% {
    opacity: 0;
    transform: translateX(-1000px);
  }
  60% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* slidein_shu_right */
.slidein_shu_right{
    opacity: 0;
    visibility: hidden;
    z-index: 0;
    position: relative;
}
.slidein_shu_right_move {
    animation: slidein_shu_right_move 3s 1;
    opacity: 1;
    visibility: visible;
}

@keyframes slidein_shu_right_move {
  0% {
    opacity: 0;
    transform: translateX(1000px);
  }
  60% {
    opacity: 1;
    transform: translateX(0);
  }
}

/* slidein_shu_down */
.slidein_shu_down{
    opacity: 0;
    visibility: hidden;
    z-index: 0;
    position: relative;
}
.slidein_shu_down_move {
    animation: slidein_shu_down_move 3s 1;
    opacity: 1;
    visibility: visible;
}

@keyframes slidein_shu_down_move {
  0% {
    opacity: 0;
    transform: translateY(1000px);
  }
  60% {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes kurukuru{
  0%{ transform:rotateY(0);}
  100%{ transform:rotateY(360deg); }
}

/**/
/**/

#endbox{
    display: none;
}

/*共通*/
section#top{
    background: #FAF2E4;
    font-size: 20px;
    text-align: left;
    color: #454545;
    max-width: none;
    width: 100%;
    padding: 0;
    letter-spacing: 0.07em;
    word-break: break-all;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    line-height: 1.4;
}

.asterisk{
    text-indent: -1em;
    margin-left: 1em;
}

.asterisk::before{
    content: '※';
}

.t-c{
    text-align: center;
}

#top section{
    padding: 100px 0;
    margin: 0 auto;
}

#top section .inner{
    max-width: 930px;
    width: 86.8%;
    margin: 0 auto;
}

#top img{
    width: 100%;
}

#top a{
    display: block;
    width: 100%;
    height: 100%;
}

.section_wrapper{
    max-width: 1108px;
    width: 86.67%;
    margin: 0 auto;
}

.font_ki{
    font-family: fot-chiaro-std, sans-serif;
}

.section_title{
    margin-bottom: 55px;
}

/*nav*/
#top #nav{
    font-size: 18px;
    letter-spacing: 0.13em;
    padding: 30px 0 90px 0;
}

#nav ul{
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    background: #fff;
    max-width: 931px;
    width: 90%;
    border-radius: 10px;
    box-shadow: 2px 5px 5px rgba(24,115,181,0.3);
    padding: 20px 50px;
}


#nav ul li{
    position: relative;
}

/*
#nav ul li:first-child{
     border-left: 1px solid #fff;
}
*/

#nav ul li a::after{
    content: '';
    background: url(../img/nav.png);
    background-size: contain;
    width: 8px;
    height: 8px;
    display: inline-block;
    margin: auto auto 2px 9px;
}

#nav ul li:hover a{
    opacity: 0.6;
}

/*mv kv*/
#top section#kv{
    padding: 0;
}

/*about*/
section#about{
    padding: 0 0 130px 0;
    text-align: center;
    color: #552906;
}

.about_text{
    font-size: 22px;
    line-height: 1.9;
}

.about_text .min{
    font-size: 16px;
}

.about_text .red{
    color: #D70A1D;
}

.about_text .fwb{
    font-weight: 900;
}

.about_text .big{
    font-size: 28px;
}

/*entry*/
section#entry,
section#entry2{
    padding: 0 0 90px 0;
}

/*
#entry,
#entry2{
    position: relative;
}
*/

#entry .section_title,
#entry2 .section_title{
    max-width: 472px;
    width: 100%;
    margin: auto auto 60px auto;
}

.entry_box{
    background: #fff;
    max-width: 828px;
    width: 100%;
    margin: 0 auto;
    padding: 60px 30px 40px 30px;
    position: relative;
}

.entry_box::before{
    content: '';
    background: url(../img/entry_l.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    width: 670px;
    height: 248px;
    position: absolute;
    top: -50px;
    left: -50px;
    z-index: -1;
}

.entry_box::after{
    content: '';
    background: url(../img/entry_r.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    width: 670px;
    height: 248px;
    position: absolute;
    bottom: -50px;
    right: -50px;
    z-index: -1;
}

#entry .entry_text,
#entry2 .entry_text{
    text-align: center;
    font-size: 20px;
    line-height: 1.75;
}

#entry .btn,
#entry2 .btn{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 30px;
    margin-bottom: 30px;
}

#entry .btn li,
#entry2 .btn li{
    width: 48.179%;
    border-radius: 45px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0;
    position: relative;
    line-height: 1.3;
}

#entry .btn li:first-child,
#entry2 .btn li:first-child{
    background: #D70A1D;
    border: 3px solid #90040B;
    box-shadow: 0 8px 0 #90040B;
}

#entry .btn li:last-child,
#entry2 .btn li:last-child{
    background: #0A51D7;
    border: 3px solid #003293;
    box-shadow: 0 8px 0 #003293;
}

#entry .btn li:hover,
#entry2 .btn li:hover{
    top: 8px;
    box-shadow: none;
}

#entry .btn li a,
#entry2 .btn li a{
    padding: 10px 5px;
}

#entry .btn li span,
#entry2 .btn li span{
    display: block;
    font-size: 14px;
    margin-bottom: 5px;
}

#entry .btn li::after,
#entry2 .btn li::after{
    content: '';
    background: url(../img/arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    position: absolute;
}

#entry .asterisk,
#entry2 .asterisk{
    font-size: 14px;
    font-weight: 500;
}

/*present*/
#present{
    overflow: hidden;
}

.present_box{
/*
    max-width: 828px;
    width: 100%;
*/
    margin: auto auto 50px auto;
}

.present_pt{
    max-width: 366px;
    width: 100%;
    margin: auto auto 10px auto;
}

.present_box_red{
    border: 4px solid #D70A1D;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 3px 6px rgba(215,10,29,0.5);
    max-width: 828px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 30px;
}

.present_box_red_title{
    background: #D70A1D;
    color: #fff;
    text-align: center;
    font-weight: 900;
    padding: 10px 0 20px 0;
}

.present_box_red_title .big{
    font-size: 35px;
}

.present_box_red_title .big2{
    font-size: 30px;
}

.present_box_red_title p:last-child{
    background: #fff;
    border-radius: 45px;
    color: #D70A1D;
    letter-spacing: 0.12em;
    font-size: 18px;
    display: block;
    width: 250px;
    margin: 5px auto auto auto;
    padding: 5px;
}

.present_6pt_img{
    max-width: 730px;
    width: 95%;
    margin: 40px auto 30px auto;
}

.present_box ul{
    background: #F2F2F2;
    padding: 20px 25px;
    max-width: 730px;
    width: 95%;
    margin: 0 auto;
    font-size: 14px;
    font-weight: 500;
}

.present_box ul p{
    font-size: 16px;
    text-align: center;
    border-bottom: 1px solid #454545;
    padding-bottom: 10px;
    margin-bottom: 10px;
}

.present_box ul li{
    line-height: 1.4;
}

.present_box ul li.mt1{
    margin-top: 1em;
}

.present_box ul li.disc::before{
    content: '・';
}

.present_box ul li.disc{
    margin-left: 1em;
    text-indent: -1em;
}

.present_2pt_img{
    max-width: 606px;
    width: 95%;
    margin: 30px auto auto auto;
}

.fukidashi{
    position: relative;
}

.fukidashi::after{
    content: '';
    background: url(../img/present_6pt_fukidashi.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 217px;
    height: 222px;
    display: block;
    position: absolute;
    top: -60px;
    right: -118px;
}

.attention{
    background: #fff;
    margin-top: 70px;
    text-align: center;
    padding: 30px 0;
}

.attention_inner{
    width: 89.03%;
    margin: 0 auto;
}

.attention p:first-child{
    font-size: 27px;
    border-bottom: 1px solid #5F2E0B;
    color: #552906;
    font-weight: 900;
    padding-bottom: 5px;
    margin-bottom: 20px;
}

.attention p:nth-child(2){
    color: #D70A1D;
    text-decoration: underline;
    font-size: 25px;
    font-weight: 900;
    line-height: 1.8;
    margin-bottom: 20px;
}

.attention p:nth-child(3){
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 20px;
}

.attention p.asterisk{
    font-size: 14px;
    font-weight: 500;
    margin-top: 30px;
}

/*bg*/
section#bg{
    padding: 0;
    margin: 0;
    background: #DDCFBC;
    background: linear-gradient(180deg, #EDD9BC 0%, #FFFFFF 100%);
}

section#bg2{
    padding: 0 0 50px 0;
    margin: 0;
    background-image: url(../img/bg.png);
    background-size: 24px;
}

/*product*/
.product_box{
    background: #fff;
    padding: 40px 0;
    font-size: 16px;
    line-height: 1.5;
}

.product_box div{
    width: 89.03%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: center;
    font-weight: 500;
}

.product_box div ul{
    width: 31.887%;
}

.product_box div ul:nth-child(-n+3){
    margin-bottom: 50px;
}

.product_box div ul li span{
    color: #D70A1D;
    display: block;
    font-weight: 700;
}

.product_asterisk{
    text-align: left;
    font-size: 14px;
    color: #454545;
    line-height: 1.7;
    flex: auto;
    margin-top: 30px;
}

/*application*/
section#application{
    padding-top: 30px;
    padding-bottom: 80px;
}

.application_text{
    text-align: center;
    font-weight: 700;
    margin-bottom: 30px;
}

.step_box{
    background: #fff;
    text-align: center;
    border-radius: 10px;
    margin-bottom: 40px;
    padding: 20px 0 30px 0;
    z-index: 0;
    position: relative;
}

.step_box .font_ki{
    font-size: 28px;
    color: #1873B5;
    border-bottom: 1px solid #1873B5;
    padding-bottom: 10px;
    margin-bottom: 20px;
    line-height: 1;
}

.step_inner{
    width: 89.03%;
    margin: 0 auto;
}

.step_inner p:nth-child(2){
    color: #552906;
    font-size: 27px;
    margin-bottom: 10px;
}

.step_inner p:nth-child(3){
    font-size: 16px;
    font-weight: 500;
    line-height: 1.625;
    letter-spacing: 0.02em;
}

.step_inner .btn{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 92.758%;
    margin: 30px auto 10px auto;
}

.step_inner .btn li{
    width: 48.179%;
    border-radius: 45px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0;
    position: relative;
    line-height: 1.3;
}

.step_inner .btn li:first-child{
    background: #D70A1D;
    border: 3px solid #90040B;
    box-shadow: 0 8px 0 #90040B;
}

.step_inner .btn li:last-child{
    background: #0A51D7;
    border: 3px solid #003293;
    box-shadow: 0 8px 0 #003293;
}

.step_inner .btn li:hover{
    top: 8px;
    box-shadow: none;
}

.step_inner .btn li a{
    padding: 10px 5px;
}

.step_inner .btn li span{
    display: block;
    font-size: 14px;
    margin-bottom: 5px;
}

.step_inner .btn li::after{
    content: '';
    background: url(../img/arrow.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: 25px;
    height: 25px;
    right: 25px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    position: absolute;
}

.step_inner .application_pt_set{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 20px;
}

.step_inner .application_pt_set li{
    width: 48.3%;
    position: relative;
}

.step_inner .application_pt_set li:first-child::before{
    content: '';
    background: url(../img/application_arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -80px;
    left: 35%; 
    display: block;
    width: 46px;
    height: 82px;
    z-index: 9;
}

.step_inner .application_pt_set li:last-child::before{
    content: '';
    background: url(../img/application_arrow.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -80px;
    right: 35%; 
    display: block;
    width: 46px;
    height: 82px;
    z-index: 9;
}

.step4_set{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 60px;
}

.step4_set .last{
    width: 47.315%;
}

.step4_set .last p{
    text-align: left;
}

.step4_set .last p:nth-child(3){
    margin-bottom: 10px;
}

.step4_set .last p.asterisk{
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
}


/*notes*/
#notes{
    background: #fff;
    border-radius: 13px;
    width: 100%;
    margin: 10px auto auto auto;
    position: relative;
    text-align: left;
    color: #333333;
    border: 2px solid #1873B5;
    font-weight: 500;
}

#notes .notes_box_title{
    color: #fff;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    background: #1873B5;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    padding: 20px 1em;
}

#notes .notes_inner{
    width: 89.03%;
    margin: 0 auto;
    padding: 30px 0;
}

#notes .notes_inner .t-c{
    font-size: 16px;
    line-height: 1.625;
}

#notes .notes_inner .t-l{
    font-size: 16px;
    line-height: 1.625;
    text-align: left;
}

#notes .notes_inner .t-l.mt-10{
    margin-top: 10px;
}

#notes .notes_inner .receipt{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 30px;
}

#notes .notes_inner .receipt li:first-child{
    width: 48.31%;
}

#notes .notes_inner .receipt li:last-child{
    width: 46.62%;
}

#notes .notes_inner .receipt li:last-child span{
    width: 89.12%;
    display: block;
    margin-bottom: 18px;
}

#notes .notes_inner .receipt_2,
#notes .notes_inner .receipt_3{
    margin-top: 50px;
}

#notes .notes_inner .receipt_2 .notes_inner_title,
#notes .notes_inner .receipt_3 .notes_inner_title{
    border-bottom: 1px solid #454545;
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 15px;
    text-align: center;
    letter-spacing: 0;
    line-height: 1;
    font-weight: 700;
}

#notes .notes_inner .receipt_2 ul{
    font-size: 16px;
    line-height: 1.75;
}

#notes .notes_inner .receipt_2 .disc::before{
    content: '・';
}

#notes .notes_inner .receipt_2 .disc{
    text-indent: -1em;
    margin-left: 1em;
}

#notes .notes_inner .receipt_2 .asterisk{
    color: #F00000;
}

#notes .notes_inner .receipt_3 ul{
    display: flex;
    justify-content: space-between;
}

#notes .notes_inner .receipt_3 ul li{
    width:  15.6%;
}

/*faq*/
section#faq{
    padding-bottom: 0;
}

#faq p{
    text-align: center;
    font-size: 20px;
    line-height: 1.75;
}

.accordion_header,
.accordion_content{
    display: flex;
    align-items: center;
    justify-content: left;
    padding: 15px 30px;
    width: 100%;
}

.accordion_header {
    cursor: pointer;
    background-color: #1FA350;
    color: #fff;
    position: relative;
    border-radius: 45px;
    font-size: 22px;
    font-weight: 400;
    text-align: left;
}

.accordion_content {
    display: none;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
}

.accordion_content ul li{
    display: flex;
}

.accordion_content ul li span{
    font-size: 26px;
    color: #D70A1D;
    font-weight: 700;
    margin-right: 10px;
    margin-top: -0.3em;
}

.accordion_header:nth-child(n+1) {
    margin-top: 30px;
}

.accordion_header::before{
    position: absolute;
    content: '';
    top: 50%;
    right: 30px;
    width: 20px;
    height: 2px;
    background-color:#fff;
    transform: rotate(90deg);
    transition: all .3s ease-in-out;
}

.accordion_header::after{
    position: absolute;
    content: '';
    top: 50%;
    right: 30px;
    width: 20px;
    height: 2px;
    background-color:#fff;
    transition: all .3s ease-in-out;
}

.accordion_header.open::before {
    transform: rotate(180deg);
}

.accordion_header.open::after {
    opacity:0;
}

/*terms*/
section#terms{
    padding-bottom: 50px;
}

#terms p{
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    margin: auto auto 30px auto;
}

.terms_box{
    height: 330px;
    overflow-y: scroll;
    overflow-x: hidden;
    padding: 25px;
    margin: 0 auto;
    text-align: left;
    width: 100%;
    background: #fff;
    word-break: break-all;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.7;
    font-weight: 500;
}

.notes_asterisk::before{
    content: '※';
}

.notes_asterisk{
    text-indent: -1em;
    margin-left: 1em;
}

.notes_asterisk_2::before{
    content: '※';
}

.notes_asterisk_2{
    text-indent: -1.1em;
    margin-left: 2em;
}

.maru::before{
    content: '●'
}

.maru{
    text-indent: -1em;
    margin-left: 1em;
}

.terms_box ul{
    margin-bottom: 1em;
    border-bottom: 1px solid #454545;
    padding-bottom: 10px;
}

.terms_box ul li:first-child{
    font-weight: 700;
}

.terms_box ul:last-child{
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}

.terms_box ul .bold{
    margin-bottom: 5px;
}

.terms_box a{
    text-decoration: underline;
    font-weight: normal;
    color: #109DE1;
    display: inline!important;
}

.notes_disc{
/*    list-style: disc;*/
/*    margin-left: 30px;*/
    text-indent: -1em;
    margin-left: 1em;
}

.notes_disc::before{
    content: '・';
}

.terms_box ul ol{
/*	list-style: decimal;*/
    margin-left: 1.3em;
}

.mb-1{
    margin-bottom: 1em;
}


/*お問い合わせ*/
section#contact{
    padding: 0;
    font-weight: 500;
}

.contact{
    max-width: 600px;
    width: 100%;
    height: auto;
    margin: 0 auto;
    padding: 20px 0;
    text-align: center;
    background: #fff;
    text-align: center;
    border-radius: 10px;
    border: 2px solid #1873B5;
}

.contact li:first-child{
    width: 92.28%;
    font-size: 18px;
    background: #1873B5;
    color: #fff;
    padding: 9px 1em;
    border-radius: 45px;
    line-height: 1.2;
    margin: auto auto 10px auto;
    font-weight: 600;
}

.contact li:nth-child(2){
    line-height: 1.5;
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 0;
}

.contact li:nth-child(3){
    font-size: 29px;
    font-weight: 900;
    margin-bottom: 10px;
    letter-spacing: 0.02em;
}

.contact li:nth-child(4){
    font-size: 16px;
    margin-bottom: 10px;
}

.contact li.asterisk{
    line-height: 1.5;
    font-size: 14px;
}

@media screen and (max-width:1070px){
    .fukidashi::after {
        right: -7%;
    }
}

@media screen and (max-width:913px){
    .fukidashi::after {
        right: -7%;
        width: 23%;
        top: -3.5%;
    }
}

@media screen and (max-width:820px){
    .step_inner .btn li::after {
        right: 10px;
    }
}

@media screen and (max-width:800px){
    .fukidashi::after {
        right: -8%;
        top: 1%;
    }
    #top #nav {
        font-size: 16px;
    }
}


@media screen and (max-width:767px){
    .pc{
        display: none!important;
    }

    .sp{
        display: inherit;
    }

    /*共通*/
    section#top{
        font-size: 14px;
        letter-spacing: 0;
    }

    #top section{
        padding: 50px 0;
    }

    .section_title{
        max-width: 450px;
        margin: auto auto 30px auto;
/*        margin-bottom: 30px;*/
    }

    /*nav*/
    #top #nav{
        font-size: 15px;
        letter-spacing: 0;
        padding: 20px 0 30px 0;
    }

    #nav ul{
        width: 90.67%;
        padding: 10px 7px;
        flex-wrap: wrap;
    }

    #nav ul li{
        width: 50%;
        height: 45px;
        text-align: center;
        margin-bottom: 10px;
        padding-top: 5px;
        border-right: 1px solid rgba(24,115,181,0.3);
    }

    #nav ul li:nth-child(2),
    #nav ul li:last-child{
        border-right: 0;
    }

    #nav ul li::after{
        content: '';
        background: rgba(24,115,181,0.3);
        height: 1px;
        width: 100%;
        display: block;
        margin-top: 5px;
    }

    #nav ul li:nth-child(3),
    #nav ul li:last-child{
        margin: 0;
    }

    #nav ul li:nth-child(3)::after,
    #nav ul li:last-child::after{
        display: none;
        margin-top: 0;
    }

    #nav ul li a::after{
        content: '';
        background: url(../img/nav.png);
        background-size: contain;
        width: 8px;
        height: 8px;
        display: block;
        margin: 5px auto auto auto;

        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
    }


    /*about*/
    section#about{
        padding: 0 0 60px 0;
    }

    .about_text{
        font-size: 17px;
    }

    .about_text .min{
        font-size: 12px;
    }

    .about_text .big{
        font-size: 24px;
    }

    /*entry*/
    section#entry,
    section#entry2{
        padding: 0 0 50px 0;
    }

    #entry .section_title,
    #entry2 .section_title{
        max-width: 264px;
        margin: auto auto 15px auto;
    }

    .entry_box{
        padding: 20px;
    }

    .entry_box::before{
        content: '';
        background: url(../img/entry_l.png);
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        width: 274px;
        height: 100px;
        position: absolute;
        top: -4%;
        left: -5%;
    }

    .entry_box::after{
        content: '';
        background: url(../img/entry_r.png);
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        width: 274px;
        height: 100px;
        position: absolute;
        bottom: -4%;
        right: -7%;
    }

    #entry .entry_text,
    #entry2 .entry_text{
        font-size: 14px;
    }

    #entry .btn,
    #entry2 .btn{
        display: block;
        max-width: 400px;
        margin: 20px auto;
/*
        margin-top: 20px;
        margin-bottom: 20px;
*/
    }

    #entry .btn li,
    #entry2 .btn li{
        width: 100%;
        font-size: 15px;
    }
    
    #entry .btn li:first-child{
        margin-bottom: 15px;
    }

    #entry .btn li:first-child,
    #entry2 .btn li:first-child{
        box-shadow: 0 5px 0 #90040B;
    }

    #entry .btn li:last-child,
    #entry2 .btn li:last-child{
        box-shadow: 0 5px 0 #003293;
    }

    #entry .btn li:hover,
    #entry2 .btn li:hover{
        top: 5px;
        box-shadow: none;
    }
    
    #entry .btn li span,
    #entry2 .btn li span{
        font-size: 13px;
    }

    #entry .btn li::after,
    #entry2 .btn li::after{
        content: '';
        background: url(../img/arrow.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 16px;
        height: 16px;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        position: absolute;
    }

    #entry .asterisk,
    #entry2 .asterisk{
        font-size: 12px;
        line-height: 1.6;
    }



    /*present*/
    #present{

    }

    .present_box{
        margin: auto auto 50px auto;
    }

    .present_pt{
        max-width: 290px;
    }

    .present_box_red{
        max-width: 500px;
        padding-bottom: 20px;
    }

    .present_box_red_title{
        padding: 5px 0 15px 0;
        letter-spacing: 0.07em;
        font-size: 19px;
    }
    
    .present_box_red_title .big{
        font-size: 27px;
    }

    .present_box_red_title .big2{
        font-size: 23px;
    }

    .present_box_red_title p:last-child{
        font-size: 16px;
        display: block;
        width: 200px;
        margin: 10px auto auto auto;
    }

    .present_6pt_img{
        width: 91.3%;
        margin: 20px auto 20px auto;
    }
    
    .present_6pt_img .spfukidashi{
        max-width: 500px;
        width: 60%!important;
        margin: 10px auto auto auto;
    }

    .present_box ul{
        padding: 10px 15px;
        width: 91.3%;
        font-size: 12px;
    }

    .present_box ul p{
        font-size: 14px;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }

    .present_box ul li{
        line-height: 1.6;
    }

    .present_2pt_img{
        width: 91.3%;
        margin: 20px auto auto auto;
    }

    .fukidashi::after{
        display: none;
    }

    .attention{
/*        margin-top: 50px;*/
        padding: 20px 0;
        border-radius: 10px;
        max-width: 500px;
        margin: 50px auto auto auto;
    }

    .attention p:first-child{
        font-size: 17px;
        padding-bottom: 5px;
        margin-bottom: 10px;
        letter-spacing: 0.07em;
    }

    .attention p:nth-child(2){
        font-size: 17px;
        line-height: 1.8;
        margin-bottom: 15px;
    }

    .attention p:nth-child(3){
        font-size: 14px;
        line-height: 1.6;
    }

    .attention p.asterisk{
        font-size: 12px;
        margin-top: 15px;
        text-align: left;
    }
    

    /*bg*/
    section#bg{
        padding: 0;
    }

    /*product*/
    section#product{
        padding-bottom: 0;
    }
    
    .product_box{
        padding: 20px 0;
        font-size: 14px;
        max-width: 500px;
        margin: 0 auto;
    }

    .product_box div ul{
        width: 46.3%;
    }

    .product_box div ul:nth-child(-n+3){
        margin-bottom: 20px;
    }

    .product_asterisk{
        font-size: 12px;
        line-height: 1.7;
        margin-top: 20px;
        letter-spacing: 0.02em;
    }

    /*application*/
    section#application{
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .application_text{
        margin-bottom: 20px;
        line-height: 1.8;
    }

    .step_box{
        margin-bottom: 30px;
        padding: 20px 0;
    }

    .step_box .font_ki{
        font-size: 23px;
        left: 0.07em;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }

    .step_inner p:nth-child(2){
        font-size: 17px;
    }

    .step_inner p:nth-child(3){
        font-size: 14px;
        letter-spacing: 0;
        text-align: left;
    }

    .step_inner .btn{
        display: block;
        max-width: 400px;
        width: 100%;
        margin: 10px auto 10px auto;
    }

    .step_inner .btn li{
        width: 100%;
        font-size: 16px;
    }

    .step_inner .btn li:first-child{
        background: #D70A1D;
        border: 3px solid #90040B;
        box-shadow: 0 5px 0 #90040B;
    }

    .step_inner .btn li:last-child{
        background: #0A51D7;
        border: 3px solid #003293;
        box-shadow: 0 5px 0 #003293;
    }

    .step_inner .btn li:hover{
        top: 5px;
        box-shadow: none;
    }

    .step_inner .btn li span{
        font-size: 13px;
    }

    .step_inner .btn li::after{
        content: '';
        background: url(../img/arrow.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 16px;
        height: 16px;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        position: absolute;
    }
    
    .step_inner .btn li:last-child{
        margin-top: 15px;
    }
    
    .two .sp{
        max-width: 400px;
        width: 46%;
        margin: auto auto 10px auto;
    }

    .step_inner .application_pt_set{
/*        margin-top: 10px;*/
        max-width: 400px;
        margin: 10px auto auto auto;
    }

    .step_inner .application_pt_set li{
        width: 47.5%;
    }

    .step_inner .application_pt_set li:first-child::before,
    .step_inner .application_pt_set li:last-child::before{
        display: none;
    }

    .step4_set{
/*        display: block;*/
/*        margin-top: 30px;*/
    }

    .last{
        width: 100%;
        padding-bottom: 20px;
    }

    .last p.asterisk{
        font-size: 12px;
        text-align: left;
        line-height: 1.6;
        font-weight: 500;
    }
    
    .last ul:last-child{
        border-top: 1px solid #535353;
        padding-top: 20px;
        margin-top: 20px;
    }
    
    .last ul li:first-child{
        background: #D70A1D;
        border-radius: 5px;
        color: #fff;
        font-size: 14px;
        padding: 6px;
    }
    
    .last ul li:first-child span{
        font-size: 17px;
    }
    
    .last ul li:nth-child(2){
        color: #552906;
        font-size: 17px;
        margin: 10px auto;
    }
    
    .last ul li:nth-child(3){
        font-size: 14px;
        text-align: left;
        font-weight: 500;
        margin-bottom: 10px;
    }
    
    /*notes*/
    #notes{
        margin: 40px auto auto auto;
    }

    #notes .notes_box_title{
        font-size: 17px;
        padding: 10px 1em 12px 1em;
    }

    #notes .notes_inner{
        padding: 20px 0 10px 0;
    }
    
    #notes .notes_inner p.t-l,
    #notes .notes_inner p.t-c{
        letter-spacing: 0;
        line-height: 1.73;
        text-align: left;
        font-size: 14px;
    }

    #notes .notes_inner .receipt{
        display: block;
/*        margin-top: 20px;*/
        max-width: 400px;
        margin: 20px auto auto auto;
    }

    #notes .notes_inner .receipt li:first-child{
        width: 100%;
        margin-bottom: 10px;
    }

    #notes .notes_inner .receipt li:last-child{
        width: 100%;
    }

    #notes .notes_inner .receipt li:last-child span{
        width: 100%;
        margin-bottom: 15px;
    }
    
    #notes .notes_inner .receipt_2,
    #notes .notes_inner .receipt_3{
        margin-top: 20px;
    }
    
    #notes .notes_inner .receipt_2 .notes_inner_title,
    #notes .notes_inner .receipt_3 .notes_inner_title{
        font-size: 16px;
        padding-bottom: 10px;
        margin-bottom: 10px;
    }
    
    #notes .notes_inner .receipt_2{
        letter-spacing: 0;
        line-height: 1.6;
    }
    
    #notes .notes_inner .receipt_2 ul {
        font-size: 14px;
        letter-spacing: 0;
        line-height: 1.75;
    }
    
    #notes .notes_inner .receipt_3 ul{
        flex-wrap: wrap;
        width: 93.52%;
        max-width: 400px;
        margin: 0 auto;
    }

    #notes .notes_inner .receipt_3 ul li{
        width:  48.57%;
        margin-bottom: 10px;
    }
    

    /*faq*/
    section#faq{
        padding-bottom: 20px;
        padding-top: 0;
    }

    #faq p{
        font-size: 14px;
        line-height: 1.85;
    }

    .accordion_header,
    .accordion_content{
        padding: 10px 10px;
        width: 100%;
    }

    .accordion_header {
        border-radius: 10px;
        font-size: 14px;
    }

    .accordion_header span{
        width: 90%;
        letter-spacing: 0.02em;
    }

    .accordion_content {
        font-size: 14px;
        line-height: 1.64;
    }

    .accordion_content ul li span{
        font-size: 18px;
        margin-right: 5px;
    }

    .accordion_header:nth-child(n+1) {
        margin-top: 20px;
    }

    .accordion:first-child .accordion_header {
        margin-top: 20px;
    }

    .accordion_header::before{
        position: absolute;
        content: '';
        top: 50%;
        right: 10px;
        width: 15px;
        height: 2px;
        background-color:#fff;
        transform: rotate(90deg);
        transition: all .3s ease-in-out;
    }

    .accordion_header::after{
        position: absolute;
        content: '';
        top: 50%;
        right: 10px;
        width: 15px;
        height: 2px;
        background-color:#fff;
        transition: all .3s ease-in-out;
    }


    /*terms*/
    #terms p{
        font-size: 13px;
        letter-spacing: 0.02em;
        margin: auto auto 20px auto;
    }

    .terms_box{
        height: 220px;
        padding: 20px 17px;
        font-size: 12px;
        line-height: 1.6;
        letter-spacing: 0.07em;
    }

    .terms_box ul{
        margin-bottom: 10px;
        border-bottom: 1px solid #B9B9B9;
    }

    .terms_box ul li:first-child{
        margin-bottom: 5px;
    }
    
    /*お問い合わせ*/
    section#contact{
        padding: 0;
    }
    
    .contact{
        width: 89.1%;
        padding: 14px;
    }

    .contact li:first-child{
        width: 100%;
        font-size: 14px;
        padding: 11px 1em;
        line-height: 1.4;
    }

    .contact li:nth-child(2){
        font-size: 15px;
        margin-bottom: 4px;
    }

    .contact li:nth-child(3){
        font-size: 15px;
        margin-bottom: 5px;
        letter-spacing: 0;
    }

    .contact li:nth-child(4){
        font-size: 12px;
        margin-bottom: 5px;
    }

    .contact li.asterisk{
        font-size: 12px;
        line-height: 1.75;
        text-align: left;
        letter-spacing: 0;
    }
}

@media screen and (max-width:310px){
    #entry .btn li::after,
    #entry2 .btn li::after,
    .step_inner .btn li::after{
        display: none;
    }
}

@media screen and (max-width:340px){
    #top #nav {
        font-size: 4vw;
    }
}
