@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    line-height: 1.5;
    font-family: 'Noto Sans JP', 'NotoSans', sans-serif !important;
}

input,
textarea,
button {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
}

ul,
li {
    list-style: none;
}

p {
    text-align: center;
}

body {
    overflow-x: hidden;
}

img {
    display: block;
    /* width: 100%; */
    height: auto;
}

h2 {
    color: #00B4BE;
    font-size: 4.8vw !important;
}

textarea {
    width: 100%;
    height: inherit;
    padding: 2.66667vw 4vw;
    border: .26667vw solid#CCC;
    border-radius: 2.666667vw;
    font-size: 3.73333vw;
    outline: none;
    resize: none;
}

input::placeholder,
textarea::placeholder {
    font-size: 3.73333vw;
    color: #ccc;
}

input:not([type="submit"]) {
    outline: none;
    border: .26667vw solid #ccc;
    background-color: #fff;
    font-size: 3.73333vw;
}

input[type="submit"] {
    outline: none;
    border: none;
    appearance: none;
    -webkit-appearance: none;
}

input[type="text"],
input[type="number"] {
    width: 100%;
    height: 12.26667vw;
    padding: 2.66667vw 4vw;
    border-radius: 2.666667vw;
}

input[type="checkbox"],
input[type="radio"] {
    width: 6.4vw;
    height: 6.4vw;
    vertical-align: middle;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 1.33333vw;
}

input[type="radio"] {
    border-radius: 50% !important;
}

input:checked {
    position: relative;
}

input[type="radio"]:checked::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 4.8vw;
    height: 4.8vw;
    background-color: #00B4BE;
    border-radius: 50%;
}

input[type="checkbox"]:checked::before {
    content: '';
    position: absolute;
    top: 2vw;
    left: 1.2vw;
    transform: rotate(-45deg);
    width: 5vw;
    height: 1vw;
    background-color: #00B4BE;
}

input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    top: 2.5vw;
    transform: rotate(-135deg);
    width: 3vw;
    height: 1vw;
    background-color: #00B4BE;
}

input[type="submit"]:disabled {
    background-color: #999;
    color: #ccc;
}

button {
    cursor: pointer;
}

.only_pc{display: block!important;}
.only_sp{display: none!important;}
.newline_sp{display: none!important;}
.newline_sp2{display: inline!important;}
.countainerWarp {
    width: 100%;
    margin: auto;
}

.inner {
    max-width: 1000px;
    margin: 0 auto;
}

.wrap_top{
    width:100%;
    background-color: #E4FBFD;
    margin:auto;
}

.key_visual_wrap {
    max-width:1000px;
    width:100%;
    position: relative; 
    margin:0 auto;
}

.key_visual {
    position:relative;
    width: 100%;
    z-index: 1;
}

.key_visual::before{
    position:absolute;
    content:'';
    left:0;
    bottom:-7px;
    background-image: url('../images/ico_maptea.png');
    background-repeat: no-repeat;
    background-size: contain;
    width:165px;
    height:150px;
    z-index: 1;
}

.key_visual::after{
    position:absolute;
    content:'';
    right: 0;
    bottom: 29px;
    background-image: url('../images/ico_park.png');
    background-repeat: no-repeat;
    background-size: contain;
    width:102px;
    height:107px;
    z-index: 1;
}

.key_visual img.kv {
    width: 100%; 
    height: auto;
}

.key_btn img {
    position: absolute; 
    top: 71%; 
    transform: translateY(-50%);
    z-index: 1;
}

.key_btn2 img {
    position: absolute; 
    top: 84%; 
    transform: translateY(-50%);
    z-index: 1;
}

.key_btn3 img {
    position: absolute; 
    top: 78%; 
    transform: translateY(-50%);
    width: auto; 
    z-index: 1;
}

.key_btn .kv_app {
    left: 22.3%; 
}

.key_btn2 .kv_and {
    left: 22.3%; 
    /* transform: translateX(-53%) translateY(64%) */
}

.key_btn3 .kv_qr {
    right: 53.5%; 
    /* transform: translateX(-3%) translateY(-25%); */
}

.key_btn3 > img{
    width:98px;
    height:98px;
}

.mv_txt{
    font-size:20px;
    color:#fff;
    background-color: #00B4BE;
    text-align: center;
    padding:11px 0;
}



.content1_tt{
    color:#00B4BE;
    font-weight: bold;
    font-size:24px !important;
    text-align: center;
    margin:56px 0 32px;
}

.content1_tt sup{
    color:#00B4BE;
    font-size:15px;
}

.content1_tt > span{
    position:relative;
    z-index: 1;
}

/* .content1_tt > span::after{
    content: '';
    position: absolute;
    left: -4px;
    top:20px;
    width: 102%;
    height: 16px;
    background-color: #FDEAB7;
    z-index: -1;
} */

.marker {
    background: linear-gradient(transparent 50%, rgba(253,234,183,1) 50%);
    display: inline;
    background-size: 0% 100%;
    background-repeat: no-repeat;
    transition: background-size 1.5s;
}
  .marker.on {
    background-size: 100% 100%;
}
.content1_list{
    display:flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: center;
    gap:24px;
}

.content1_list >div{
    flex:1;
    min-height:396px;
    border-radius: 12px;
    max-width:448px;
    box-shadow: 0px 2px 12px rgba(0, 0, 0, 0.15);
}

.content1_list .txt_box{
    width:100%;
    margin: 0 auto;
    display: flex;
    flex-flow: column;
    justify-content: center;
    align-items: center;
}

.content1_list .txt_box a{
    font-size:15px;
    color:#00B4BE;
    position: relative;
    text-decoration: none;
}

.content1_list .box1 .txt_box a::before {
    content: '';
    position: absolute;
    right: -8%;
    top: 50%;
    transform: translateY(-50%);
    width: 10px;
    height: 16px;
    background: url(../images/ico_arrow.png);
    background-size: cover;
}

.content1_list .box2 .txt_box a::before {
    content: '';
    position: absolute;
    right: -10%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.content1_list > .box1 p{
    line-height:22px;
    margin-bottom:8px;
    font-size:15px;
    color:#333;
    letter-spacing: 0.8px;
}

.content1_list > .box2 p{
    line-height:22px;
    margin-bottom:19px;
    font-size:15px;
    color:#333;
    letter-spacing: 0.8px;
}

.content1_list >div.box1{
    padding:48px 60px 36px 60px
}

.content1_list >div.box1 img{
    margin-bottom:40px;
}

.content1_list >div.box2{
    padding:36px 54px 36px 54px
}

.content1_list >div.box2 img{
    margin-bottom:28px;
}
/* contents modal*/
.modal {
    display: none;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    background-color: rgba(0, 0, 0, 0.5); 
  }
  
  .modal .modal-content {
    position:relative;
    background-color: #fff;
    margin: 15% auto;
    padding: 48px 80px 40px;
    border: 1px solid #888;
    max-width: 920px;
    min-height: 368px;
    box-sizing: border-box;
    border-radius: 16px;
    box-shadow: 0px 2px 12px rgba(0, 0, 0, 0.15);
  }
  
  .modal .close {
    position:absolute;
    right:20px;
    top:8px;
    color: #00B4BE;
    font-size: 35px;
    font-weight: bold;
    cursor: pointer;
  }
  
  .modal .modal-content .lists{
    display: flex;
    flex-flow:row wrap;
    justify-content: space-between;
    align-items: flex-start;
  }

  .modal .modal-content .popup_tt{
    color:#00B4BE;
    font-size:20px;
    font-weight:bold;
    text-align: center;
    margin-bottom:32px;
  }

  .modal .modal-content .lists .tt{
    text-align: left;
    font-size:15px;
    color:#333;
    margin-bottom:12px;
    font-weight:bold;
  }

  .modal .modal-content .lists li{
    font-size:12px;
    color:#333;
  }

  .modal .modal-content .link{
    width:100%;
    text-align: right;
    margin-top:30px;
  }

  .modal .modal-content .link a{
    position:relative;
    font-size:15px;
    color:#00B4BE;
    text-decoration: none;
    max-width:150px;
  }

  .modal .modal-content .link a::before {
    content: '';
    position: absolute;
    right: -15%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

/* floating modal*/
.modal_float {
    display: none;
    position: fixed;
    z-index: 100;
    left: 0;
    top: 0;
    width: 100%; 
    height: 100%; 
    background-color: rgba(0, 0, 0, 0.5); 
  }
  
  .modal_float .modal-content {
    position:relative;
    background-color: #fff;
    margin: 10% auto;
    padding: 48px 20px 40px;
    border: 1px solid #888;
    max-width: 920px;
    min-height: 368px;
    box-sizing: border-box;
    border-radius: 16px;
    box-shadow: 0px 2px 12px rgba(0, 0, 0, 0.15);
  }
  
  .modal_float .closeFloat {
    position:absolute;
    right:20px;
    top:8px;
    color: #00B4BE;
    font-size: 35px;
    font-weight: bold;
    cursor: pointer;
  }
  
  .modal_float .modal-content img{
    width:100%;
  }


/*accordion*/
.accordion {
    max-width: 920px;
    margin: 32px auto 56px;
    border-radius: 4px;
    overflow: hidden;
    background-color: #eee;
}

.accordion-header {
    color:#00B4BE;
    font-size:20px;
    font-weight:bold;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 24px;
    height: 48px;
    background-color: #e1e1e1;
    cursor: pointer;
}

.accordion-content {
    margin-top:-2px;
    max-height: 0; 
    background-color: #fff;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
}

.acc_wrap{
    padding:40px;
    max-height:100%;
}

.acc_wrap p{
    text-align: left;
    font-size:15px;
    line-height: 22px;
    color:#333;
    margin-bottom:24px;
}

.accordion-toggle {
    font-size: 20px;
    font-weight: bold;
}

.accordion-content.open {
    border: 2px solid #00B4BE;
    border-top: none;
    max-height: none;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
}

.accordion-content .img_box{
    display: flex;
    flex-flow:row nowrap;
    justify-content: space-between;
    align-items: center;
    gap:23px;
}

.accordion-content .img_box .cont_r{
   border:2px solid #FFB92E;
   border-radius: 12px;
   padding: 20px;
   display: flex;
   flex-flow: column;
   align-items: center;
}

.accordion-content .img_box .cont_r > .txt01{
    font-size:20px;
    color:#00B4BE;
    line-height:28px;
    font-weight:bold;
    text-align: center;
    margin-top:20px;
    margin-bottom:12px;
}

.accordion-content .img_box .cont_r > .txt02{
    font-size:12px;
    color:#333;
    text-align: center;
    line-height:16px;
}

.accordion-content .img_box .cont_r .conetent_bottom{
    background:#E4FBFD;
    padding:20px 25px 24px;
}

.accordion-content .img_box .cont_r .conetent_bottom > p{
    font-size:12px;
    color:#333;
    line-height:16px;
    text-align: center;
    margin:8px 0 21px;
}
.accordion-content .img_box .cont_r .conetent_bottom div{
    display: flex;
    justify-content: center;
}

.accordion-content .img_box .cont_r .conetent_bottom div a{
    position:relative;
    font-size:15px;
    color:#00B4BE;
    line-height:22px;
    text-decoration: none;
    max-width:305px;
}

.accordion-content .img_box .cont_r .conetent_bottom div a::before {
    content: '';
    position: absolute;
    right: -10%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.acc_wrap .cation{
    font-size:12px;
    color:#333;
    margin-top:24px;
    line-height:16px;
    margin-bottom:0px;
}

.content_1,.content_3{
    background-color: #E4FBFD;
    padding:60px 0;
}

.content_area{
    display: flex;
    flex-flow:row wrap;
    justify-content: space-between;
    align-items: center;
}

.content_area > div{
    flex:1;
}

.content > h2{
    font-size:24px !important;
    font-weight: bold;
    color:#00B4BE;
    text-align: center;
    letter-spacing: 0.8px;
}

.content > p > span{
    position:relative;
}

.content > p > .under_line::after {
    content: '';
    position: absolute;
    left: -4px;
    top: 20px;
    width: 102%;
    height: 16px;
    background-color: #FDEAB7;
    z-index: -1;
}

.content .content_area{
    display: flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: center;
    margin-top:36px;
    gap:66px;
}

.content .content_area > div{
    max-width:396px;
}

.content_1 .content_area .detail_mid{
    display: flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    padding:24px 0 28px;
    border-radius: 12px;
}

.content_1 .content_area .detail_top p{
    font-size:15px;
    color:#333;
    line-height:22px;
    text-align: left;
    margin-bottom:24px;
    letter-spacing: 0.8px;
}

.content_1 .content_area .detail_mid p{
    font-size:15px;
    line-height:22px;
    text-align: left;
    color:#333;
    letter-spacing: 0.8px;
    margin-left:12px;
}

.content_1 .content_area .detail_mid p span{
    font-size:15px;
    line-height:22px;
    font-weight: bold;
    color:#00B4BE;
}

.content_1 .detail a{
    display: inline-flex;
    align-items: center;
    font-size:15px;
    text-decoration: none;
    color:#00B4BE;
}

.content_1 .detail a::after{
    content: '';
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-left: 2px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.detail_bottom{
    width:100%;
    display: flex;
    margin-top:20px;
    justify-content: center;
}

.detail_bottom > img{
    width:100%;
    max-width:312px;
}

.content_2{
    background-color: #fff;
    padding:60px 0;
}

.content_2 .cont2_img_l{
    display: flex;
    justify-content: right;
}

.content_2 .detail p{
    letter-spacing: 0.8px;
    font-size:15px;
    color:#333;
    text-align: left;
    margin-bottom:16px;
}

.content_2 .detail a{
    position:relative;
    font-size:15px;
    text-decoration: none;
    color:#00B4BE;
    max-width:270px;
}

.content_2 .detail a::after{
    content: '';
    position: absolute;
    right: -8%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.content_3 .content_area{
    gap:24px;
}

.content_3 .content_area > div{
    padding:32px 28px 36px;
    display:flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    background-color: #fff;
    max-width:448px;
    border-radius: 12px;
    min-height:420px;
    box-shadow: 0px 2px 12px rgba(0, 0, 0, 0.15);
}

.content_3 .content_area > div > p{
    margin-top:24px;
    font-size:15px;
    line-height: 22px;
    letter-spacing: 0.8px;
    color:#333;
}

.content_3 a{
    position:relative;
    font-size:15px;
    text-decoration: none;
    color:#00B4BE;
    max-width:270px;
}

.content_3 a::after{
    content: '';
    position: absolute;
    right: -16%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.content_4{
    padding:85px 0 40px;
}

.content_4 .cont4_tt{
    text-align: center;
}

.content_4 .cont4_tt h3{
    display: inline;
    font-size:24px;
    letter-spacing: 0.8px;
    color:#00B4BE;
    font-weight:bold;
    position:relative;
}

.content_4 .cont4_tt h3::before {
    position:absolute;
    left:-24px;
    top:0;
    content: "";
    background-image: url('../images/ico_diagomal_l.png');
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 27px;
    margin-right: 10px;
  }
  
  .content_4 .cont4_tt h3::after {
    position:absolute;
    right:-24px;
    top:0;
    content: "";
    background-image: url('../images/ico_diagomal_r.png');
    background-size: contain;
    background-repeat: no-repeat;
    width: 16px;
    height: 27px;
    margin-left: 10px;
  }

  .content_4 .content_area{
    gap:24px;
  }

  .content_4 .content_area > div:nth-child(1),
  .content_4 .content_area > div:nth-child(2){
    padding:40px 32px 0px;
    max-width:448px;
    min-height: 466px;
    border-radius: 12px;
    border:2px solid #00B4BE;
    box-sizing: border-box;
    display: flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: flex-start;
    text-align: center;
  }

  .content_4 .content_area > div:nth-child(3),
  .content_4 .content_area > div:nth-child(4),
  .content_4 .content_area > div:nth-child(5),
  .content_4 .content_area > div:nth-child(6){
    padding:40px 32px 0px;
    max-width:448px;
    min-height: 400px;
    border-radius: 12px;
    border:2px solid #00B4BE;
    box-sizing: border-box;
    display: flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: flex-start;
    text-align: center;
  }

  .content_4 .content_area > div .tt{
    font-size:18px;
    color:#00B4BE;
    font-weight: bold;
    letter-spacing: 0.8px;
    margin-bottom:16px;
  }

  .content_4 .content_area > div .txt{
    font-size:15px;
    color:#333;
    letter-spacing: 0.8px;
    line-height: 22px;
  }

  .content_4 .content_area > div .link{
    display: block;
    width: 100%;
  }

  .content_4 .content_area > div .link.ver2{
    margin-bottom:20px;
  }

  .content_4 .content_area > div .link a{
    text-decoration: none;
    font-size:15px;
    color:#00B4BE;
    position:relative;
  }

  .content_4 .content_area > div .link a::after {
    content: '';
    position: absolute;
    right: -18%;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    background: url(../images/ico_link.png);
    background-size: cover;
}

.content_4 .content_area > div .con4_img1{
    margin-top:33px;
}

.content_4 .content_area > div .con4_img2{
    margin:24px 0;
}

.content_4 .content_area > div .con4_img3{
    margin:24px 0;
}

.content_4 .content_area > div .con4_img4{
    margin-top:24px;
}

.content_4 .content_area .caption_tt{
    font-size:12px;
    line-height: 16px;
    letter-spacing: 0.8px;
    color:#333;
    margin-top:8px;
    text-align: left;
}

.content_4 .content_area .caption{
    position:relative;
    font-size:12px;
    line-height: 16px;
    letter-spacing: 0.8px;
    color:#333;
    text-align: left;
    padding-left:0.750rem;
}

.content_4 .content_area .caption.cap2{
    margin-top:0px;
}

.content_4 .content_area .caption.ver2::before{
    display: none;
}


.content_4 .content_area .caption::before{
    content: "・";
    position: absolute;
    left: 0;
}

.footter_wrap_top{
    position:relative;
    background: linear-gradient(#FFFFFF, #b1e9eb);
}

.footter_wrap_top .inner{
    max-width: 882px;
}

.footter_wrap_top .bnr_wrap {
    max-width: 920px;
    margin: 24px auto 0;
    padding-bottom: 56px;
    display: flex;
    justify-content: center;
    gap: 24px;
    flex-flow: row wrap;
}

.footter_wrap_top .bnr_wrap img {
    width: 100%;
    max-width: 448px;
    border-radius: 12px;
    box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.15);
}

.footter_wrap_bottom{
    padding:20px 0 38px;
    background-color: #00B4BE;
    margin:0 auto;
}

.footter_wrap_bottom > p{
    text-align: center;
    color: #fff;
}

.footter_wrap_bottom > p:nth-child(1){
    font-size:15px;
    line-height:22px;
    letter-spacing: 0.8px;
    margin-bottom:12px;
    
}

.footter_wrap_bottom > p:nth-child(2){
    font-size:12px;
    
}
/* 
.key_btn4,
.key_btn5,
.key_btn6{
    width:100%;
}

.key_btn4 img {
    position: absolute;
    top: 64%;
    left: 33%;
    max-width: 119px;
    max-height: 40px;
    z-index: 1;
}

.key_btn5 img {
    position: absolute; 
    top: 64%; 
    left:45.5%;
    max-width: 119px;
    max-height: 40px;
    z-index: 1;
}

.key_btn6 img {
    position: absolute;
    top: 53%;
    left: 59%;
    z-index: 1;
} */

.footter_wrap .key_visual{
    width: 100%;
    height: 0;
    padding-bottom: 27.4%;
    background-image: url('../images/img_pointapp_footer.png');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.footter_wrap .key_visual .btn_area{
    display:flex;
    flex-flow:row wrap;
    justify-content: center;
    align-items: center;
    gap:10px;
    padding-top:16%;
}

.footter_wrap .key_visual .btn_area .key_btn6{
    margin-left:6px;
}

.footter_wrap .key_visual::before,
.footter_wrap .key_visual::after{
    display: none;
}

.floating-banner {
    width:111px;
    height:140px;
    position: fixed;
    bottom: 5%;
    right: 5%;
    display: none;
  }

  .floating-banner.show {
    display: block;
  }

    @media (min-width: 768px) and (max-width: 945px) {
        .key_btn .kv_app,
        .key_btn2 .kv_and{
            width:12%;
            left:22%;
        }
        
        .key_btn3 .kv_qr{
            width:10%;
            right:55%;
        }
        .accordion-content .img_box {
            display: flex;
            flex-flow: column;
        }
        .mention{
            background-color: red;
            background-image: none;
        }
    }

  @media (max-width: 768px) {
    .only_pc{display: none!important;}
    .only_sp{display: block!important;}
    .newline_sp{display: block!important;}
    .newline_sp2{display: block!important;}
    .key_visual_wrap .sp_visual img{
        width:100%;
    }

    .key_visual_wrap .sp_visual{
        position: relative;
        width: 100%;
        padding-bottom: 71.77%;
        background-image: url('../images/img_pointapp_kv_sp.jpg');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    

    .key_visual_wrap .sp_visual .key_btn img,
    .key_visual_wrap .sp_visual .key_btn2 img{
        position: unset;
        max-width:119px;
        max-height:40px;
        width:100%;
    }
    
    .key_visual_wrap .sp_visual .btn_area_top{
        display:flex;
        flex-flow:row wrap;
        justify-content: center;
        align-items: center;
        gap:10px;
        padding-top:53%;
    }

    .mv_txt{
        font-size:1.25rem;
        padding:16px 0 11px;
        font-weight: bold;
    }
    .content1_tt{
        margin-top:31px;
        font-size:1.375rem !important;
    }
    .content1_list{
        padding:0 20px;
        flex-flow:column;
    }
    .content1_list >div.box1,
    .content1_list >div.box2{
        width:100%;
        padding:28px;
    }
    .content1_list .box1 .txt_box a::before,
    .content1_list .box2 .txt_box a::before{
        right:-5vw;
    }

    .content1_list >div.box1 img,
    .content1_list >div.box2 img{
        width:100%;
    }
    .content1_list >div{
        min-height: 331px;
    }

    .accordion{
        margin:24px 20px 56px;
    }

    .accordion-header{
        padding:16px 16px 16px 24px;
    }

    .accordion-header .accordion-title{
        font-size:16px;
    }

    .accordion-toggle img{
        width:18px;
    }

    .acc_wrap{
        padding:24px 16px;
        height:100%;
    }

    .accordion-content .img_box{
        flex-flow:column;
    }

    .accordion-content .img_box img{
        width:100%;
    }

    .acc_wrap .cation.only_sp{
        margin-top:12px;
    }
    .accordion-content .img_box .cont_r .conetent_bottom div a{
        display: block;
        text-align: center;
        text-decoration: none;
        max-width:205px;
    }

    .accordion-content .img_box .cont_r{
        padding:12px;
    }
    .accordion-content .img_box .img50{
        display: flex;
        justify-content: center;
    }
    .accordion-content .img_box .img50 img{
        width:50%!important;
    }
    .accordion-content .img_box .cont_r .conetent_bottom div a::before{
        right:-5vw;
    }
    .wid_con1{
        max-width:66px;
    }
    .content .content_area{
        padding:0 20px;
        flex-flow:column;
    }

    .content .content_area > .img_box{
        display:flex;
        justify-content: center;
     }

    .content .content_area > div > img{
        width:80%;
     }

     .content_1,.content_2
     ,.content_3{
        padding-top:31px;
     }

     .content_1 .content_area .detail_top p{
        text-align: center;
     }

     .content > h2{
        font-size:1.375rem !important;
        margin:0 28px;
     }

     .content .content_area{
        gap:24px;
     }

     .content_1 .content_area .detail_mid{
        padding:24px 26px 28px;
        flex-flow:row wrap;
     }

     .content_1 .content_area .detail_mid > p{
        flex: 1 1 50%;
     }

     .content_1 .content_area .detail_mid > .detail_bottom{
        flex: 1 1 100%;
     }

     .content_2 .cont2_img_l {
        justify-content: center;
    }
    .content_2 .detail p{
        text-align: center;
    }

    .content_area .detail > div{
        text-align: center;
    }

    .content_2 .detail a{
        max-width:283px;
    }

    .content_2 .detail a::after{
        right:-7%;
    }

    .content_3 {
        padding:30px 0 60px;
    }

    .content_3 .content_area > div > img,
    .content_4 .content_area > div > img{
        width:100%;
    }
    .content_3 .content_area > div{
        min-height:327px;
    }
    .content_4 .cont4_tt h3::before {
        position:absolute;
        left:-28px;
        top:0;
        content: "";
        background-image: url('../images/ico_diagomal_l_sp.png');
        background-size: contain;
        background-repeat: no-repeat;
        width: 26px;
        height: 62px;
        margin-right: 10px;
      }
      
      .content_4 .cont4_tt h3::after {
        position:absolute;
        right:-42px;
        top:0;
        content: "";
        background-image: url('../images/ico_diagomal_r_sp.png');
        background-size: contain;
        background-repeat: no-repeat;
        width: 26px;
        height: 62px;
        margin-left: 10px;
      }

      .content_4 .cont4_tt h3{
        font-size:1.25rem !important;
      }
      .content_4{
        padding-top:36px;
      }

      .content_4 .content_area > div:nth-child(1), .content_4 .content_area > div:nth-child(2){
        padding-top:24px;
        min-height: 347px;
        align-items: stretch;
      }
      .content_4 .content_area > div .tt{
        margin-bottom:16px;
      }
      .content_4 .content_area > div:nth-child(3), .content_4 .content_area > div:nth-child(4), .content_4 .content_area > div:nth-child(5), .content_4 .content_area > div:nth-child(6) {
        padding: 24px 16px 0px;
        min-height: 351px;
    }

    .content_4 .content_area > div .link{
        margin-top:6px;
    }

    .content_4 .content_area > div .link.ver2{
        margin-top:6px;
    }

    .content_4 .content_area > div .link a::after{
        right:-5.5vw;
    }

    .content_4 .content_area .caption.mt_0{
        margin-top:0px;
        padding-left: 1rem;
    }

    .content_4 .content_area .caption{
        margin-top:12px;
        padding-left: 1rem;
    }
    .content_4 .content_area .caption::before{
        content: "・";
        position: absolute;
        left: 0;
    }
    .content_4 .content_area .caption.ver2{
        text-indent: -4%;
    }
   
    .footter_wrap .key_visual{
        width: 100%;
        height: 0;
        padding-bottom: 44.4%;
        background-image: url('../images/img_pointapp_footer_sp.png');
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
    }
    
    .footter_wrap .key_visual .btn_area{
        display:flex;
        flex-flow:row wrap;
        justify-content: center;
        align-items: center;
        gap:10px;
        padding-top:26%;
    }

    /* .footter_wrap .key_visual .key_btn3,
    .footter_wrap .key_visual .key_btn5{
        width:100%;
        position:relative;
    } */

    .footter_wrap .key_visual .key_btn3 img{
        width:100%;
        height:auto;
        display: block;
    }

    .footter_wrap .key_visual .key_btn5 img{
        display: block;
    }
    .footter_wrap_top .bnr_wrap {
        max-width: 448px;
        margin-top: 0;
        padding: 0 20px 32px;
        gap: 8px;
    }
    .footter_wrap_top .bnr_wrap img {
        box-shadow: 0 0 12px 0 rgba(0, 0, 0, 0.15);
    }
    .modal .modal-content{
        width:90%;
        height:auto;
        max-height: 90vh;
        padding:32px 20px;
        text-align: center;
    }
    
    .modal .modal-content .lists {
        max-height: 380px;
        overflow-y: auto; 
    }
    .modal .modal-content .lists .tt{
        text-align: center;
    }

    .modal .modal-content .modal_txt{
        font-size:0.938rem;
        margin-bottom:24px;
    }

    .modal .modal-content .lists{
        flex-flow:column;
        align-items: center;
    }
    .modal .modal-content .link{
        text-align: center;
    }
    .modal .modal-content .link a::before{
        right: -6vw;
        top: 50%;
    }

    .floating-banner{
        width: 82px;
        height: 97px;
        bottom:5%;
        right:5%;
    }
    .floating-banner img{
        width:100%;
    }
  }

  @media (min-width: 265px) and (max-width: 374px) {
    .footter_wrap_top .key_visual .key_btn4 img,
    .footter_wrap_top .key_visual .key_btn5 img{
        width:100px;
    }
  }