@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
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-size: 100%; font: inherit; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

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; }

/* ================================================================== */
/* General */
/* ================================================================== */
.cnt, header .inner, .ct, footer .f_ct, .semcon .s_inner, .sl .merit .s_inner { width: 1040px; }

/* ========================================================= */
/* フォントタイプ */
/* ========================================================= */
.f_g1, .em, .em_red, .movie .formarea .form_inner .question li::before, .privacy .ct .inner a.back_btn, .tokutei .ct .inner a.back_btn { font-family: メイリオ, Meiryo; }

.f_g2 { font-family: "HGP創英角ｺﾞｼｯｸUB"; }

.f_g3, .sl .numlist li::before, .sl .cur .lb::before { font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif; }

.f_m1 { font-family: "HGP明朝E", "細明朝体", "ヒラギノ明朝 Pro W3"; }

.f_m2 { font-family: Georgia, "游明朝体", "YuMincho", "游明朝", "Yu Mincho", serif; }

.f_org1, header h1, header .h_txt2, .formarea .f_lb, .formarea button.sub_btn, .formarea a.sub_btn, .lb, .sublb, .semcon .sbox dl dd, .profile .img_wrap dl dt, .profile .img_wrap dl dd, .thanks .ct .t_txt1, .thanks .ct h1, .thanks .ct .line_btn, .thanks .ct .qrinfo .method div p, .thanks .ct .qrinfo .method div .m_lb, .movie .message p.f_lb, .movie .formarea .form_inner .question li, .case .casetitle dd, .case .linkbtn, .ex .linkbtn, .benefits .sub_btn, .memct .linklist dl dd .linkbtn, .sl .case_example .exbox .casetitle dd, .sl .numlist li, .sl .cur .curimg .caption, .sl .mem_example .exbox .ex_lb, .sl .price, .sl .s_tokuten .sbox .t_lb, .sl .offer_tb td:nth-of-type(1), .sl .offer_tb td em, .movielist .exbox .mlist_box dl dd, .sl-sp .program .p_info dt, .sl-sp .cur .lb .num, .sl-sp .price_txt, .sl-100 .linkbtn, .sl-100 .example .exbox p.ex_lb, .sl-short .sec1, .sl_thanks .ct h1, .sl_thanks .ct h2 { font-family: heisei-kaku-gothic-std, sans-serif; font-style: normal; }

.f_org2 { font-family: vdl-penlady, sans-serif; font-weight: 700; font-style: normal; }

.f_org3 { font-family: vdl-pengentle, sans-serif; font-weight: 700; font-style: normal; }

.f_org4 { font-family: vdl-logona, sans-serif; font-weight: 400; font-style: normal; }

/* ========================================================= */
/* 装飾 */
/* ========================================================= */
b, .bold, table th { font-weight: bold; }

.normal { font-weight: normal; }

em { font-weight: bold; font-weight: 900; }

strong { /*  @extend .f_g1;*/ color: #c00200; font-weight: bold; }

.imgborder { border: 1px solid #969696; }

.imgborder_dash { border: 1px dashed #999; }

.imgshadow { box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.4); }

.imgradius { border-radius: 50%; }

.photoframe { margin: 2px; border: 10px solid #fff; box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6); }

.bg_yellow { display: inline-block; background-color: #ffff00; }

.underborder { border-bottom: 1px solid #333; }

.underborder_red { border-bottom: 2px solid #f00; }

.under_border_da { border-bottom: 1px dashed #ccc; }

.noborder, article .norborder { border: none; }

.line_through { text-decoration: line-through; }

.line-through { background: url(../img/dot.png) repeat-x 0 50%; }

.em { font-weight: bold; }

.em_red { font-weight: bold; }

.marker { background-color: #ffff00; }

.marker_btm { background: linear-gradient(rgba(0, 0, 0, 0) 60%, #fff9a7 0%); }

.ind_n { text-indent: 0; }

.mail_ico::before { content: ""; display: inline-block; margin-right: 0.5em; width: 14px; height: 14px; background: url(../img/envelope.svg) no-repeat; background-size: contain; vertical-align: middle; }

.back_ico::before { margin-right: 10px; content: "\f0a8"; font-family: "Font Awesome 5 Pro"; font-weight: bold; }

/* ========================================================= */
/* 表示 */
/* ========================================================= */
.nodisp { text-indent: -9999px; }

.disp_none { display: none; }

.br-pc { display: block; }

.br-tb { display: none; }

.br-sp { display: none; }

/* ========================================================= */
/* レイアウト調整 */
/* ========================================================= */
.al_right { text-align: right; }

.al_left { text-align: left; }

.al_center { text-align: center; }

.f_left { float: left; }

.f_right { float: right; }

.i_left, .sl .i001, .sl .cur .curimg, .sl .mem_example .exbox img, .sl .i004 { margin: 50px 50px 50px 0; float: left; }

.valign-t { vertical-align: top; }

.valign-b { vertical-align: bottom; }

.valign-m { vertical-align: middle; }

.mauto, header .inner, .ct, footer .f_ct, .semcon .s_inner, .case .casetitle, .sl .merit .s_inner, .sl_thanks .ct .inner, article .mauto, article header .inner, header article .inner, article .ct, article footer .f_ct, footer article .f_ct, article .semcon .s_inner, .semcon article .s_inner, article .case .casetitle, .case article .casetitle, article .sl .merit .s_inner, .sl .merit article .s_inner, article .sl_thanks .ct .inner, .sl_thanks .ct article .inner { margin-left: auto; margin-right: auto; }

/* ========================================================= */
/* カラー調整 */
/* ========================================================= */
.gray { color: #828282; }

.black { color: #000000; }

.red, .em_red { color: #fe0000; }

.red_d { color: #b00909; }

.pink { color: #fe6090; }

.blue { color: #227efc; }

.blue_l { color: #9ce8df; }

.blue_d { color: #1b528e; }

.yellow { color: #fffa7b; }

.orange { color: #ff7800; }

.green { color: #139b34; }

.white { color: #ffffff; }

.brown { color: #9f5a1d; }

.scrollbox { poisition: relative; width: 100%; overflow: auto; scrollbar-base-color: #fff; scrollbar-3dlight-color: #ffffff; scrollbar-arrow-color: #ffffff; scrollbar-darkshadow-color: #ffffff; scrollbar-face-color: #f1f1f1; scrollbar-highlight-color: #f1f1f1; scrollbar-shadow-color: #f1f1f1; scrollbar-track-color: #ffffff; }

/*スクロールバー全体*/
.scrollbox::-webkit-scrollbar { width: 10px; }

/*横スクロールバー全体*/
.scrollbox::-webkit-scrollbar:horizontal { height: 10px; }

/*スクロールバー上下左右末端のボタン*/
.scrollbox::-webkit-scrollbar-button { width: 10px; height: 10px; }

/*ドラッグするツマミ部分*/
.scrollbox::-webkit-scrollbar-thumb { background: #f1f1f1; }

/*右下角部分*/
.scrollbox::-webkit-scrollbar-corner { background-color: transparent; }

html { font-size: 62.5%; }

body { text-align: center; color: #3c3c3c; font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", メイリオ, Meiryo, "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", sans-serif; font-size: 1.8rem; overflow-x: hidden; background-color: white; position: relative; min-width: 1040px; -webkit-text-size-adjust: 100%; animation: fadeIn 2s ease 0s 1 normal; }

@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@-webkit-keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
p, li, dt, dd, table, th, td { line-height: 1.8; }

img { margin: 0; padding: 0; border: none; vertical-align: bottom; }

a { text-decoration: none; }
a.noborder { text-decoration: none; }
a:hover { color: #ff6102; text-decoration: underline; }

a:hover, input[type="submit"]:hover, input[type="reset"]:hover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }

a.nohover:hover { filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }

input[type="submit"], input[type="button"], input[type="reset"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer; }

input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration, input[type="reset"]::-webkit-search-decoration { display: none; }

input[type="submit"]::focus, input[type="button"]::focus, input[type="reset"]::focus { outline-offset: -2px; }

/* ====================================================================== */
/* BG */
/* ====================================================================== */
.bg { padding: 50px 0; overflow: hidden; }
.bg:nth-of-type(1) { padding-top: 0; }
.bg.bg_ptn1 { background: url(../img/bg_ptn1.png) no-repeat; background-size: cover; background-color: #fdeef3; }
.bg.bg_ptn2 { background-color: white; background-image: repeating-linear-gradient(45deg, #f4e9ed, #f4e9ed 1px, transparent 0, transparent 6px); }
.bg.bg_ptn3 { background-color: #e788a0; background-image: linear-gradient(45deg, #e892a7 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 75%, #e892a7 75%, #e892a7), linear-gradient(-45deg, #e892a7 25%, rgba(0, 0, 0, 0) 25%, rgba(0, 0, 0, 0) 75%, #e892a7 75%, #e892a7); background-size: 20px 20px; background-position: 0 0, 10px 10px; }

/* ====================================================================== */
/* HEADER */
/* ====================================================================== */
header { background: url(../img/mainimg.png) no-repeat 90% bottom; background-size: auto 85%; /*  border-bottom: 20px solid #ffa8b0;*/ position: relative; }
header .inner { padding-bottom: 350px; text-align: left; }
header h1 { margin-top: 15px; font-size: 6.4rem; font-weight: 900; font-feature-settings: "palt"; }
header h1 small { font-size: 4.8rem; }
header .h_txt1 { display: table; margin-top: 10px; padding: 0.25em 0.75em; font-size: 1.6rem; color: #f76c90; background-color: white; border: 2px dashed #f76c90; -moz-border-radius: 25px; -webkit-border-radius: 25px; border-radius: 25px; position: relative; }
header .h_txt1::before { content: ""; display: inline-block; width: 20px; height: 20px; background: url(../img/finger_p.svg) no-repeat; background-size: contain; vertical-align: middle; }
header .h_txt2 { margin-top: 15px; font-size: 2.4rem; font-weight: 700; line-height: 1.3; font-feature-settings: "palt"; }
header .h_txt3 { margin-top: 15px; font-size: 2rem; line-height: 1.3; font-feature-settings: "palt"; }

.formarea { width: 750px; /*  margin-top: 15px;*/ background-color: rgba(255, 255, 255, 0.85); border: 10px solid #d9e9f0; position: absolute; top: 430px; z-index: 10; }
.formct .formarea { width: 90%; position: static; top: 0; margin: 0 auto; border: 15px solid #d9e9f0; }
.formct .formarea .form_inner { padding: 30px; }
.formct .formarea .f_lb { font-size: 4rem; }
.formct .formarea .f_lb small { font-size: 2.4rem; }
.formct .formarea dl { margin-top: 30px; }
.formct .formarea button.sub_btn { margin-top: 30px; padding: 1em; font-size: 2.8rem; }
.formct .formarea ul.caution { margin: 20px; }
.formarea .form_inner { padding: 20px; overflow: hidden; text-align: center; }
.formarea .f_lb { margin: 0; font-size: 3rem; font-weight: 900; line-height: 1.3; }
.formarea .f_lb small { display: block; margin-top: .5em; font-weight: 500; font-size: 2rem; line-height: 1.3; }
.formarea dl { display: table; /*    margin-top: 20px;*/ width: 100%; padding: .5em 0; }
.formarea dl dt, .formarea dl dd { display: table-cell; text-align: left; }
.formarea dl dt { width: 25%; font-weight: bold; position: relative; font-size: 1.5rem; }
.formarea dl dt.any::before { display: none; }
.formarea dl dt.inp_mail::before { content: ""; display: inline-block; margin-right: 0.5em; width: 18px; height: 18px; background: url(../img/envelope.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); opacity: 0.5; }
.formarea dl dt::after { content: "必須"; display: inline-block; margin-left: 1rem; padding: 0 0.5em; background-color: red; color: white; font-size: 1.1rem; font-weight: normal; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
.formarea input[type="text"], .formarea input[name="rdemail"] { width: 90%; padding: 0.5em; font-size: 2rem; border: 1px solid #a8a8a8; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2) inset; position: relative; }
.formarea input[type="text"]::placeholder, .formarea input[name="rdemail"]::placeholder { color: rgba(0, 0, 0, 0.3); }
.formarea select { padding: 0.5em; font-size: 1.8rem; border: 1px solid #a8a8a8; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2) inset; position: relative; }
.formarea input[name="rdlastname"], .formarea input[name="rdfirstname"] { width: 25%; }
.formarea button.sub_btn, .formarea a.sub_btn { display: block; margin: 20px auto 0; padding: 1em; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 2.4rem; font-weight: 900; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 5px solid #c2ecc8; position: relative; }
.formarea button.sub_btn::after, .formarea a.sub_btn::after { content: ""; display: inline-block; margin-left: 0.5em; width: 20px; height: 20px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }
.formarea ul.caution { margin-top: 20px; }
.formarea ul.caution li { padding-left: 2rem; position: relative; font-size: 1.4rem; text-align: left; color: #999; }
.formarea ul.caution li.c_lb { padding-left: 0; font-size: 1.6rem; font-weight: bold; color: #3c3c3c; }
.formarea ul.caution li.c_lb::before { display: none; }
.formarea ul.caution li::before { content: "※"; position: absolute; top: 0; left: 0; }
.formarea ul.caution li .card { display: inline-block; margin-right: 5px; }
.formarea .note-txt { font-size: 1.5rem; position: relative; color: #999; }
.formarea .note-txt::before { content: "※"; }
.m04 .formarea ul.caution { margin-top: 50px; }

/* ====================================================================== */
/* CONTENT */
/* ====================================================================== */
article { text-align: left; }

.ct { /*  overflow: hidden;*/ }

/* --------------------------------------------------- */
/* 見出し */
/* --------------------------------------------------- */
.lb { font-size: 4.2rem; font-weight: 900; line-height: 1.3; text-align: center; font-feature-settings: "palt"; }
.lb + .sublb { margin-top: 20px; }
.ct .lb:not(:nth-of-type(1)) { margin-top: 50px; }

.sublb { margin-top: 50px; font-weight: 700; font-size: 2.8rem; text-align: center; line-height: 1.5; font-feature-settings: "palt"; }

/* --------------------------------------------------- */
/* パラグラフ */
/* --------------------------------------------------- */
p { margin-top: 50px; }
p.c_txt { margin-top: 20px; font-size: 1.4rem; text-align: right; position: relative; }
p.c_txt::before { content: "※"; }
p.c_txt + .c_txt { margin-top: 1em; }
p.end_mes { font-size: 3rem; color: red; font-weight: bold; text-align: center; }

/* --------------------------------------------------- */
/* Table */
/* --------------------------------------------------- */
table { margin-top: 50px; }
table th, table td { padding: 8px; border: 1px solid #cccccc; }
table th { background-color: rgba(0, 0, 0, 0.06); }

/* --------------------------------------------------- */
/* UL OL */
/* --------------------------------------------------- */
ul, ol { margin-top: 50px; }

ul.list_disc li { margin-left: 20px; margin-bottom: 5px; list-style-type: disc; }

ul.list_disc_p li { margin-bottom: 1em; padding-left: 1.5em; position: relative; }
ul.list_disc_p li:last-child { margin-bottom: 0; }
ul.list_disc_p li::before { content: ""; display: inline-block; width: 14px; height: 14px; background-color: #ea39d6; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: .5em; left: 0; }

article ul.checklist li { margin-bottom: 10px; padding-left: 40px; font-weight: bold; position: relative; }
article ul.checklist li::before { content: ""; display: inline-block; width: 18px; height: 18px; background: url(../img/check.svg) no-repeat; background-size: contain; position: absolute; top: 0.5em; left: 0; }

article ul.caution li { margin-bottom: 10px; padding-left: 1.5em; position: relative; }
article ul.caution li::before { content: "※"; display: inline-block; position: absolute; top: 0; left: 0; }

article ol.list_num li { margin-left: 30px; margin-bottom: 5px; list-style-type: decimal; }

/* --------------------------------------------------- */
/* DL */
/* --------------------------------------------------- */
/* --------------------------------------------------- */
/* Parts */
/* --------------------------------------------------- */
.imgcnt { margin-top: 50px; }

/* --------------------------------------------------- */
/* Bgbox */
/* --------------------------------------------------- */
/* ====================================================================== */
/* Footer */
/* ====================================================================== */
footer { margin-top: 50px; padding-bottom: 20px; text-align: center; }
footer .f_ct { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; -webkit-justify-content: space-between; justify-content: space-between; }
footer .f_ct ul { margin-top: 0; display: -webkit-flex; display: flex; }
footer .f_ct ul li { margin-right: 1em; font-size: 1.4rem; position: relative; }
footer .f_ct ul li a { color: #3c3c3c; }
footer .f_ct ul li::before { content: ""; display: inline-block; margin-right: 0.25em; width: 14px; height: 14px; background: url(../img/arrow_r.svg) no-repeat; background-size: contain; vertical-align: middle; }

footer .copyright { font-size: 1.2rem; }

/* ================================================================== */
/* TOP */
/* ================================================================== */
.maincopy { display: block; margin: 0 auto; }

.smp_maincopy { display: none; }

.tokuten .lb { /*    margin-top: 200px;*/ color: #d23755; }
.tokuten .i001 { width: 320px; margin: 50px 50px 50px 0; float: left; }

.example .exbox { margin: 50px auto 0; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-align-items: center; align-items: center; background: white; overflow: hidden; border: 10px solid #f3f3f3; box-sizing: border-box; -moz-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); -webkit-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); position: relative; }
.example .exbox:nth-of-type(2n) { flex-direction: row-reverse; }
.example .exbox:nth-of-type(2n) p .c_txt { left: 50px; right: auto; }
.example .exbox img { width: 240px; height: 240px; object-fit: cover; }
.example .exbox p { width: 700px; font-size: 2.1rem; font-weight: bold; margin: 50px; line-height: 1.5; }
.example .exbox p .marker_btm { background: none; }
.example .exbox p .c_txt { font-size: 1.4rem; font-weight: normal; text-align: right; position: absolute; bottom: 10px; right: 10px; }
.example .exbox p .c_txt::before { content: "※"; }

.semcon { width: 100%; }
.semcon .lb { color: white; }
.semcon .s_inner { margin-top: 50px; background-color: rgba(255, 255, 255, 0.85); overflow: hidden; }
.semcon .sbox { margin: 50px; padding-bottom: 50px; border-bottom: 1px solid #999; overflow: hidden; }
.semcon .sbox:last-child { padding-bottom: 0; border-bottom: none; }
.semcon .sbox dl { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; }
.semcon .sbox dl dt { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 80px; height: 80px; border: 2px solid #d23755; color: #d23755; font-weight: bold; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; }
.semcon .sbox dl dd { padding-left: 1em; font-size: 3rem; font-weight: 700; line-height: 1.3; }
.semcon .sbox img { width: 300px; margin: 30px 50px 30px 0; float: left; }
.semcon .sbox p { margin-top: 30px; }

.profile { padding-bottom: 100px; }
.profile .img_wrap { margin-top: 50px; display: -webkit-flex; display: flex; }
.profile .img_wrap img { width: 300px; margin-right: 50px; }
.profile .img_wrap dl dt { font-weight: 900; font-size: 3.6rem; }
.profile .img_wrap dl dd { padding-top: 50px; font-weight: 500; font-size: 2.4rem; line-height: 1.5; }
.profile .booklist { margin-top: 30px; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: flex-start; align-items: flex-start; }
.profile .booklist img { width: 180px; margin: 70px 100px 0 0; }
.profile .booklist img:nth-of-type(4n) { margin-right: 0; }

/* ================================================================== */
/* SP */
/* ================================================================== */
.sp .maincopy_bg { text-align: center; }
.sp .lb_s { /*    font-size: 3rem;*/ }
.sp .txt_cnt { width: 90%; margin: 0 auto; }

/* ====================================================================== */
/* THANKS */
/* ====================================================================== */
.thanks .ct .t_txt1 { margin-top: 0; font-size: 3.6rem; font-weight: 700; text-align: center; }
.thanks .ct h1 { margin-top: 50px; font-size: 5.2rem; font-weight: 900; text-align: center; }
.thanks .ct .step { list-style-type: none; display: table; width: 100%; padding: 0; margin: 50px 0 0; overflow: hidden; table-layout: fixed; }
.thanks .ct .step li { display: table-cell; position: relative; background: #f2f2f2; padding: 1.5em 0.5em 1.5em 2em; font-weight: 700; font-size: 2.1rem; color: #3c3c3c; text-align: center; line-height: 1.3; }
.thanks .ct .step li small { font-size: 1.6rem; font-weight: 300; }
.thanks .ct .step li:first-child { -moz-border-radius: 10px 0 0 10px; -webkit-border-radius: 10px; border-radius: 10px 0 0 10px; }
.thanks .ct .step li:last-child { padding-right: 1em; -moz-border-radius: 0 10px 10px 0; -webkit-border-radius: 0; border-radius: 0 10px 10px 0; }
.thanks .ct .step li:last-child::before, .thanks .ct .step li:last-child::after { display: none; }
.thanks .ct .step li::before, .thanks .ct .step li::after { content: ""; position: absolute; width: 0; height: 0; margin: auto; }
.thanks .ct .step li::before { top: 50%; transform: translateY(-50%); right: -2em; border-style: solid; border-color: transparent transparent transparent white; border-width: 70px 0 70px 2em; z-index: 10; }
.thanks .ct .step li::after { top: 50%; transform: translateY(-50%); right: -1.8em; border-style: solid; border-color: transparent transparent transparent #f2f2f2; border-width: 70px 0 70px 2em; z-index: 10; }
.thanks .ct .step li.is-current { background: #d23755; font-weight: bold; color: white; }
.thanks .ct .step li.is-current::after { border-color: transparent transparent transparent #d23755; }
.thanks .ct .line_btn { display: table; margin: 50px auto 0; padding: 1em 2em 1em 3.5em; background-color: #03c303; font-size: 3.6rem; font-weight: 700; color: white; position: relative; -moz-border-radius: 15px; -webkit-border-radius: 15px; border-radius: 15px; }
.thanks .ct .line_btn:hover { text-decoration: none; }
.thanks .ct .line_btn::before { content: ""; display: inline-block; width: 64px; height: 64px; background: url(../img/line.svg) no-repeat; background-size: contain; position: absolute; top: 50%; left: 1em; transform: translateY(-50%); }
.thanks .ct .qrinfo { width: 800px; margin: 100px auto 0; padding-bottom: 50px; text-align: center; border: 10px solid #03c303; }
.thanks .ct .qrinfo img.qr_lb { width: 100%; }
.thanks .ct .qrinfo .method { display: -webkit-flex; display: flex; margin-top: 50px; }
.thanks .ct .qrinfo .method div { width: 50%; text-align: center; }
.thanks .ct .qrinfo .method div img { width: 200px; }
.thanks .ct .qrinfo .method div p { margin-top: 0; font-size: 2.1rem; font-weight: 700; }
.thanks .ct .qrinfo .method div input { margin: 0.5em 0; padding: 0.5em; font-size: 2.1rem; font-weight: bold; border: 1px solid #a8a8a8; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2) inset; }
.thanks .ct .qrinfo .method div input::placeholder { color: black; }
.thanks .ct .qrinfo .method div .m_lb { font-size: 3rem; font-weight: 900; color: #03c303; }

/* ================================================================== */
/* Movie */
/* ================================================================== */
.movie .message { display: table; width: 70%; margin: 50px auto 0; background-color: rgba(255, 255, 255, 0.8); border: 15px solid rgba(255, 84, 144, 0.5); box-sizing: border-box; }
.movie .message .inner { margin: 50px 100px; }
.movie .message p, .movie .message li { font-size: 1.8rem; }
.movie .message p.f_lb { font-size: 2.4rem; font-weight: 700; line-height: 1.5; }
.movie .message p.f_answer { font-size: 2.1rem; }
.movie .message p.border_top { padding-top: 50px; border-top: 1px solid #999; }
.movie .message p + ul { margin-top: 0; }
.movie .message .video-wrap { width: 640px; margin: 50px auto; text-align: center; border: 20px solid white; background-color: black; -moz-box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); -webkit-box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); position: relative; }
.movie .message .video-wrap.no-video { height: 360px; }
.movie .tokuten .video-wrap { width: 640px; margin: 50px auto; text-align: center; border: 20px solid white; background-color: black; -moz-box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); -webkit-box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); box-shadow: 0 2px 4px rgba(135, 121, 133, 0.8); position: relative; }
.movie .tokuten .video-wrap.no-video { height: 360px; }
.movie .tokuten .lb { margin-top: 50px; color: #d23755; }
.movie .tokuten .i001 { width: 250px; margin: 50px 50px 50px 0; float: left; }
.movie .formarea .form_inner .question { margin-top: 30px; text-align: left; }
.movie .formarea .form_inner .question:nth-of-type(2) li::before { content: "2"; }
.movie .formarea .form_inner .question li { padding-left: 50px; font-weight: 700; font-size: 2.4rem; position: relative; }
.movie .formarea .form_inner .question li::before { content: "1"; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 30px; height: 30px; font-size: 2.1rem; font-weight: 300; border: 1px solid #666; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 0; left: 0; }
.movie .formarea .form_inner .question li::after { content: "必須"; display: inline-block; margin-left: 1rem; padding: 0 0.5em; background-color: red; color: white; font-size: 1.1rem; font-weight: normal; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; vertical-align: middle; }
.movie .formarea .form_inner textarea { width: 90%; margin-top: 30px; padding: 0.5em; font-size: 2rem; border: 1px solid #a8a8a8; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2) inset; position: relative; }
.movie .formarea .form_inner textarea::placeholder { color: rgba(0, 0, 0, 0.3); }
.movie .formarea .form_inner button.comment_btn::after { width: 36px; height: 36px; background: url(../img/comment.svg) no-repeat; background-size: contain; }

#m04_form.c_disp { display: block; -webkit-animation-duration: 0.5s; animation-duration: 0.5s; }

.form_nodisp { display: none; }

.case .casetitle { display: table; width: 100%; margin-top: 50px; }
.case .casetitle dt, .case .casetitle dd { display: table-cell; vertical-align: top; }
.case .casetitle dt { width: 25%; }
.case .casetitle dt img { width: 70%; }
.case .casetitle dd { font-size: 3rem; font-weight: 900; line-height: 1.5; }
.case .casetitle dd .c_lb { display: table; margin-bottom: 1em; padding: 0.15em 0.5em; background-color: white; border: 1px solid #333; -moz-border-radius: 25px; -webkit-border-radius: 25px; border-radius: 25px; }
.case .linkbtn { display: table; margin: 50px auto; padding: 1em 2em; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 3rem; font-weight: 900; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 5px solid #c2ecc8; position: relative; }
.case .linkbtn:hover { text-decoration: none; }
.case .linkbtn::after { content: ""; display: inline-block; margin-left: 0.5em; width: 14px; height: 14px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }

.ex .linkbtn { display: table; margin: 20px auto 0; padding: 1em; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 2.1rem; font-weight: 900; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 5px solid #c2ecc8; position: relative; }
.ex .linkbtn:hover { text-decoration: none; }
.ex .linkbtn::after { content: ""; display: inline-block; margin-left: 0.5em; width: 14px; height: 14px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }

/* ================================================================== */
/* Benefits */
/* ================================================================== */
.benefits .maincopy_bg { text-align: center; }
.benefits .lb { margin: 0 20px; font-size: 3.8rem; }
.benefits .lb.lb_top { margin-top: 50px; }
.benefits .message .inner + .lb { margin-top: 100px; }
.benefits .sub_btn { display: table; margin: 50px auto 0; padding: 1em 2em; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 2.8rem; font-weight: 900; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 5px solid #c2ecc8; position: relative; }
.benefits .sub_btn::after { content: ""; display: inline-block; margin-left: 0.5em; width: 20px; height: 20px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }
.benefits .sub_btn:hover { text-decoration: none; }
.benefits .c_mes { display: inline-block; margin-top: 20px; position: relative; padding-left: 30px; font-size: 1.5rem !important; }
.benefits .c_mes::before { content: "※"; position: absolute; top: 0; left: 0; }

/* ================================================================== */
/* Memct */
/* ================================================================== */
.memct .maincopy_bg { text-align: center; }
.memct .lb { margin: 0 20px; font-size: 3.8rem; }
.memct .lb.lb_top { margin-top: 50px; }
.memct .message .inner + .lb { margin-top: 100px; }
.memct .f_lb + p { margin-top: 10px; }
.memct .linklist { margin-top: 25px; }
.memct .linklist dl { display: table; width: 100%; padding: 25px 0; border-bottom: 1px solid #ccc; }
.memct .linklist dl dt, .memct .linklist dl dd { display: table-cell; }
.memct .linklist dl dt { width: 60%; font-weight: bold; }
.memct .linklist dl dd .linkbtn { display: table; width: 240px; margin: 0 auto 15px; padding: 0.5em 0; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 1.6rem; font-weight: 700; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 2px solid #c2ecc8; position: relative; text-align: center; }
.memct .linklist dl dd .linkbtn:nth-last-of-type(1) { margin-bottom: 0; }
.memct .linklist dl dd .linkbtn::after { content: ""; display: inline-block; width: 12px; height: 12px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; position: absolute; top: 50%; transform: translateY(-50%); right: 20px; }
.memct .linklist dl dd .linkbtn:hover { text-decoration: none; }
.memct .c_mes { display: inline-block; margin-top: 20px; position: relative; padding-left: 30px; font-size: 1.5rem !important; }
.memct .c_mes::before { content: "※"; position: absolute; top: 0; left: 0; }
.memct .daihyo { display: block; margin-top: 50px; }
.memct .sign { display: block; margin-top: 50px; }
.memct .bg_yellow { display: inline; }

/* ================================================================== */
/* SL */
/* ================================================================== */
.sl .maincopy_bg { background: url(../img/sl/maincopy_bg.png) no-repeat 0 center; background-size: cover; }
.sl .message { display: table; width: 70%; margin: 50px auto 0; background-color: rgba(255, 255, 255, 0.8); border: 15px solid rgba(255, 84, 144, 0.5); box-sizing: border-box; }
.sl .message .inner { margin: 50px; }
.sl .txt_cnt { width: 80%; margin: 0 auto; }
.sl .case_example .exbox { margin: 50px auto 0; padding: 50px; background: white; overflow: hidden; border: 10px solid #f3f3f3; box-sizing: border-box; -moz-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); -webkit-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); position: relative; }
.sl .case_example .exbox.ex_novideo .casetitle dt { width: 40%; }
.sl .case_example .exbox.ex_novideo .casetitle dt img { vertical-align: top; margin-right: 1em; }
.sl .case_example .exbox.ex_novideo .casetitle dt img.author { width: 160px; }
.sl .case_example .exbox.ex_novideo .casetitle dd { font-size: 2rem; font-weight: 400; }
.sl .case_example .exbox .casetitle { display: table; width: 100%; }
.sl .case_example .exbox .casetitle dt, .sl .case_example .exbox .casetitle dd { display: table-cell; vertical-align: top; }
.sl .case_example .exbox .casetitle dt { width: 20%; }
.sl .case_example .exbox .casetitle dt img.book { width: 120px; }
.sl .case_example .exbox .casetitle dd { font-size: 3.2rem; font-weight: 900; line-height: 1.5; }
.sl .case_example .exbox .video-wrap { margin-top: 50px; text-align: center; }
.sl .merit .lb { color: #d23755; }
.sl .merit .s_inner { margin-top: 50px; background-color: rgba(255, 255, 255, 0.85); overflow: hidden; }
.sl .merit .sbox { border-bottom: none; }
.sl .merit .sbox img { width: 300px; margin: 30px 50px 30px 0; float: left; }
.sl .merit .sbox p { margin-top: 30px; }
.sl .point li { margin-bottom: 1.5em; padding-left: 3em; padding-bottom: 0.5em; position: relative; }
.sl .point li::before { content: ""; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 42px; height: 42px; background: url(../img/sl/idea.svg) no-repeat center; background-size: 32px auto; border: 1px solid #ff5490; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 0; left: 0; }
.sl .point li::after { content: ""; width: 93%; height: 1px; border-bottom: 1px dashed #999; position: absolute; bottom: 0; right: 0; }
.sl .i001 { width: 400px; }
.sl .evidence { margin-top: 30px; display: -webkit-flex; display: flex; -webkit-flex-wrap: wrap; flex-wrap: wrap; -webkit-align-items: flex-start; align-items: flex-start; }
.sl .evidence li { width: 12.5%; margin-top: 20px; box-sizing: border-box; }
.sl .evidence li img { display: block; width: 90%; margin: 0 auto; }
.sl .skill p { padding: 1em; border: 10px solid #d9e9f0; box-sizing: border-box; }
.sl .kpm_bg { background-color: #ffcc00; text-align: center; }
.sl .numlist { counter-reset: num; }
.sl .numlist li { margin-bottom: 0.5em; padding-left: 2.5em; position: relative; font-size: 2.4rem; font-weight: 700; position: relative; }
.sl .numlist li::before { counter-increment: num; content: counter(num); display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 32px; height: 32px; font-weight: normal; border: 1px solid #999; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 0; left: 0; }
.sl .cur:nth-of-type(1) .lb::before { content: "1"; }
.sl .cur:nth-of-type(2) .lb::before { content: "2"; }
.sl .cur:nth-of-type(3) .lb::before { content: "3"; }
.sl .cur:nth-of-type(4) .lb::before { content: "4"; }
.sl .cur:nth-of-type(5) .lb::before { content: "5"; }
.sl .cur .lb { padding-top: 0.25em; padding-left: 2em; font-size: 3.2rem; text-align: left; color: #d23755; position: relative; }
.sl .cur .lb::before { content: ""; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 48px; height: 48px; border: 1px solid #d23755; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; position: absolute; top: 0; left: 0; }
.sl .cur .curimg { width: 300px; position: relative; }
.sl .cur .curimg img { width: 100%; }
.sl .cur .curimg .caption { display: block; padding: 0.5em; background-color: #ea39d6; color: white; position: absolute; top: 0; left: 0; font-size: 1.8rem; font-weight: 500; line-height: 1.2; }
.sl .mem_example .exbox { margin: 50px auto 0; padding: 50px; background: white; overflow: hidden; border: 10px solid #f3f3f3; box-sizing: border-box; -moz-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); -webkit-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); position: relative; }
.sl .mem_example .exbox .ex_lb { font-size: 3.2rem; font-weight: 900; line-height: 1.5; }
.sl .mem_example .exbox .ex_lb .sub { display: block; text-align: right; }
.sl .mem_example .exbox img { width: 300px; position: relative; }
.sl .mem_example .exbox ul { padding: 2em; border: 1px dashed #999; }
.sl .price { font-weight: 900; font-size: 3rem; }
.sl .price small { font-size: 2rem; }
.sl .price small .normal { font-size: 1.6rem; font-weight: normal; }
.sl .s_tokuten .s_inner { border: 15px solid rgba(210, 55, 85, 0.8); box-sizing: border-box; }
.sl .s_tokuten .s_inner:nth-of-type(2) .sbox .t_lb::before { content: "特典1"; }
.sl .s_tokuten .s_inner:nth-of-type(3) .sbox .t_lb::before { content: "特典2"; }
.sl .s_tokuten .sbox .t_lb { padding: 0.5em 0 0.5em 150px; font-weight: 900; font-size: 3rem; position: relative; }
.sl .s_tokuten .sbox .t_lb::before { content: ""; display: inline-block; margin-right: 1em; padding: 0.5em; background-color: #d23755; color: white; position: absolute; top: 0; left: 0; }
.sl .s_tokuten .sbox .t_lb::after { content: ""; display: inline-block; width: 85%; height: 1px; border-bottom: 1px solid #666; position: absolute; bottom: 0; right: 0; }
.sl .i004 { width: 300px; margin-top: 0; }
.sl .offer_tb { width: 100%; }
.sl .offer_tb th, .sl .offer_tb td { text-align: center; vertical-align: middle; }
.sl .offer_tb th { background-color: #ea39d6; color: white; }
.sl .offer_tb td:nth-of-type(1) { font-size: 1.8rem; font-weight: 900; }
.sl .offer_tb td em { font-size: 2.1rem; font-weight: 900; line-height: 1.2; }

.movielist .exbox { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-flex-wrap: wrap; flex-wrap: wrap; margin: 50px auto 0; padding: 50px; background: white; overflow: hidden; border: 10px solid #f3f3f3; box-sizing: border-box; -moz-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); -webkit-box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); box-shadow: 0 2px 6px rgba(153, 153, 153, 0.6); position: relative; }
.movielist .exbox .mlist_box { width: 45%; margin-bottom: 50px; }
.movielist .exbox .mlist_box dl { display: table; width: 100%; }
.movielist .exbox .mlist_box dl dt, .movielist .exbox .mlist_box dl dd { display: table-cell; vertical-align: middle; }
.movielist .exbox .mlist_box dl dt { width: 25%; }
.movielist .exbox .mlist_box dl dt .num { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 70px; height: 70px; color: #d23755; font-weight: bold; border: 2px solid #d23755; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; }
.movielist .exbox .mlist_box dl dd { font-size: 2.4rem; font-weight: 900; line-height: 1.3; }
.movielist .exbox .mlist_box .video-wrap { margin-top: 30px; }
.movielist .exbox .mlist_box .video-wrap iframe { width: 100%; height: 230px; }

/* ================================================================== */
/* SL-SP */
/* ================================================================== */
.sl-sp .maincopy_bg { background: url(../img/sl/maincopy_bg.png) no-repeat 0 center; background-size: cover; border-bottom: 60px solid #ff5590; text-align: center; }
.sl-sp .txt_cnt { width: 90%; margin: 0 auto; }
.sl-sp .tarea1 .txt_cnt:nth-of-type(1) p:nth-of-type(1) { margin-top: 0; }
.sl-sp .lb:nth-of-type(1) { margin-top: 50px; font-size: 4rem; }
.sl-sp figure { margin-top: 50px; }
.sl-sp figure.i_center { text-align: center; }
.sl-sp p.caution { padding-left: 1.5em; position: relative; color: #d23755; font-weight: bold; }
.sl-sp p.caution::before { content: "※"; position: absolute; top: 0; left: 0; }
.sl-sp p.caution + .caution { margin-top: 10px; }
.sl-sp .program .s_inner { margin-top: 0px; padding-bottom: 50px; counter-reset: num; }
.sl-sp .program .p_info { display: block; margin: 50px 50px 0; }
.sl-sp .program .p_info dt { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; height: 100px; padding-left: 130px; padding-right: 30px; font-size: 2.6rem; font-weight: 700; position: relative; background-color: white; border: 2px solid #d23755; box-sizing: border-box; line-height: 1.2; }
.sl-sp .program .p_info dt::before { counter-increment: num; content: counter(num) "週目"; display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 96px; height: 96px; background-color: white; /*          border: 1px solid #666;*/ background-color: #d23755; color: white; position: absolute; top: 0; left: 0; }
.sl-sp .program .p_info dd { padding-top: 50px; }
.sl-sp .program .p_info dd p:nth-of-type(1) { margin-top: 0; }
.sl-sp .cur:nth-of-type(1) { margin-top: 0; }
.sl-sp .cur:nth-of-type(1) .lb::before { content: ""; }
.sl-sp .cur:nth-of-type(2) .lb::before { content: ""; }
.sl-sp .cur:nth-of-type(3) .lb::before { content: ""; }
.sl-sp .cur:nth-of-type(3) .curimg { width: 150px; }
.sl-sp .cur .lb { display: -webkit-flex; display: flex; -webkit-align-items: center; align-items: center; height: 90px; padding-top: 0; padding-left: 110px; font-size: 3rem; text-align: left; color: #d23755; position: relative; }
.sl-sp .cur .lb::before { width: 90px; height: 90px; border: 2px solid #d23755; box-sizing: border-box; }
.sl-sp .cur .lb .num { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; flex-direction: column; width: 90px; height: 90px; font-size: 2rem; position: absolute; top: 0; left: 0; text-align: center; line-height: 1; font-weight: bold; }
.sl-sp .cur .curimg { width: 320px; }
.sl-sp .cur .caution_txt { padding-left: 1.5em; position: relative; }
.sl-sp .cur .caution_txt::before { content: "※"; position: absolute; top: 0; left: 0; }
.sl-sp .price_txt { font-size: 2.8rem; }
.sl-sp .price_txt .dec { color: #d23755; font-weight: 700; }
.sl-sp .price_txt strong { font-size: 3.6rem; font-weight: 900; color: #3c3c3c; }
.sl-sp .c_txt + .c_txt { margin-top: 10px; }
.sl-sp .case_example .exbox:nth-of-type(1) { margin-top: 0; }
.sl-sp .merit .sbox .lb { margin-top: 0; }

/* ================================================================== */
/* SL-100 */
/* ================================================================== */
.sl-100 .maincopy_bg { background: none; text-align: center; }
.sl-100 .bg_ptn1 { padding-top: 0; }
.sl-100 .txt_cnt { width: 90%; margin: 0 auto; }
.sl-100 .linkbtn { display: table; margin: 50px auto 0; padding: 1em 2em; background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwYzQxYiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjMDBjNDFiIi8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiMzYWMzNGQiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDllMTYiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #00c41b), color-stop(20%, #00c41b), color-stop(60%, #3ac34d), color-stop(100%, #009e16)); background-image: -moz-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: -webkit-linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-image: linear-gradient(#00c41b, #00c41b 20%, #3ac34d 60%, #009e16); background-color: #00c41b; color: white; border: none; font-size: 3rem; font-weight: 900; -moz-border-radius: 50px; -webkit-border-radius: 50px; border-radius: 50px; border: 5px solid #c2ecc8; position: relative; }
.sl-100 .linkbtn:hover { text-decoration: none; }
.sl-100 .linkbtn::after { content: ""; display: inline-block; margin-left: 0.5em; width: 14px; height: 14px; background: url(../img/arrow.svg) no-repeat; background-size: contain; vertical-align: middle; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70); opacity: 0.7; }
.sl-100 .formct ul.list_disc { margin-top: 0; }
.sl-100 .formct ul.list_disc li { text-align: left; }
.sl-100 .formct .linkbtn { margin: 20px auto 0; }
.sl-100 .formct .linkbtn + p { margin-top: 20px; color: #d23755; font-weight: bold; }
.sl-100 .example .exbox { display: block; padding-bottom: 30px; position: relative; }
.sl-100 .example .exbox p { width: auto; font-size: 1.8rem; font-weight: normal; margin: 30px; overflow: hidden; }
.sl-100 .example .exbox p.ex_lb { padding-left: 50px; font-weight: 900; font-size: 2.4rem; position: relative; }
.sl-100 .example .exbox p.ex_lb::before { content: ""; display: inline-block; width: 32px; height: 32px; background: url(../img/sl-100/comment.svg) no-repeat; background-size: contain; position: absolute; top: 0; left: 0; }
.sl-100 .example .exbox .caution { padding-left: 1.5em; text-align: right; font-size: 1.3rem; position: absolute; bottom: 10px; right: 10px; }
.sl-100 .example .exbox .caution::before { content: "※"; }
.sl-100 .price_txt strong { font-size: 3.6rem; font-weight: 900; color: #3c3c3c; }

/* ================================================================== */
/* SL-Short */
/* ================================================================== */
.sl-short .maincopy_bg { background: none; background-color: #dff3ff; text-align: center; }
.sl-short .sec1 { padding: 30px 0; background-color: #18abff; text-align: center; color: white; font-size: 2.4rem; font-weight: 700; line-height: 1.3; }
.sl-short .sec1 strong { font-size: 3.6rem; font-weight: 900; color: #ffff00; }
.sl-short .arrow { margin: 0 auto; width: 0; height: 0; border-top: solid 40px #18abff; border-bottom: solid 60px transparent; border-right: solid 60px transparent; border-left: solid 60px transparent; }
.sl-short .f_i001 { margin: 0; text-align: center; }
.sl-short .f_i001 img { width: 50%; }
.sl-short .bg { margin: 50px 0 0; padding: 0; }
.sl-short .bg.bg_ptn1 { padding-bottom: 50px; background: url(../img/sl-short/bg_ptn1.png) no-repeat; background-size: cover; background-color: #ccebfe; }
.sl-short .sec2 { overflow: hidden; }
.sl-short .sec2 ul li { margin-bottom: 30px; }
.sl-short .sec2 ul li small { font-size: 1.1rem; vertical-align: top; }
.sl-short .sec3 .lb { color: #3c3c3c; }
.sl-short .txt_cnt { width: 90%; margin: 0 auto; }
.sl-short .lb:nth-of-type(1) { margin-top: 50px; font-size: 4rem; }
.sl-short .profile { padding-bottom: 30px; }
.sl-short .formarea .f_lb { font-size: 2.8rem; }
.sl-short .formarea dl dt { padding-left: 1.5em; background-color: #18abff; color: white; }
.sl-short .formarea dl dt.inp_mail::before { background: url(../img/sl-short/envelope.svg) no-repeat; background-size: contain; filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false); opacity: 1; }
.sl-short .formarea dl dd { padding-left: 30px; }
.sl-short .formarea button.sub_btn { background-image: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmNmMyNiIvPjxzdG9wIG9mZnNldD0iMjAlIiBzdG9wLWNvbG9yPSIjZmY3OTM3Ii8+PHN0b3Agb2Zmc2V0PSI2MCUiIHN0b3AtY29sb3I9IiNmZjgzNDkiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNmZjYwMTUiLz48L2xpbmVhckdyYWRpZW50PjwvZGVmcz48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyYWQpIiAvPjwvc3ZnPiA='); background-size: 100%; background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, #ff6c26), color-stop(20%, #ff7937), color-stop(60%, #ff8349), color-stop(100%, #ff6015)); background-image: -moz-linear-gradient(#ff6c26, #ff7937 20%, #ff8349 60%, #ff6015); background-image: -webkit-linear-gradient(#ff6c26, #ff7937 20%, #ff8349 60%, #ff6015); background-image: linear-gradient(#ff6c26, #ff7937 20%, #ff8349 60%, #ff6015); background-color: #ff6c26; border: 5px solid #ffdac8; }

/* ================================================================== */
/* SL thanks */
/* ================================================================== */
.sl_thanks .ct .inner { width: 80%; text-align: center; }
.sl_thanks .ct h1 { margin-top: 50px; font-size: 5.2rem; font-weight: 900; text-align: center; }
.sl_thanks .ct h2 { margin-top: 20px; font-size: 3.7rem; font-weight: 700; text-align: center; }
.sl_thanks .ct .imp { display: table; width: 100%; margin-top: 50px; }
.sl_thanks .ct .imp dt, .sl_thanks .ct .imp dd { display: table-cell; vertical-align: top; text-align: left; }
.sl_thanks .ct .imp dt { width: 25%; }
.sl_thanks .ct .imp dt span { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; width: 120px; height: 120px; border: 2px solid #d23755; color: #d23755; font-size: 1.8rem; font-weight: bold; -moz-border-radius: 50%; -webkit-border-radius: 50%; border-radius: 50%; }
.sl_thanks .ct .sign { float: right; }

/* ================================================================== */
/* SL-SP thanks */
/* ================================================================== */
.sl-sp_thanks .ct h1 { font-size: 4.2rem; line-height: 1.3; }

/* ================================================================== */
/* Privacy */
/* ================================================================== */
.privacy .ct .lb { margin-top: 50px; }
.privacy .ct .inner { margin-top: 50px; padding: 50px; border: 20px solid rgba(204, 204, 204, 0.3); box-sizing: border-box; }
.privacy .ct .inner p:nth-of-type(1) { margin-top: 0; }
.privacy .ct .inner ol li { margin-bottom: 2em; }
.privacy .ct .inner ol li:last-child { margin-bottom: 0; }
.privacy .ct .inner a.back_btn { display: table; margin: 30px auto 0; padding: 1em 1.5em; font-weight: bold; color: #3c3c3c; border: 1px solid #999; -moz-border-radius: 30px; -webkit-border-radius: 30px; border-radius: 30px; }

/* ================================================================== */
/* Tokutei */
/* ================================================================== */
.tokutei .ct .lb { margin-top: 50px; }
.tokutei .ct .inner { margin-top: 50px; padding: 50px; border: 20px solid rgba(204, 204, 204, 0.3); box-sizing: border-box; }
.tokutei .ct .inner .tb1 { width: 100%; margin-top: 0; }
.tokutei .ct .inner .tb1 th, .tokutei .ct .inner .tb1 td { font-size: 1.6rem; }
.tokutei .ct .inner .tb1 th { width: 25%; }
.tokutei .ct .inner .tb1 td dl { display: table; }
.tokutei .ct .inner .tb1 td dl dt, .tokutei .ct .inner .tb1 td dl dd { display: table-cell; }
.tokutei .ct .inner .tb1 td dl dt { width: 50px; }
.tokutei .ct .inner .tb1 td dl dd { position: relative; }
.tokutei .ct .inner .tb1 td dl dd::before { content: "："; }
.tokutei .ct .inner .tb1 td .caution { display: inline-block; padding-left: 1.5em; position: relative; }
.tokutei .ct .inner .tb1 td .caution::before { content: "※"; position: absolute; top: 0; left: 0; }
.tokutei .ct .inner .tb1 td .card { display: block; margin-top: 1em; }
.tokutei .ct .inner .tb1 td ul { margin-top: 0; }
.tokutei .ct .inner .tb1 td ul li { margin-bottom: 0; }
.tokutei .ct .inner a.back_btn { display: table; margin: 30px auto 0; padding: 1em 1.5em; font-weight: bold; color: #3c3c3c; border: 1px solid #999; -moz-border-radius: 30px; -webkit-border-radius: 30px; border-radius: 30px; }

/* ================================================================== */
/* TB */
/* ================================================================== */
@media screen and (max-width: 1040px) and (min-width: 768px) { .cnt, header .inner, .ct, footer .f_ct, .semcon .s_inner, .sl .merit .s_inner { width: 95%; }
  .br-pc { display: none; }
  .br-tb { display: block; }
  .br-sp { display: none; }
  body { font-family: sans-serif; min-width: initial; /*    font-size: 1.6rem;*/ }
  /* ====================================================================== */
  /* BG */
  /* ====================================================================== */
  /* ====================================================================== */
  /* HEADER */
  /* ====================================================================== */
  header { background: url(../img/mainimg.png) no-repeat right 100px; background-size: 40% auto; position: relative; }
  header .inner { padding-bottom: 50px; }
  header h1 { font-size: 5.8rem; }
  header h1 small { font-size: 4rem; }
  .formarea { width: 98%; position: static; margin: 50px auto 0; }
  .formct .formarea { width: 96%; margin: 0 auto; border: 10px solid #d9e9f0; }
  .formct .formarea .form_inner { padding: 20px; }
  .formct .formarea .f_lb { font-size: 3.6rem; }
  .formct .formarea .f_lb small { font-size: 2.4rem; }
  .formct .formarea dl { margin-top: 20px; }
  .formct .formarea button.sub_btn { margin-top: 20px; padding: 1em; font-size: 2.4rem; }
  .formarea .form_inner { padding: 20px; overflow: hidden; text-align: center; }
  .formarea .f_lb { font-size: 3.6rem; }
  .formarea .f_lb small { font-size: 2.4rem; }
  .formarea dl dt { width: 30%; }
  /* ====================================================================== */
  /* CONTENT */
  /* ====================================================================== */
  /* --------------------------------------------------- */
  /* 見出し */
  /* --------------------------------------------------- */
  .lb { font-size: 3.6rem; }
  .sublb { font-size: 2.4rem; }
  /* --------------------------------------------------- */
  /* パラグラフ */
  /* --------------------------------------------------- */
  p.c_txt { font-size: 1.3rem; line-height: 1.3; }
  /* ====================================================================== */
  /* Footer */
  /* ====================================================================== */
  footer { margin-top: 0; }
  footer .f_ct ul { display: -webkit-flex; display: flex; }
  footer .f_ct ul li { font-size: 1.6rem; }
  /* ================================================================== */
  /* TOP */
  /* ================================================================== */
  .maincopy { width: 100%; }
  .tokuten .lb { margin-top: 0; }
  .tokuten .i001 { width: 260px; }
  .example .exbox img { width: 200px; height: 200px; object-fit: cover; }
  .example .exbox p { width: 400px; }
  .semcon .s_inner { margin-top: 50px; background-color: rgba(255, 255, 255, 0.85); overflow: hidden; }
  .semcon .sbox { margin: 30px; padding-bottom: 30px; }
  .semcon .sbox:last-child { padding-bottom: 0; }
  .semcon .sbox dl dd { width: 500px; }
  .semcon .sbox img { width: 280px; }
  .profile .img_wrap img { width: 240px; }
  .profile .img_wrap dl dt { font-size: 3rem; }
  .profile .img_wrap dl dd { font-size: 1.8rem; }
  .profile .booklist img { width: 120px; margin: 50px 10px 0; }
  /* ====================================================================== */
  /* THANKS */
  /* ====================================================================== */
  .thanks .ct .qrinfo { width: auto; } }
/* ================================================================== */
/* SMP */
/* ================================================================== */
@media screen and (max-width: 767px) { .cnt, header .inner, .ct, footer .f_ct, .semcon .s_inner, .sl .merit .s_inner { width: 95%; }
  .br-pc { display: none; }
  .br-tb { display: none; }
  .br-sp { display: block; }
  body { font-family: sans-serif; min-width: initial; font-size: 1.6rem; }
  /* ====================================================================== */
  /* BG */
  /* ====================================================================== */
  /* ====================================================================== */
  /* HEADER */
  /* ====================================================================== */
  header { background: url(../img/mainimg.png) no-repeat right 120px; background-size: 40% auto; }
  header .inner { padding-bottom: 50px; }
  header h1 { margin-top: 10px; font-size: 3rem; }
  header h1 small { font-size: 2rem; }
  header .h_txt1 { display: block; margin-top: 0.5em; padding-left: 3.5em; font-size: 1.2rem; border: 1px dashed #f76c90; -moz-border-radius: 25px; -webkit-border-radius: 25px; border-radius: 25px; line-height: 1.3; position: relative; }
  header .h_txt1::before { width: 24px; height: 24px; position: absolute; top: 50%; left: 1em; transform: translateY(-50%); }
  header .h_txt2 { margin-top: 10px; font-size: 1.6rem; }
  header .h_txt3 { margin-top: 10px; font-size: 1.4rem; }
  .formarea { width: auto; margin-top: 10px; border: 6px solid #d9e9f0; position: absolute; top: 0; position: static; }
  .formct .formarea { width: auto; margin: 0 auto; border: 6px solid #d9e9f0; }
  .formct .formarea .form_inner { padding: 15px; }
  .formct .formarea .f_lb { font-size: 2.4rem; }
  .formct .formarea .f_lb small { font-size: 1.4rem; }
  .formct .formarea dl { margin-top: 10px; }
  .formct .formarea button.sub_btn { margin-top: 10px; padding: 0.5em 2.5em 0.5em 1.5em; font-size: 1.7rem; }
  .formct .formarea ul.caution { margin: 20px auto 0; }
  .formct .formarea .note-txt { font-size: 1.3rem; }
  .formarea .form_inner { padding: 15px; }
  .formarea .f_lb { font-size: 2.4rem; }
  .formarea .f_lb small { font-size: 1.4rem; }
  .formarea dl { margin-top: 10px; }
  .formarea dl dt, .formarea dl dd { display: block; }
  .formarea dl dt { padding-bottom: 0.25em; width: auto; font-size: 1.5rem; text-align: left; }
  .formarea input[type="text"] { font-size: 1.7rem; }
  .formarea input[name="rdemail"] { font-size: 1.7rem; }
  .formarea input[name="rdphone1"], .formarea input[name="rdphone2"], .formarea input[name="rdphone3"] { width: 60px !important; }
  .formarea select { font-size: 100%; }
  .formarea select[name="udf30"] { width: 90%; }
  .formarea dd .red, .formarea dd .em_red { font-size: 1.3rem; }
  .formarea button.sub_btn { margin: 10px auto 0; padding: 0.5em 2.5em 0.5em 1.5em; font-size: 1.7rem; -moz-border-radius: 35px; -webkit-border-radius: 35px; border-radius: 35px; border: 3px solid #c2ecc8; line-height: 1.2; position: relative; }
  .formarea button.sub_btn::after { margin-left: 0; position: absolute; width: 16px; height: 16px; top: 50%; right: 0.5em; transform: translateY(-50%); }
  .formarea ul.caution li { margin-bottom: 1em; font-size: 1.2rem; line-height: 1.3; }
  /* ====================================================================== */
  /* CONTENT */
  /* ====================================================================== */
  /* --------------------------------------------------- */
  /* 見出し */
  /* --------------------------------------------------- */
  .lb { font-size: 2.4rem; }
  .sublb { font-size: 1.8rem; }
  /* --------------------------------------------------- */
  /* パラグラフ */
  /* --------------------------------------------------- */
  p.c_txt { font-size: 1.3rem; line-height: 1.3; }
  p.end_mes { margin-top: 30px; font-size: 2rem; line-height: 1.3; }
  /* ====================================================================== */
  /* Footer */
  /* ====================================================================== */
  footer { margin-top: 0; }
  footer .f_ct { display: block; }
  footer .f_ct ul { margin-top: 0; -webkit-justify-content: space-around; justify-content: space-around; }
  footer .f_ct ul li { margin-right: 0; font-size: 1.3rem; }
  footer .copyright { font-size: 1.1rem; }
  /* ================================================================== */
  /* TOP */
  /* ================================================================== */
  .maincopy { display: none; }
  .smp_maincopy { display: block; width: 100%; }
  .tokuten .lb { margin-top: 0; }
  .tokuten .i001 { display: block; width: 60%; margin: 50px auto 0; float: none; }
  .example .exbox { margin: 30px auto 0; border: 8px solid #f3f3f3; display: block; }
  .example .exbox img { display: block; width: 200px; height: 200px; object-fit: cover; margin: 50px auto 0; }
  .example .exbox p { width: auto; font-size: 1.8rem; margin: 30px; }
  .example .exbox p .c_txt { margin-top: 30px; position: static; display: block; font-size: 1.3rem; line-height: 1.3; }
  .semcon .s_inner { margin-top: 30px; }
  .semcon .sbox { margin: 20px; padding-bottom: 20px; border-bottom: 1px solid #999; overflow: hidden; }
  .semcon .sbox:last-child { padding-bottom: 0; border-bottom: none; }
  .semcon .sbox dl dt { width: 50px; height: 50px; font-size: 1.3rem; }
  .semcon .sbox dl dd { width: 220px; font-size: 2rem; }
  .semcon .sbox img { display: block; width: 90%; margin: 30px auto 0; float: none; }
  .profile { padding-bottom: 50px; }
  .profile .img_wrap { display: block; }
  .profile .img_wrap img { display: block; width: 70%; margin: 0 auto; }
  .profile .img_wrap dl { margin-top: 30px; text-align: center; }
  .profile .img_wrap dl dt { font-size: 2.6rem; }
  .profile .img_wrap dl dd { padding-top: 20px; font-size: 1.7rem; }
  .profile .booklist { margin-top: 50px; }
  .profile .booklist img { width: 90px; height: auto; margin: 30px 30px 0 0; }
  .profile .booklist img:nth-of-type(4n) { margin-right: 30px; }
  .profile .booklist img:nth-of-type(3n) { margin-right: 0; }
  /* ================================================================== */
  /* SP */
  /* ================================================================== */
  .sp .maincopy_bg img { width: 100%; }
  .sp .txt_cnt { width: auto; }
  /* ====================================================================== */
  /* THANKS */
  /* ====================================================================== */
  .thanks .ct .t_txt1 { font-size: 1.8rem; }
  .thanks .ct h1 { margin-top: 30px; font-size: 3rem; line-height: 1.2; }
  .thanks .ct .step { margin: 30px 0 0; }
  .thanks .ct .step li { padding: 0.75em 0.5em 0.75em 1em; font-size: 1.5rem; vertical-align: middle; }
  .thanks .ct .step li small { font-size: 1.2rem; }
  .thanks .ct .step li:first-child { -moz-border-radius: 7px 0 0 7px; -webkit-border-radius: 7px; border-radius: 7px 0 0 7px; }
  .thanks .ct .step li:last-child { padding-right: 0.5em; -moz-border-radius: 0 7px 7px 0; -webkit-border-radius: 0; border-radius: 0 7px 7px 0; }
  .thanks .ct .step li::before { right: -1em; border-width: 70px 0 70px 1em; }
  .thanks .ct .step li::after { right: -0.8em; border-width: 70px 0 70px 1em; }
  .thanks .ct .line_btn { padding: 1em 2em 1em 3.5em; font-size: 2.4rem; }
  .thanks .ct .line_btn::before { width: 48px; height: 48px; }
  .thanks .ct .qrinfo { width: auto; margin: 50px auto 0; padding-bottom: 50px; }
  .thanks .ct .qrinfo .method { margin-top: 0; display: block; }
  .thanks .ct .qrinfo .method div { width: auto; margin-top: 50px; }
  .thanks .ct .qrinfo .method div img { width: 70%; }
  .thanks .ct .qrinfo .method div p { font-size: 1.8rem; }
  .thanks .ct .qrinfo .method div .m_lb { font-size: 2.4rem; }
  /* ================================================================== */
  /* Movie */
  /* ================================================================== */
  .movie .message { width: 95%; margin: 30px auto 0; border: 8px solid rgba(255, 84, 144, 0.5); }
  .movie .message .inner { margin: 1em; }
  .movie .message p, .movie .message li { font-size: 1.6rem; }
  .movie .message p.f_lb { font-size: 2rem; }
  .movie .message p.f_answer { font-size: 1.8rem; }
  .movie .message p.border_top { padding-top: 50px; border-top: 1px solid #999; }
  .movie .message .video-wrap { width: 95%; border: 10px solid white; box-sizing: border-box; }
  .movie .message .video-wrap.no-video { height: 200px; }
  .movie .message .video-wrap iframe { width: 100%; height: 180px; }
  .movie .message .video-wrap video { width: 100%; height: auto; }
  .movie .message .video-wrap .video-js { width: 100% !important; height: 180px; }
  .movie .message .video-wrap .vjs-control-bar { display: flex !important; }
  .movie .tokuten .video-wrap { width: 95%; border: 10px solid white; box-sizing: border-box; }
  .movie .tokuten .video-wrap.no-video { height: 200px; }
  .movie .tokuten .video-wrap iframe { width: 100%; height: 180px; }
  .movie .tokuten .video-wrap video { width: 100%; height: auto; }
  .movie .tokuten .video-wrap .video-js { width: 100% !important; height: 180px; }
  .movie .tokuten .video-wrap .vjs-control-bar { display: flex !important; }
  .movie .tokuten .i001 { display: block; width: 60%; margin: 50px auto; float: none; }
  .movie .formarea .form_inner .question li { margin-bottom: 1em; padding-left: 40px; font-size: 1.8rem; line-height: 1.3; }
  .movie .formarea .form_inner .question li:last-child { margin-bottom: 0; }
  .movie .formarea .form_inner .question li::before { width: 28px; height: 28px; font-size: 1.8rem; }
  .movie .formarea .form_inner button.sub_btn::after { width: 28px; height: 28px; }
  .m04 .bg_ptn1 { padding-bottom: 0; }
  .case .bg { padding: 0; }
  .case .casetitle { display: table; margin-top: 50px; }
  .case .casetitle dt { width: 30%; }
  .case .casetitle dt img { width: 80%; }
  .case .casetitle dd { font-size: 1.8rem; line-height: 1.3; }
  .case .linkbtn { padding: 0.75em 1em; font-size: 2rem; }
  .ex .linkbtn { margin: 10px auto 0; padding: 0.5em 2.5em 0.5em 1.5em; font-size: 1.7rem; -moz-border-radius: 35px; -webkit-border-radius: 35px; border-radius: 35px; border: 3px solid #c2ecc8; line-height: 1.2; position: relative; text-align: center; }
  .ex .linkbtn::after { position: absolute; top: 50%; right: 15px; transform: translateY(-50%); }
  /* ================================================================== */
  /* Benefits */
  /* ================================================================== */
  .benefits .maincopy_bg img { width: 100%; }
  .benefits .maincopy_bg + .bg { padding-top: 0; }
  .benefits .lb { font-size: 2.4rem; }
  .benefits .lb.lb_top { margin-top: 20px; }
  .benefits .message .inner + .lb { margin-top: 50px; }
  .benefits .sub_btn { padding: 1em 1em; font-size: 2rem; }
  .benefits .sub_btn::after { width: 16px; height: 16px; }
  .benefits .c_mes { font-size: 1.4rem !important; }
  /* ================================================================== */
  /* Memct */
  /* ================================================================== */
  .memct .maincopy_bg img { width: 100%; }
  .memct .maincopy_bg + .bg { padding-top: 0; }
  .memct .lb { font-size: 2.4rem; }
  .memct .lb.lb_top { margin-top: 20px; }
  .memct .message .inner + .lb { margin-top: 50px; }
  .memct .f_lb { font-size: 1.8rem !important; }
  .memct .f_lb + p { margin-top: 10px; }
  .memct .linklist { margin-top: 25px; }
  .memct .linklist dl { display: block; }
  .memct .linklist dl dt, .memct .linklist dl dd { display: block; }
  .memct .linklist dl dt { width: auto; font-weight: bold; text-align: center; }
  .memct .linklist dl dd { padding-top: 20px; }
  .memct .c_mes { font-size: 1.4rem !important; }
  .memct .daihyo { width: 40%; }
  .memct .sign { margin-top: 20px; width: 120px; }
  /* ================================================================== */
  /* SL */
  /* ================================================================== */
  .sl .message { width: 95%; margin: 0 auto; border: 8px solid rgba(255, 84, 144, 0.5); }
  .sl .message .inner { margin: 1em; }
  .sl .txt_cnt { width: auto; }
  .sl .case_example .exbox { margin: 30px auto 0; padding: 1em; border: 8px solid #f3f3f3; }
  .sl .case_example .exbox.ex_novideo .casetitle { display: block; }
  .sl .case_example .exbox.ex_novideo .casetitle dt, .sl .case_example .exbox.ex_novideo .casetitle dd { display: block; }
  .sl .case_example .exbox.ex_novideo .casetitle dt { width: auto; }
  .sl .case_example .exbox.ex_novideo .casetitle dt img { height: 120px; }
  .sl .case_example .exbox.ex_novideo .casetitle dt img.author { width: auto; }
  .sl .case_example .exbox.ex_novideo .casetitle dt img.book { width: auto; }
  .sl .case_example .exbox.ex_novideo .casetitle dd { padding-top: 1em; font-size: 1.6rem; }
  .sl .case_example .exbox .casetitle dt { width: 30%; }
  .sl .case_example .exbox .casetitle dt img.book { width: 80%; }
  .sl .case_example .exbox .casetitle dd { font-size: 1.6rem; font-weight: 900; line-height: 1.5; }
  .sl .case_example .exbox .video-wrap { margin-top: 30px; }
  .sl .case_example .exbox .video-wrap iframe { width: 100%; height: 180px; }
  .sl .merit .lb { font-size: 2.4rem; }
  .sl .merit .s_inner:nth-of-type(1) { margin-top: 0; }
  .sl .merit .sbox img { display: block; width: 90%; margin: 30px auto 0; float: none; }
  .sl .merit .sbox p { margin-top: 30px; }
  .sl .point li::before { width: 36px; height: 36px; background-size: 26px auto; }
  .sl .point li::after { width: 100%; }
  .sl .i001 { display: block; width: 90%; margin: 30px auto 0; float: none; }
  .sl .evidence { margin-top: 30px; }
  .sl .evidence li { width: 25%; margin-top: 20px; box-sizing: border-box; }
  .sl .evidence li img { display: block; width: 90%; margin: 0 auto; }
  .sl .skill p { border: 8px solid #d9e9f0; box-sizing: border-box; }
  .sl .skill p:not(:nth-of-type(1)) { margin-top: 20px; }
  .sl .kpm_bg img { width: 100%; }
  .sl .numlist li { margin-bottom: 1em; padding-top: 0.25em; font-size: 1.6rem; line-height: 1.3; }
  .sl .numlist li::before { width: 26px; height: 26px; }
  .sl .cur:not(:nth-of-type(1)) { margin-top: 30px; }
  .sl .cur .lb { padding-top: 0.25em; padding-left: 3em; font-size: 2rem; }
  .sl .cur .lb::before { width: 36px; height: 36px; }
  .sl .cur .curimg { display: block; width: 90%; margin: 30px auto 0; float: none; }
  .sl .cur .curimg img { width: 100%; }
  .sl .mem_example .exbox { margin: 50px auto 0; padding: 1em; border: 8px solid #f3f3f3; box-sizing: border-box; }
  .sl .mem_example .exbox .ex_lb { font-size: 2.1rem; line-height: 1.3; }
  .sl .mem_example .exbox .ex_lb .sub { display: inline-block; text-align: left; }
  .sl .mem_example .exbox img { display: block; width: 90%; margin: 30px auto 0; float: none; }
  .sl .mem_example .exbox ul { padding: 1em; }
  .sl .price { font-size: 2.1rem; line-height: 1.3; }
  .sl .price small { font-size: 1.6rem; }
  .sl .price small .normal { font-size: 1.4rem; }
  .sl .s_tokuten .s_inner { border: 8px solid rgba(210, 55, 85, 0.8); }
  .sl .s_tokuten .sbox .t_lb { padding: 0.5em 0 0.5em 70px; font-size: 1.8rem; }
  .sl .s_tokuten .sbox .t_lb::before { font-size: 1.5rem; }
  .sl .s_tokuten .sbox .t_lb::after { width: 100%; }
  .sl .i004 { display: block; width: 70%; margin: 30px auto 0; float: none; }
  .sl .offer_tb th, .sl .offer_tb td { padding: 0.5em; font-size: 1.3rem; }
  .sl .offer_tb th:nth-of-type(1) { width: 40%; }
  .sl .offer_tb th:nth-of-type(2) { width: 30%; }
  .sl .offer_tb td:nth-of-type(1) { font-size: 1.3rem; }
  .sl .offer_tb td em { font-size: 1.5rem; }
  .movielist .exbox { display: block; margin: 50px auto 0; padding: 1em; border: 8px solid #f3f3f3; box-sizing: border-box; }
  .movielist .exbox .mlist_box { width: auto; }
  .movielist .exbox .mlist_box dl dd { font-size: 2.1rem; }
  .movielist .exbox .mlist_box .video-wrap iframe { height: 190px; }
  /* ================================================================== */
  /* SL-SP */
  /* ================================================================== */
  .sl-sp .maincopy_bg { border-bottom: 20px solid #ff5590; }
  .sl-sp .maincopy_bg img { width: 100%; }
  .sl-sp .maincopy_bg + .bg { padding-top: 0; }
  .sl-sp .txt_cnt { width: auto; }
  .sl-sp .lb:nth-of-type(1) { font-size: 2.4rem; }
  .sl-sp figure img { width: 90%; }
  .sl-sp .bg_ptn3 { padding: 10px; }
  .sl-sp .program { width: auto; margin: 0 auto; padding: 0; }
  .sl-sp .program .s_inner { width: auto; margin: 0 auto; padding: 0; padding-bottom: 50px; counter-reset: num; }
  .sl-sp .program .p_info { margin: 50px 15px 0; }
  .sl-sp .program .p_info dt { height: 90px; padding-left: 90px; padding-right: 10px; font-size: 1.8rem; }
  .sl-sp .program .p_info dt::before { width: 75px; height: 86px; font-size: 1.6rem; }
  .sl-sp .bg_ptn1 { padding-top: 30px; padding-bottom: 30px; }
  .sl-sp .cur .lb { display: block; height: auto; padding-top: 100px; padding-left: 0; font-size: 2.1rem; }
  .sl-sp .cur .lb::before { width: 80px; height: 80px; position: absolute; top: 0; left: 50%; transform: translateX(-50%); border: 3px solid #d23755; }
  .sl-sp .cur .lb .num { width: 80px; height: 80px; font-size: 1.8rem; position: absolute; left: 50%; transform: translateX(-50%); }
  .sl-sp .cur .curimg { display: block; width: 100%; margin: 30px auto 0; }
  .sl-sp .price_txt { font-size: 1.8rem; }
  .sl-sp .price_txt strong { font-size: 2.4rem; }
  .sl-sp .form_cnt { padding-top: 0; }
  /* ================================================================== */
  /* SL-100 */
  /* ================================================================== */
  .sl-100 .maincopy_bg img { width: 100%; }
  .sl-100 .maincopy_bg + .bg { padding-top: 0; }
  .sl-100 .bg_ptn1 { padding-top: 20px; padding-bottom: 20px; }
  .sl-100 .linkbtn { padding: 1em; font-size: 2rem; }
  .sl-100 .example .exbox { display: block; padding-bottom: 30px; position: relative; }
  .sl-100 .example .exbox p { width: auto; font-size: 1.6rem; font-weight: normal; margin: 15px; overflow: hidden; }
  .sl-100 .example .exbox p.ex_lb { padding-left: 40px; font-size: 2rem; line-height: 1.3; }
  .sl-100 .example .exbox p.ex_lb::before { width: 24px; height: 24px; }
  .sl-100 .price_txt strong { font-size: 2.4rem; }
  /* ================================================================== */
  /* SL-Short */
  /* ================================================================== */
  .sl-short .maincopy_bg img { width: 100%; }
  .sl-short .maincopy_bg + .bg { padding-top: 0; }
  .sl-short .sec1 { padding: 15px 0; font-size: 1.8rem; }
  .sl-short .sec1 strong { font-size: 2.4rem; }
  .sl-short .f_i001 img { width: 80%; }
  .sl-short .bg { margin: 30px 0 0; }
  .sl-short .bg.bg_ptn1 { padding-bottom: 30px; }
  .sl-short .txt_cnt { width: auto; }
  .sl-short .lb:nth-of-type(1) { font-size: 2.4rem; }
  .sl-short .sec3 .i001 { width: 70%; }
  .sl-short .formarea .f_lb { font-size: 2rem; }
  .sl-short .formarea dl dt { padding: 0.5em 1em; }
  .sl-short .formarea dl dd { margin: 0; padding: 20px 0; }
  .sl-short .formarea dl dd input { width: 95%; }
  .sl-short .formarea button.sub_btn { border: 3px solid #ffdac8; }
  /* ================================================================== */
  /* SL thanks */
  /* ================================================================== */
  .sl_thanks .ct .inner { width: auto; text-align: left; }
  .sl_thanks .ct h1 { margin-top: 30px; font-size: 3rem; line-height: 1.2; }
  .sl_thanks .ct h2 { margin-top: 20px; font-size: 2.1rem; }
  .sl_thanks .ct .imp { display: table; width: 100%; margin-top: 50px; display: block; }
  .sl_thanks .ct .imp dt, .sl_thanks .ct .imp dd { display: block; }
  .sl_thanks .ct .imp dt { width: auto; }
  .sl_thanks .ct .imp dt span { display: inline-block; width: auto; height: auto; margin-bottom: 1em; padding: 0.5em 1em; font-size: 1.5rem; -moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0; }
  .sl_thanks .ct .sign { width: 150px; }
  /* ================================================================== */
  /* SL-SP thanks */
  /* ================================================================== */
  .sl-sp_thanks .ct h1 { font-size: 2.6rem; }
  /* ================================================================== */
  /* Privacy */
  /* ================================================================== */
  .privacy .ct .lb { margin-top: 30px; }
  .privacy .ct .inner { margin-top: 10px; padding: 1em; border: 10px solid rgba(204, 204, 204, 0.3); }
  .privacy .ct .inner ol li { margin-bottom: 2em; }
  .privacy .ct .inner ol li:last-child { margin-bottom: 0; }
  /* ================================================================== */
  /* Tokutei */
  /* ================================================================== */
  .tokutei .ct .lb { margin-top: 30px; }
  .tokutei .ct .inner { margin-top: 10px; padding: 1em; border: 10px solid rgba(204, 204, 204, 0.3); }
  .tokutei .ct .inner .tb1 { display: block; }
  .tokutei .ct .inner .tb1 tr:last-child td { border-bottom: 1px solid #cccccc; }
  .tokutei .ct .inner .tb1 th, .tokutei .ct .inner .tb1 td { display: block; border-bottom: none; }
  .tokutei .ct .inner .tb1 th { width: auto; } }
