@charset "utf-8";

/* 汎用 */
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -moz-opacity: 0.8; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb45 { margin-bottom: 45px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }
.mr40 { margin-right: 40px; }
.tal { text-align: left; }
.tac { text-align: center; }
.tar { text-align: right; }
.st { font-weight: bold; }
.fl { float: left; }
.fr { float: right; }
.fs16 { font-size: 16px; }
.fs18 { font-size: 18px; }
.fs24 { font-size: 24px; }
.fw300 { font-weight: 300; }
.fw400 { font-weight: 400; }
.fw500 { font-weight: 500; }
.fw600 { font-weight: 600; }
.fw700 { font-weight: 700; }
.fw800 { font-weight: 800; }
.flex { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }
.flex_no_justify { display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; }

/* メインの日本語フォント */
.f_min { font-family: "游明朝", "Yu Mincho", "Hiragino Mincho Pro", serif; }
.f_hira { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif; }
.f_gothic { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic M", "YuGothic", sans-serif; }
.f_hirago { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif; }

/* メインの日本語フォント 太字 */
.f_min_bold { font-family: "游明朝", "Yu Mincho", "Hiragino Mincho Pro", serif; font-weight: 600; }
.f_hira_bold { font-family: "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", sans-serif; font-weight: 600; }
.f_gothic_bold { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "Yu Gothic M", "YuGothic", sans-serif; font-weight: 600; }
.f_hirago_bold { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif; font-weight: 600; }

/* 英字用フォント */
.f_times { font-family: TimesNewRoman, "Times New Roman", Times, Baskerville, Georgia, serif; }
.f_arial { font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; }

/* 画像フィット用 */
.fit_img { display: flex; justify-content: center; align-items: center; /*IE用*/ flex-direction: column; }
.fit_img img { max-width: 100%; max-height: 100%; width: auto; height: auto; }
.regacy_fit_img { display: relative; overflow: hidden; }
.regacy_fit_img img { position: absolute; left: -50%; right: -50%; top: -50%; bottom: -50%; margin: auto; max-width: 100%; max-height: 100%; width: auto; height: auto; }
.ofi { object-fit: cover; font-family: "object-fit:cover; "; }

/* アニメーション */
.parabox, .parabox02, .parabox03 { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.fade-in { opacity: 1; transform: translateY(0); }

/*PC用*/
@media print, screen {
  .pc { display: block !important; }
  .sp { display: none !important; }
  .h_menu, #sp_global_nav { display: none; }
}
@media print, screen {
  .container { margin: 0 auto; width: 750px; background: #fff; }
  .sec01 { margin: 0 auto; padding: 0 0 58px; width: 100%; }
  .sec01 .img_sumie { margin: 0 auto 48px; width: 520px; }
  .sec01 .title_box { margin: 0 auto; padding: 7px; width: 660px; border: 8px solid #000; box-sizing: border-box; }
  .sec01 .title_box .inner { padding: 26px 0 25px; width: 100%; text-align: center; border: 2px solid #000; box-sizing: border-box; }
  .sec01 .title_box .inner .icon { margin: 0 auto 13px; width: 9.6%; max-width: 72px; }
  .sec01 .title_box .inner .number { margin-bottom: 22px; font-size: 34px; line-height: 1; }
  .sec01 .title_box .inner .fortune_slip { margin-bottom: 27px; color: #c03200; font-size: 120px; font-weight: 600; line-height: 110px; }
  .sec01 .title_box .inner .fortune_slip_en { margin-bottom: 30px; font-size: 30px; line-height: 1; }
  .sec01 .title_box .inner .fortune_slip_small { font-size: 30px; line-height: 1; }
}
@media screen and (max-width:768px) {
  .container { margin: 0 auto; width: 100%; background: #fff; }
  .sec01 { margin: 0 auto; padding: 0 0 7.733vw; width: 100%; }
  .sec01 .img_sumie { margin: 0 auto 6.4vw; width: 90%; }
  .sec01 .title_box { margin: 0 auto; padding: 7px; width: 90%; border: 8px solid #000; box-sizing: border-box; }
  .sec01 .title_box .inner { padding: 3.466vw 0 3.333vw; width: 100%; text-align: center; border: 2px solid #000; box-sizing: border-box; }
  .sec01 .title_box .inner .icon { margin: 0 auto 1.733vw; width: 9.6%; max-width: 72px; }
  .sec01 .title_box .inner .number { margin-bottom: 2.666vw; font-size: 4.533vw; line-height: 1; }
  .sec01 .title_box .inner .fortune_slip { margin-bottom: 3.333vw; color: #c03200; font-size: 16vw; font-weight: 600; line-height: 15vw; }
  .sec01 .title_box .inner .fortune_slip_en { margin-bottom: 3.733vw; font-size: 4vw; line-height: 1; }
  .sec01 .title_box .inner .fortune_slip_small { font-size: 4vw; line-height: 1; }
}
@media print, screen {
  .sec02 { margin: 0 auto; width: 100%; }
  .sec02 .tit { margin-bottom: 88px; padding: 26px 0; color: #fff; font-size: 40px; text-align: center; background-color: #c03200; }
  .sec02 .tit span { display: block; font-size: 26px; }
  .sec02 .tit small { display: block; font-size: 24px; }
  .sec02 .box { margin: 0 auto 60px; padding: 0 0 35px; width: 88.533%; max-width: 664px; border-bottom: 1px solid #ccccc9; }
  .sec02 .box:last-of-type { margin: 0 auto; border-bottom: none; }
  .sec02 .box .box_tit { margin-bottom: 32px; padding: 0 0 20px; width: 25.2vw; font-size: 34px; font-weight: 600; line-height: 1; border-bottom: 0.933vw solid #ae361d; }
  .sec02 .box .box_text { font-size: 30px; line-height: 1.5; }
}
@media screen and (max-width:768px) {
  .sec02 { margin: 0 auto; width: 100%; }
  .sec02 .tit { margin-bottom: 11.733vw; padding: 3.333vw 0; color: #fff; font-size: 5.333vw; text-align: center; background-color: #c03200; }
  .sec02 .tit span { display: block; font-size: 3.466vw; }
  .sec02 .tit small { display: block; font-size: 3.2vw; }
  .sec02 .box { margin: 0 auto 8vw; padding: 0 0 4.666vw; width: 88.533%; border-bottom: 1px solid #ccccc9; }
  .sec02 .box:last-of-type { margin: 0 auto; border-bottom: none; }
  .sec02 .box .box_tit { margin-bottom: 3.333vw; padding: 0 0 2.666vw; width: 25.2vw; font-size: 4.533vw; font-weight: 600; line-height: 1; border-bottom: 0.933vw solid #ae361d; }
  .sec02 .box .box_text { font-size: 4vw; line-height: 1.5; }
}
@media print, screen {
  .sec03 { margin: 0 auto; padding: 0 0 67px; width: 100%; }
  .sec03 .tit { margin-bottom: 50px; padding: 24px 0; color: #fff; font-size: 34px; text-align: center; background-color: #9d8966; }
  .sec03 .inner { margin: 0 auto; width: 92%; }
  .sec03 .inner .box { width: 100%; }
  .sec03 .inner .box a { align-items: center; padding: 34px; width: 100%; background-color: #e5ddcd; background-image: url(../../images/src/arrow.png); background-repeat: no-repeat; background-position: right 34px center; background-size: 19px auto; border: 1px solid #ccc0a0; box-sizing: border-box; }
  .sec03 .inner .box + .box { margin-top: 40px; }
  .sec03 .inner .box .box_img { width: 30.546%; }
  .sec03 .inner .box .box_text { width: 64.3%; }
  .sec03 .inner .box .box_text .tit_jp { color: #ae361d; font-size: 34px; font-weight: 600; }
  .sec03 .inner .box .box_text .tit_en { font-size: 28px; }
  .sec03 .inner .box .box_text .type { font-size: 28px; }
  .sec03 .inner .box .box_text .price { font-size: 32px; }
  .sec03 .inner .banner { margin: 72px auto 55px; width: 82.666%; }
  .sec03 .inner .banner a { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 150px; color: #ece6da; font-size: 34px; font-weight: 600; text-align: center; background: url(../../images/src/bg_bnr.png) no-repeat; background-size: 100% auto; }
  .sec03 .inner .banner a span { display: block; font-size: 30px; font-weight: 600; }
  .sec03 .inner .note { color: #7b7b7b; font-size: 24px; font-weight: 600; line-height: 1.45; text-align: center; }
}
@media screen and (max-width:768px) {
  .sec03 { margin: 0 auto; padding: 0 0 9vw; width: 100%; }
  .sec03 .tit { margin-bottom: 6vw; padding: 3.333vw 0; color: #fff; font-size: 4.533vw; text-align: center; background-color: #9d8966; }
  .sec03 .inner { margin: 0 auto; width: 92%; }
  .sec03 .inner .box { width: 100%; }
  .sec03 .inner .box a { align-items: center; padding: 4.533vw; width: 100%; background-color: #e5ddcd; background-image: url(../../images/src/arrow.png); background-repeat: no-repeat; background-position: right 4vw center; background-size: 2.533vw auto; border: 1px solid #ccc0a0; box-sizing: border-box; }
  .sec03 .inner .box + .box { margin-top: 5.333vw; }
  .sec03 .inner .box .box_img { width: 30.546%; }
  .sec03 .inner .box .box_text { width: 64.3%; }
  .sec03 .inner .box .box_text .tit_jp { color: #ae361d; font-size: 4.533vw; font-weight: 600; }
  .sec03 .inner .box .box_text .tit_en { font-size: 3.733vw; }
  .sec03 .inner .box .box_text .type { font-size: 3.733vw; }
  .sec03 .inner .box .box_text .price { font-size: 4.266vw; }
  .sec03 .inner .banner { margin: 9.6vw auto 7.333vw; width: 82.666vw; }
  .sec03 .inner .banner a { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 20vw; color: #ece6da; font-size: 4.533vw; font-weight: 600; text-align: center; background: url(../../images/src/bg_bnr.png) no-repeat; background-size: 100% auto; }
  .sec03 .inner .banner a span { display: block; font-size: 4vw; font-weight: 600; }
  .sec03 .inner .note { color: #7b7b7b; font-size: 3.2vw; font-weight: 600; line-height: 1.45; text-align: center; }
}
@media print, screen {
  .sec04 { margin: 0 auto; padding: 0 0 30px; width: 100%; }
  .sec04 .inner { margin: 0 auto; padding: 0 0 40px; width: 90.666%; border-bottom: 1px solid #cccbc8; }
  .sec04 .text { font-size: 30px; line-height: 1.5; text-align: center; }
  .sec04 .text + .text { margin-top: 30px; }
}
@media screen and (max-width:768px) {
  .sec04 { margin: 0 auto; padding: 0 0 2.5vw; width: 100%; }
  .sec04 .inner { margin: 0 auto; padding: 0 0 5.333vw; width: 90.666%; border-bottom: 1px solid #cccbc8; }
  .sec04 .text { font-size: 4vw; line-height: 1.5; text-align: center; }
  .sec04 .text + .text { margin-top: 4vw; }
}

/*SP用*/
@media screen and (max-width:768px) {
  .pc { display: none !important; }
  .sp { display: block !important; }
  img { max-width: 100%; height: auto; width: auto; }
  body { min-width: auto !important; overflow: inherit !important; }
  .sp_tac { text-align: center !important; }
  .sp_tar { text-align: right !important; }
  .sp_mb15 { margin-bottom: 15px !important; }
  .sp_mb20 { margin-bottom: 20px !important; }
  div, p, dd, dl, dt, th, td, span, li { box-sizing: border-box; }

  /* メインの日本語フォント 太字 */
  .f_min_bold { font-weight: 700; }
  .f_hira_bold { font-weight: 700; }
  .f_gothic_bold { font-weight: 700; }
  .f_hirago_bold { font-weight: 700; }
}

/* 印刷用 */
@media print {
  body { zoom: 0.6; -webkit-print-color-adjust: exact; }
}
.sec01 video { max-width: 100%; }

/* 印刷用 IE10以上 */
@media print and (-ms-high-contrast:none) {
  @page { size: A4; margin: 12.7mm 9.7mm; }
  body { zoom: 1.8; width: 1200px; transform: scale(0.5); transform-origin: 0 0; }
}
#draw #header { display: none; }
#draw .container section { position: relative; width: 100%; height: 100vh; }
#draw .container section .sec01 { position: absolute; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; }
#draw .container section video { position: absolute; top: 50%; left: 50%; object-fit: cover; transform: translate(-50%, -50%); width: 100%; height: 100%; }
@media screen and (max-width:768px) {
  #draw #header { display: none; }
  #draw .container section { position: relative; width: 100%; height: 100vh; }
  #draw .container section .sec01 { position: absolute; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; }
  #draw .container section video { position: absolute; top: 50%; left: 50%; object-fit: cover; transform: translate(-50%, -50%); width: 100%; height: 100%; }
}
