@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');


:root {
  --point_01-color: #3792cc;
  --point_02-color: #e0807d;
  --point_03-color: #64b19c;
  --sec_05-color: #6c90c7;
  --font_size-12: min(3.75vw, 28.2px);
  --font_size-14: min(4.37vw, 32.8px);
  --font_size-15: min(4.68vw, 35.16px);
  --font_size-16: min(5vw,37.5px);
  --font_size-17: min(5.31vw,39.8px);
}


@media screen and (min-width: 768px) {
  
  :root {
    --font_size-12: 18px;
    --font_size-14: 21px;
    --font_size-15: 22.5px;
    --font_size-16: 24px;
    --font_size-17: 25.5px;
  }

}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
picture {
  display: block;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 1.4;
  -webkit-font-feature-settings: "palt";
  background-image: url(../img/bg.svg);
  /* background-position: 50% 50%; */
  background-size: 1970px auto;
  background-repeat: repeat;
  background-attachment: fixed;
  position: relative;
}
.body__bg__cap {
  display: none;
}
a {
  transition: all 0.3s 0s ease-out;
}
em {
  font-style: normal;
}
.link__wrap {
  text-align: center;
  /* width: 170px;
  margin: 0 auto; */
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 19%;
}

header strong {
  display: block;
  width: 32.6%;
  margin: 0 auto;
}
.contents__wrap {
  max-width: 768px;
  margin-right: auto;
  margin-left: auto;
  background-color: #fff;
  position: relative;
}
.contents__wrap .header__wrap{
  width: 90%;
  margin: auto;
  padding: 10px 0 50px;
}
.contents__wrap .inner__wrap {
  width: 90%;
  margin: auto;
  padding: 10px 0;
}
/* .bg__wrap {
  background: url(../img/sec03_bg.png) no-repeat;
  background-size: cover;
} */

.bg__wrap .bg__head {
  aspect-ratio: 1 / .191;
  background-color: #fff;
  background-image: url(../img/sec_bg_top.svg);
  background-repeat: no-repeat;
  background-position: 50% 100%;
  background-size: 100% auto;
  color: #000;
  display: block;
  width: 100%;
  height: auto;
  text-align: center;
}

.header__jpp_logo{
  width: 100%;
  margin: 0 auto;
  padding-bottom: 20px;
}
.header__jpp_logo img{
  width: 100%;
}

@media screen and (min-width: 768px) and  (max-width: 1279px) {

  .contents__wrap {
    border-left: 2px solid #0050F0;
    border-right: 2px solid #0050F0;
    max-width: 480px;
  }

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

  .pc__inner {
    max-width: 1280px;
    margin: 0 auto;
  }
  .body__bg__cap {
    display: block;
    position: fixed;
    top: 0;
    right: 52%;
    width: 506px;
    height: 100%;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    align-items: flex-start;
  }
  .body__bg__cap .bg__cap__inner {
    aspect-ratio: 1 / .817;
    width: 100%;
    height: auto;
    transform: translateY(-.5%);
    position: relative;
  }
  .body__bg__cap picture {
    width: 100%;
    margin-bottom: 7%;
  }
  .body__bg__cap a {
    /* background: url(../img/bg_orange.svg) 0 0 / auto repeat;
    color: #fff;
    border-radius: 50vh;
    display: inline-block;
    padding: 21px 0;
    transition: transform 0.3s 0s ease-out;
    position: relative; */

    display: inline-block;
    width: 246px;
    padding: 21px 0;
  }
  .body__bg__cap a svg {
    display: block;
    width: 214px;
    height: 20px;
    margin: auto;
  }

  .body__bg__cap a:before {
    opacity: 0;
    content: "";
    background: rgba(255,255,255,.1);
    border-radius: 50vh;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: all 0.3s 0s ease-out;
  }
  .body__bg__cap a:hover {
    transform: scale(.98);
  }
  .body__bg__cap a:hover:before {
    opacity: 1;
  }
  .contents__wrap {
    border-left: 2px solid #0050F0;
    border-right: 2px solid #0050F0;
    max-width: 480px;
    margin-right: 6.6%;
  }

  .pc_bg_cap{
    /* max-width: 402px; */
    max-width: 480px;
    width: 100%;
    margin: 0 auto;
  }

}


header{
  background: url(../img/mv_bg@2x.png) no-repeat;
  background-size: cover;
  background-position: center bottom;
}

/* fv */
.fv__wrap {
  margin-bottom: 40px;
}
.fv__wrap h1 {
  width: 100%;
  max-width: 420px;
  margin: -1.4% auto 1.4%;
}

@media screen and (max-width: 450px)  {
  .fv__wrap h1 {
    max-width: 343px;
  }
}

.fv__wrap .present__wrap {
  padding: 10px 10px 25px;
  background: #007A70;
  border: 1px #007A70 solid;
  text-align: center;
  margin: 0 auto;
}
.fv__wrap .present__bottom{
  background: #81bcb7;
  border: 1px #007A70 solid;
  border-radius: 0 0 10px 10px;
  text-align: center;
  padding: 25px 0;
}
.fv__wrap_btn{
  padding: 1rem 0 0;
  text-align: center;
}
.fv__wrap_btn a img{
  max-width: 320px;
}


.campaig-id{
  text-align: right;
  font-size: 14px; 
  padding-top: 5px;
}

.present__wrap p {
  margin: 0 auto;
  color: #fff;
}


.present__wrap a {
  border-radius: 50vh;
  background: #FFFF6E;
  text-align: center;
  margin: 20px auto 0;
  padding: 10px 0;
  color: #62C2C8;
  font-size: var(--font_size-16);
  width: 260px;
  height: 34px;
  font-weight: 500;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  transition: all 0.3s 0s ease-out;
  position: relative;
}
/* .present__wrap a span {}
.present__wrap a span:after {
  aspect-ratio: 1/1.125;
  background-image: url('../img/link_icon.svg');
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  display: inline-block;
  width: 16px;
  height: auto;
  position: absolute;
  top: 50%;
  right: 45px;
  transition: all 0.3s 0s ease-out;
} */

.present__title{
  width: 210px;
  margin: 0 auto;
}

.present__text{
  /*max-width: 302px;*/
  width: 100%;
  margin: 15px auto;
}
.present__text2{
  margin-top: 40px;
}

.sec01__date-text {
  font-size: 14px;
  color: #fff;
  line-height: 1.5;
  margin: 15px auto;
  padding: 10px 5px;
  border: 1px solid #fff;
  width: 100%;
}
@media screen and (max-width: 450px) {
  .sec01__date-text {
    font-size: 0.7rem;
  }
}

.campaign_plus{
  margin: 15px 0;
}

.jpp_btn{
  text-align: center;
  padding: 25px 0;
}

.jpp_btn a img {
  width: 100%;
}

/* sec_01 */

/* .sec01__bg{
  background: url(../img/mv_bg@2x.png) no-repeat;
  background-size: contain;
} */



.sec01_bg_top h2{
  display: block;
  margin: 20px auto 10px;
  width: 100%;
}

.sec01_bg_bottom h2{
  padding-top: 25%;
}




.sec_01 {
  padding: 10.2% 0;
  background: url(../img/sec01_bg_top.png) #cddcfb top center no-repeat;
  background-size: 100%;
}
.sec_01 .inner__wrap{
  padding-top: 40px;
}
.sec_01 h2 {
  text-align: center;
  margin: 0 auto 4%;
}
.sec_01 h2 img {
  display: block;
  margin: 0 auto 1.4%;
  width: 100%;
}
.sec_01 .bg__wrap h2 img {
  width: 100%;
}

.sec01__box {
  background: #fff;
  border: 1px #0050F0 solid;
  margin: 2rem 0 0;
  padding: 5% 5% 2%;
}
.sec01__item01::after{
  content: "";
  background: url(../img/arrow_red.svg);
  background-position: 50% 50%;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  width: 80px;
  height: auto;
  aspect-ratio: 1 / .4;
  margin: 0 auto;
}
.sec01__item02{
  margin: 20px 0 0 0;
}
.sec01__text{
  margin: 10px auto !important;
}

/* sec_02 */

.sec_02 {
  padding: 10.2% 0 0;
  background: url(../img/sec02_bg_top.svg) #FFFFFF top center no-repeat;
  background-size: 100%;
}
.sec_02 h2 img {
  width: 100%;
}

.sec_02 .point__item{
  margin-top: 2rem;
}
.point__item h3{
  padding-bottom: 1rem;
}
.point__item h3 img{
  width: 100%;
}




.point__item .point__inner {
  /* background-position: 50% 0;
  background-size: contain;
  background-repeat: no-repeat;
  position: relative;
  width: 90%;
  margin: 0 auto; */
  text-align: center;
}

.txtred{
  color: #E50000;
}

.point__text{
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (max-width: 450px) {
  .point__text{
    font-size: 1.55rem;
  }
}

.point__text-lg{
  font-size: 2.25rem;
}
.point__text-lg .num{
  font-size: 2.7rem;
}

.point__box{
  border: 2px #0050F0 solid;
  background-color: #F3FAFF;
  padding: 1.5rem 0 1rem;
  position: relative;
  /* max-width: 400px; */
  margin: 20px auto 0;
}

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

.point__box .point__boxinner p{
  font-size: 1.2rem;
  font-weight: 500;
  text-align: left;
  line-height: 1.7;
}
@media screen and (max-width: 450px) {
  .point__box .point__boxinner p{
    font-size: 1.1rem;
  }
}
.sec_02_point01_01{
  width: 20%;
  margin-top: -3rem;
}
.sec_02_point01_01 img{
  width: 100%;
}

.sec_02_point01_02{
  margin-top: 1rem;
}
.sec_02_point01_02 img{
  width: 90%;
}


.point__box .jpp_icon{
  width: 21.5%;
}
.point__box .jpp_icon img{
  width: 100%;
}
.point02__box{
  background: #fff;
  border-radius: 10px 10px 0 0;
  margin: 20px 20px 0;
}

.point02__box .point02__title{
  font-size: 18px;
  color: #fff;
  background: #0050F0;
  border-radius: 10px 10px 0 0;
  padding: 0.5rem 0;
}

.point02__box .icon__list{
  display: flex;
  justify-content: space-around;
  align-items: center;
  padding: 0 20px;
}

.point02__box .icon__list li{
  margin-top: 15px;
} 

.point02__box .point__pic__att{
  padding: 1rem 1.5rem 0;
  font-size: 0.9rem;
  text-align: left;
  color: #575757;
  line-height: 1.5;
}

.sec_02_point_02_btn{
  padding: 30px 0 20px;
}

.sec_02_point_02_btn img{
  width: 84.82%;
}

.sec02__note{
  text-align: left;
  color: #575757;
  margin: 1.5rem 0 0;
  font-size: 0.9rem;
}
@media screen and (max-width: 450px) {
  .sec02__note{
    margin: 1rem 0 0;
  }
}

.sec_02_point_03_head_sub{
  /* width: 274px; */
  margin: 0 auto 15px;
}
.sec_02_point_03_head_sub img{
  width: 84.3%;
}
.sec_02_point_03_mv{
  /* width: 325px; */
  margin: 0 auto;
}
.sec_02_point_03_mv img{
  width: 91.69%;
}

.point03__text{
  font-size: 1.2rem;
  font-weight: 500;
  margin-bottom: 1.5rem;
}

.sec_02_point04_01{
  width: 30.5%;
  margin-top: -2.5rem;
}
.sec_02_point04_01 img{
  width: 100%;
}


.sec_02_point04_02{
  margin-top: 20px;
}

/* sec_03 */
.sec_03 {
  padding: 10.2% 0 0;
  background: url(../img/sec03_bg_top.svg) #CEE7FF top center no-repeat;
  background-size: 100%;
}



.sec_03_head {
  margin: 0 auto;
  padding: 1rem 0 1.5rem;
  text-align: center;
}
.sec_03_head img {
  width: 95.07%;
}

.sec_03 .tab__btn__list {
  display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
  z-index: 1;
  padding-bottom: 20px;
}
.tab__btn__list li {
  width: calc(100% / 3);
  border: 2px solid #0050F0;
  background: #fff;
  overflow: hidden;
  margin-right: 10px;
}
.tab__btn__list li:nth-child(2) {
  margin-right: 10px;
}
.tab__btn__list li:nth-child(3) {
  margin-right: 0;
}
.tab__btn__list li a {
  display: block;
  text-align: center;
  color: #0050F0;
  padding: 20px 0;
  line-height: 1.18;
  font-weight: 500;
  transition: all 0.3s 0s ease-out;
}

.tab__btn__list li a:hover {
  background: rgba(0, 80, 240, 0.15);;
}
.tab__btn__list li.active a {
  color: #fff;
  background: #0050F0;
}

.sec_03 .tab__cont__wrap {
  background: #fff;
  border: 2px solid #0050F0;
}

.tab__cont__wrap .tab__item {
  padding: 0 6.2% 6.2%;
  text-align: center;
}
.tab__item:not(.active) {
  display: none;
}
.tab__cont__wrap h3 {
  /* width: 93.6%; */
  margin: 1rem auto;
}
.tab__cont__wrap h3 img{
  width: 100%;
}


.item__hum__fx picture {
  width: 20.76%;
}

.item__hum__fx h3 em {
  color: #e18000;
}
.tab__item ul.icon__list {
  display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
  padding-bottom: 1.5rem;
  position: relative;
}
.tab__item .icon__list:after {
  content: "";
  background-image: url(../img/example_border.svg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  width: 100%;
  aspect-ratio: 1 / .012;
  height: auto;
  left: 0;
}

.icon__list li {
  text-align: center;
  width: 30%;
}
.icon__list li img {
  margin-bottom: 6%;
  width: 100%;
}
.icon__list li p {
  font-size: var(--font_size-12);
  line-height: 1.3;
  width: 120%;
  margin: 0 -10%;
}

.aeon-logo img{
    max-width: 75px;
}

.tab__item div.graph {
  position: relative;
  margin-bottom: 0.5rem;
}
.tab__item .graph img {
  width: 100%;
  margin-bottom: 0.5rem;
}
.tab__item .graph:after {
  content: "";
  background: url('../img/arrow_red.svg');
  background-position: 50% 50%;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  width: 18.42%;
  height: auto;
  aspect-ratio: 1 / .4;
  margin: 0 auto;
}
.tab__item h4 {
  font-size: var(--font_size-17);
  text-align: center;
  font-weight: bold;
  margin-bottom: 6.6%;
}
.tab__item h4 img {
  width: 85.6%;
  margin: 6% auto 1%;
}
.tab__item .item__example {
  
}


.item__example-mile{
  font-size: 1.8rem;
}

.example__img__wrap:first-child:after {
  aspect-ratio: 1 / .012;
  content: "";
  display: block;
  width: 93.98%;
  height: auto;
  margin: 0 auto;
  background-image: url(../img/example_border.svg);
  background-position: 50% 0;
  background-repeat: no-repeat;
  background-size: contain;
}
.example__img__wrap {
  position: relative;
}
.example__img__wrap img{
  width: 100%;
}
.example__img__wrap .hum {
  width: 17.28%;
  position: absolute;
  top: -8%;
  left: -2%;
}
.example__img__wrap .hum + .img + p {
  margin-bottom: 9%;
}
.example__img__wrap picture.img {
  margin-bottom: 1%;
}
.example__img__wrap .img img {
  width: 100%;
}
.example__img__wrap p {
  font-size: 1.35rem;
  font-weight: 500;
  line-height: 1.44;
  margin: 1rem 0;
}
.example__img__wrap p .small{
  font-size: 0.9rem;
}
.example__img__wrap ul li {
  text-align: left;
  color: #575757;
  font-size: 0.9rem;
}
.example__img__wrap + h4 {
  margin-bottom: 4.4%;
}
.example__img__wrap + h4 img {
  margin-top: 0;
  width: 88.72%;
}
.sec_03__more__wrap {
  padding-top: 14%;
}
.sec_03__more__wrap strong {
  display: block;
  margin: 0 auto 13%;
  width: 24.3%;
}
.sec_03__more__wrap .sec_03__more__inner {
  background: #fff;
  border-radius: 20px;
  padding: 6.8% 0 9.2%;
}
.sec_03__more__inner > span {
  display: block;
  width: 16.66%;
  margin: 0 auto .8%;
}
.sec_03__more__inner h3 {
  text-align: center;
  font-weight: bold;
  font-size: var(--font_size-16);
  line-height: 1.2;
  margin-bottom: 2.2%;
}
.sec_03__more__inner picture {
  width: 92.36%;
  margin: 0 auto 4.4%;
}
.sec_03__more__inner picture + p {
  font-size: var(--font_size-14);
  font-weight: 500;
  line-height: 1.36;
  margin: 0 auto 2%;
  width: 92.36%;  
}
.sec_03__more__inner p.sec_03__more__att {
  color: #717071;
  font-size: var(--font_size-12);
  line-height: 1.28;
  margin: 0 auto 7.8%;
  width: 92.36%;
  letter-spacing: -.05em;
}
.sec_03__more__inner .link__wrap a {
  color: #e18000;
  font-size: var(--font_size-16);
  letter-spacing: -.05em;
  font-weight: 500;
  transition: all 0.3s 0s ease-out;
  width: 90%;
  display: inline-block;
  border-radius: 3px;
  padding: .23em 0;
}
.sec_03__more__inner .link__wrap a i {
  width: .86em;
  height: auto;
  display: inline-block;
  margin-left: 0.3em;
}
.sec_03__more__inner .link__wrap a i svg {
  aspect-ratio: 1 / 1;
  transition: all 0.3s 0s ease-out;
  fill: #e18000;
}
.sec_03__more__inner .link__wrap a:hover {
  background: rgba(225, 127, 0, 0.5);
  color: #ffffff;
}
.sec_03__more__inner .link__wrap a:hover i svg {
  fill: #fff;
}

.sec03__box{
  background: #fff;
  border: 2px #0050F0 solid;
  border-radius: 20px;
  margin: 2.5rem 0 0;
  padding: 6.2%;
  text-align: center;
  position: relative;
}
.sec03__box .photo{
  width: 100%;
}
.sec_03_head_more{
  width: 75.86%;
  margin: -3rem auto 1rem;
}
@media screen and (max-width: 450px) {
  .sec_03_head_more{
    margin: -2.5rem auto 0;
  }
}

.sec_03_head_more img{
  width: 100%;
}

.sec03__more__text{
  font-size: 1.1rem;
  font-weight: 500;
  margin-bottom: 1rem;
}
@media screen and (max-width: 450px) {
  .sec03__more__text{
    font-size: 1rem;
  }
}

.sec03__more__text .point__text-lg{
  font-size: 1.8rem;
  padding-top: 0.3rem;
  display: block;
}

.sec03__more__text02{
  font-size: 1.2rem;
  font-weight: 500;
  margin-top: 1rem;
  line-height: 1.5;
}
@media screen and (max-width: 450px) {
  .sec03__more__text02{
    font-size: 1.05rem;
  }
}

/* sec_04 */

.sec_04 {
  padding-top: 25%;
  padding-bottom: 13.6%;
  text-align: center;
}

.sec04__box{
  padding: 15px 6%;
  background: #62C2C8;
  border: 1px #62C2C8 solid;
  text-align: center;
  margin: 0 auto;
}

.sec04__text{
  font-size: 24px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 10px;
}

.sec04__date-text{
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  line-height: 1.5;
  margin: 15px auto;
  padding: 10px 5px;
  border: 1px solid #fff;
  width: 290px;
}

.sec_04_img_03{
  background: #B0E0E2;
  border-radius: 0 0 10px 10px;
  padding: 15px 0;
}
.sec_04_img_03 img{
  width: 290px;
}

/* sec_05 */
#campaign {
  padding-top: 80px;
  margin-top: -80px;
}
.sec_05 {
  background: #CEE7FF;
  padding-top: 2.5rem;
}
.sec05_bg__area {
  background: #FFE3F2;
}

.sec05__box,
.sec05__box-last{
  /* width: 350px;
  margin: 0 auto; */
  display: flex;
  border: 2px solid #007A70;
  margin: 1rem 0 0;
}
.arrow__box::after{
  content: "";
  background: url(../img/arrow_green.svg);
  background-position: 50% 50%;
  background-size: contain;
  background-repeat: no-repeat;
  display: block;
  width: 10.46%;
  height: auto;
  aspect-ratio: 1 / .4;
  margin: 0 auto;
}

.sec05__box__inner{
  color: #fff;
  background: #007A70;
  padding: 1rem;
  flex: 0 1 83.4%;
}

.sec05__text{
  font-weight: 500;
  font-size: 1.1rem;
}

.sec05__date{
  font-size: 1.1rem;
  font-weight: 300;
  margin-top: 5px;
}

.sec05__title{
  flex: 0 1 16.6%;
  text-align: center;
  background: #FFFF00;
  align-content: center;
}
.sec05__imgbox{
  margin: 1rem 0 2rem;
  text-align: center;
}
.sec05__imgbox img{
  width: 100%;
}


.sec05__more{
  text-align: center;
  margin-top: 3rem;
}
.sec05__more img{
  width: 59%;
}
.sec05__box.more{
  display: block;
}
.more .sec05__text{
  text-align: center;
}
.more .sec05__date{
  text-align: center;
}


.sec05_btn{
  padding: 1rem 0;
  text-align: center;
}
.sec05_btn a img{
  max-width: 320px;
}



.att__wrap {
  padding: 8.6% 0;
}
.att__wrap h3 {
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  margin: 0 auto 6.4%;
}
.att__wrap > * {
  color: #000;
  position: relative;
}
.att__wrap .att__list__wrap {
  position: relative;
  /* letter-spacing: -.05em; */
  background: #fff;
  border: 1px solid #000;
  border-radius: 10px;
  padding: 1rem 1.5rem;
}
.att__list__wrap .att__list__item {
  position: relative;
}
.list__item__wrap{
  border-bottom: 2px solid #D7D7D7;
}
.list__item__wrap.last {
  border-bottom: none;
}

/* .att__wrap dl:before {} */
.att__list__item .att__btn {
  font-size: 1.05rem;
  font-weight: 500;
  position: relative;
  transition: all 0.3s 0s ease-out;
  cursor: pointer;
  padding: 1rem 0;
}

@media screen and (max-width: 450px)  {
  .att__list__item .att__btn {
    font-size: 14px;
  }
}

.att__btn-last{
  border-radius: 0 0 10px 10px;
  border-bottom: 1px solid #000;
  padding: 0 0 10px 20px;
}

.att__btn-last.open{
  border-radius: 0;
  border-bottom: none;
}

.att__btn-last:first-child::before{
  content: "";
  display: block;
  width: 85%;
  height: 1px;
  background-color: #000;
  margin: 0 auto;
}

.att__btn span {
  display: block;
}
.att__btn span:after {
  aspect-ratio: 1/0.6;
  background-image: url('../img/att_open.svg');
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  top: 35%;
  right: 0;
  width: 40px;
  height: auto;
  transition: transform 0.3s 0s ease-out;
}

.att__btn-last span:after {
  top: 39%;
}

.att__btn.open span:after {
  background-image: url('../img/att_close.svg');
}

.att__list__wrap:before,
.att__list__item:before,
.att__btn:before,
.att__btn.open + .att__cap:before {
  top: -1.5px;
  top: min(-0.312vw,-2px);
  z-index: 1;
}
.att__list__item:after,
.att__btn:after {
  bottom: -1px;
  bottom: min(-0.312vw,-2px);
  z-index: 1;
}
.att__cap + .att__btn:not(.open):before {
  bottom: -1px;
  bottom: min(-0.312vw,-2px);
}
.att__list__item:has(.att__btn:not(.open)) + .att__list__item:before {
  opacity: 0;
}
_::-webkit-full-page-media, _:future, :root .att__list__wrap:before,
.att__list__item:before,
.att__btn:before,
.att__btn.open + .att__cap:before {
  top: -1.5px;
}
_::-webkit-full-page-media, _:future, :root .att__list__item:after,
_::-webkit-full-page-media, _:future, :root .att__btn:after {
  bottom: -1px;
}
_::-webkit-full-page-media, _:future, :root .att__cap + .att__btn:not(.open):before {
  bottom: -1px;
}
/* .att__btn:hover {
  background: rgba(3, 55, 94, 0.8);
} */
/* .att__btn.open {
  background: #fff;
  border: none;
  border-top: 1px solid #000;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  border-radius: 10px 10px 0 0;
} */
/* .att__btn.open + .att__cap {
  background: #fff;
  border-left: 1px solid #000;
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
  border-radius: 0 0 10px 10px ;
} */
.att__cap {
  font-size: 1.05rem;
  position: relative;
  padding: 1rem 0;
  /* margin-right: 1.5rem;
  padding: 4.2% 3% 2%;
  line-height: 1.34; */
  display: none;
}

.att__cap strong {
  font-size: var(--font_size-15);
  display: block;
  line-height: 1;
  margin-bottom: 3%;
}
.att__cap em {
  font-size: var(--font_size-16);
  display: block;
  margin-bottom: .8%;
}
.att__cap p {
  font-size: var(--font_size-14);
}
.att__cap ul li {
  margin-bottom: .8%;
}
.att__cap ul li:before {
  content: "";
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"><circle class="st0" cx="3" cy="3" r="3" fill="%23ffffff"/></svg>');
  background-size: cover;
  background-repeat: no-repeat;
  aspect-ratio: 1 / 1;
  margin-right: .2em;
  width: .43em;
  display: inline-block;
  margin-bottom: .15em;
}
.att__cap ul li {
  font-size: var(--font_size-14);
}
.att__cap p {
  font-size: 0.9rem;
  /* letter-spacing: -.05em; */
  padding-left: 1em;
  text-indent: -1em;
  color: #808080;
}

.att__cap ul + span {
  margin-bottom: 6.4%;
}
.att__cap p {
  line-height: 1.48;
}

.footer_img{
  margin: 0 auto;
  padding-bottom: 15px;
}
.footer_img img{
  width: 100%;
}




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

  .att__list__wrap:before,
  .att__list__item:before,
  .att__btn:before,
  .att__btn.open + .att__cap:before {
    top: -1.5px;
    z-index: 1;
  }
  .att__list__item:after,
  .att__btn:after {
    bottom: -1px;
    z-index: 1;
  }
  .att__cap + .att__btn:not(.open):before {
    bottom: -1px;
  }

}

/*@media screen and (min-width: 768px) and (max-width: 1279px) {

  .fixed__cv__wrap {
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 480px;
  }

}

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

  .fixed__cv__wrap {
    display: none !important;
  }

} */

@media screen and (min-width: 1280px) {
  .btn-fixed {
    display: none!important;
  }
}
@media screen and (max-width: 1280px) {
  .btn-fixed {
    margin: 0 auto;
    display: block;
    text-align: center;
    z-index: 100;
    max-width: 480px;
    width: 100%;
    background: rgba(85, 129, 219, 0.5);

    background: rgb(255, 255, 255, 0.5);
    padding: 10px 0;
  }
  .btn-fixed a img{
    max-width: 320px;
  }
}

footer {
  background: #0050F0;
  color: #fff;
  padding: 1.5rem 0;
}

@media screen and (max-width: 1280px) {
  footer {
    padding: 1.3rem 0 25%;
  }
}

footer p {
  font-size: var(--font_size-12);
  text-align: center;
}


.font22{
  font-size: 1.65rem;
}
.font18{
  font-size: 1.35rem;
}
@media screen and (max-width: 450px) {
  .font22{
    font-size: 1.4rem;
  }
  .font18{
    font-size: 1rem;
  }
}

.pc_hidden{
  display: none;
}
@media screen and (max-width: 450px) {
  .pc_hidden{
    display: block;
  }
}

.txtLink{
  padding-left: 18px;
  background: url(/commonY15/img/icon_ext_red_01.png) 0 5px no-repeat;
  color: #0f0f69;
}
.txtLink:hover{
  text-decoration: underline;
}