@charset "utf-8";

/* common
-------------------------------------------------------*/
body{
      background-color: #fff;
}
section{
  font-weight: 400;
  font-style: normal;
  margin: 0 auto;
  }
h1{
  position: relative;
    z-index: 1;
}
h2{
font-optical-sizing: auto;
font-weight: bold;
font-style: normal;
}
.mv-top{
  position: relative;
    z-index: 1;
}
.contents__body {
padding: 0;
}

section{
  background: none;
}

.p-home__mv h1{
padding:2% 1%;
}


/* ファーストビュー
----------------------------------------------- */
.lead{
  font-size: 0.95rem;
  font-weight: 550;
  line-height: 2rem;
  color: #000000;
  margin: 2%;
  background-color: #FFFFFF;
  font-family: "Tsukushi A Round Gothic","Noto Sans", "M PLUS Rounded 1c", "ヒラギノ丸ゴ ProN",
  "Hiragino Maru Gothic ProN", "Meiryo", "メイリオ";
}
.mv-read{
  position: relative;
    z-index: 0;
    margin: 2% 9.5% 5%;
}
/* ボディ
----------------------------------------------- */
.contents__body{
	line-height: 1.8;
  position: relative;
  z-index: 1;
  margin-top: 10%;
  padding-bottom: 12%;
}

.contents__box00{
 margin-top: 20%;
 padding: 26% 0;
  }
.contents__box{
 margin-top: 8%;
 padding: 0;
  }

.contents__box10{
  margin-top: 10%;
  }
.contents__box-10{
  margin-top: -10%;
  }
.contents__box-taidan{
  margin-top: 10%;
padding: 20% 5% 10%;
                }

.bottom-fixed-button {
   position: fixed;
    bottom: 4%;
    width: 90%;
    right: 50%;
    left: 50%;
    padding: 0 10px;
    max-width: 1000px;
    margin: 0 auto;
    transform: translate(-50%, -50%);
}

.period_frame{
  padding: 0%;
    margin-top: -32%;
    display: inline-block;
}



.p-home__section {
  padding: 0 ;
  margin: 0 ;
}

.p-home__section-inner3 {
  width: 100%;
  margin: 0 auto;
  padding:4% 4% 0;
  margin-top: -15%;
  position: relative;
    z-index: 0;
}
.p-home__section01-item {
  margin: 10px auto;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/index_img_01.png);
  background-repeat:no-repeat;
  background-size: contain;
  padding: 17% 4% 5%;
}
.p-home__section02-item {
  margin: 10px 2% 10%;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/index_img_02.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 10% 6% 5%;
}

.p-home__section03-item {
  margin: 15% 2% 15%;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg03.png);
  background-repeat: repeat;
  background-size: contain;
  padding: 0 0 0; /* Ensure no bottom padding */
  position: relative;
  overflow: visible !important; /* 親要素からはみ出した部分を表示 */
}
.p-home__section03-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: -20vw; /* ここで外側に突き出す */
  width: 100%;
  height: 20vw; /* 画像の高さをビューポート基準で設定 */
  
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/index_img_02_top.png);
  background-size: contain; /* 画像全体を見せる */
  background-position: center bottom;
  background-repeat: no-repeat;
  pointer-events: none; /* クリック不可にする */
}
.p-home__section03-item::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -7vw; /* ここで外側に突き出す */
  width: 100%;
  height: 20vw; /* 画像の高さをビューポート基準で設定 */
  
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/index_img_02_bottom.png);
  background-size: contain; /* 画像全体を見せる */
  background-position: center bottom;
  background-repeat: no-repeat;
  pointer-events: none; /* クリック不可にする */
}

.p-home__section04-item {
  margin: 10px 2% 5%;
  padding: 0% 0 25%;
}

.p-home__section01-item a {
  display: block;
  padding: 7% 4% 7%;
}

main img {
  width: 100%;
}

.contents__body{
  padding: 5% 0 0;
}
.contents__bod2{
  padding: 0% 0 0;
}

.contents__body_main01{
  padding: 0% 5% 2%;
}
.contents__body_main02{
  padding: 3% 5% 3%;
}
.contents__body_main03{
  padding: 3% 6% 5%;
}
.contents__body_main04{
  margin: 3% 6% 5%;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg01_02.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 11% 7%;
}
.contents__body_main04 p{
  display: block;
    margin-top: 2%;
}
.contents__body_main04 a{
  font-size: 0.7rem;
    font-weight: 500;
    color:  #404040 ;
    margin-top: 2%;
    border-bottom: 1px solid #404040;
}

.contents__body_main05{
  padding: 0 0 2%;
  margin-top: -48%;
}
.contents__body_main06{
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg06_02.png);
  background-repeat: no-repeat;
  background-size: contain;
  padding: 4% 0 5%;
  margin: 2% 4% 8%;
}

.p-home__section01-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg01.png);
  background-repeat: repeat-y;
  background-size: contain;
  padding: 0% 0 58%;
}
.p-home__section02-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg02.png);
  background-repeat: repeat;
  background-size: cover;
  padding: 0 0 30%;
  margin-top:-25%;
}
.p-home__section03-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg03.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 10% 0 0%;
  margin-top: -30%;
}
.p-home__section04-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg04.png);
  background-repeat: repeat;
  background-size: cover;
  padding: 6% 0 25%;
  margin-top: 0%;
}
.p-home__section05-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg05.png);
  background-repeat: repeat;
  background-size: cover;
  padding: 4% 0 8%;
  margin-top: -45%;
}
.p-home__section06-bg {
  background-color: #ffe422;
  padding: 0 0 5%;
  margin-top: -15%;
}
.p-home__section07-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg07.png);
  background-repeat: no-repeat;
  background-size: cover;
  padding: 2% 0 5%;
  margin-top: -23%;
}
.p-home__section08-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg08.png);
  background-repeat: repeat;
  background-size: cover;
  padding: 18% 0 15%;
  margin-top: -12%;
}
.p-home__section09-bg {
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/bg09.png);
  background-repeat: repeat;
  background-size: cover;
  padding: 10% 0 10%;
  margin-top: -10%;
}

.btn00 {
  display: block;
  margin-top: 10px;
}
.btn50 {
  display: block;
  width: 50%;
  margin: -30% 0 0 38%;
}
.btn50_02 {
  display: block;
  width: 50%;
  margin: -26% 0 0 38%;
}
.btn50_03 {
  display: block;
  width: 50%;
  margin: -32% 0 0 38%;
}
.btn50_04 {
  display: block;
  width: 50%;
  margin: -28% 0 0 38%;
}
.btn70 {
  display: block;
  width: 70%;
  margin: 0 auto;
  margin-top: 5%;
  margin-bottom: 5%;
}
.btn80 {
  display: block;
  width: 80%;
  margin: 0 auto;
  margin-top: 5%;
}
.btn85 {
  display: block;
  width: 85%;
  margin: 0 auto;
  margin-top: 3%;
}
.btn85_02 {
  display: block;
  width: 85%;
  margin: 0 auto;
  margin-top: 5%;
}
.btn90 {
  display: block;
  width: 90%;
  margin: 0 auto;
  margin-top: 5%;
}
.btn95 {
  display: block;
  width: 95%;
  margin: 0 auto;
  margin-top: 5%;
}

.p-home__section05-item02 {
  margin-top: 25px;
    padding: 3% 0;
    background-color: #FFF;
}

.p-home__section05-txt {
  color: #000000;
    padding: 3% 0;
    font-size: 0.87rem;
}

.p-home__section05-txt p {
  margin-top: 16px;
}

.p-home__section05-txt p:first-child {
  margin-top: 6%;
}

.wrap {
  position: relative;
  z-index: 1;
}

.bottom-fixed-button {
  z-index: 2;
}
.cp01{
}
.p-home__section05-item01{
  margin: 5% 0;
}
.contents__btn{
  background-color: #fff;
}

.contents__body_title{
  margin: 5% 4% 0; 
  padding-top:0%;
}
.contents__body_title2{
  margin: 5% 0 5%; 
  padding-top:32%;
  padding-bottom:5%;
}

.canpen_waku{
  margin: -4% 5% 5%;
}
.canpen_tyusyaku{
  padding: 3% 3% 9%;
    border-top: 2px dotted #000000;
    border-bottom: 2px dotted #000000;
    margin: 3%;
}
.canpen_tyusyaku_text{
    font-size: 2.7vw !important;
}
.inline-link {
  margin-top: -44px;
  position: absolute;
}
.ranking10-02{
  margin:8% auto;
  width:90%;
}
.ranking04{
  margin:8% auto 3%;
  width:90%;
}
.ranking03{
  margin:0% auto;
  width:90%;
}
.ranking02{
  margin:3% auto;
  width:90%;
}

.small{
  font-size: 1rem;
}
/* 2つのブロックで共通するスタイル */
.container {
  margin: 5%; /* 中央に配置 */
  border-radius: 20px;
  padding: 5% 3%;
  box-sizing: border-box;
  position: relative;
  color: #000000; /* テキスト基本色は黒 */
  text-align: center;
  font-family: "ta-kakugo-gf-01", sans-serif;
font-weight: 400;
font-style: normal;
}

/* iOS版用コンテナ */
.container-ios {
  background-color: #43B6E8; /* 青系 */
}

/* Android版用コンテナ */
.container-android {
  background-color: #F27970; /* サーモンピンク系 */
}
.button:hover {
  opacity: 0.8; /* ホバー時のエフェクトはお好みで */
}


  /* aupay */
  .aupay_box {
    background-color: #fff;
    margin: 4% 4% 20%;
    padding: 2% 4% 0;
		position: relative;
  }
	.aupay_box:before,
	.aupay_box:after{
		position: absolute;
		left: 0;
		content: "";　
    display: inline-lock;
    width: 20px;
    height: 20px;
	}
	.aupay_box:before{
    content: '';
    width: 100%;
    height: 4%;
    background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/wh_top.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    bottom: 99%;
	}
	.aupay_box:after{
    content: '';
    width: 100%;
    height: 4%;
    background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/wh_bottom.png);
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
		top: 100%;
	}
  
  .aupay_title {
    text-align: center;
    width: 100%;
    margin-bottom: 10px;
    padding:0 3%;
  }
  .aupay_title2 {
    text-align: center;
    width: 100%;
    padding:0 2%;
  }
  .aupay_content {
    display: flex;
    width: 100%;
    position: relative;
    align-items: stretch; 
  }
  
  .aupay_btn {
    text-align: center;
    width: 100%;
    padding:2% 2% 2%;
  }
  
  .aupay_btn p {
    font-weight: 600;
    color: #404040;
    font-size: 1.5rem;
  }



  @media screen and (max-width: 600px) {
    .aupay_btn p {
      font-size: 1rem;
  }
  }
  @media screen and (max-width: 480px) {
    .aupay_btn p {
      font-size: 0.7rem;
  }
  }
  
  @media (max-width: 960px) {
    .aupay_btn p {
      font-size: 1rem;
  }
  }





  .aupay_right {
    text-align: center;
    width: 55%;
    box-sizing: border-box;
    position: absolute;
    left: 45%;
    z-index: 2;
  }

.Lchiki_quiz{

  padding:10%;
  position: relative;
  margin: 5%;
}
.accordionImage {
  display: none;  /* 初期状態で非表示 */
  opacity: 0;     /* 透明にする */
  overflow: hidden;
}
.pickup_img{
  padding: 5% 2%;
}
.line2{
  width:99%;
}
.accordionImage p{
  font-size: 4vw;
    font-weight: 600;
    color: #404040;
    text-align: center;
}
.accordionImage p b{
  font-size: 4.5vw;
    font-weight: 600;
    color: #404040;
    text-align: center;
}
.accordionImage p span{
  font-size: 3.5vw;
    font-weight: 600;
    color: #404040;
    text-align: center;
}


.accordionImage a {
  border-bottom: 1px solid #0076D6;
  color: #0076D6;
}

/*----------------------------------------------------------
link
----------------------------------------------------------*/
.linkBlock {
  position: relative;
}
.linkBlock__item {
  position: absolute;
}
.linkBlock__anchor {
  display: inline-block;
}
.linkBlock__img {
  width: 100%;
}


/* あんしんバナー変更20250211- */
.linkBlockType01__linkList__item-anshin {
  top: 0;
  right: 7.962962963%;
  bottom: 0;
  left: 7.962962963%;
}


 /* aupay */
 .eiga_box {
  background-color: #fff;
  margin: 30% 5% 5%;
  position: relative;
  border-radius: 20px;
}
.eiga_box2 {
 background-color: #fff;
 margin: 2% 5% 20%;
 position: relative;
 border-radius: 20px;
}
.eiga_box3 {
 background-color: #fff;
 margin: 25% 5% 5%;
 position: relative;
 border-radius: 20px;
}
.eiga_box:before,
.eiga_box:after,
.eiga_box2:before,
.eiga_box2:after,
.eiga_box3:before,
.eiga_box3:after{
  position: absolute;
  left: 0;
  content: "";　
  display: inline-lock;
}
.eiga_box:before{
  content: '';
  width: 100%;
  height: 60%;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/eiga_box_top01.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  bottom: 74%;
}
.eiga_box3:before{
  content: '';
  width: 100%;
  height: 60%;
  background-image: url(https://cdn.pass.auone.jp/koto/special/images/article/20250506_01/eiga_box_top03.png);
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
  bottom: 72%;
}
  
.eiga_box_title,
.eiga_box_title2{
  text-align: center;
  width: 100%;
  margin-bottom: 10px;
  padding:6% 10%;
  background-color: #E1586C;
  border-radius: 20px 20px 0 0 ;
}
.eiga_box_title3{
  text-align: center;
  width: 100%;
  margin-bottom: 10px;
  padding:6% 10%;
  background-color: #FF7C23;
  border-radius: 20px 20px 0 0 ;
}

.eiga_box_contents,
.eiga_box_contents2,
.eiga_box_contents3,
{
  text-align: center;
  width: 100%;

}

/*----------------------------------------------------------
floating
----------------------------------------------------------*/
.floating-button {
  z-index: 2;
  position: fixed;
      bottom: 4%;
      width: 90%;
      right: 50%;
      left: 50%;
      padding: 0 10px;
      max-width: 1000px;
      margin: 0 auto;
      transform: translate(-50%, -50%);
}

.button-image {
width: 100%;
object-fit: cover;
}