@charset "UTF-8";
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; font-size: 100%; vertical-align: baseline; }

html { line-height: 1; }

ol, ul { list-style: none; }

table { border-collapse: collapse; border-spacing: 0; }

caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }

q, blockquote { quotes: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; content: none; }

a img { border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* Colorbox Core Style: The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper { position: absolute; top: 0; left: 0; z-index: 9999; overflow: hidden; -webkit-transform: translate3d(0, 0, 0); }

#cboxWrapper { max-width: none; }

#cboxOverlay { position: fixed; width: 100%; height: 100%; }

#cboxMiddleLeft, #cboxBottomLeft { clear: left; }

#cboxContent { position: relative; }

#cboxLoadedContent { overflow: auto; -webkit-overflow-scrolling: touch; }

#cboxTitle { margin: 0; }

#cboxLoadingOverlay, #cboxLoadingGraphic { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow { cursor: pointer; }

.cboxPhoto { float: left; margin: auto; border: 0; display: block; max-width: none; -ms-interpolation-mode: bicubic; }

.cboxIframe { width: 100%; height: 100%; display: block; border: 0; padding: 0; margin: 0; }

#colorbox, #cboxContent, #cboxLoadedContent { box-sizing: content-box; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; }

/* User Style: Change the following styles to modify the appearance of Colorbox.  They are ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay { background: #FFF; opacity: 0.9; filter: alpha(opacity=90); }

#colorbox { outline: 0; }

#cboxContent { margin-top: 0; overflow: visible; background: #FFF; }

.cboxIframe { background: #fff; }

#cboxError { padding: 50px; border: 1px solid #ccc; }

#cboxLoadedContent { background: #FFF; padding: 0; }

#cboxLoadingOverlay { background: #000; }

#cboxTitle { position: absolute; top: -22px; left: 0; color: #000; }

#cboxCurrent { position: absolute; top: -22px; right: 205px; text-indent: -9999px; }

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose { border: 0; padding: 0; margin: 0; overflow: visible; text-indent: -9999px; width: 40px; height: 40px; position: absolute; top: -50px; background: url(../img/controls.png) no-repeat 0 0; }

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active { outline: 0; }

#cboxPrevious { background-position: 0px 0px; right: 44px; }

#cboxPrevious:hover { background-position: 0px -40px; }

#cboxNext { background-position: -25px 0px; right: 22px; }

#cboxNext:hover { background-position: -25px -25px; }

#cboxClose { background-position: -80px 0px; right: 0; }

#cboxClose:hover { background-position: -80px -40px; }

.cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious { right: 66px; }

.cboxSlideshow_on #cboxSlideshow { background-position: -75px -25px; right: 44px; }

.cboxSlideshow_on #cboxSlideshow:hover { background-position: -100px -25px; }

.cboxSlideshow_off #cboxSlideshow { background-position: -100px 0px; right: 44px; }

.cboxSlideshow_off #cboxSlideshow:hover { background-position: -75px -25px; }

html { font-size: 62.5%; }

body { font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; font-size: 1.6rem; line-height: 1.6; color: #646464; }
@media screen and (max-width: 640px) { body { font-size: 1.4rem; } }

img { max-width: 100%; height: auto; margin: 0; padding: 0; display: block; }

.indent1em { text-indent: -1em; padding-left: 1em; }

.notes { font-size: 0.75em; }

.color_red { color: #E60012; }

.bold { font-weight: bold; }

.term { font-size: 1.375em; }

.term-s { font-size: 1.375em; }
@media screen and (max-width: 640px) { .term-s { font-size: 1.2em; } }

.phone_num { font-size: 1.3em; }

.large { font-size: 1.2em; }

.small { font-size: 0.8em; }

.ta-c { text-align: center; }

.list > * { margin-top: 0.4em; }
.list > *:first-child { margin-top: 0; }

.kerning { letter-spacing: -0.4em; }

.dnone_pc { display: none; }

@media screen and (max-width: 640px) { .dnone_pc { display: block; }
  .dnone_smp { display: none; } }
.mgT05 { margin-top: 0.5em; }

.mgR05 { margin-right: 0.5em; }

.mgB05 { margin-bottom: 0.5em; }

.mgL05 { margin-left: 0.5em; }

.pdT05 { padding-top: 0.5em; }

.pdR05 { padding-right: 0.5em; }

.pdB05 { padding-bottom: 0.5em; }

.pdL05 { padding-left: 0.5em; }

.mgT10 { margin-top: 1em; }

.mgR10 { margin-right: 1em; }

.mgB10 { margin-bottom: 1em; }

.mgL10 { margin-left: 1em; }

.pdT10 { padding-top: 1em; }

.pdR10 { padding-right: 1em; }

.pdB10 { padding-bottom: 1em; }

.pdL10 { padding-left: 1em; }

.mgT15 { margin-top: 1.5em; }

.mgR15 { margin-right: 1.5em; }

.mgB15 { margin-bottom: 1.5em; }

.mgL15 { margin-left: 1.5em; }

.pdT15 { padding-top: 1.5em; }

.pdR15 { padding-right: 1.5em; }

.pdB15 { padding-bottom: 1.5em; }

.pdL15 { padding-left: 1.5em; }

.mgT20 { margin-top: 2em; }

.mgR20 { margin-right: 2em; }

.mgB20 { margin-bottom: 2em; }

.mgL20 { margin-left: 2em; }

.pdT20 { padding-top: 2em; }

.pdR20 { padding-right: 2em; }

.pdB20 { padding-bottom: 2em; }

.pdL20 { padding-left: 2em; }

.mgT25 { margin-top: 2.5em; }

.mgR25 { margin-right: 2.5em; }

.mgB25 { margin-bottom: 2.5em; }

.mgL25 { margin-left: 2.5em; }

.pdT25 { padding-top: 2.5em; }

.pdR25 { padding-right: 2.5em; }

.pdB25 { padding-bottom: 2.5em; }

.pdL25 { padding-left: 2.5em; }

.mgT30 { margin-top: 3em; }

.mgR30 { margin-right: 3em; }

.mgB30 { margin-bottom: 3em; }

.mgL30 { margin-left: 3em; }

.pdT30 { padding-top: 3em; }

.pdR30 { padding-right: 3em; }

.pdB30 { padding-bottom: 3em; }

.pdL30 { padding-left: 3em; }

.kv_wrapper { margin-bottom: 2rem; }
@media screen and (max-width: 780px) { .kv_wrapper { margin-bottom: 1rem; margin-left: -1rem; margin-right: -1rem; } }

.hr { margin-bottom: 4rem; padding-bottom: 4rem; border-bottom: 1px dotted #666; }
@media screen and (max-width: 640px) { .hr { margin-bottom: 2rem; padding-bottom: 2rem; } }

.wrapper { max-width: 780px; margin: 0 auto; padding: 0 1rem; }

.h2 { font-size: 1.875em; font-weight: bold; text-align: center; margin-bottom: 4rem; }
@media screen and (max-width: 640px) { .h2 { margin-bottom: 2rem; } }

.h2 img{ margin: 0 auto;}

.h3 { color:#231815;font-weight:bold;background: #FCC800; padding: 1rem 2rem 1rem 1rem; }

.h3_section { margin: 2rem 0 4rem; }
@media screen and (max-width: 640px) { .h3_section { margin: 1rem 0 2rem; } }

.section:last-child > .h3_section { margin-bottom: 0; }
.h3_section .spec-note{
    font-weight: bold;
    text-decoration:underline;
}

.flow { /*background: #EBF7F1;*/ margin: 4%; padding: 4%; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -moz-border-radius: 10px; -webkit-border-radius: 10px; border-radius: 10px; }
@media screen and (max-width: 640px) { .flow { background: transparent; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; display: block; margin: 1em 0; padding:0 2rem 0 0; } }
.flow__li { width: 21%; }
.flow__li:first-child { margin-top: 0; }
.flow__li:first-child > .flow__imgarea:before { content: none; }
@media screen and (max-width: 640px) { .flow__li { display: table; width: 100%; margin-top: 30px; } }
.flow__imgarea { position: relative; }
.flow__imgarea:before { content: ""; display: block; width: 0; height: 0; /*border: 14px solid #82AD99;*/border: 14px solid #646464; border-right: 0; border-top-color: transparent; border-bottom-color: transparent; position: absolute; top: 0; bottom: 0; left: -18%; margin: auto 0; }
@media screen and (max-width: 640px) { .flow__imgarea { display: table-cell; vertical-align: top; background: #FFFFFF; width: 110px; padding: 1.4rem 1rem 1rem; }
  .flow__imgarea:before { display:none;/*border: 14px solid #82AD99; border-bottom: 0; border-left-color: transparent; border-right-color: transparent; position: absolute; left: 0; right: 0; margin: 0 auto; top: -21px;*/ } }
.flow__imgarea__img { margin-bottom: 2rem; }
@media screen and (max-width: 640px) { .flow__imgarea__img { margin-bottom: 1rem; } }
.flow__imgarea__img img { max-width: initial; height: 90px; width: auto; margin: 0 auto; }
@media screen and (max-width: 640px) { .flow__imgarea__img img { height: 90px; } }
.flow__imgarea__title { text-align: center; font-weight: bold; line-height: 1.4; min-height: 4.4rem; margin-bottom: 3rem; }
@media screen and (max-width: 640px) { .flow__imgarea__title { text-align: left; min-height: initial; margin-bottom: 10px; } }
.flow__txtarea { font-size: 0.875em; }
@media screen and (max-width: 640px) { .flow__txtarea { display: table-cell; vertical-align: middle; padding-left: 1.4rem; } }

.btn_area { /*margin-top: 6rem;*/ margin-top:3rem;margin-bottom:2.5rem; }
.btn_area2 { /*margin-top: 6rem;*/ margin-top:1.5rem;margin-bottom:2.5rem; }

@media screen and (max-width: 640px) { .btn_area { margin-top: 3rem; } }

.btn, .btn_apply { display: block; background: #E60012; color: #FFF; font-weight: bold; text-decoration: none; text-align: center; margin: 0 auto; line-height: 1; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
.btn_apply2 { display: block; background: #868686; color: #FFF; font-weight: bold; text-decoration: none; text-align: center; margin: 0 auto; line-height: 1; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
/*.btn:before, .btn_apply:before { content: ""; display: inline-block; width: 20px; height: 20px; margin: 0 0.5em 0 -10px; background: url(../img/icon_arrow.png) no-repeat left top; -moz-background-size: 20px; -o-background-size: 20px; -webkit-background-size: 20px; background-size: 20px; }*/

.btn { font-size: 1.25em; padding: 1rem; }

.btn_apply { /*font-size: 1.5em;*/ font-size:3.3rem; line-height: 1; padding: 2rem; max-width: 440px; }@media screen and (max-width: 640px) {.btn_apply {font-size:7vw;}}
.btn_apply2 { /*font-size: 1.5em;*/ font-size:1.6rem; line-height: 1; padding: 2rem; max-width: 440px; }

.footer { /*margin-top: 6rem;*/ padding: 2rem 1rem 4rem; /*border-top: 1px solid #CCC;*/ text-align: center; }
@media screen and (max-width: 640px) { .footer { /*margin-top: 3rem;*/ padding: 1rem 1rem 2rem; } }
.footer__copyright { font-size: 1rem; }

.modal { padding: 4rem; border: 1px solid #000; max-width: 500px; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
@media screen and (max-width: 640px) { .modal { padding: 3rem; } }
.modal__lead { margin-bottom: 2rem; text-align: center; }
.modal__title { /*font-size: 1.5em;*/ font-size: 1.3em; margin-bottom: 2rem; text-align: center; }
.modal__btn_area { display: flex; }
@media screen and (max-width: 640px) { .modal__btn_area { display: block; } }
.modal__btn_area__li { width: 190px; list-style: none; margin-left: 40px; }
.modal__btn_area__li:first-child { margin-left: 0; }
@media screen and (max-width: 640px) { .modal__btn_area__li { width: auto; margin: 2rem 0 0; }
  .modal__btn_area__li:first-child { margin-top: 0; } }
.modal__notes { font-size: 1.2rem; text-align: center; display: block; margin-top: 1rem; }
@media screen and (max-width: 640px) { .modal__notes { font-size: 1rem; margin-top: 0.5rem; } }
@media screen and (max-width: 640px) { .sp_br{ display: none;} }



/* 202004 css */

.h3_section dl dt{ color:#D31518;font-weight:bold; }
.h3_section dl dd{ font-weight:bold;margin-bottom:20px; }
.h3_section dl dd:last-child{ margin-bottom:0; }
.tel_sec{ display:flex;align-items: center; }
.tel{ font-size:2.8rem;margin-left:0.8rem; }
.sp--view{ display:none; }@media screen and (max-width: 640px) {.sp--view{ display:block; }}
.sp_arrow{ width:28px;height:auto;margin:30px auto 0; }
.flow_sec{ margin-top:3rem;border:solid 1px #646464; }
.flow_sec > p { width:100%;background:#646464;font-size:2rem;color:#fff;font-weight:bold;text-align: center; }

/* 202207 css */
@media screen and (max-width: 370px) { .view_370{display:none;} }

/* 202211 css */

.h3_section .w-chance_red{ color:#D31518;font-weight:bold; }
.prize_w-chance dl{
  border-left:2px dotted #D31518;
  padding-left: 1em;
  margin-left: .5em;
}
.long_url{word-break: break-all;}

/* 202303 css */
@media screen and (max-width: 640px) { .footer .wrapper{line-height:1.3;}}

/* 202404 css */
.h3_section .br_420{
  display: none;
}

.h3_section .br_400{
  display: none;
}
@media screen and (max-width: 400px) { 
  .h3_section .br_400{
    display: block;
  }
}


.comingsoon{
  width: 100%;
  max-width: 1200px;
  margin: auto;
}
@media screen and (max-width: 640px){
  .comingsoon{
    width: 100%;
    max-width: unset;
  }
}
.tour_small{
  font-size: 90%;
  width: 93%;
  display: block;
  padding-left: 1em;
}
@media screen and (max-width: 640px) { 
  .tour_small{
    width: 100%;
    padding-left: 0;
  }
}
.target-list li{
  line-height: 1.3;
  margin-bottom: 14px;
}
.target-list li p{
  line-height: 1.2;
}
@media screen and (max-width: 640px) { 
  .target-list li p{
    line-height: 1;
  }
}
.target-list li .small{
  margin-left: 7px;
}
.target-list li:last-of-type{
  margin-bottom: 0;
}
.example_excluded_products{
  width: 95%;
  margin: 13px auto 10px;
  border: 3px solid #D31518;
}
@media screen and (max-width: 640px) { 
  .example_excluded_products{
    /* width: 100%; */
    margin: 10px auto 4rem;
    border: 2px solid #D31518;
  }
}
.example_excluded_products .excluded_ttl{
  background: #D31518;
  color: #FFF;
  font-weight: bold;
  display: block;
  text-align: center;
  padding: 6px 0;
  font-size: 18px;
}
@media screen and (max-width: 640px) { 
  .example_excluded_products .excluded_ttl{
    font-size: 14px;
    padding: 4px 0 6px;
  }
}
.example_excluded_products .excluded_ttl span{
  color: #FFF;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  text-decoration: underline;
}
@media screen and (max-width: 640px) { 
  .example_excluded_products .excluded_ttl span{
    text-align: left;
    line-height: 1.4;
    width: 95%;
    margin: auto;
  }
}
.view500{
  display: none;
}
@media screen and (max-width: 500px) { 
  .view500{
    display: block;
  }
}
.example_excluded_products .excluded_innr .red{
  color: #FD4A49;
}
.excluded_innr{
  width: 93%;
  margin: auto;
  padding: 13px 0 5px;
}
@media screen and (max-width: 640px) { 
  .excluded_innr{
    padding: 10px 0 5px;
  }
}
.h3_section .numb_list{
  margin: 3px 1em 5px;
}
@media screen and (max-width: 640px) { 
  .h3_section .numb_list{
    margin: 0 1em 1px;
  }
}
sub{
  vertical-align: sub;
  font-weight: normal;
  position: relative;
  top: 2px;
  line-height: 1;
  display: inline-block;
  height: 10px;
}

.last_line{
  font-feature-settings: "palt";
}

@media screen and (max-width: 640px) {
  .last_line{
    line-height: 1.6;
  }
}
.fz_per80{
  font-size: 80%;
}
.fs_per90{
  font-size: 90%;
  line-height: 1;
}
.prize .h3_section dl dd .fw_nml{
  font-weight: normal;
  display: inline-block;
  font-size: 70%;
}
.kakko-02{
  margin-left: 1em;
}
@media screen and (max-width: 640px) {
  .kakko-02{
    margin-left: 7px;
  }
}
.kakko-02 p{
  border: 2px solid;
  border-radius: 40px;
  padding: 5px 13px;
  border-top-color: transparent;
  border-bottom-color: transparent;
  font-size: 75%;
  box-sizing: border-box;
  display: inline-block;
}
@media screen and (max-width: 640px) {
  .kakko-02 p{
    font-size: 73%;
    border-radius: 60px;
  }
}
.fz7em{
  font-size: 0.7em;
}
.txt_red{
  color:#D31518;
}
.underline{
  text-decoration: underline;
}

.lineh_012{
  line-height: 1.2;
  margin-top: 2px;
}
dd p.txt_red{
  line-height: 1;
  margin-top: 2px;
}

.product_txt_s{
  line-height: 1;
}