@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");

html {
  height: 100%;
  font-size: .625em;
}

@-ms-viewport {
  width: device-width;
}

body {
  box-sizing: border-box;
  color: #333;
  font-family: 'Noto Sans Japanese', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  font-size: 16px;
  line-height: 1.75;
  letter-spacing: .05em;
}

@media screen\0 {
  body {
    /* ie */
    font-family: 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', 'MS UI Gothic', 'Arial', sans-serif;
  }
}

@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
  }
}

@media print {
  body {
    color: #000;
    -webkit-print-color-adjust: exact;
  }
}


em,
strong,
small {
  font-style: inherit;
  text-decoration: inherit;
}

/* base
---------------------------------------------------*/

a,
a:hover,
a:active,
a:visited {
  color: inherit;
}

#main {
  margin-top: 0;
  padding-top: 0;
}

.inhcontents {
  margin-top: 11.45vw;
  background: url(../../images/201912/bg.png);
}

.inh img {
  height: auto;
}

.inh p {
  text-align: center;
}


/* uttility
---------------------------------------------------*/
.u-block {
  display: block;
}

.u-al_center {
  text-align: center;
}

.u-al_left {
  text-align: left;
}

.u-al_right {
  text-align: right;
}

.u-text_primary {
  color: #0096ff;
}

.u-text_bold {
  font-weight: bold;
}


/* CTA要素
---------------------------------------------------*/
/* ボタン */
.btn_primary {
  display: inline-block;
  width: 100%;
  height: 70px;
  line-height: 70px;
  background: #ffd800 url(../../images/201912/btn_arrow.png) calc(100% - 10px) center/16px 4px no-repeat;
  color: #333;
  font-size: 15px;
  font-weight: bold;
  -webkit-transition: all .25s;
     -moz-transition: all .25s;
      -ms-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
  text-decoration: none;
}

@media only screen and (max-width: 320px) {
  .btn_primary {
    background: #ffd800;
  }
}

.btn_primary:hover,
.btn_primary:active,
.btn_primary:focus {
  opacity: .8;
  color: #333;
}

.btn_primary:link,
.btn_primary:visited {
  color: #333;
}


/* セミナーのお申込ボタン */
.btn_inquiry {
  box-sizing: border-box;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-right: auto;
  height: 70px;
  line-height: 1.5;
}

.btn_inquiry > .main {
  font-size: 16px;
}

@media only screen and (max-width: 320px) {
  .btn_inquiry > .main {
    font-size: 14px;
  }
}

.btn_inquiry > .sub {
  font-size: 10px;
}

@media only screen and (max-width: 320px) {
  .btn_inquiry > .sub {
    font-size: 9px;
  }
}

/* btn_seminar_idx */
.btn_seminar_idx {
  width: 100%;
  height: 60px;
  border-radius: 100vh;
  border: 3px solid #EC880E;
  background: #fff url(../../images/201912/btn_arrow_orange.png) calc(100% - 30px) center no-repeat;
  color: #EC880E;
  font-size: 15px;
  font-weight: bold;
  -webkit-transition: all .25s;
     -moz-transition: all .25s;
      -ms-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
  text-decoration: none;
}
.btn_inquiry.btn_seminar_idx {
  align-items: flex-start;
}
.btn_seminar_idx:hover,
.btn_seminar_idx:active,
.btn_seminar_idx:focus {
  opacity: .8;
  background-position: calc(100% - 20px) center;
}
.btn_seminar_idx > .main {
  color: #EC880E;
  padding: 0 60px 0 20px
}


/* バナースペース */
.banners {
  margin-top: 40px;
}

.banners a {
  -webkit-transition: all .25s;
     -moz-transition: all .25s;
      -ms-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
}

.banners:hover,
.banners:active,
.banners:focus {
  opacity: .8;
}


/* layout
---------------------------------------------------*/
.l-content {
  margin-left: auto;
  margin-right: auto;
  width: 345px;
  max-width: calc(100% - 30px);
}


/* header
---------------------------------------------------*/
#header {
  background-color: #0099FF;
}


/* footer
---------------------------------------------------*/




/* mainvisual
---------------------------------------------------*/
.mainvisual {
  position: relative;
  width: 100%;
}

.mainvisual_text_front {
  position: relative;
  top: 2vw;
  left: 0;
  z-index: 3;
  margin-top: 0;
  width: 100%;
  text-align: center;
}

@media only screen and (max-width: 320px) {
  .mainvisual_text_front {
    top:14vw
  }
}

.mainvisual_text_front img {
  object-fit: cover;
  width: 100%;
  height: 100%
}

.mainvisual_btn_movie {
  z-index: 4;
}

.mainvisual_btn_movie {
  float: right;
  margin-top: 10px;
  margin-right: 15px;
  width: 128px;
  position: relative;
}

/* # YouTubeモーダル
----------------------- */
.mainvisual_movie {
  display: none;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 345px;
  height: 194px;
  overflow: hidden;
}

.mainvisual_movie iframe {
  width: 100%;
  height: 100%;
}

.mfp-content .mainvisual_movie {
  display: block;
}

.mainvisual .swiper-pagination {
  margin-top: 10px;
  margin-left: 0;
  margin-right: 0;
  top: inherit;
  bottom: 0;
}
.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets span:last-child {
  margin-right: 20px;
}

.mainvisual_text_01 {
  margin-top: 80px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}

@media only screen and (max-width: 320px) {
  .mainvisual_text_01 {
    font-size: 15px;
  }
}



/* # スライダー
----------------------- */

.slider {
  overflow: hidden;
  position: relative;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 96vw;
}

.slider p,
.slider ul,
.slider li {
  margin-top: 0;
  margin-bottom: 0;
}

.slider img {
  object-fit: cover;
  height: 96vw;
}

@supports not (object-fit: cover) {
  .slider img {
    width: auto;
    height: 100%;
  }
}
/* ここまで / スライダー */


/* メインビジュアル以降
---------------------------------------------------*/
.inh p {
  text-align: center;
}

/* ユニセフ遺産寄付プログラム
---------------------------------------------------*/
.program {
  margin-top: 40px;
  padding-bottom: 30px;
  background-color: rgba(0,150,255,.07);
}
.program > .head {
  padding-top: 12px;
  padding-bottom: 0;
  color: #333;
  font-size: 18px;
  text-align: center;
}
@media only screen and (max-width: 320px) {
  .program > .head {
    font-size: 15px;
  }
}
.program > .head > .sub {
  display: block;
}
.program > .head img {
  width: calc(100% - 20px);
  max-width: 314px;
}
.program_seminar {
  margin-top: 30px;
}
.program_list {
  margin-top: 35px;
  margin-bottom: 0;
}
.program_list > li:not(:first-child) {
  margin-top: 15px;
}

.program_seminar_idx {
  margin-top: 0px;
  padding: 10px;
}


/* 遺言を通じた寄付（遺贈）とは
---------------------------------------------------*/
.intro {
  margin-top: 50px;
}

.intro > .head {
  color: #0096ff;
  font-size: 20px;
}

@media only screen and (max-width: 320px) {
  .intro > .head {
    font-size: 18px;
  }
}

.intro_item {
  margin-top: 20px;
  padding-top: 140px;
  background-size: 220px auto;
  background-position: center 0;
  background-repeat: no-repeat;
}

.intro_item > .head,
.intro_item > .body {
  margin-left: 0;
  margin-right: 0;
}

.intro_item > .head {
  margin-top: 20px;
  font-size: 19px;
  font-weight: bold;
  text-align: center;
}

@media only screen and (max-width: 320px) {
  .intro_item > .head {
    font-size: 17px;
  }
}

.intro_item > .body {
  margin-top: 20px;
}

@media only screen and (max-width: 320px) {
  .intro_item > .body {
    font-size: 16px;
  }
}

.intro_item:nth-child(1) {
  background-image: url(../../images/201912/intro_01.png);
}

.intro_item:nth-child(2) {
  background-image: url(../../images/201912/intro_02.png);
}

.intro_item:nth-child(3) {
  background-image: url(../../images/201912/intro_03.png);
}

.intro_item:nth-child(4) {
  background-image: url(../../images/201912/intro_04.png);
}


/* みなさまのご意思と想いが、
   子どもたちの笑顔と未来につながっています。
---------------------------------------------------*/
.activity {
  margin-top: 50px;
}

.activity > .head {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  margin-left: auto;
  margin-right: auto;
  padding-top: 15px;
  padding-bottom: 15px;
  width: 100%;
  border-radius: 60px;
  background-color: rgba(243, 166, 57, 0.1);
  color: #fd883b;
  font-size: 19px;
  line-height: 1.6;
}


@media only screen and (max-width: 320px) {
  .activity > .head {
    font-size: 17px;
  }
}

.activity > .body {
  margin-top: 25px;
}

.activity_text01 {
  font-size: 18px;
  line-height: 1.667;
  letter-spacing: 0;
}

@media only screen and (max-width: 320px) {
  .activity_text01 {
    font-size: 16px;
    letter-spacing: -.05em;
  }
}

.activity_items {
  margin-top: 30px;
}

.activity_item {
  padding-bottom: 15px;
  background-color: #f5f0e7;
}

.activity_item + .activity_item {
  margin-top: 30px;
}

.activity_item_img img {
  margin-top: -10px;
}

.activity_item_text {
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 31px;
  width: calc(100% - 20px);
  max-width: 310px;
  background: url(../../images/201912/bg_letter.png) center 0/310px repeat-y;
}

.activity_item_text p {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 31px;
  text-align: justify;
}

.activity_item_text01 {
  color: #fd883b;
  font-size: 15px;
  font-weight: bold;
  letter-spacing: 0;
}

.activity_item_text01 + .activity_item_text02 {
  margin-top: 31px;
}

.activity_item_text02 {
  font-size: 15px;
  letter-spacing: 0;
}



/* みなさまからお預かりした大切なユニセフ募金を
   世界の子どもたちのために。
---------------------------------------------------*/
.movie {
  margin-top: 50px;
}

.movie > .head {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column nowrap;
  -ms-flex-flow: column nowrap;
  flex-flow: column nowrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -webkit-align-content: stretch;
  -ms-flex-line-pack: stretch;
  align-content: stretch;
  margin-left: auto;
  margin-right: auto;
  padding-top: 15px;
  padding-bottom: 15px;
  width: 100%;
  border-radius: 60px;
  background-color: rgba(0, 150, 255, .1);
  color: #0096ff;
  font-size: 19px;
  line-height: 1.6;
}

@media only screen and (max-width: 320px) {
  .movie > .head {
    font-size: 17px;
  }
}

.movie > .body {
  margin-top: 35px;
}

.movie > .body p {
  font-size: 17px;
  line-height: 1.765;
}

@media only screen and (max-width: 320px) {
  .movie > .body p {
    font-size: 15px;
  }
}

.movie_100yen {
  position: relative;
  padding-bottom: 56.25%;
  margin-bottom: 25px;
  width: 100%;
  height: 0;
}

.movie_100yen p {
  margin-top: 0;
  margin-bottom: 0;
}

.movie_100yen iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* まずは、知ってください
   ユニセフ遺産寄付プログラム
---------------------------------------------------*/
.about {
  margin-top: 50px;
  padding-bottom: 45px;
  background-color: #fef2d8;
}

.about > .head {
  height: 64px;
  background-color: #0096ff;
}

.about > .head img {
  position: relative;
  top: -11px;
  width: 249px;
  height: 62px;
}

.about > .foot {
  margin-top: 30px;
}

.about_text_01 {
  margin-top: 30px;
  font-size: 15px;
}



/* # ガイドブック内容の一部
----------------------- */
.guidebook {
  margin-top: 30px;
  background-color: #f5fbff;
}

.guidebook > .head,
.guidebook > .body {
  margin-left: 0;
  margin-right: 0;
}

.guidebook > .head {
  background-color: #d7efff;
  text-align: center;
  line-height: 45px;
}

.guidebook > .body {
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 30px;
}

.guidebook_img {
  margin-top: 30px;
  text-align: center;
}

.guidebook_text_02 {
  margin-top: 15px;
  margin-right: auto;
  margin-left: auto;
  width: 240px;
  font-size: 12px;
}

.guidebook_text_02 p {
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
}

.guidebook_text_02 img {
  width: 193px;
}


/* # 「今を生きる子どもたちへ」贈りたい言葉
----------------------- */
.gift {
  margin-top: 30px;
  background-color: #FFF7E1;
}

.gift > .head,
.gift > .body {
  margin-left: 0;
  margin-right: 0;
}

.gift > .head {
  background-color: #FFE18B;
  text-align: center;
  line-height: 1.8;
  font-size: 18px;
  padding: 5px 10px;
}

.gift > .body {
  padding-right: 25px;
  padding-left: 25px;
  padding-bottom: 30px;
}

.gift_img {
  margin-top: 30px;
  text-align: center;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.2));
}

.gift_text_02 {
  margin-top: 15px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  font-size: 14px;
  font-weight: normal;
}

.gift_text_02 p {
  margin-top: 15px;
  margin-left: auto;
  margin-right: auto;
}

.gift_text_02 img {
  width: 193px;
}

.u-text_gift {
  color: #002060;
}
/* ボタン */
.btn_gift {
  display: inline-block;
  width: 100%;
  height: 40px;
  line-height: 40px;
  background: #E2F5FA url(../../images/201912/btn_arrow.png) calc(100% - 10px) center/16px 4px no-repeat;
  color: #333;
  font-size: 15px;
  font-weight: bold;
  -webkit-transition: all .25s;
     -moz-transition: all .25s;
      -ms-transition: all .25s;
       -o-transition: all .25s;
          transition: all .25s;
  text-decoration: none;
}

@media only screen and (max-width: 320px) {
  .btn_gift {
    background: #E2F5FA;
  }
}

.btn_gift:hover,
.btn_gift:active,
.btn_gift:focus {
  opacity: .8;
  color: #333;
}

.btn_gift:link,
.btn_gift:visited {
  color: #333;
}
