@charset "UTF-8";

*{
padding:0;
margin:0;
}
a{ color:#ffffff;}

body{
	font-size: 14px;
	line-height: 160%;
	color: #ccc;
	font-family: 'Lucida Grande',
 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',
 Meiryo, メイリオ, sans-serif;
	background-image: url(/haruka-ryugu/assets/img/main-wallpaper.jpg);
	height:100%;
    background-attachment: fixed;
}

img{border:0;}

#wrapper{
	width: 98%;
	max-width: 980px;
	margin: 0px auto 70px;
  padding-bottom: 20px;
	position:relative;
  border-radius: 15px;
}

#contents{
width:85%;
margin:0 auto 50px;
}

hr{display:none;}

h1 {
    display: block;
    width: 100%;
    line-height: 120%;
    padding: 10px 0 10px;
    font-size: 300%;
    color: #099484;
    font-weight: 600!important;
	margin:0 auto 20px;
	text-align: center;
}

h1 img{
	display:block;
	margin: 0 auto;
  width:100%;
  max-width:700px;
}

h2{
	display: block;
	width: 97%;
	line-height: 120%;
	margin: 60px 0 0;
	font-size: 30px;
	color: #ffffff;
	font-weight: bold!important;
	background-color: #099484;
    border: solid 1px #099484;
    padding: 1.5%;
    border-radius: 5px;
}

h3{
  font-size:130%;
  line-height:150%;
  color:#099484;
  display:block;
  padding:60px 0 10px;
  font-weight: 700!important;
  border-bottom: dotted 1px;
  margin-bottom: 10px;
}

h4{
	line-height: 120%;
	font-size: 23px;
	color: #099484;
  margin-top: 20px;
	font-weight: 700!important;
}

.read{ color:#2e4a47; display: block; font-size:125%; line-height:1.8; text-align:center; padding-top:10px;}
.groupset{ margin-bottom:40px;}

.question{
  margin:35px 0 0;
}

.question_title{
display:inline;
}

input{
  display:block;
  border:none;
  border-radius:8px;
  font-size:19px;
  border:1px solid #ccc;
  padding:3px 2%;
  margin:10px 0 0;
  }

.text input{
	max-width:96%;
  }

textarea{
  display:block;
  border:none;
  border-radius:3px;
  font-size:120%;
  border:1px solid #ccc;
  padding:3px 2%;
  margin:10px 0 0;
  max-width:96%;
	width:96%;
	background-color:#fff;
	color: #060606;
}



.question_desc{
  display:inline-block;
  color:#88740e;
  font-size:12px;
  padding:0 12px;
  border-radius:20px;
  border: solid 1px #88740e;
  margin-left: 10px;
  line-height: 1.8;
}


input:focus{
 outline:none;
}

#btn_area{
  text-align:center;
  margin:50px 0 20px;
}

#btn_area input{
  display:inline;
  width:30%;height:auto;
  padding:10px 0;
  background: #099484;
  color:#fff;
  cursor:pointer;
  text-shadow:2px 2px 6px rgba(30,70,30,0.8);
  -webkit-appearance:none;
  font-size: 150%;
  border: solid 2px #099484;
}

#btn_area input:hover{
  opacity:0.8;
}

#footer{
  text-align:center;
  padding:30px 10px 40px;
  color:#ffffff;
  background-image: linear-gradient(150deg, #099493, #176ca5 40%, #00192d);
}

#footer address{
  font-size:11px;
}

#footer a{ color: #FFD000;}

#alert{
display: block;
background-color: rgba(200, 0, 0, 0.79);
padding: 18px 3%;
margin: 30px 0;
width: 94%;
left: 0;
top: 0;
border-radius: 10px;
border: solid 1px #a06f6f;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.6);
}

#alert font{
    color:#fff!important;
}

#alert p{
border-bottom: solid 1px rgba(255, 255, 255, 0.37);
padding-bottom: 5px;
margin-bottom: 5px;
}



.option input{
  display:inline;
  margin-right:5px;
}

.option label{
  font-size:16px;
  color:#3c3c3c;
}

select{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-size:19px;
padding: 3px 8px;
margin: 10px 0 0;
width:30%;
background: url(arrow.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#efebe1 100%);
background-color:#fff;
background-size: 20px, 100%;
}

input.text{
	width:100%;

}

/*---confirm---*/


#body_id_confirm span.text{
  font-size:120%;
  color:#333333;
  font-weight:100;
  line-height:1.5;
  /*margin-left:1em;*/
}

#body_id_confirm .option span.text{
  margin-left:0;
}

#body_id_confirm .option {
  display:block;
  margin:8px 0 0;
  font-size:120%;
  color:#333;
  font-weight:100;
  line-height:1.5;
  /*margin-left:1em;*/
}

#body_id_confirm .question_desc{
    display:none;
}

#body_id_confirm .attention{
display:none;
}

#body_id_confirm #btn_bck{
background-color:#099484;
margin-right:20px;
}

/*---confirm---*/

#finish{
display:block;
margin:30px 0 0;
text-align:center;
}


#finish h3{
  font-size:27px;
  color:#f90;font-weight:800;
  display:block;
  text-align:center;
  background-color:transparent;
  margin:0 0 20px;
}

#finish p{
display:block;
font-size:15px;
color:#333;
text-align:center;
}

.finish .wallpaper a img {
    width: 90%
}

/* 一覧全体 */
.wallpaper-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

/* PC：2カラム */
@media screen and (min-width: 768px) {
  .wallpaper-list {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* 画像 */
.wp {
  width: 100%;
  height: auto;
  display: block;
}

/* ボタン */
.wallpaper {
  display: flex;
  justify-content: center;
  gap: 16px;
  margin-top: 16px;
}

.get_wp {
  min-width: 120px;
  padding: 12px 20px;
  text-align: center;
  background: #099484;
  font-weight: 600;
  border-radius: 8px;
}


#closebt a{
display:inline-block;
border-radius:20px;
background-color:#a00;
color:#fff;
margin:30px 0 0;
padding:2px 15px;
}

#closebt a:hover{
  opacity:0.8;
}

h6{
  border: 2px solid #D60;
  border-radius: 30px;
  padding: 2px 15px;
  color: #d60;
  font-size: 11px;
  display: inline-block;
  margin: 0 0 16px;
}
#kt{ position:absolute; padding:20px; width: 50px; right:1%;}

.finish{ color:#333; font-size: 120%; line-height: 1.8;}
.finish .wallpaper {
    display: flex;
    gap: 2%;              /* ボタン間の余白 */
}

.finish .wallpaper a {
    flex: 1;              /* 均等幅 */
    text-align: center;
    padding-bottom: 30px;
}

.finish .wallpaper a img{ width: 90%}
.links{padding: 50px 0 20px; text-align: center;}
.links a img{ width:32%;}
.bigbanner{ width:90%!important; max-width:520px; margin:0 auto 30px;}
.bigbanner img{ width:100%;}

@media screen and (max-width: 639px) {
  input{
    display:block;
    padding:1% 2%;
    font-size:14px;
  }
  .question_desc{
    display:inline-block;
    text-align:left;
    font-size:9px;
    padding:0.2px 6px;
    margin:5px 0 0;
  }

  .option input[name="q9272"]{
    display:inline;
    width:auto;
  }

}

@media screen and (min-width: 640px) {
.chara{ display:none;}
.hidepc{display: none;}
}

@media screen and (max-width: 639px) {
.bigbanner{ width:100%!important;}
.chara{ width:100%; padding-top: 40px;}
#body_id_confirm .chara{ display:none;}

  #wrapper{
	width: 100%;
	max-width: 800px;
	margin: 0px auto 10px;
	/*border-radius: 3px;*/
	/*box-shadow: 2px 2px 8px rgba(0,0,0,0.5);*/
	position:relative;
	z-index:10;
  }

	#contents{
	width:90%;
	margin:0 auto 0;
	}

	h1 {
		font-size:190%;
		text-align: center;
	}

	h3{
	    padding: 40px 0 5px;
	}

	h2{
	display: block;
	width: 94%;
	line-height: 130%;
	font-size: 150%;
	padding: 3%;
  }

  .day{
    padding: 10px 0 !important;
    width: 100% !important;
    }

  .read{ text-align:center; font-size:113%;}

  #btn_area input{
    width:43%;height:auto;
    padding:15px 0;
  }

  #body_id_confirm #btn_bck{
  background-color:#666;
  margin-right:5%;
  }

  h4{
    display:block;
	line-height:120%;
    font-size:16px;
	padding-left:0.3em;
  }

  .option input[name="q9272"]{
    display:inline;
    width:auto;
  }

	select{
	  font-size:14px;
	}

	.option label{
		font-size:14px;
	}

	.hidesp{ display:none;}

.description{ padding-bottom:30px;}

select{
max-width: 100%;
width:100%;
}

}




/*---オプション---*/

.day{
    text-align: center;
    color: #099484;
    padding: 10px;
    margin: 0 auto 20px;
    width: 380px;
    font-weight: bold;
    font-size: 120%;
	  border: solid 2px #78bdb5;
    border-radius: 8px;
    background-color:rgba(13, 191, 171, 0.22);
    }

.attention{
  display:inline-block;
  line-height:140%;
  font-size:12px;
  color:#333;
  margin:10px 0 0;

}

#privacynotice{
	color: #ffffff;
	margin: 0 0 20px;
	font-size:90%;
	text-align:center;
}

.mo:hover{
  opacity:0.8;
}

@media all and (-ms-high-contrast:none){
  select {
    background-image:none;
		background-color:#fff;
  }
}

.howtomail{
    border: solid 1px rgb(255 255 255 / 45%);
    padding: 4%;
    margin-top: 5%;
    border-radius: 8px;
    box-shadow: 0 0 7px #000;
    background-color: rgb(6 6 6 / 30%);}
.howtomail h4{padding-bottom: 20px; display: block;}
.howtomail h5{font-size: 120%; font-weight: bold; display: block; padding-bottom: 10px; color:#e81915;}
#body_id_confirm .howtomail,
#body_id_confirm .read,
#body_id_confirm .day{display:none;}
#body_id_confirm .description{display:none;}
#body_id_confirm h2{}


.bluebar{width:100%;height: 30px;background-image: linear-gradient(150deg, #099493, #176ca5 40%, #00192d);}

#progress{
  position: fixed;
  top:0;
  left:0;
  width:100%;
  height:4px;
  background: rgba(255,255,255,0.15);
  z-index:9999;
}

#progress .bar{
  height:100%;
  width:0%;
  background: linear-gradient(90deg,#099484,#1cb5a5);
  transition: width 0.15s linear;
}

.question-options {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.question-options .option {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.question-options .option input{
    margin: 10px 0 4px 0 !important;
}