/*---------------------------------------------------------------------
   RESET
---------------------------------------------------------------------*/

html, body, div, span, object, iframe,
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, tr, th, td,
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:62.5%;*/
	font-size:100%;
	/*font-weight:normal;*/
	/*line-height:1.8;*/
    vertical-align:baseline;
    background:transparent;
}

body {
    line-height:1;
}
blockquote:before, blockquote:after,
article,aside,details,figcaption,figure,
footer,header,main,hgroup,menu,nav,section {
    display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    vertical-align:baseline;
    background:transparent;
}
ins {
    color:#ccc;
    text-decoration:none;
}
mark {
    color:#31bedc;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}
ul, ol { list-style: none; }
*, *::before, *::after {
  box-sizing: border-box;
}

/*---------------------------------------------------------------------
   BODY BASE
---------------------------------------------------------------------*/
  
body {
	background-color:#fff;
	font-family: "游ゴシック Medium", "YuGothic M", "Yu Gothic Medium", "游ゴシック体", YuGothic, Meiryo, arial, sans-serif;
	color: #333333;
}
/*link*/
a, a:link, a:active, a:visited {
	text-decoration: none;
	color:#fe497c;
}
a:hover {
	text-decoration: none;
}
a:hover img { 
	-webkit-filter: brightness(1.05);
     -moz-filter: brightness(1.05);
     -o-filter: brightness(1.05);
     -ms-filter: brightness(1.05);
     filter: brightness(1.05);
}
a.alpha:hover img {
	 filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
}

#wrapper {
	margin:0 auto;
}

/*---------------------------------------------------------------------
   HEADER (common)
---------------------------------------------------------------------*/
#header {
	background:URL('../../../core_sys/images/header/bg/header_2nd.jpg')no-repeat top center;
	background-size: cover;
	height:270px;
}
.header_title {
	position:absolute;
	max-width:960px;
	width:100%;
	top:280px;
	left: 0;
	right: 0;
	margin: auto;
	text-align:right;
}
.header_title_inner {
	background-color:#f7c2cd;
	padding:1.5em;
	display:inline-block;
	text-align: left;
}
.title_jp {
	font-family:serif;
	font-size:1.6rem;
	line-height:1.1;
	color:#000;
	margin-bottom:.3em;
}
.title_en {
	font-size: 1.0rem;
	color:#fff;
}

#header_inner {
	background-color: rgba(255,255,255,0.8);
}
.header_sa01 {
	max-width:960px;
	margin:0 auto;
	height:36px;
	zoom: 1;
}
.header_sa01:before, .header_sa01:after {
	content: "";
	display: block;
}
.header_sa01:after { clear: both; }
.header_sa01_l {
	float:left;
	margin-top:10px;
	margin-left:1em;
}
.header_sa01_r {
	float:right;
	font-size: .9rem;
    margin-top: 4px;
    margin-right: .5em;
}

@media screen and (max-width:500px){
	 #header { height: 200px; }
}

/*---------------------------------------------------------------------
   GLOBAL NAVI
---------------------------------------------------------------------*/

.g_navi_sp ul:before, #g_navi ul:after {
	content: "";
	display: block;
}
.g_navi_sp ul:after { clear: both; }
.g_navi_sp {
	width:100%;
	z-index: 999;
}
.g_navi_sp li {
	float: left;
	text-align:center;
	/*width:16.66% 「講師について」公開時*/
	width: 20%;
}
.g_navi_sp li a {
	display: block;
	height:80px;
	padding:1.3em 1em;
	color:#fff;
	line-height: 1.3;
	font-size: .8em;
	font-weight:bold;
	background: #fe497c;
}
.g_navi_sp li a.current {
	background:#ff9fb3;
}
.g_navi_sp li a:hover {
	background:#ff9fb3;
	cursor:pointer;
}
.g_navi_sp p {
	color:#fff;
	font-size:.8rem;
	margin-top: .3em;
}
.menu_sp_06 a {
	background:#4d2b1d !important;
}
.menu_teacher { display: none; }/*講師について　非公開*/

/*-global navi media query-------------*/

@media screen and (min-width: 961px) {
	.g_navi_sp {
		border-radius:10px;
		position: absolute;
		top: 230px;
		left: 0;
		right: 0;
		margin: auto;
		width:960px;
	}
	#layout1 .g_navi_sp {
		top: 450px;
	}
	.menu_about a {
		border-radius:7px 0 0 7px/7px 0 0 7px;
	}
	.menu_voice a {
		border-radius: 0 7px 7px 0 /0 7px 7px 0;
	}
	.sb-toggle-right, .g_navi_sp li p.sp {display:none; }
	.g_navi_sp li p.pc { display:block; }
}
@media screen and (max-width: 960px) {
	.g_navi_sp {top: 230px;position: absolute;}
	#layout1 .g_navi_sp {top: 450px;}
	.menu_about a,.menu_voice a { border-radius:0; }
	.g_navi_sp li p.sp, .sb-toggle-right { display:none; }
	.g_navi_sp li p.pc { display:block; }
}
@media screen and (max-width: 750px) {
	.g_navi_sp {display:block;position: absolute;top: 32px;margin: 0;font-size:.8rem;}
	#layout1 .g_navi_sp {top: 32px}
	.g_navi_sp li a {
		padding: 1.4em .5em;
		height: 70px;
	}
	.header_sa01 { position:fixed; top:0; z-index:998; background:rgba(255,255,255,.8); width:100%;}
	.sb-toggle-right {display:block; }
	.sb-toggle-right a {background-color: #3e1f11 !important;}
	.menu_teacher, .menu_access, .header_sa01_r { display:none; }
	.g_navi_sp li p.pc {margin-top: 0.4em;font-size:.75rem;}
	.g_navi_sp li { width:20% }
}

@media screen and (max-width: 500px) {
	.g_navi_sp li a { height: 60px; padding: 1.2em .5em;}
	.g_navi_sp p {font-size:.7rem;}
	.menu_voice, .menu_teacher, .menu_access, .header_sa01_r { display:none; }
	.g_navi_sp li { width:25%;}
	#g_navi { display:none;}
	.g_navi_sp {display:block;top: 25px;}
	#layout1 .g_navi_sp {display:block;top: 25px;}
	.header_sa01_l {margin: 6px 0 0 5px;}
	.g_navi_sp li p.pc { display:none; }
	.g_navi_sp li p.sp { display:block; }
}

/*---------------------------------------------------------------------
   TOP PAGE (unique)
---------------------------------------------------------------------*/

#layout1 #header {
	background: URL('../../../core_sys/images/header/bg/header_main.jpg') no-repeat top center;
	height:480px;
}
#layout1 #header_inner {
	background-color:rgba(247,194,205,0.5);
}
#layout1 #g_navi { margin-top:-10px; }

#layout1 .main_sa02 {
	padding: 2em;
}
#layout1 .main_sa03 { padding: 0 2em; }

h1.catchcopy {
	color: #fe497c;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: normal;
	margin-bottom: 1em;
}
/*-information area-------------*/
#info_block_t { margin:0 2em 3em 2em; }
#info_block_t table { width:90%; margin:0 auto;}
.bg_a,.bg_b {
	border-bottom:1px solid #f7c2cd;
}
.bg_a td,.bg_b td {padding:.7em;}
td.day {
	padding-right:1em;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight:600;
	letter-spacing:0.03em;
	color:#fe3e65;
	white-space:nowrap;
}
.read a { color:#333; line-height:1.4;}

/*-information pop-------------*/
#header_pop h1 {
	margin:.5em 1em 1em;
}
#contents_pop {
	width:90%;
	margin:0 auto;
}
#info_detail table {
	width:100%;
	margin:0 auto 20px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.25);
    background: #fff;
	padding: 1.5em 0;
	border:20px solid #fff;
	line-height:1.4;
}
#info_detail td {
	padding:1.5em 0;
	border-bottom:1px solid #fe497c;
}
#info_detail .link {
	padding-left:16px;
}
#info_detail .com {
	font-size:.9em;
}
#footer_pop { margin:1em;}
#footer_pop p { font-size:.8em;}

@media screen and (max-width:960px){
	#layout1 #header {
		background-position: left -50px top;
	}
}
@media screen and (max-width:750px){
	#layout1 #header {
		background: URL('../../../core_sys/images/header/bg/header_main_s.jpg') no-repeat;
		background-position:left top;
		height:400px;
	}
	#layout1 .main_sa02 { padding:0 2em; }
	h1.catchcopy { margin:0 0 1em; font-size:1.5rem; }
	#info_block_t table { width:95%;}
	.read { font-size:.9rem; }
}
@media screen and (max-width:500px){
	#layout1 #header {
		background-size:550px;
		height:290px;
	}
	h1.catchcopy {
		font-size:1.2rem;
		margin:0 0 1em;
	}
	#layout1 .main_sa02 { padding:1em; }
	#layout1 .main_sa02 { padding:0 1em; }
	#layout1 .main_sa03 { padding: 0 1em; }
	#info_block_t table { width:100%;}
	.bg_a td,.bg_b td { padding:.7em .5em; }
	td.day{ font-size:.9rem; }
	.read { font-size:.8rem; }
	#info_block_t { margin: 0 1em 2em 1em; }
}

/*---------------------------------------------------------------------
   CONTENTS-AREA (common)
---------------------------------------------------------------------*/

#contents {
	margin: 1em auto;
	max-width:960px;
	background-color:#fff;
}
#cms_block {
	padding:2em;
}
section {
	margin:0 auto;
	/*padding:2em;*/
}
h1 {
	color: #fe497c;
	font-size: 2.4rem;
	line-height: 1.4;
	font-weight: normal;
	margin: 1em 0 1.5em 0;
}
p {
	color:#333;
	font-weight:normal;
	line-height:1.6;
	font-size:1.0em;
}
strong {
	color:#fe497c;
	font-size:1.1em;
	line-height:1.8;
}
dt {
	color:#fe497c;
	line-height:1.5;
	margin-bottom: .3em;
}
dd {
	line-height:1.5;
	font-size:.9rem;
}

/*-BUTTON-------------*/
.btn, .btn_back, .input_btn, .input_btn_back{
	display:inline-block;
	border-style:none;
	background-image: -webkit-linear-gradient(top, #ffbc70, #ff6b8b);
	background-image: -moz-linear-gradient(top, #ffbc70, #ff6b8b);
	background-image: -ms-linear-gradient(top, #ffbc70, #ff6b8b);
	background-image: -o-linear-gradient(top, #ffbc70, #ff6b8b);
	background-repeat:no-repeat;
	-webkit-border-radius: 30;
	-moz-border-radius: 30;
	border-radius: 40px;
	color: #fff;
	font-size: 1.4rem;
	text-decoration: none;
	margin:10px 5px;
	padding: .8em 3em .8em 2em;
	/*min-width: 350px;*/
	text-align: center;
}
.btn, .input_btn {
	background-image: URL('../../../core_sys/images/main/bt/arrow.svg'),
	linear-gradient(to bottom, #ffbc70, #ff6b8b);
	background-position:95%;
}
.btn_back, .input_btn_back {
	background-image: URL('../../../core_sys/images/main/bt/arrow_back.svg'),
	linear-gradient(to bottom, #ffbc70, #ff6b8b);
	padding: .6em 2em .6em 3em;
	background-position:7%;
}
.btn_back {
	padding:.8em 2em .8em 3em;
	min-width:200px;
}
.input_btn {
	padding: .6em 3em .6em 2em;
}
.input_btn_back {
	padding: .6em 2em .6em 3em;
}
.btn:hover, .btn_back:hover, .input_btn:hover, .input_btn_back:hover {
	text-decoration: none;
	cursor:pointer;
}

@media screen and (max-width: 750px) {
	#cms_block { padding:0 1em; }
	h1 { font-size: 1.6rem; line-height: 1.2; margin: 1em 0 1.0em 0; }
	p {font-size: .9rem;}
	.btn, .btn_back, .input_btn, .input_btn_back {
		font-size:1.2rem; min-width:100px;
	}
}
@media screen and (max-width: 500px) {
	#contents { margin:0 auto;}
	h1 { font-size: 1.4rem; }
	.btn, .btn_back, .input_btn, .input_btn_back {
		font-size:1.0rem;
	}
}

/*---------------------------------------------------------------------
   FOOTER (common)
---------------------------------------------------------------------*/
#footer {
	background-color:#dbdbdb;
	margin-top: 3em;
}
.footer_sa01 {
	max-width:960px;
	margin: 0 auto;
	padding: 2em 0;
}
.footer_sa02 {
	background-color:#fff;
	padding:1em;
}
.footer_sa02_c {
	max-width:960px;
	margin:0 auto;
}
.footer_nav {
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	justify-content:flex-start;
}
.footer_nav div {
	padding:0 2em;
}
.footer_nav li {
	margin:.5em 0;
}
.footer_nav li>a {
	color:#333;
	line-height:1.2;
	font-size:.85rem;
}
@media screen and (max-width: 750px) {
	.footer_nav li>a { font-size:.75rem; }
	.footer_nav div { padding:0 1em; }
}
@media screen and (max-width: 500px) {
	.footer_nav { flex-direction:column; }
	.cw { font-size:.7rem; }
}

/*---------------------------------------------------------------------
   DECORATION
---------------------------------------------------------------------*/
/* hx -------------*/
.title_a {
	display:block;
	border-bottom:5px solid #fbb3c2;
	font-size:1.5rem;
	padding-bottom:.2em;
	margin-bottom: 1.5em;
}
.title_b {
	display:block;
	font-size:1.5rem;
	padding-bottom:.2em;
	margin-bottom: 1.5em;
}
.title_b:before {
	content:'＼';
}
.title_b:after {
	content:'／';
}
.title_c {
	padding: .1em 0 .1em 1.8em;
	margin: 2em 0 0.8em;
	background:url('../../../core_sys/images/main/h3/heart_title.png') no-repeat left;
	background-size:contain;
	font-size:1.2rem;
	color:#fe497c;
}
.title_d {
	display: inline-block;
    padding: .4em 1.5em .3em 1em;
    background: #ff9fb3;
    color: #fff;
    font-size: 1.1em;
    font-weight: normal;
    border-radius: 0 20px 20px 0/0 20px 20px 0;
}
.title_e {
	border-bottom:4px solid #fe497c;
	font-weight:bold;
	color:#fe497c;
	padding-bottom:.3em;
}
.title_f {
	border-bottom:2px dotted #f7c2cd;
	font-weight:normal;
	font-size:1.2em;
	color:#333;
	padding-bottom:.3em;
	margin-bottom: 1em;
}
.title_g {
	background:#ff8b17;
	color:#fff;
	font-weight:bold;
	font-size:.9em;
	margin-bottom:2em;
	display:inline-block;
	padding:.3em 1em;
	border-radius:3px;
}
.title_h {
	background:#fe497c;
	color:#fff;
	font-weight:bold;
	font-size:.9em;
	margin: 0 1em 2em;
	display:inline-block;
	padding:.3em 1em;
	border-radius:3px;
}
@media screen and (max-width: 750px) {	
	.title_a {
		font-size:1.3rem;
		border-bottom: 3px solid #fbb3c2;
	}
}
@media screen and (max-width: 500px) {	
	.title_a {
		font-size:1.1rem;
	}
	.title_b { font-size:1.2rem;}
	.title_c {
		font-size:1.1rem;
		padding: .1em 0 .1em 1.6em;
	}
}

/* font -------------*/
.roboto {
	font-family: 'Roboto Condensed', sans-serif;
	letter-spacing: .02em;
	font-weight:400;
}

.f_bold { font-weight:bold; }
.f_xs { font-size:.7rem; }
.f_s { font-size:.85rem; }
.f_l { font-size:1.2rem; }
.f_xl { font-size:1.5rem; }
.f_xxl { font-size:1.8rem; }
.small { font-size:.7em;}

/* border -------------*/
.bd_gray_r {
	border:2px solid #bdbdbd;
	border-radius:10px;
	padding:1.5em 1em;
}

/* bg -------------*/
.fruits_bg {
	background:URL('../../../core_sys/images/main/bg/fruits_bg.jpg')no-repeat center bottom;
	background-size:contain;
}
.heart_bg {
	background:URL('../../../core_sys/images/main/bg/heart.svg')no-repeat center;
	background-size:contain;
}

/* color -------------*/
.pink_1 { color:#fe497c; }
.pink_2 { color:#f7c2cd; }
.pink_3 { color:#fae1e6; }


/* line -------------*/
.uline { border-bottom:2px solid #f7c2cd; }
.dot {
	border:none;
	border-bottom:2px dotted #f7c2cd;
}
.hr_white {
	border:none;
	border-bottom:2px solid #fff;
}

/* list -------------*/
.list_dot, .li_roman, .li_dicimal {
	padding-left:1em
}
.list_dot li {
	position: relative;
	line-height: 1.6;
    font-size: .9rem;
	padding-bottom: .5em;
}
.list_dot li::after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1em;
	width: 6px;
	height: 6px;
	background-color: #ddd;
	border-radius: 100%;
}
.list_caution {
	padding-left:1em;
}
.list_caution li {
	position: relative;
	line-height: 1.7;
    font-size: .85rem;
}
.list_caution li::before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: -1.2em;
	width: 6px;
	height: 6px;
}

@media screen and (max-width:500px) {
	.list_caution li, .list_dot li, .li_dicimal li, .li_roman li {
		font-size:.8rem !important;
	}
}
.li_dicimal li {
	list-style: decimal;
	line-height: 1.6;
    font-size: .9rem;
	padding-bottom: .5em;
	margin:.5em;
}
.li_roman li {
	list-style: lower-roman;
	line-height: 1.6;
    font-size: .9rem;
	padding-bottom: .5em;
	margin:.5em;
}
/*.li_dicimal li, .li_roman li {
	font-size:.9em;
}*/

/* box -------------*/
.box_shadow {
    box-shadow: 0px 0px 8px rgba(0,0,0,0.25);
	-webkit-border-radius: 10;
	-moz-border-radius: 10;
	border-radius: 10px;
    background: #fff;
	padding: 1.5em 0;
}
.box_shadow_alpha {
    box-shadow: 0px 0px 8px rgba(0,0,0,0.25);
	-webkit-border-radius: 10;
	-moz-border-radius: 10;
	border-radius: 10px;
    background: rgba(255,255,255,0.8);
	padding: 1.5em 0;
}
.box_lightpink {
	background:#fae1e6;
	-webkit-border-radius: 10;
	-moz-border-radius: 10;
	border-radius: 10px;
	padding:1.5em;
	display:inline-block;
}

@media screen and (max-width:500px) {
	.box_lightpink { padding:1.0em; }
	.box_lightpink p{ font-size:.8rem; }
}

/*---------------------
   講座のご案内
----------------------*/
.course_chart {
	background: url(../../../core_sys/images/main/contents/course_image_bg.png) no-repeat bottom;
    background-size: contain;
    width: 90%;
    text-align: center;
	margin: 2em auto 4em;
}
.course_chart img {
	vertical-align:middle;
	width: auto;
    max-width: 100%;
}
.step_chart {
	margin:2em 1em;
	text-align:center;
}
.step_chart img {
	width:auto;
	max-width:100%;
}
/*table -------------*/
.head th {
	background-image: -webkit-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -moz-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -ms-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -o-linear-gradient(top, #fbe3e8, #f7c2cd);
	padding:.5em 1em;
}
.curriculum td {
	line-height:1.3;
	padding:1.2em;
}
.curriculum tr {
	border-bottom:2px solid #f7c2cd;
}
.curriculum {
	margin:2em 1em;
	text-align:left;
	font-size:.9em;
}
.youkou td {
	line-height: 1.6;
	padding:1.2em;
	font-size: .9em;

}

@media screen and (max-width: 500px) {
	.course_chart { width:100%; margin:2em auto 3em; }
	.curriculum { margin:0; font-size: .8rem; border-top: 2px solid #f7c2cd;}
	.curriculum td { display:block;}
	.curriculum td:first-child { display:block; border-bottom: 1px dashed #f7c2cd;}
	.curriculum tr.head { display:none; }
	.youkou td { padding:.5em; display:block; }
}

/*
   講師紹介
----------------------*/
#layout24 #wrapper {
	background:URL('../../../core_sys/images/main/bg/vege_bg.jpg')no-repeat -300px 160px;
}
#layout24 #contents {
	background-color:transparent;
}
dl.teacher dt { font-size:1.2rem; margin-top:1em; }
dl.teacher dd { font-size:.8rem; line-height:1.8; border-bottom:1px dotted #ff9fb3; padding-bottom:1em;}
dl.teacher dd:last-child { border-bottom:0;}
.teacher_name { font-size:1.8rem; }
.teacher_name { font-size:1.8rem; }
.teacher_name_kana { font-size:1.2rem; }
.teacher_jobtitle {
	color:#fe497c;
	font-size:.85rem;
	padding-top:1em;
	padding-bottom:2em;
}
@media screen and (max-width:750px) {
	.teacher_name { font-size:1.4rem; }
	.teacher_name_kana { font-size:1.0rem; }
	.teacher_jobtitle {
		font-size:.75rem;
		padding-top:.5em;
		padding-bottom:1em;
	}
}
@media screen and (max-width: 500px) {
	#layout24 #wrapper {
		background-repeat:repeat-y;
		background-size:200%;
		background-position: top 200px center;
	}
	.teacher_name_kana { font-size:.85rem; }
}

/*
   受講生の声
----------------------*/
#layout25 #wrapper {
	/*background:URL('../../../core_sys/images/main/bg/salad_bg.jpg')no-repeat right top 320px;*/
	background:URL('../../../core_sys/images/main/bg/vege_bg.jpg')no-repeat -300px 160px;
}
#layout25 #contents {
	background-color:transparent;
}
.voice {
	width:50%;
	min-width:300px;
	position: relative;
	background: #fae1e6;
	padding: 1.5em;
    margin: 1em 2em;
	border-radius:10px;
}
.voice:after {
	right: 100%;
	top: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(250, 225, 230, 0);
	border-right-color: #fae1e6;
	border-width: 10px;
	margin-top: -10px;
}
.voice_img { margin-right:2em; }
@media screen and (max-width:500px) {
	.voice {
		width:auto;
	}
	/*#layout25 #wrapper {
		background-position:left top 170px;
	}*/
	#layout25 #wrapper {
		background-repeat:repeat-y;
		background-size:200%;
		background-position: top 200px center;
	}
	.voice_img { margin-right:0; margin-bottom:1em; }
}
@media screen and (max-width:375px) {
	.voice {
		width:auto;
		min-width:100px;
		padding: 1.0em;
		margin: 1.0em;
	}
}

/*
   会場案内
----------------------*/
.access_name {
	font-size:1.8rem;
}
.access {
	float:left;
	width:50%;
}
.gmap {
	position: relative;
	float:right;
    width: 45%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.gmap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:500px){
	.access, .gmap { float:none; width:100%;}
	.gmap { margin-top:1.5em;}
	.access_name { font-size:1.2rem; }
}

/*
   講座日程
----------------------*/
/*table*/
table.list, table.detail {margin:1em auto;}
table.list th, table.detail th {
	background: #f7c2cd;
	padding:.7em;
	color:#333;
	font-size:.9rem;
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
	border-right: 1px solid #fff;
}
table.list td {
	padding:.7em;
	line-height:1.5;
}
table.detail td {
	border-bottom:2px solid #fae1e6;
	line-height:1.4;
	padding:1em;
	font-size:.9rem;
} 
table.detail th {
	background:#fae1e6;
	border-bottom:2px solid #fff;
}
table.detail { border:2px solid #fae1e6;}
/*btn*/
.input_btn, .input_btn_back {
	font-family: "游ゴシック Medium", "YuGothic M", "Yu Gothic Medium", "游ゴシック体", YuGothic, Meiryo, arial, sans-serif;
	min-width: 250px;
}
.underline {
	color:#333;
	border-bottom:1px solid #fe497c;
}
/*form*/
.l_ti01,.l_ti02,.l_ti03 {
	padding:.2em 0 .2em 1.8em;
	margin: 2em 0 .8em;
	background:url('../../../core_sys/images/main/h3/heart_title.png') no-repeat left;
	background-size:contain;
	font-size:1.2rem;
	color:#fe497c;
}
table.input {
	margin:1em auto;
	width:100%;
}
table.input th {
	width:20%;
	background:#fae1e6;
	font-size:.9rem;
	vertical-align:middle;
	text-align:center;
	padding:1em;
	border-bottom:2px solid #fff;
	font-weight:normal;
}
table.input td {
	padding:1em;
	border-bottom:2px dotted #fae1e6;
	font-size:.9rem;
	line-height:1.5;
}
span.caut, .nec {
	font-size:.9rem;
	color:#fe497c;
	font-weight:bold;
}
.err {
	position: relative;
	margin: 5em 2em 0;
	text-align: center;
	line-height: 1.5;
	font-size: .9rem;
	color: #fe497c;
	font-weight: bold;
	border: 1px solid #fe497c;
	padding: 2em;
}
@media screen and (max-width: 750px) {
	.err { margin:2em 2em 0; }
	table.list td {
		font-size:.9rem;
	}
}
@media screen and (max-width: 500px) {
	table.list th, table.detail th {
		padding:.5em;
		font-size:.7rem;
		white-space:pre-wrap;
	}
	table.list td {
		padding:.5em;
		font-size:.75rem;
	}
	.tex, .tex03, .b_n {max-width: 300px;}
	table.input { margin:0 auto; }
	table.input th {
		width:100%;
		font-size:.8rem;
		text-align:left;
		padding:.5em;
		display:block;
	}
	table.input td {
    	padding: 1em .7em;
		display:block;
		border-bottom:none;
	}
	span.caut, .nec {
    	font-size: .75rem;
	}
	input, select {
    	max-width: 250px;
	}
	.l_ti01,.l_ti02,.l_ti03 {
	    padding: .1em 0 .1em 1.7em;
		font-size:1.0rem;
	}
	.err {
    	margin: 3em 1em 2em;
    	line-height: 1.7;
    	font-size: .75rem;
   		padding: 1em;
	}
	strong.underline { font-size:.8rem; }
}
@media screen and (max-width:420px) {
	.tex, .tex03, .b_n {max-width: 250px;}
}
/*
   検定試験日程
----------------------*/

/*table -------------*/
.exam {
	width:95%;
	border-collapse: collapse;
	margin:1em auto;
	text-align:left;
	font-size:.9em;
	border:1px solid #f7c2cd;
	border-top:1px solid #fbe3e8;
	text-align:center;
}
.exam th {
	background-image: -webkit-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -moz-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -ms-linear-gradient(top, #fbe3e8, #f7c2cd);
	background-image: -o-linear-gradient(top, #fbe3e8, #f7c2cd);
	padding:.5em 1em;
}
.exam td {
	line-height:1.3;
	padding:1.2em;
	border:1px solid #f7c2cd;
	vertical-align:middle;
}



/*
   検定試験申込
----------------------*/
#event_block {
	font-size:.9rem;
}

/*
   プライバシーポリシー
----------------------*/
.dl_privacy dt {
	color:#000;
	font-weight:bold;
	padding-top:.5em;
}
@media screen and (max-width: 500px) {
	.dl_privacy dd, .p_privacy {
		font-size:.8rem;
	}
}

/*---------------------------------------------------------------------
   UTILITY
---------------------------------------------------------------------*/
/*clearfix*/
.clear { clear: both; }
.clearfix:before, .clearfix:after {
	content: "";
	display: block;
}
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }
/*float*/
.floatL { float: left; }
.floatR { float: right; }
/*flex-box*/
.flexbox {
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	justify-content:space-between;
}
.flex_center { justify-content:center; }
.voice_flexalign {
	justify-content:flex-start;
	align-items:flex-end;
}

@media screen and (max-width: 500px) {
	.flexbox {flex-direction: column;}
	.voice_flexalign { align-items:stretch; }
}
/*align*/
.alignL, td.alignL, alignL.td { text-align: left; }
.alignC, td.alignC, alignC.td { text-align: center; }
.alignR, td.alignR, alignR.td { text-align: right; }
.valign_t, td.valign_t, .valign_t td { vertical-align: top; }
.valign_m, td.valign_m, .valign_m td { vertical-align: middle; }
.valign_b, td.valign_b, .valign_b td { vertical-align: bottom; }


.mb_x1 { margin-bottom:1em; }
.mb_x2 { margin-bottom:2em; }
.mb_x3 { margin-bottom:3em; }
.mt_x1 { margin-top:1em; }
.mt_x2 { margin-top:2em; }
.mt_x3 { margin-top:3em; }
.mtb_x1 { margin-top:1em; margin-bottom:1em; }
.mtb_x2 { margin-top:2em; margin-bottom:2em; }
.mtb_x3 { margin-top:3em; margin-bottom:3em; }
.mlr_x1 { margin-left:1em; margin-right:1em; }
.mlr_x2 { margin-left:2em; margin-right:2em; }
.mlr_x3 { margin-left:3em; margin-right:3em; }
.mr_x1 { margin-right:1em; }
.mr_x2 { margin-right:2em; }
.mr_x3 { margin-right:3em; }
.ma_x1 { margin:1em; }
.ma_x2 { margin:2em; }
.ma_x3 { margin:3em; }

.pb_x1 { padding-bottom:1em; }
.pb_x2 { padding-bottom:2em; }
.pb_x3 { padding-bottom:3em; }
.pt_x1 { padding-top:1em; }
.pt_x2 { padding-top:2em; }
.pt_x3 { padding-top:3em; }
.ptb_x1 { padding-top:1em; padding-bottom:1em; }
.ptb_x2 { padding-top:2em; padding-bottom:2em; }
.ptb_x3 { padding-top:3em; padding-bottom:3em; }
.plr_x1 { padding-left:1em; padding-right:1em; }
.plr_x2 { padding-left:2em; padding-right:2em; }
.plr_x3 { padding-left:3em; padding-right:3em; }
.pa_x1 { padding:1em; }
.pa_x2 { padding:2em; }
.pa_x3 { padding:3em; }

.hidden { text-indent: 100%; white-space: nowrap; overflow: hidden; }
.inline { display: inline; }
.inline_block li {display:inline-block;}

@media screen and (max-width: 500px) {
	.ma_x2 { margin:1em; }
	.ma_x3 { margin:1.5em; }
	.pa_x2 { padding:1em; }
	.pa_x3 { padding:1.5em; }
	.mlr_x2 { margin-left:1em; margin-right:1em; }
	.mlr_x3 { margin-left:1.5em; margin-right:1.5em; }
	.plr_x2 { padding-left:1em; padding-right:1em; }
	.plr_x3 { padding-left:1.5em; padding-right:1.5em; }
}


/*wrap*/
.nowrap { white-space:nowrap; }

/*img fix*/
.fiximg {
	width:auto;
}
.fiximg img {
	max-width:100%;
	height:auto;
}
.fiximg_flex {
	width:auto;
}
.fiximg_flex img {
	height:auto;
}

/*
   PAGETOP button
----------------------*/
#page-top {
	position: fixed;
    bottom: 10px;
    right: 0;
	z-index:10;
}

@media screen and (max-width: 500px) {
	#page-top img { width:80px; height:auto; }
}

/*
   Slidebar
----------------------*/

.slidebar_menu li {
	padding: 1em 0 1em .8em;
	line-height:1.3;
	border-bottom:1px dotted #fff;
	background: url('../../../core_sys/images/main/bt/arrow_pink.svg') no-repeat center left;
	background-size: 7px auto;
}
.slidebar_menu li a {
	color:#333;
	font-weight:normal;
	font-size:.9rem;

}
.btn_drawer {
	background-image: URL('../../../core_sys/images/main/bt/arrow.svg'),
	linear-gradient(to bottom, #fe8cac, #fe497c);
	background-position:95%;
	background-repeat:no-repeat;
	padding: 1em;
	margin:10px auto;
	border-radius: 5px;
	text-decoration: none;
	color:#fff;
}


/*講座申込詳細用MAPリンクアイコン*/
a.app_map {
    display: inline-block;
    background: #fe497c;
    color: #fff;
    padding: 0 5px;
    font-size: .9em;
}
a.app_map:hover { background: #ea84a1;}
