.top_sec { padding-top: 70px; }
.top_sec .lb { margin-bottom: 28px; text-align: center; }

.performance { text-align: center; margin-top: 25px; }
.performance-left { margin: 0 40px 0 0; }

#keyTopInfo { margin: 0 auto; max-width: 1284px; width: 100%; padding: 0 42px; }
#keyTopInfo .inner { display: block; background: #57290d; color: #fff; padding: 13px 12px 12px; font-size: 115%; line-height: 1; text-align: center; }
#keyTopInfo a { color: #fff; }
#keyTopInfo a span { text-decoration: underline; }
#keyTopInfo img { vertical-align: middle; }

#keySlider { display: block; margin-left: auto; margin-right: auto; max-width: 1284px; width: 100%; padding: 0 42px; position: relative; }
#keySlider .over1 { position: absolute; bottom: 0; left: 5.84%; z-index: 10; -webkit-transform: translate(0, 45%); transform: translate(0, 45%); }
#keySlider .over1 .medal { display: inline-block; margin: 0 5px; }
#keySlider .over2 { max-width: 28.75%; position: absolute; bottom: 0; right: 0; z-index: 10; -webkit-transform: translate(0, 50%); transform: translate(0, 50%); }

#sec01 .box_inner { display: block; margin-left: auto; margin-right: auto; max-width: 850px; width: 90%; }
#sec01 p { line-height: 1.81; }

#sec02 .top_sec { padding-left: 200px; padding-bottom: 30px; position: relative; overflow: hidden; }
#sec02 .lb { margin-left: -200px; }
#sec02 .chara { position: absolute; /*bottom: -86px;*/ top: 114px; left: 0; }
#sec02 .float_list li { width: 25%; }
#sec02 .float_list li img { width: 100%; }

.option_box { max-width: 1100px; width:90%; margin-left:auto; margin-right:auto; padding: 35px 0 30px; text-align: center; }
.option_box .lb2 { margin-bottom: 0; }
.option_box .btn_option { background: url("../image/top-option__dot.png") 0 20px repeat-x; }
.option_box .btn_optionToggle { background: #fff; padding: 0 8px; opacity:1; }
.option_box .optionToggle { padding: 20px 0 30px; }
.option_box .optionToggle p { text-align:left; line-height: 1.5; }

.option_box .option_list { margin: 0 -2.4823% 30px 0; font-size: 0; text-align: left; }
.option_box .option_list li { display: inline-block; vertical-align: top; /*width: 17.77%; margin-right: 2.23%;*/ width: 22.5177%; margin-right: 2.4823%; font-size: 14px; text-align: center; }
.option_box .option_list li.first { display: block; width: 100%; padding-right: 2.4823%; margin-bottom: 30px; }
.option_box .option_list figure { margin-bottom: 22px; text-align: center; }
.option_box .option_list figure img { vertical-align: top; }
.option_box .option_list .h-lb04-s { margin-bottom: 15px; }

#sec03 { background: url("../image/bg_stripe.gif"); padding-bottom: 155px; }
#sec03 .lb_box { display: block; margin-left: auto; margin-right: auto; max-width: 770px; width: 100%; position: relative; }
#sec03 .chara { position: absolute; top: -27px; left: 0; }
#sec03 .float_list { margin: 30px auto 0; }
#sec03 .float_list li { width: 30%; padding-top: 48px; margin: 0 5% 15px 0; }
#sec03 .float_list .img_box { position: relative; }
#sec03 .float_list .img_box .num { margin-left: -50px; position: absolute; top: -48px; left: 50%; }
#sec03 .float_list .txt_box { background: url("../image/top-point__bal.png") 50% 100% no-repeat; background-size: 186px; height: 232px; padding: 25px 0 35px; }
#sec03 .float_list .txt_box .lb2 { margin-bottom: 15px; font-size: 100%; text-align: center; }
#sec03 .float_list .txt_box p { max-width: 250px; margin: 0 auto; line-height: 1.5; }
#sec03 .float_list li.w100 { background: url("../image/top-point__bal.png") 100% 35px no-repeat; background-size: 51%; width: 100%; padding-bottom: 30px; margin: 0; overflow: hidden; }
#sec03 .float_list li.w100 .img_box, #sec03 .float_list li.w100 .txt_box { float: left; width: 50%; }
#sec03 .float_list li.w100 .txt_box { background: none; height: auto; padding-top: 8.18%; }
#sec03 .float_list li.w100 .txt_box p { max-width: 370px; }
#sec03 .float_list li.last { margin-right: 0; }

#sec04 { background: url("../image/bg_top-flow.jpg") 50% 0 no-repeat; background-size: cover; }
#sec04 .top_sec { padding-bottom: 65px; position: relative; }
#sec04 .chara { margin: 0 -85px -13px 0; position: absolute; bottom: 100%; right: 50%; }
#sec04 .float_list { max-width: 1080px; margin: 25px auto 0; }
#sec04 .float_list li { width: 19.44%; margin: 0 2.78%; text-align: center; position: relative; }
#sec04 .float_list li:after { content: ""; background: url("../image/icon_arrow1.png") 50% 50% no-repeat; display: block; width: 35px; height: 32px; margin-left: 5%; position: absolute; top: 123px; left: 100%; }
#sec04 .float_list li:last-child:after { display: none; }
#sec04 .float_list .step { margin-bottom: 15px; }
#sec04 .float_list .img_box { display: inline-block; position: relative; }
#sec04 .float_list .img_box .num { position: absolute; top: -2px; right: -8px; }
#sec04 .float_list .txt_box { padding-top: 12px; }
#sec04 .float_list .txt_box .lb2 { margin-bottom: 15px; font-size: 100%; }
#sec04 .float_list .txt_box p { text-align: left; line-height: 1.5; }

#sec05 { background: url("../image/bg_top-deli2_.png") 50% 100% no-repeat, url("../image/bg_top-deli1_.png") 50% 0 no-repeat, url("../image/bg_top-deli0.jpg"); }
#sec05 .top_sec { padding-bottom: 70px; }
#sec05 .lb_box { /*padding: 0 285px 30px 0;*/ padding-right: 285px; position: relative; }
#sec05 .lb { margin-right: -285px; position: relative; }
#sec05 .lb .lb_sub { position: absolute; left: 50%; bottom: 0; -webkit-transform: translate(-238%, 17%);transform: translate(-238%, 17%); }
#sec05 .pulldownImg { padding: 25px 0 35px 9.1%; }
#sec05 .chara { position: absolute; /*right: -50px; bottom: -95px;*/ right: 100px; bottom: -100px; }
#sec05 .cal_box { display: block; margin-left: auto; margin-right: auto; max-width: 1100px; width: 90%; background: #fff; border-radius: 6px; padding: 40px 40px 37px; text-align: center; position: relative; z-index: 1; }
#sec05 .cal_box section + section { margin-top: 35px; }
#sec05 .cal_box .lb2 { background: #57290d; border-radius: 6px; color: #fff; padding: 10px 20px; margin-bottom: 18px; font-size: 100%; }
#sec05 .cal_box .nouki_box { overflow: hidden; }
#sec05 .cal_box .nouki_box .img_box { float: left; width: 40%; }
#sec05 .cal_box .nouki_box .txt_box { float: right; width: 57.8%; padding-top: 3%; }
#sec05 .cal_box .nouki_box .txt_box p + p { margin-top: 20px; }
#sec05 .cal_box .nouki_box .txt_box img { display: block; }
#sec05 .cal_box .txt_saityo { margin-right: 18px; }
#sec05 .cal_box .cal { margin: 20px auto 13px; position: relative; }
#sec05 .cal_box .cal .arrow { max-width: 4.12%; position: absolute; }
#sec05 .cal_box .cal_summer .arrow { left: 30.784%; bottom: -25px; }
#sec05 .cal_box .cal_winter .arrow { left: 45%; bottom: -30px; }
#sec05 .cal_box .sub_box { /*background: rgba(255, 255, 255, 0.55);*/background: #fdf3f7; border: solid 3px #fbdae5; border-radius: 6px; padding: 25px 2.636%; margin-bottom: 8px; overflow: hidden; }
#sec05 .cal_box .sub_box .img_box { float: left; width: 42.32%; }
#sec05 .cal_box .sub_box .txt_box { float: right; width: 55.5%; text-align: left; }
#sec05 .cal_box .sub_box .txt_box p { padding-left: 15px; }
#sec05 .cal_box .sub_box .lb3 { margin-bottom: 8px; }

#sec06 { background: url("../image/bg_top-voice.jpg") 50% 0 no-repeat; background-size: cover; text-align: center; }
#sec06 .top_sec { padding-bottom: 70px; position: relative; }
#sec06 .lb, #sec06 .chara { position: relative; z-index: 5; }
#sec06 .chara { display: inline-block; padding-left: 20px; }
#sec06 .voice { width: 100%; height: 96.5%; position: absolute; top: 3%; left: 0; }
#sec06 .voice li { position: absolute; }
#sec06 .voice .voice1 { max-width: 42.27%; /*top: 0;*/ bottom: 45.2%; left: 0.18%; z-index: 4; }
#sec06 .voice .voice2 { max-width: 41.73%; top: 4.23%; /*bottom: 41.5%;*/ right: 0.9%; z-index: 1; }
#sec06 .voice .voice3 { max-width: 38.73%; /*bottom: 0;*/ top: 49.5%; left: 10.9%; z-index: 2; }
#sec06 .voice .voice4 { max-width: 39.2%; /*bottom: 5.29%;*/ top: 44.2%; right: 9.545%; z-index: 3; }
#sec06 .sub_box { margin-top: -28px; padding-bottom: 70px; position: relative; z-index: 1; }

#sec07 { background: url("../image/bg_canvas2.jpg"); position: relative; }
#sec07:before, #sec07:after { content: ""; display: block; width: 100%; height: 0; position: absolute; left: 0; }
#sec07:before { background: url("../image/top-blog__line1.png") 50% 0 no-repeat; background-size: cover; padding-top: 15px; padding-top: 1.08%; top: 0; -webkit-transform: translate(0, -20%); transform: translate(0, -20%); }
#sec07:after { background: url("../image/top-blog__line2.png") 50% 100% no-repeat; background-size: cover; padding-top: 13px; padding-top: 0.93%; bottom: 0; }
#sec07 .top_sec { padding-bottom: 82px; }
#sec07 section + section { margin-top: 68px; }
#sec07 .blog_list { max-width: 1068px; margin: 33px auto 22px; overflow: hidden; }
#sec07 .blog_list li, #sec07 .movie_list li { float: left; width: 29%; margin: 0 2.166%; position: relative; }
#sec07 .blog_list li:hover { opacity: 0.7; }
#sec07 .blog_list figure { margin-bottom: 12px; text-align: center; }
#sec07 .blog_list p, #sec07 .movie_list p { margin-top: 8px; line-height: 1.5; }
#sec07 .blog_list a { display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; overflow: hidden; text-indent: 200%; white-space: nowrap; }
#sec07 .movie_list { max-width: 1068px; margin: 33px auto 35px; overflow: hidden; }
#sec07 .movie_list .movie { height: 0; padding-top: 67.7%; position: relative; }
#sec07 .movie_list .movie iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

.safety-box
{ text-align: center; margin-top :30px; }
.campaign-box
{ text-align: center; margin-top :30px; }


@media screen and (max-width: 1279px) {
  #sec05 .chara { right: 0; }
}
@media screen and (max-width: 959px) { #keyTopInfo { border-top: solid 1px #fff; }
  .performance-left { margin: initial; }
	#keyTopInfo, #keySlider { padding: 0; }
  #keySlider .over1 { width: 100%; padding: 0 5%; bottom: -8%; left: 0; }
  #keySlider .over1 .medal { display: block; max-width: 23.2%; margin: 0; }
  #keySlider .over1 .medal:nth-child(1) { float: left; }
  #keySlider .over1 .medal:nth-child(2) { float: right; }
  #sec01 p { font-size: 115%; }
  #sec01 .bnr_trial { max-width: 86%; margin: 60px auto 0; text-align: center; }
  #sec02 .bnr_trial { max-width: 86%; margin: 30px auto; text-align: center; }
  #sec02 .top_sec { padding-left: 0; padding-bottom: 140px; }
  #sec02 .lb { margin-left: 0; }
  #sec02 .chara { margin-left: -66px; bottom: -132px; top: auto; left: 50%; }
  #sec02 .float_list li { width: 50%; }
  #sec03 { padding-bottom: 20%; }
  #sec03 .top_sec { padding-bottom: 150px; position: relative; }
  #sec03 .lb_box { position: static; }
  #sec03 .chara { margin-left: -123px; top: auto; left: 50%; bottom: 0; }
  #sec03 .float_list { margin-top: 0; }
  #sec03 .float_list li { float: none; max-width: 330px; width: 70%; margin: 0 auto 35px; }
  #sec03 .float_list li.w100 { background-position: 50% 100%; background-size: contain; max-width: 550px; width: 100%; margin: 0 auto 5px; }
  #sec03 .float_list li.w100 .img_box, #sec03 .float_list li.w100 .txt_box { float: none; width: 100%; }
  #sec03 .float_list li.w100 .txt_box { padding: 11% 0 15%; }
  #sec03 .float_list li.last { margin-right: auto; }
  #sec03 .float_list li:last-child { margin-bottom: 18px; }
  #sec04 .float_list { max-width: 568px; margin: 35px auto -50px; }
  #sec04 .float_list li { width: 36.96%; margin: 0 6.52% 50px; }
  #sec04 .float_list li:nth-child(2):after { top: 100%; left: auto; right: 116%; -webkit-transform: rotate(135deg); transform: rotate(135deg); }
  #sec05 { background-size: contain, 105%; }
  #sec05 .top_sec { padding-bottom: 0; }
  #sec05 .lb_box { /*padding: 0 0 190px;*/ padding: 0; }
  #sec05 .lb { margin-right: 0; }
  #sec05 .pulldownImg { padding-left: 0; }
  #sec05 .chara { max-width: 217px; /*margin-left: -73px; right: auto; left: 50%; bottom: -133px;*/ right: -18px; bottom: -105px; }
  #sec05 .cal_box { border-radius: 0; width: 100%; padding-left: 5%; padding-right: 5%; }
  #sec05 .cal_box .txt_saityo { display: block; max-width: 70%; margin: 0 auto 12px; }
  #sec05 .cal_box .sub_box .img_box, #sec05 .cal_box .sub_box .txt_box { float: none; width: 100%; }
  #sec05 .cal_box .sub_box .txt_box { margin-bottom: 20px; }
  #sec06 .chara { padding-left: 0; position: absolute; top: 120px; left: 0; z-index: 0; }
  #sec06 .voice { max-width: 580px; height: auto; margin: 0 auto; position: relative; top: 0; }
  #sec06 .voice li { margin-top: -12%; position: relative; }
  #sec06 .voice li:nth-child(odd) { text-align: right; }
  #sec06 .voice li:nth-child(even) { text-align: left; }
  #sec06 .voice .voice1, #sec06 .voice .voice2, #sec06 .voice .voice3, #sec06 .voice .voice4 { max-width: none; }
  #sec06 .voice .voice1 { margin-top: 0; bottom: 0; left: 0; z-index: 1; }
  #sec06 .voice .voice2 { top: 0; right: 0; z-index: 2; }
  #sec06 .voice .voice3 { top: 0; left: 0; z-index: 3; }
  #sec06 .voice .voice4 { top: 0; right: 0; z-index: 4; } }
@media screen and (max-width: 767px) { .option_box .option_list { /*margin: 0 -3.7% -20px 0;*/ margin-bottom: -20px; }
  .option_box .option_list li { /*width: 29.63%; margin: 0 3.7% 20px 0;*/ width: 47.5177%; margin-bottom: 20px; } }
@media screen and (max-width: 599px) { .top_sec { padding-top: 12%; }
  .top_sec .lb { margin-bottom: 18px; -webkit-transform: scale(0.8); transform: scale(0.8); }
  #sec01 p { line-height: 1.93; }
  #sec01 p br { display: none; }
  #sec01 .bnr_trial { margin-top: 40px; }
  #sec02 .bnr_trial { margin: 20px auto; }
  #sec02 .top_sec { padding-bottom: 110px; }
  #sec02 .chara { max-width: 210px; margin-left: -48px; bottom: -94px; }
  .option_box .btn_option { background: none; }
  .option_box .btn_optionToggle { padding: 0; }
  #sec03 .top_sec { padding-bottom: 135px; }
  #sec03 .chara { -webkit-transform: scale(0.8); transform: scale(0.8); }
  #sec03 .float_list li { margin-bottom: 18px; }
  #sec03 .float_list .txt_box { height: auto; }
  #sec03 .float_list li.w100 .txt_box { padding: 32px 0 5%; }
  #sec03 .float_list li.w100 .txt_box .lb2 { max-width: 90%; margin-left: auto; margin-right: auto; }
  #sec03 .float_list li.w100 .txt_box p { padding: 0 7%; }
  #sec04 .top_sec { padding-bottom: 45px; }
  #sec04 .chara { margin-right: -72px; }
  #sec04 .float_list li:after { background-size: contain; width: 23px; top: 100px; }
  #sec04 .float_list .img_box .num { max-width: 32%; }
  /*#sec05 .lb_box { padding-bottom: 142px; }*/
  #sec05 .lb { margin-top: 50px; }
  #sec05 .lb .lb_sub { bottom: 100%; -webkit-transform: translate(-50%, -5px);transform: translate(-50%, -5px); }
  #sec05 .pulldownImg { padding: 10px 0 25px; }
  /*#sec05 .chara { margin-left: -52px; bottom: -95px; }*/
  #sec05 .cal_box .nouki_box .img_box, #sec05 .cal_box .nouki_box .txt_box { float: none; width: 100%; }
  #sec05 .cal_box .nouki_box .txt_box { margin-bottom: 20px; }
  #sec05 .cal_box .nouki_box .txt_box img { display: inline; }
  #sec05 .cal_box .cal .arrow { max-width: 25px; }
  #sec05 .cal_box .cal_summer .arrow { left: 35%; }
  #sec05 .cal_box .sub_box { padding: 20px 7%; }
  #sec05 .cal_box .sub_box .lb3 { margin-bottom: 15px; }
  #sec05 .cal_box .sub_box .txt_box p { padding-left: 0; }
  #sec06 .top_sec { padding-bottom: 45px; }
  #sec06 .chara { max-width: 42%; top: 2%; }
  #sec06 .voice li:nth-child(odd) { margin-left: auto; }
  #sec06 .voice .voice1 { max-width: 92.994%; }
  #sec06 .voice .voice2 { max-width: 91.806%; }
  #sec06 .voice .voice3 { max-width: 85.206%; }
  #sec06 .voice .voice4 { max-width: 86.24%; }
  #sec06 .sub_box { margin-top: -7px; padding-bottom: 45px; }
  #sec07:before { padding-top: 8px; }
  #sec07:after { padding-top: 7px; }
  #sec07 section + section { margin-top: 44px; }
  #sec07 .blog_list, #sec07 .movie_list { margin-top: 25px; }
  #sec07 .blog_list li, #sec07 .movie_list li { float: none; width: 100%; margin: 0 0 25px; }
  #sec07 .movie_list { margin-bottom: 15px; } }
@media screen and (max-width: 479px) { .option_box .option_list { margin-bottom: -25px; }
  .option_box .option_list li { /*width: 46.3%;*/ margin-bottom: 25px; }
  .option_box .option_list figure { margin-bottom: 12px; } }