
/* ---------------------------------- */
/* -------------- Reset-------------- */
/* ---------------------------------- */

html { text-size-adjust: 100%; -webkit-text-size-adjust: 100%; } /* iphone safariがfontサイズを誤計算するのを防ぐ */
html, body, div, span, object, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video 
{ margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
* { box-sizing: border-box; }
body { line-height: 1; font-size: 16px;}
ol, ul { list-style: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; font-weight: 500; word-break: break-all; }
a:link { color: #5873ed; text-decoration: none; }
a:visited { color: #66f; }
a:hover { opacity: 0.8; transition: all 350ms; }
a:active, a:focus { text-decoration: none; outline: none; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ""; content: none; }
ins { background-color: #ff9; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
area { border: none; outline: none; }
label, input[type="checkbox"] { cursor: pointer; }
input, select { vertical-align: middle; }
img { border-style: none; margin: 0px; padding: 0px; vertical-align: top; }
a img { border-style: none; }
a:hover img { box-shadow: #000 0 0 0; transition: all 350ms; opacity: 0.8; }
.mini { font-size: 14px; }
/* ---------------------------------- */

body { overflow-y: auto; background-color: #fff; color: #32195b; line-height: 1.8em; animation: bugfix infinite 1s; font-family: "Open Sans", "Helvetica Neue", Arial, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; }

header { position: fixed; z-index: 100;  }

#sidebar { padding-top: 100px; width: 340px; height: 100%; right: -340px; top: 0; transition: transform .8s cubic-bezier(0.165, 0.84, 0.44, 1); position: fixed; background-color: rgb(250 246 241); z-index: 50;}
#gb_nav ul { margin-left: 0; } #gb_nav ul li { padding-left: 2.5em; } #gb_nav > ul > li { position: relative; }
#gb_nav a { color: #32195b; display: block; padding: 11px 0; transition: background-color .3s linear; } 

#nav_toggle { display: none; position: fixed; top: 0px; right: 0px; height: 40px; display: flex; align-items: flex-end; flex-wrap: wrap;  }
#nav_toggle::before { content: ""; position: absolute; width: 33px; height: 33px; border-radius: 50%; background: rgba(0,0,0,0.25); transition: background 0.3s ease; z-index: -1; }
.svg_menu { fill: #fff; pointer-events: all; cursor: pointer; } 
.svg_menu .bar { transform: rotate(0) translateY(0) translateX(0); opacity: 1; transform-origin: 20px 10px; transition: transform 0.4s ease-in-out, opacity 0.2s ease-in-out; }
.svg_menu .bar:nth-of-type(1) { transform-origin: 18.5px 11.5px; } 
.svg_menu .bar:nth-of-type(3) { transform-origin: 18.5px 16px; }
.open .svg_menu .bar:nth-of-type(1) { transform: rotate(-45deg) translateY(0) translateX(0); } 
.open .svg_menu .bar:nth-of-type(2) { opacity: 0; } 
.open .svg_menu .bar:nth-of-type(3) { transform: rotate(45deg) translateY(0em) translateX(0em); }
.inline-svg { height: 40px; }
.open #overlay { display: none; position: fixed; background: rgba(23, 21, 33, 0.6); width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; }

#gb_nav .sub_menu_head:after, #gb_nav .sub_menu_nav { display: none; }
.open { overflow: hidden; } .open #overlay { display: block; } .open #sidebar { transform: translate3d(-300px,0,0); }
.open #sidebar li { transform: translateX(+100%); animation-name: fadeIn; animation-duration: 1s; animation-fill-mode: forwards; }
.open #sidebar li:nth-child(1) { animation-delay: 0.2s; }.open #sidebar li:nth-child(2) { animation-delay: 0.3s; }
.open #sidebar li:nth-child(3) { animation-delay: 0.4s; }.open #sidebar li:nth-child(4) { animation-delay: 0.5s; }
.open #sidebar li:nth-child(5) { animation-delay: 0.6s; }.open #sidebar li:nth-child(6) { animation-delay: 0.7s; }
.open #sidebar li:nth-child(7) { animation-delay: 0.8s; }.open #sidebar li:nth-child(8) { animation-delay: 0.9s; }
.open #sidebar li:nth-child(9) { animation-delay: 1s; }.open #sidebar li:nth-child(10) { animation-delay: 1.1s; }
@keyframes fadeIn { 0% { opacity: 0; transform: translateX(+50%); } 100% { opacity: 1; transform: translateX(0%); } }
#overlay { z-index: 200; } #sidebar { z-index: 300; } #nav_toggle { z-index: 400; }

#bg { position: fixed; inset: 0; background-image: url(./img/bg_01.jpg); background-size: cover; background-position: center top; z-index: -2; }

#con_wrap { position: relative; padding: 2em 0em 2em 0em; }
#flex_con_wrap { width: 100%; max-width: 100%; display: flex; justify-content: center; position: relative; padding: 0px 0px; pointer-events: all;  font-optical-sizing: auto; font-weight: normal; font-style: normal; }
#is-mobile { width: 430px; max-width: 100%; max-height: none; overflow: visible; -webkit-overflow-scrolling: touch; -ms-overflow-style: none; /* IE, Edge */ scrollbar-width: none; /* Firefox */ }
#is-desktop_01 { width: 200px; padding: 2em; }
#is-desktop_02 { width: 200px; position: fixed; bottom: 0; left: calc(50% + 215px + 2em); padding: 2em; color: #FFF; font-size: 14px; font-weight: bold; line-height: 1.3em; }
#is-desktop_02 img { width: 100%; display: block; margin-top: 1em;}

@media screen and (max-width: 850px) { 
#is-desktop_02 { display: none; }
}

@media screen and (max-width: 620px) {
#con_wrap { padding: 0em; }
#bg { background-image: url(/pc/img/cr_login_bg_02.jpg); background-size: cover; }
#is-mobile { width: 100%; }
}

footer { padding: 2em 1em; text-align: center; background-color: #6c2860; }
footer p {font-size: 12px; color: #FFF;}
.copywrite { font-size: 12px; }


/* -------------- 使い回し -------------- */

.margin_t_1em { margin-top: 1em; }
.margin_b_1em { margin-bottom: 1em; }
.margin_t_2em { margin-top: 2em; }
.margin_b_2em { margin-bottom: 2em; }
.margin_t_3em { margin-top: 3em; }
.margin_b_3em { margin-bottom: 3em; }
.margin_t_4em { margin-top: 4em; }
.margin_b_4em { margin-bottom: 4em; }

.center { text-align: center; margin: 0em auto; display: block; }

.btn a, .btn button { width: 300px; margin: 1em auto 3em auto; display: block; border-radius: 10px; padding: 0.5em; transition: transform 0.1s ease; background-color: #00c0b6; color: #fff; box-shadow: 0 4px 0 #009c94; line-height: 1.3em; font-weight: 700; font-size: 1.3em; text-align: center; }
.btn a:hover, .btn button:hover { opacity: 1; transform: translateY(4px); box-shadow: none !important; }
.btn_cb a { background-color: #2d5ecb !important; box-shadow: 0 4px 0 #2a4795 !important; }
.btn_gray a { width: 160px; padding: 0.3em; background-color: #c3c6d2 !important; box-shadow: 0 4px 0 #a2a7b1 !important; margin-top: 5em; }

.bgc_grad { background:linear-gradient(90deg, rgba(47, 209, 162, 1) 0%, rgba(76, 93, 229, 1) 24.72%, rgba(98, 100, 217, 1) 31.33%, rgba(132, 110, 199, 1) 43.15%, rgba(145, 114, 192, 1) 49.56%, rgba(209, 82, 155, 1) 61.3%, rgba(247, 64, 133, 1) 68.98%, rgba(245, 95, 118, 1) 73.75%, rgba(240, 147, 92, 1) 82.48%, rgba(237, 185, 74, 1) 90.09%, rgba(236, 208, 62, 1) 96.18%, rgba(235, 217, 58, 1) 100%); }

@media screen and (max-width: 620px) { .btn a,.btn button { width: 80%; } }

hr { margin: 3em 0em; height: 1px; color: #FFFFFF; border-top-width: 1px; border-top-style: dashed; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: #666; }

.conbox { margin: -1px 0px; }
.conbox_np { margin: -1px 0px; }

/* ---------------------------------- */

#hero { background-image: url(./img/spbg01.png); background-size: cover; background-position: center top; }
#hero img.toplogo { width: 100%; padding: 3em 1.3em 0em 1.3em; }

/* ---------------------------------- */

#about { background-color: #6c2760 ; }
#about .conbox { padding: 1em 1em 2em 1em; }
#about #card { background-image: url(./img/c_bg_02.png); background-size: contain; position: relative; color: #FFF; z-index: 0; }
#about #card::before { content: ""; width: 100%; display: block; height: 70px; position: absolute; top: -10px; background-image: url(./img/c_bg_01.png); background-repeat: no-repeat; background-size: contain; z-index: -1; }
#about #card::after { content: ""; width: 100%; display: block; height: 95px; position: absolute; bottom: -4em; background-image: url(./img/c_bg_03.png); background-repeat: no-repeat; background-size: contain; z-index: -1; }
#about #card p { padding: 0em 2em 1em 2em; margin: 0 auto; }
#about #card img { width: 60%;  margin: 0em auto; display: block; padding: 3em 0em; }

@media screen and (max-width: 620px) {
#about #card::before { background-size: 100%; }
#about #card::after { background-size: 100%; }
}

/* ---------------------------------- */

#case { margin-top: 4em; padding: 2em; border-radius: 8px; background-color: #faf6f2;}
#case ul { margin: 1.5em 0em 0em 0em; }
#case ul li { border-bottom: 1px solid #cab4c6; padding: 0.3em 0em; }
#case ul li:last-child { border-bottom: 0px solid #cab4c6; }

/* ---------------------------------- */

#s01 { padding: 1em; color: #FFF; 
background: linear-gradient(180deg,rgba(108, 38, 95, 1) 0%, rgba(89, 66, 152, 1) 50%, rgba(108, 38, 95, 1) 100%); }
#s01 strong { color: #aaa8ff; font-size: 18px; display: block; text-align: center; margin-bottom: 2em; }
#s01 .s_text { padding: 2em 2em 4em 2em; }
#s01 img { width: 230px; height: auto; margin: 2em auto 0em auto; text-align: center; display: block; }

/* ---------------------------------- */

#instructors { background: linear-gradient(180deg,rgba(108, 39, 96, 1) 0%, rgba(90, 67, 152, 1) 40%); padding: 2em 0em 2em 0em; margin: -1px 0px; }
#instructors img.title_01 { width: 80%; margin: 0em auto; display: block; }

/* -------------- スライダー -------------- */

/* Slider */
.slick-slider { position : relative ; box-sizing : border-box ; user-select : none ; touch-action : pan-y ; }
.slick-list { position : relative ; overflow : hidden ; margin : 0 ; padding : 0 ; }
.slick-track { display : block ; position : relative ; }
.slick-track:before,.slick-track:after { content : "" ; display : table ; }
.slick-track:after { clear : both ; }
.slick-slide { display : none ; float : left ; }
.slick-slide { padding: 0px 2em 2em 2em; }

.slick-initialized .slick-slide { display : block ; }
.slick-vertical .slick-slide { display : block ; height : auto ; }
.slick-arrow.slick-hidden { display : none ; }

/* スライドの中身がページのレンダリング時に一瞬見えるのを防ぐ */
.slick-prev:before, .slick-next:before { color: black; }

/* Arrows */
.slick-prev,.slick-next { position : absolute ; font-size : 0 ; line-height : 0 ; color : transparent ; top : 50% ; transform : translateY(-50%) ; width : 40px ; height : 40px ; border : none ; background : transparent ; cursor : pointer ; }
.slick-prev { left : 0px ; }
.slick-next { right : 0px ; }
.slick-prev:before,.slick-next:before { content : "" ; display : block ; width : 30px ; height : 30px ; background-size : contain ; background-repeat : no-repeat ; opacity : .9 ; }
.slick-prev:before { background-image : url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><polyline points='15 4 7 12 15 20' fill='none' stroke='%23fff' stroke-width='3'/></svg>") ; }
.slick-next:before { background-image : url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><polyline points='9 4 17 12 9 20' fill='none' stroke='%23fff' stroke-width='3'/></svg>") ; }

/* Dots */

.slick-dots { position : absolute ; bottom : -40px ; width : 100% ; text-align : center ; padding : 0 ; margin : 0 ; }
.slick-dots li { display : inline-block ; width : 14px ; height : 14px ; margin : 0 6px ; cursor: pointer; }
.slick-dots button { width : 100% ; height : 100% ; border : 0 ; background : transparent ; cursor : pointer ; font-size : 0 ; }
.slick-dots button:before { content : "•" ; font-size : 40px ; opacity : .3 ; color : #fff ; }
.slick-dots li.slick-active button:before { opacity : .9 ; }

#slider_wrap { width: 100%; padding: 2em 0em 2em 0em; }
#slider_wrap div { width: 100%; margin: 0 auto; }
#slider { width: 100%; }
#slider li.slide-item { width: 100%;}
#slider li.slide-item div.t_s_con { padding: 1em 2em 0em 2em ; background-image: url(./img/s_bg_02.png); background-size: contain; position: relative; z-index: 0; }
#slider li.slide-item div.t_s_con::after { content: ""; width: 100%; display: block; height: 50px; position: absolute; bottom: -3em; left: 0; background-image: url(./img/s_bg_03.png); background-repeat: no-repeat; background-size: contain; z-index: -1; }
#slider li.slide-item img { width: 100%; } #slider li.slide-item iframe { width: 100%; }
#slider li.slide-item div.t_s_con div { width: 100%; min-height: 100px; }
#slider li.slide-item div.t_s_con div h4 { color: #f2763d; font-size: 18px; text-align: center; border-bottom: solid 1px #8870bd; margin-bottom: 1em; padding: 0.5em 0em; }
#slider li.slide-item div.t_s_con h5 { margin-bottom: 1em; }
#slider li.slide-item div.t_s_con div p { font-size: 16px; }
#slider li.slide-item div.t_s_con button { font-size: 15px; margin: 1em 0em; border: 1px solid #ffffff; background-color: #f2773d; border-radius: 8px; padding: 5px 12px; color: #FFF; }

#modal_overlay { position:fixed; inset:0; background:rgba(0,0,0,0.5); z-index:9998; display:none; }
#modal { position:fixed; left:50%; top:50%; transform:translate(-50%,-50%); width:min(90%,700px); max-height:80vh; padding:2em; background:#fff; border-radius:20px; overflow:auto; z-index:9999; display:none; box-sizing:border-box; }
#modal_close { position:absolute; right:0.8em; top:0.8em; border:none; background:none; font-size:28px; cursor:pointer; }

#modal h5 { margin:2em 0em 0.8em 0em; font-size:15px; letter-spacing:0.08em; color:#8a79aa; }
#modal_message { font-size: 16px; }
#speech { position:relative; margin-top:1.5em; padding:1.1em 1.3em; border-radius:18px; background:#f7d9d5; line-height:1.9; font-size:18px; }
#speech::after { content:""; position:absolute; left:50%; bottom:0; width:18px; height:18px; background:#f7d9d5; transform:translate(-50%,50%) rotate(45deg); }

#modal_image { width: 180px; margin: 3em auto 1em auto; text-align: center; display: block; }
#modal_name { margin-bottom:1.2em; padding-bottom:0.8em; font-size:22px; font-weight:bold; text-align:center; border-bottom:1px dashed #cbbddd; }

#modal_copy { margin-bottom:1em; font-size:24px; font-weight:bold; line-height:1.4; letter-spacing:0.02em; }
#modal_profile { font-size:16px; line-height:2.1; color:#4b3b69; }
#modal_tags { display:flex; flex-wrap:wrap; gap:0.6em; margin-top:1em; }
#modal_tags li { padding:0.35em 0.9em; border-radius:100px; background:#efe8ff; font-size:16px; line-height:1.7; list-style:none; }

/* ---------------------------------- */

a.e_btn { display: block; padding: 2em 0em; }
a.e_btn img { width: 80%; margin: 0 auto; display: block; }
a.e_btn span { text-align: center; font-size: 13px; display: block; color: #ab95ff; margin-top: 1em; }

/* ---------------------------------- */

#voice_area { background: linear-gradient(180deg, rgba(90, 67, 152, 1) 10%, rgba(108, 39, 96, 1) 90%); }
#voice_area .conbox_np { padding: 1em 2em 6em 2em; }
#voice_area h2 { text-align: center; font-size: 18px; color: #aaa8ff; border-top: 1px dotted #b76eb0; margin: 0em 0em 3em 0em; padding: 3em 0em 0em 0em; }

.voice_box { margin-bottom:2.5em; padding-bottom:2em; border-bottom: 1px solid #b29378; position: relative; }
.voice_box::before { content:""; position:absolute; left:0.2em; top: 0.7em; width:7px; height:7px; border-radius:100px; background:#8c71ef; }
.voice_box:last-child { margin-bottom:0; padding-bottom:0; border-bottom:none; }
.voice_head { margin-top:1em; }
.voice_head span {  color: #aaa8ff; font-size:16px; padding: 0em 0em 0em 1.5em; }
.voice_box p { line-height:2; color:#FFF; padding: 0em 0em 0em 1.5em; }

/* ---------------------------------- */

#pricing { background-color: #faf6f1; padding: 1em; }
#pricing h2 { margin: 1.5em auto 2em auto; font-size:20px; text-align:center; position:relative; display:flex; align-items:center; justify-content:center; gap:0.8em; }
#pricing h2::before,
#pricing h2::after { content:""; display:block; width:20px; height:17px; background:url('./img/ornament_02.svg') no-repeat center center / contain; }

#pricing_list { border-radius: 8px; border-top: #dbc8c8 solid 1px; border-right: #dbc8c8 solid 1px; border-left: #dbc8c8 solid 1px; background-color: #FFF; }
#pricing_list > div { border-bottom: #dbc8c8 solid 1px; }
#pricing_list dt { padding: 1em; text-align: center; font-size: 16px; background-color: #edd; border-bottom: #dbc8c8 solid 1px; }
#pricing_list dt#fdt { border-radius: 8px 8px 0px 0px; } 
#pricing_list dd { padding: 1em; font-size: 17px; font-weight: bold;} 
#pricing_list > div#ediv {border-radius: 8px;}
/* 
@media (min-width: 768px) {
  #pricing_list > div { display: flex; }
  #pricing_list dt { width: 8em; flex-shrink: 0; border-bottom: none; border-right: #dbc8c8 solid 1px; }
  #pricing_list dd { flex: 1; }
}
 */


/* ---------------------------------- */

#step { background:#faf6f1; }
#step h2 { margin: 0.5em auto 2em auto; font-size:20px; text-align:center; position:relative; display:flex; align-items:center; justify-content:center; gap:0.8em; }
#step h2::before,
#step h2::after { content:""; display:block; width:20px; height:17px; background:url('./img/ornament_02.svg') no-repeat center center / contain; }
#step .conbox_np { padding: 1em; }
#step ul { margin:0; padding:0; list-style:none; }
#step li { position:relative; margin-bottom:1.5em; padding: 1em 1em 1em 4em; background-color: #FFF; border: 1px solid #dbc8c9; border-radius:8px; box-sizing:border-box; }
#step li:nth-child(4) { margin-bottom:0; }
#step li::after { content:""; position:absolute; left:1.5em; top:100%; width:2px; height:1.6em; background: #9b82ea; }
#step li:nth-child(4)::after { display:none; }
.step_num { position:absolute; left:0em; top:0em; display:flex; align-items:center; justify-content:center; width:48px; height: 100%; border-radius: 6px 0px 0px 6px; background:#8c72ef; color:#fff; font-size:11px; font-weight:bold; line-height:1.2; text-align:center; }
.step_title { display:block; font-size:16px; font-weight:bold; line-height:1.5; }

/* ---------------------------------- */

#notes { background:#faf6f1; padding: 1em; }
#notes h2 { margin: 0.3em auto 2em auto; font-size: 20px; text-align:center; position:relative; display:flex; align-items:center; justify-content:center; gap:0.8em; }
#notes h2::before,
#notes h2::after { content:""; display:block; width:20px; height:17px; background:url('./img/ornament_02.svg') no-repeat center center / contain; }

#notes h3 { font-size: 15px; margin-bottom: 1em;     border: 1px solid #dbc8c9;
    background-color: #efdddd; padding: 0.3em 0em; width: 12em; text-align: center; border-radius: 8px; }
#notes .conbox_np #notes_in{ background-color: #FFF; padding: 2em; border-radius: 8px;  border: 1px solid #dbc8c9;}
#notes p { line-height: 2em; }

/* ---------------------------------- */

#faq { background: linear-gradient(180deg, rgba(250 246 242) 0%, rgb(241 178 226) 100%); padding: 1em; }
#faq h2 { margin: 0.3em auto 1.5em auto; font-size: 26px; text-align:center; position:relative; display:flex; align-items:center; justify-content:center; gap:0.8em; }
#faq h2::before,
#faq h2::after { content:""; display:block; width:20px; height:17px; background:url('./img/ornament_02.svg') no-repeat center center / contain; }

#faq .faq { background-color: #FFF; padding: 2em; border-radius: 8px;  border: 1px solid #dbc8c9;}
.faq-content { position:relative; margin-bottom:0.3em; border-bottom:1px solid #e8e1f5; background:none; border-radius:0; }
.faq-content:last-child { margin-bottom:0; border-bottom:0px solid #e8e1f5; }
.faq-content::after { content:""; position:absolute; right:0.4em; top:1.4em; width:8px; height:8px; border-right:2px solid #8c71ef; border-bottom:2px solid #8c71ef; transform:translateY(-50%) rotate(45deg); transition:0.25s; }
.faq-content[open]::after { transform:translateY(-30%) rotate(-135deg); }
.faq-q { position:relative; padding: 0.8em 2em 0.8em 2em; font-size:16px; font-weight:bold; line-height:1.8; cursor:pointer; list-style:none; }
.faq-q::-webkit-details-marker { display:none; }
.faq-q::before { content:"Q"; position:absolute; left:0; top:0.6em; color:#8c71ef; font-size:20px; font-weight:bold; }
.faq-a { padding:0em 0em 1.4em 2em; line-height:2; font-size:16px; }
.faq-a::before { content:none; }

@media screen and (max-width:640px){

.faq-q { padding:1em 2em 1em 1.8em; font-size:16px; line-height:1.7; }
.faq-a { padding:0em 0em 1.2em 1.8em; font-size:16px; line-height:1.9; }

}

/* ---------------------------------- */

#guide { background: linear-gradient(180deg, rgba(241 178 226) 0%, rgb(90, 67, 152, 1) 100%); padding-bottom: 1em; }
#guide h2 { margin: 0.3em auto 1.5em auto; font-size: 20px; text-align:center; position:relative; display:flex; align-items:center; justify-content:center; gap:0.8em; }
#guide h2::before,
#guide h2::after { content:""; display:block; width:20px; height:17px; background:url('./img/ornament_02.svg') no-repeat center center / contain; }
#guide .conbox_np { padding: 1em; }
#guide .conbox_np #guide_in { background-color: #FFF; padding: 2em; border-radius: 8px;  border: 1px solid #dbc8c9;}
#guide .conbox_np #guide_in h3 { margin-bottom: 1em; padding: 0.3em 1em; border-radius: 6px; border: 1px solid #dbc8c9; background-color: #efdddd; }
#guide .conbox_np #guide_in p { margin-bottom: 1em; }


.guide_item { padding:0.7em 0em; border-bottom:1px solid #dbc8c9; }
.guide_head { display:block; margin-bottom:0.3em; font-weight: bold; line-height:1.7;  }
.guide_body { display:block; color:#8c71ef; font-size: 15px; font-weight:bold; line-height:1.6; }


/* ---------------------------------- */

#legal_links { background-color: #36137a; padding: 1em; letter-spacing: 1px; }
#legal_links ul li a { color: #FFF; font-size: 14px; }

#contact { margin-top: 4em; color: #FFF; font-size: 14px;  }
#contact span { background-color: #5c449a; padding: 0.2em 1em ; display: inline-block; margin-bottom: 1em; }
#contact a { color: #FFF; }