/* Scss Document */

$max-width: 1080px !default;
$color-brand: gold !default;
$font-famiry-sans-serif: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif !default;
$font-famiry-serif: "Hiragino Mincho ProN", "游明朝", "YuMincho", "HG明朝E", Meiryo, serif !default;
$bg-black:#0c0600;
$blue:#279bdf;
$softorange:#ffb630;
$yellow:#ffd400;
$text_gray:#a0a0a0;
$btn_black:#3e3e3e;

/*--------------------------------------------------------------
icon font
--------------------------------------------------------------*/

@font-face {
font-family: 'font-arrow';
src:  url('../fonts/font-arrow.eot?t8q10w');
src:  url('../fonts/font-arrow.eot?t8q10w#iefix') format('embedded-opentype'),
url('../fonts/font-arrow.ttf?t8q10w') format('truetype'),
url('../fonts/font-arrow.woff?t8q10w') format('woff'),
url('../fonts/font-arrow.svg?t8q10w#font-arrow') format('svg');
font-weight: normal;
font-style: normal;
}

[class^="c-ico-"], [class*=" c-ico-"] {
/* use !important to prevent issues with browser extensions that change fonts */
font-family: 'font-arrow' !important;
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;

/* Better Font Rendering =========== */
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}

.c-ico-btn_arrow:before {
content: "\e900";
font-size: 1rem;
}
@media (max-width: 767px) {
.c-ico-btn_arrow:before {
font-size: .8rem;
}

}

/*--------------------------------------------------------------
basic elements
--------------------------------------------------------------*/
.page_container {
margin-top: 120px;
}
hr.grayR {
border: none;
background: url(../images/hr.svg) no-repeat top center;
max-width: 520px;
height: 15px;
border: none;
}
hr.gray-line {
border: #3e3e3e;
height: 1px;
max-width: 520px;
padding: 0;
background: #3e3e3e;
}
.aft-hr:after {
height: 1px;
background: $btn_black;
width: 100%;
}
.txt-gray {
color: $text_gray;
}
.txt-blue {
color: $blue;
}
.bg-color {
background: $blue;
text-align: center;
padding: 40px;
}
.txt-link {
a {
color: #a0a0a0;
&:hover {
color: #fff;
}
}
}
.mgn-bottom0 {margin-bottom: 0;}
.title {
padding-top: 90px;
}
.title_menu {
background: url(../images/title_menu.png) no-repeat top center;
margin: 80px auto 0;
display: block;
height: 60px;
}

.title_menuSP {
display: none;
}


.title_event {
background:url(../event/images/title_event.png) no-repeat top center;
margin: 0 auto;

}
.title_eventSP {
display: none;
}
.title_kit {
background:url(../kit/images/title_kit.png) no-repeat top center;
margin: 0 auto;

}
.title_kitSP {
display: none;
}
.title_howto {
background:url(../howto/images/title_howto.png) no-repeat top center;
margin: 0 auto;

}
.title_howtoSP {
display: none;
}
.title_faq {
background:url(../faq/images/title_faq.png) no-repeat top center;
margin: 0 auto;

}
.title_faqSP {
display: none;
}
.title_kako {
background:url(../kako/images/title_kako.png) no-repeat top center;
margin: 0 auto;

}
.title_kakoSP {
display: none;
}

.title_renshu {
background:url(../renshu/images/title_renshu.png) no-repeat top center;
margin: 0 auto;
}
.title_renshuSP {
display: none;
}
.title_contact {
background:url(../contact/images/title_contact.png) no-repeat top center;
margin: 0 auto;
}
.title_contactSP {
display: none;
}
.title_special {
background:url(../special/images/title_special.png) no-repeat top center;
margin: 0 auto;
}
.title_specialSP {
display: none;
}

.title_hint {
background:url(../hint/images/title_hint.png) no-repeat top center;
margin: 0 auto;
}
.title_hintSP {
display: none;
}
.title_answer {
background:url(../answer/images/title_answer.png) no-repeat top center;
margin: 0 auto;
}
.title_answerSP {
display: none;
}

.boxLeft {float: left;}
.boxRight {float: right;}

.box_01 {
margin-bottom: 40px;
.boxLeft {
width: 180px;
margin-right: 30px;
}
.boxRight {
float: none;

}

}
.box_02 {
.boxLeft {
margin-right: 30px;
width: 50%;
}
}
.box_03 {
.boxLeft {
width: 110px;
margin-right: 5%;

}

}
.box-flex {display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;}
.mtr-comment {
padding-top: 20px;
overflow: hidden;
}

.txt-outline {
font-size: .9rem;
}

.figure-img {
margin-bottom: 20px;
}



@media (max-width: 767px) {
.box_01 {
.boxLeft {
margin-right: 20px;
width: 150px;
}
.boxRight {
overflow: hidden;
}
}
.box_02 {
.boxLeft {
width: 40%;
}
.boxRight {
max-width: 160px;
}
}
.box_03 {
.boxLeft {
width: 80px;

}

}
.mtr-comment {
padding-top: 10px;
}

.title_menu {
display: none;
}
.title_menuSP {
display: block;
background: url(../images/title_menu.svg) no-repeat;

}
.title_event {
display: none;
}
.title_eventSP {
display: block;
background:url(../event/images/title_eventSP.svg) no-repeat;
}
.title_kit {
display: none;
}
.title_kitSP {
display: block;
background:url(../kit/images/title_kitSP.svg) no-repeat;
}
.title_howto {
display: none;
}
.title_howtoSP {
display: block;
background:url(../howto/images/title_howtoSP.svg) no-repeat;
}
.title_faq {
display: none;
}
.title_faqSP {
display: block;
background:url(../faq/images/title_faqSP.svg) no-repeat;
}
.title_kako {
display: none;
}
.title_kakoSP {
display: block;
background:url(../kako/images/title_kakoSP.svg) no-repeat;
}
.title_renshu {
display: none;
}
.title_renshuSP {
display: block;
background:url(../renshu/images/title_renshuSP.svg) no-repeat;
}
.title_contact {
display: none;
}
.title_contactSP {
display: block;
background:url(../contact/images/title_contactSP.svg) no-repeat;
}
.title_special {
display: none;
}
.title_specialSP {
display: block;
background:url(../special/images/title_specialSP.svg) no-repeat;
}

.title_menu {
display: none;
}
.title_menuSP {
display: block;
background: url(../images/title_menuSP.svg) no-repeat;
margin-top: 40px;
}

.title_hint {
display: none;
}
.title_hintSP {
display: block;
background:url(../hint/images/title_hintSP.svg) no-repeat;
}

.title_answer {
display: none;
}
.title_answerSP {
display: block;
background:url(../answer/images/title_answerSP.svg) no-repeat;
}
br.pc {
display: none;
}
.area_footmenu {
margin-top:0;
}

}

/*--------------------------------------------------------------
event
--------------------------------------------------------------*/

.schedule {
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
text-align: center;
-webkit-box-align: baseline;
-ms-flex-align: baseline;
align-items: baseline;
.year {
}
.day {
font-size: 1.8rem;
}
.unit {
font-size: 1.2rem;
}
.arrow {
img {
vertical-align: text-top;
}
}
}
.s-start {

}
.s-end {

}
.s-info {
color: $text_gray;
border: 1px solid;
display: inline-block;
padding: 10px 40px;
font-weight: 600;
border-radius: 5px;
margin-top: 30px;
}
.ev-howto {
.bt-col2 {
padding-left: 40px;
}
}
@media (max-width: 767px) {
.schedule {
.day {
font-size: 1.3rem;
}
.unit {
font-size: 1.1rem;
}

}

.ev-howto {
.bt-col2 {
padding-left: 20px;
}
}

}

/*--------------------------------------------------------------
kit
--------------------------------------------------------------*/
.area-kit-buy {
.col_2 {
width: 50%;
padding: 0 2%;
}
}


/*--------------------------------------------------------------
howto
--------------------------------------------------------------*/
#howto {
.box_01 {
margin: 0;
}
}
.howto-osusume {
.bt-col1 {
padding-left: 60px;
}
}
.need_wrap {
margin-top:40px;
img {
width: 100px;
}
a.bt-col2 {
padding-left: 0;
}
}
.play-icon-wrap {
margin-top: 30px;
img {
width: 70px;
float: left;
margin-right: 5%;
}
p {
font-size: .8rem;
margin-top: 5px;
}
}
.area_point {
.col_wrap {
margin-bottom: 70px;
}
}

.cc {
font-size: .8rem;
color: $yellow;
margin: 0 0 5px 5px;
}
@media (max-width: 767px) {
.need_wrap {
a.bt-col2 {
padding-left: 20px;
}

}
.play-icon-wrap {
img {
width: 60px;
}
p {
font-size: .7rem;
}

}
.cc {
font-size: .8rem;
color: $yellow;
margin: 0 0 5px 0;
}


}

/*--------------------------------------------------------------
faq
--------------------------------------------------------------*/
#faq {
hr {
margin-bottom: 0;	}
}
.tab-faq {
display: flex;
max-width: 500px;
margin: 0 auto;
li {
text-align: center;
width: 50%;
a {
color: $text_gray;
}
&:first-child {
border-right: 1px solid #3e3e3e;
}
}
}
.tab-faq-txt {
display: block;
padding: 10px 0;
}
.faq-arrow {
img {
width:28px;
}
}
.faq_wrap {
li {
margin-bottom: 40px;
border-bottom: solid 1px #3e3e3e;
padding-bottom: 40px;
&:first-child {
margin-top: 40px;
}
&:last-child {
border: none;
}
}
}
.question {
color: $blue;
font-size: 1.2rem;
font-weight: 600;
margin-bottom: 10px;
}
.answer {
font-size: .9rem;
}

/*--------------------------------------------------------------
kako
--------------------------------------------------------------*/

.youtube {
max-width: 520px;
margin: 20px auto 40px;
position: relative;
overflow: hidden;
}
.voice_wrap {}
.voice-box {
margin-bottom: 40px;
a {
color: $text_gray;
}
}
.tweet-box {
background-color: #fff;
color: #000;
padding: 20px;
max-width: 500px;
border-radius: 4px;
box-sizing: border-box;	
}
@media screen and (max-width : 475px ){
.youtube {
max-width: 520px;
margin: 20px auto 70px;
position: relative;
height: 0;
padding: 30px 0 56.25%;
overflow: hidden;
}
.youtube iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}}

/*--------------------------------------------------------------
renshu
--------------------------------------------------------------*/

.answerArea {
max-width: 520px;
margin: 0 auto;
text-align: center;
}
.t_answer {
max-width: 520px;
height: 50px;
margin: 40px auto;
}
.btn_answer {
max-width: 100px;
margin: 0 auto;
text-align: center;
background: none;
border: none;
cursor: pointer;
}
input {
font-weight: bold;
width: 80%;
font-size: 16px;
padding: 0 10px;
}

.shareBox {
text-align: center;
position: relative;
padding: 20px 0;
.hstag {
position: absolute;
top: 0;
right: 20px;	
}
.shareSNS {
display: flex;
justify-content: space-between;
max-width: 300px;
margin: 0 auto;	
li {
width: 48px;
margin: 0 auto;
}
}
}
.hint-accordion {
min-width: 300px;
margin: 40px auto 0;
padding: 0;
label {
display: block;
background: $btn_black;
cursor: pointer;
padding: 10px;
color: #fff;
box-sizing: border-box;}
.ac-cont {
transition: 0.2s;
height: 0;
overflow: hidden;
background: #fff;
padding: 0 10px;
box-sizing: border-box;
color: $btn_black;
text-align: left;
font-size: 12px;
a {
color: $btn_black;
font-weight: bold;
text-decoration: underline;
}
}
input {
display: none;

}
.c-ico-btn_arrow {
padding-right: 10px;
}
}
.hint-accordion input:checked + .ac-cont {
height: auto;
padding: 10px;
box-sizing: border-box;
}
.echika {
a {
&:hover {
color: #fff;
}
}
}
@media (max-width: 767px) {
.shareBox {
.hstag {
right: 0;
max-width: 80px;
top: 45px;		
}
}
.whiteTitle {
max-width: 150px;
margin: 0 auto;
}
.btn_answer {
max-width: 125px;
}
}
/*--------------------------------------------------------------
Special
--------------------------------------------------------------*/

.formarea {
max-width: 520px;
height: 50px;
margin: 10px 0 40px 0;
border: none;
border-radius: 0;
}

.formarea-sp {
max-width: 520px;
height: 50px;
margin: 10px 0 0 0;
border: none;
border-radius: 0;
}


.link-or {
color: $softorange;
text-decoration: underline;
}
.link-or:hover {
text-decoration: none;
}
/* checkbox01 */

.checkbox {
width: 100%;
}

input[type=checkbox] {
display: none;
}
.checkbox01 {
position: relative;
line-height:2.6;
padding: 0 20px 0 27px;
}
.checkbox01:hover:after {
border-color: $blue;
}
.checkbox01:after, .checkbox01:before{
position: absolute;
content: ""; 
display: block;
top: 50%;
}
.checkbox01:after {
left: 0;
margin-top: -12px;
width: 18px;
height: 18px;
border: 2px solid #fff;
background-color: #fff;
z-index: -5;
}
.checkbox01:before {
left: 6px;
margin-top: -9px;
width: 7px;
height: 11px;
border-right: 3px solid $bg-black;
border-bottom: 3px solid $bg-black;
transform: rotate(45deg);
opacity: 0;
}
input[type=checkbox]:checked + .checkbox01:before {
opacity: 1;
}
a.disabled{
cursor: pointer;
}

.btn-sound {
margin: 80px 0 0;
a {
transition-property: all;
transition: 0.3s linear;
&:hover {
opacity: .8;
}
}
}

.controls-sound {
width: 448px;
}

@media (max-width: 767px) {
.checkbox01 {
font-size: .79rem;
}
.controls-sound {
width: 100%;
}

}

/* nazogacha */
.nazogacha {
	li {
		margin-top: 30px;
	}
}


/*--------------------------------------------------------------
footer
--------------------------------------------------------------*/
.foot-sp {
display: none;
}
@media (max-width: 767px) {
.foot-sp {
display: block;
width: 100%;
background: #fff;
text-align: right;
padding: 30px;
box-sizing: border-box;
border-right: solid 10px $blue;
cursor: pointer;
a {
color: $text_gray;
font-weight: bold;

}
.icon-arrow img{
width: 18px;
vertical-align: text-bottom;
margin-left: 10px;			
}
}
.foot-sns {
display: none;
}
}


/*--------------------------------------------------------------
form
--------------------------------------------------------------*/
.help-text::before {
content: '*';
color: $softorange;
}


/* ==========================================================================
ヒントページ
========================================================================== */


.ah_container {
margin-top: 120px;
}


.hint__wrap {
li {
margin:60px 0;
.hint__title {
margin-bottom: 70px;
}
.hint__col2 {
width: 50%;
float: left;
text-align: center;
}
.hint__color__blue {
clear: both;
}

.hint__img {
margin: 0 auto 40px;
clear: both;
}
.hint__col1 {
width: 100%;
}
.area-hint {
margin: 0 0 40px;
}
}
}

.btn_hint {

margin:40px 0 60px;
text-align: center;
background: none;
border: none;
cursor: pointer;
}

@media (max-width: 767px) {



.hint__wrap {
li {
.hint__img {
margin: 0 auto 20px;
}
.area-hint {
margin: 0;
}

}
}


}

/* ==========================================================================
ANSWER
========================================================================== */

#answer {
.txt_cmt {
display: none;
}

}
.answer-sab {
margin-bottom: 60px;
}
.fainal-question {
margin-bottom: 150px;
}
.logo-final {
margin: 300px 0 30px;
}
@media (max-width: 767px) {
.btn-fainal-question {
padding-bottom: 130px;
}

}

/* ==========================================================================
エンディングページ
========================================================================== */



.ending div {
text-align: center;
}
.ending__congrats__cont {
cursor:pointer;
display:inline-block;
}
.ending_message {
background:url(../trvl/images/ending_message.png) no-repeat center center;
height:2539px;
}
.ending__staff {
background:url(../trvl/images/ending_staff.png) no-repeat 50% center;
height:2262px;
margin-bottom: 100px;
}
.ending__hosts {
margin-bottom: 180px;
}
.ending__fin {
padding-top: 50px;
}
.ending__fin__img {
margin-bottom: 700px;
}
.ending__enquete {
text-align: center;
margin: 0 auto 50px;
}
.ending__enqueteLead {
margin-bottom: 20px;
}
.ending__btn {
margin:50px 0 45px;
}
.ending_start {
margin-top: 40px;
cursor: pointer;
}
.ending {
.shareBox {
margin: 0 auto 30px;
.shareSNS {
max-width: 400px;
li {
width: 80px;
}
}
}
}
.ending__copy {
margin: 200px auto 50px;
text-align: center;
font-size: 12px;
}
.ending__logo {
margin: 700px 0 100px;
}
.english__btn__japanese {
background: #0C0600;
padding: 30px 0;
img {
vertical-align: middle;
}
}
@media (max-width: 767px) {
.ending_message {
background-size: contain;
height:1700px;
}
.ending__staff {
background-size: contain;
background-position: 70% center;
height:1800px;
}
}

/*--------------------------------------------------------------
エンディングページ　English
--------------------------------------------------------------*/
.ending_message_en {
background:url(../en/trvl/images/ending_message.png) no-repeat center center;
height:2433px;
}
.ending__staff_en {
background:url(../en/trvl/images/ending_staff.png) no-repeat 50% center;
height:2305px;
margin-bottom: 100px;
}

@media (max-width: 767px) {
.ending_message_en {
background-size: contain;
height:1600px;
}
.ending__staff_en {
background-size: contain;
background-position: 70% center;
height:1700px;

}
}

/*--------------------------------------------------------------
アンケート
--------------------------------------------------------------*/
.questionnaire {
input[type=checkbox] {
display: inline-block;
width: 5%;
}
.st {
display: block;

}
}

.area_q {
max-width: 520px;
text-align: left;
margin: 0 auto;
}
.q_title {
color: $softorange;
margin: 40px 0 10px;
}
.q_form {
max-width: 520px;
height: 50px;
margin: 10px 0 0 0;
border: none;
border-radius: 0;
}
.q_form_s {
max-width: 50px;
height: 50px;
margin: 10px 0 0 0;
border: none;
border-radius: 0;
}
.q_choose {
width: 50%;
display: block;
height: 50px;
margin:  0;
background-color: #fff;
font-weight: bold;	
}

.btn_q {
margin: 0 auto;
text-align: center;
background: none;
border: none;
cursor: pointer;
}

.q_textarea {
width: 100%;
box-sizing: border-box;

}

@media (max-width: 767px) {
.q_choose {
width: 100%;
}
input.q_form {
width: 100%;
box-sizing: border-box;
}

}
/*--------------------------------------------------------------
English
--------------------------------------------------------------*/
.page_en {
.contIntr {

}
}
.menu_sab_en {
width: 100%;
display: flex;
-ms-flex-pack: distribute;
justify-content: space-around;
padding: 0;
border: none;
}


.title_info {
background:url(../en/images/title_info.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_infoSP {
display: none;
}
.title_howtoget {
background:url(../en/images/title_howtoget.png) no-repeat top center;
margin: 0 auto;
height: 140px;

}
.title_howtogetSP {
display: none;
}
.title_howtoplay {
background:url(../en/images/title_howtoplay.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_howtoplaySP {
display: none;
}
.title_trial {
background:url(../en/images/title_trial.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_trialSP {
display: none;
}
.title_history {
background:url(../en/images/title_history.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_historySP {
display: none;
}
.title_trial {
background:url(../en/images/title_trial.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_historySP {
display: none;
}
.title_notes {
background:url(../en/images/title_notes.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_notesSP {
display: none;
}
.title_reservation {
background:url(../en/images/title_reservation.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_reservationSP {
display: none;
}
.title_hint {
background:url(../en/hint/images/title_hint.png) no-repeat top center;
margin: 0 auto;
height: 100px;

}
.title_hintSP {
display: none;
}
.foot-sns {
.foot-sns-inner {


.share-en {
margin: 40px 50px;
}
}}

@media (max-width: 767px) {
.page_en {
.contIntr {
font-size: .8rem;
line-height: 1.5;
}
}
.menu_sab_en {
display: table;
.sub-txt-btm {
margin-top: 0;
}
li {
border-top: none !important;
}
}

.area-kit-buy-en {
a.bt-kit {
font-size: .8rem;
height: 80px;
margin-bottom: 20px;
padding: -3px 0 0 58px;	
i {height: 80px;
width: 35px;
line-height: 6.5;}
}
}
.btn-reservation {
padding: 20px 6%;
}
.title_info {
display: none;
}
.title_infoSP {
display: block;
background:url(../en/images/title_infoSP.svg) no-repeat;
}

.title_howtoget {
display: none;
}
.title_howtogetSP {
display: block;
background:url(../en/images/title_howtogetSP.svg) no-repeat;
}
.title_howtoplay {
display: none;
}
.title_howtoplaySP {
display: block;
background:url(../en/images/title_howtoplaySP.svg) no-repeat;
}

.title_history {
display: none;
}
.title_historySP {
display: block;
background:url(../en/images/title_historySP.svg) no-repeat;
}
.title_trial {
display: none;
}
.title_trialSP {
display: block;
background:url(../en/images/title_trialSP.svg) no-repeat;
}
.title_notes {
display: none;
}
.title_notesSP {
display: block;
background:url(../en/images/title_reservationSP.svg) no-repeat;
}
.title_reservation {
display: none;
}
.title_reservationSP {
display: block;
background:url(../en/images/title_reservationSP.svg) no-repeat;
}
.title_hint {
display: none;
}
.title_hintSP {
display: block;
background:url(../en/hint/images/title_hintSP.svg) no-repeat;
}
.share-en {
.foot-sns-inner {


p {
margin: 10px 2% 0px 4%;  
}
.icon-sns {
margin: 0;
}

}}
.icon-sns-en {
margin-top: 0;
}

}

/*--------------------------------------------------------------
English form
--------------------------------------------------------------*/

.formtitle {
color: $softorange;
font-size: 1.2rem;
}
.radio_wrap {

}

input.radio {
width: 5%;
}

.img-form {
img {
vertical-align: middle;
}

}
.formnumber {
width: 25%;
display: block;
height: 50px;
margin: 10px auto 40px auto ;
background-color: #fff;
font-weight: bold;
}
.form-pickup {
width: 45%;
height: 50px;
background-color: #fff;
font-weight: bold;
}
.form-pickup-txt {
margin-right: 20px;
}
.datepicker {
padding: 0;
border: none;
margin-bottom: 10px;
text-indent: 15px;
border-radius: 0;

}

@media (max-width: 767px) {
.radio_wrap {

}
.img-form {
width: 48%;
}

}