/* ############################
GROWUP Ver1.0 CSS
############################ */


/* ############################
リセットCSS START
############################ */

*, *:before, *:after {
box-sizing: border-box;
}

/* マージン、パディング、ボーダーをリセット */
body, h1, h2, h3, h4, h5, h6, p, ol, ul, li, figure, figcaption, blockquote, dl, dd {
margin: 0;
padding: 0;
border: 0;
}

/* リストスタイルをリセット */
ol, ul {
list-style: none;
}

/* フォント継承をリセット */
html {
font-family: sans-serif;
}

/* リンクのスタイルをリセット */
a {
text-decoration: none;
color: inherit;
}

/* 画像のスケーリングを防ぐ */
img {
max-width: 100%;
height: auto;
display:block;
}

/* テーブルのボーダースパイシングとボーダーコラプスをリセット */
table {
border-collapse: collapse;
border-spacing: 0;
}

/* その他の基本的なスタイルリセット */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
display: block;
}

/* ############################
リセットCSS END
############################ */


/* contents */

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

img.hidden {
opacity: 0;
animation: fadeIn 0.5s ease-in 0.2s forwards;
}

@keyframes fadeIn {
to {
opacity: 1;
}
}


body{
max-width:700px;
margin:0 auto!important;
position: relative;
}

.btn-area{
position: relative;
}

.btn1,.btn2,.btn3,.btn4{
position: absolute;
left: 10%;
width:80%;
animation: zoom 1s alternate infinite;
z-index:1;
}

@keyframes zoom {
  0% {
    transform: scale(1); /* 初期サイズ */
  }
  100% {
    transform: scale(1.1); /* 1.2倍に拡大 */
  }
}
.btn1{
bottom: 3%;
}

.btn2{
bottom: 3%;
}

.btn3{
bottom:-1%;
left: 4%;
width:90%;
}

.btn4{
bottom:3%;
}

.form-absolute{
position: absolute;
bottom:48%;
left: 4%;
}

.n-btn-area img{
margin:0 auto;
}

table{
width:90%;
text-align:left;
margin:0px auto 40px;
}

table th,table td{
width:100%;
display:block;
}

table th{
margin-top:30px;
}

#fpoint table{
position: absolute;
width: 90%;
top:15%;
left:3.8%;
}

input{
width:100%;
padding:20px;
border-radius:10px;
border:solid 1px #000;
}

input[type="image"]{
border:none;
}

.required,.err{
color:red;
}

.btn-fix{
position: fixed;
bottom:0;
box-sizing: border-box;
width: clamp(0%, 100%, 700px);
padding: 10px;
}

.btn-fix img{
width:100%;
}

.sec10{
padding-bottom:150px;
}

.sec10 h2{
font-weight:700;
margin:60px auto;
position: relative;
background:#FF00A7;
color:#FFF;
padding:15px;
}


/* popup */
#overlay {
z-index:100;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7); /* グレーアウト効果 */
    display: none;
}

#popupA,#popupB {
z-index: 1000;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
    max-width: 90%;
}

#popupB{
height:100%;
}

.popupB-sec img{
height:100vh;
}

#popupA img.popup-img-bottom,#popupB img.popup-img-bottom{
height: 100vh;
width:auto;
}

#popupA img.popup-img-btn{
position:absolute;
    top: 83%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.close-btn{
width:70px!important;
height:auto!important;
position: absolute;
top: 0;
left: 0;
background: none;
}

footer{
background:#88D9FF;
padding:30px 0;
text-align:center;
font-size:0.7rem;
}

footer a{
display:inline-block;
padding:5px;
}


@media (max-width: 700px) {
.copyright span{
display:block;
padding-top:10px;
}
table th{
margin-top:5px;
}
input{
padding:15px;
}
.sec10{
padding-bottom:0vw;
}
.btn2{
bottom:3.2%;
}
#popupA img{
height:auto;
width:95%;
display:block;
margin:0 auto;
}
.close-btn{
width: 50px !important;
left: 9px;
}
#popupA,#popupB{
width:90%;
}
#popupA img.popup-img-bottom{
height:auto;
width:auto;
}
#popupB,.popupB-sec img{
height:auto;
}

}


/* ##########################################
特定商取引法に基づく表記|プライバシーポリシー
########################################## */

.low-content td,.policy-content td{
line-height:2.0;
}

.policy-content th{
text-align:left;
}

.policy-content h1 span{
display:block;
font-size:1.4rem;
}

.policy-content table,.low-content table{
width:100%;
font-size:1rem;
}

.low-content h1,.policy-content h1{
font-size:2rem;
margin-top:40px;
}
.policy-content table th,.policy-content table td
,.low-content table th,.low-content table td{
width:100%;
display:block;
}
.policy-content table th,.low-content table th{
background:#666;
color:#FFF;
padding:10px;
}
.thumnail .slick-track{
justify-content: center!important;
}