@charset "utf-8";

/* =============================================
 * RESET STYLE
============================================= */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* =============================================
 * COMMON
============================================= */

html {
  overflow-x: hidden;
}
@media screen and (max-width: 640px) {
    html {
        font-size: 62.5%;
    }
}
@media screen and (min-width: 641px) {
    html {
        font-size: 75%;
    }
}
body {
	font-family:'Shin Maru Go Medium','メイリオ','Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','Osaka',sans-serif;
	line-height: 1;
}
@media screen and (max-width:640x) {
  .onlyPC {
    display: none !important;
  }
  .onlySP {
    display: block;
  }
}

@media screen and (min-width:641px) {
  .onlyPC {
    display: block;
  }
  .onlySP {
    display: none !important;
  }
}
  .norap {
white-space: nowrap;
  }

img {
    image-rendering: -webkit-optimize-contrast;
}
/* -------------------------------------------
 ヘッダー
------------------------------------------- */

.header-wrap {
  position: relative;
  width: 100%;
  background-position: center bottom;
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
}


/*hawaii*/

.bg_hawaii {
  background-image: url("../img/hawaii/bg_sp.jpg");
}
@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_hawaii {
    background-image: url("../img/hawaii/bg_pc.jpg");
  }
}

/*tahiti*/
.bg_tahiti {
  background-image: url("../img/tahiti/bg_sp.jpg");
}
@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_tahiti {
    background-image: url("../img/tahiti/bg_pc.jpg");
  }
}
/*taiwan*/
.bg_taiwan {
  background-image: url("../img/taiwan/bg_sp.jpg");
}



@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_taiwan {
    background-image: url("../img/taiwan/bg_pc.jpg");
  }
}


/*finland*/
.bg_finland {
  background-image: url("../img/finland/bg_sp.jpg");
}
@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_finland {
    background-image: url("../img/finland/bg_pc.jpg");
  }
}

/*iceland*/
.bg_iceland {
  background-image: url("../img/iceland/bg_sp.jpg");
}
@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_iceland{
    background-image: url("../img/iceland/bg_pc.jpg");
  }
}


/*newzealand*/
.bg_newzealand {
  background-image: url("../img/newzealand/bg_sp.jpg");
}
@media screen and (min-width: 769px) {
  /*背景のみTB*/
  .bg_newzealand{
    background-image: url("../img/newzealand/bg_pc.jpg");
  }
}

/*----*/

h1 {
  margin: 0 auto;
}

h1 img {
  width: 56%;
  height: auto;
  margin: 4vw auto;
}

.intro {
  width: 100%;
  background: url("../img/wave_w_sp.png") repeat-x top;
  padding: 5vw 0 5vw;
}
.int_blue {
  background: url("../img/wave_b_sp.png") repeat-x top !important;
}
@media screen and (min-width: 641px) {
  .intro {
    background: url("../img/wave_w_pc.png") repeat-x top;
  }
.int_blue {
    background: url("../img/wave_b_pc.png") repeat-x top !important;
  }  
}

.intro p {
  display: block;
  margin: 0 auto;
  width: 98%;
  max-width: 640px;
  font-size: 3.8vw;
  letter-spacing: 1px;
  line-height: 1.5;
  text-shadow: 2px 2px 1px #fff, -2px 2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff, 2px 0px 1px #fff, 0px 2px 1px #fff, -2px 0px 1px #fff, 0px -2px 1px #fff;
}

@media screen and (min-width: 641px) {
  h1 img {
    width: 260px;
    height: auto;
    margin: 2rem auto;
  }
  .intro {
    padding: 2rem 0 2rem;
  }
  .intro p {
    font-size: 1.4rem;
  }
}


/* -------------------------------------------
 フォントカラー
------------------------------------------- */


/*hawaii*/
.fo_hawaii {
  color: #ff0028;
}
.fo_hawaii2 {
  color: #C71430;
}
.sh_hawaii {
  text-shadow: 1px 2px 2px #fff;
}

/*tahiti*/
.fo_tahiti {
  color: #0079A4;
}
.fo_tahiti2 {
  color: #005382;
}
.sh_tahiti {
  text-shadow: 1px 2px 2px #fff;
}

/*taiwan*/
.fo_taiwan {
  color: #fff;
}
.fo_taiwan2 {
  color: #3D4A00;
}
.sh_taiwan {
  text-shadow: 1px 2px 2px #252D00;
}


/*finland*/
.fo_finland {
  color: #fff;
}
.fo_finland2 {
  color: #009dbf;
}
.sh_finland {
  text-shadow: 1px 2px 2px #009dbf;
}

/*iceland*/
.fo_iceland {
  color: #003B83;
}
.fo_iceland2 {
  color: #fff;
}
.sh_iceland {
  text-shadow: 1px 2px 2px #72dfff;
}


/*newzealand*/
.fo_newzealand {
  color: #083e80;
}
.fo_newzealand2 {
  color: #fff;
}
.sh_newzealand {
  text-shadow: 1px 2px 2px #6B98CF;
}

/* -------------------------------------------
 コンテンツ
------------------------------------------- */

.cont {
  position: relative;
  z-index: 10;
  width: 100%;
  margin-top: -3vw;
  padding: 6vw 0 0;
  text-align: center;
}


/*hawaii*/
.b_bg_hawaii{
	background-color:#ffa3b1;
}
.wave_hawaii {
  background: url("../img/hawaii/wave_sp.png") repeat-x top;
}
.grad_hawaii {
  background: linear-gradient(0deg, #ffdde2 20%, #ffa3b1 90%);
}
@media screen and (min-width: 641px) {
  .wave_hawaii {
    background: url("../img/hawaii/wave_pc.png") repeat-x top;
  }
}

/*taiwan*/
.b_bg_taiwan{
	background-color:#758b09;
}
.wave_taiwan {
  background: url("../img/taiwan/wave_sp.png") repeat-x top;
}
.grad_taiwan {
  background: linear-gradient(0deg, #FBFFF0 20%, #758b09 90%);
}
@media screen and (min-width: 641px) {
  .wave_taiwan {
    background: url("../img/taiwan/wave_pc.png") repeat-x top;
  }
}

/*tahiti*/
.b_bg_tahiti {
	background-color:#58E1FF;
}
.wave_tahiti {
  background: url("../img/tahiti/wave_sp.png") repeat-x top;
}
.grad_tahiti {
  background: linear-gradient(0deg, #E4FAFF 20%, #58E1FF 90%);
}
@media screen and (min-width: 641px) {
  .wave_tahiti {
    background: url("../img/tahiti/wave_pc.png") repeat-x top;
  }
}


/*finland*/
.b_bg_finland {
	background-color:#23c3e6;
}
.wave_finland {
  background: url("../img/finland/wave_sp.png") repeat-x top;
}
.grad_finland {
  background: linear-gradient(0deg, #E8FAFF 20%, #23c3e6 90%);
}

@media screen and (min-width: 641px) {
  .wave_finland {
    background: url("../img/finland/wave_pc.png") repeat-x top;
  }

}


/*iceland*/
.b_bg_iceland {
	background-color:#003b83;
}
.wave_iceland {
  background: url("../img/iceland/wave_sp.png") repeat-x top;
}
.grad_iceland {
  background: linear-gradient(0deg, #E8FAFF 20%, #003b83 90%);
}
.b_bg_iceland h1 img {
    width: 75% !important ;
    max-width: 380px;
}
@media screen and (min-width: 641px) {
  .wave_iceland {
    background: url("../img/iceland/wave_pc.png") repeat-x top;
  }
    
.b_bg_iceland h1 img {
    width: 380px;    
}
}



/*newzealand*/
.b_bg_newzealand {
	background-color:#083e80;
}
.wave_newzealand {
  background: url("../img/newzealand/wave_sp.png") repeat-x top;
}
.grad_newzealand {
  background: linear-gradient(0deg, #E8FAFF 20%, #083e80 90%);
}
.b_bg_newzealand h1 img {
    width: 75% !important ;
    max-width: 380px;
}
@media screen and (min-width: 641px) {
  .wave_newzealand {
    background: url("../img/newzealand/wave_pc.png") repeat-x top;
  }
    
.b_bg_newzealand h1 img {
    width: 380px;    
}
}


/*----*/

.main {
  width: 100%;
  padding: 0 0 10vw;
  margin: 0;
}

.title {
  width: 70%;
  max-width: 640px;
  background: url("../img/title_bg.png") no-repeat center center;
  background-size: contain;
  margin: 0 auto 4vw;
  text-align: center;
}

.title h2 {
  font-family: 'Suzumushi';
  font-size: 10vw;
}

.txtbox {
  width: 96%;
  max-width: 640px;
  margin: 0 auto;
  padding: 5vw 0 0;
  font-size: 4vw;
  line-height: 1.6;
}

@media screen and (min-width: 641px) {
  .cont {
    margin-top: -1.5rem;
    padding: 3rem 0 0;
  }
  .main {
    padding: 0 0 2rem;
  }
  .title {
    width: 75%;
    margin: 0 auto 1rem;
  }
  .title h2 {
    font-size: 3.6rem;
  }
  .txtbox {
    padding: 3rem 0;
    font-size: 1.3rem;
  }
}


/* -------------------------------------------
 video
------------------------------------------- */

.video-box {
  width: 98%;
  max-width: 640px;
  margin: 0 auto;
  border: 4px solid #fff;
  border-radius: 4px;
  box-sizing: border-box;
}

.video {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


/* -------------------------------------------
 footer
------------------------------------------- */

.footer {
  position: relative;
  z-index: 20;
  width: 100%;
  text-align: center;
  padding: 5vw 0 2vw;
  margin-top: -6vw;
}

.footer img {
  width: 22%;
  max-width: 160px;
  height: auto;
}

@media screen and (min-width: 641px) {
  .footer {
    padding: 2rem 0 1rem;
    margin-top: -2rem
  }
  .footer img {
    width: 120px;
    height: auto;
  }
}