/*共通レイアウト---------------------------------------------------*/
html {
	font-size:62.5%;
}
body {
	/*font-family: 'Yu Gothic', YuGothic, 'メイリオ', Meiryo, Osaka, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;*/
	font-family:'Hiragino Kaku Gothic ProN', Meiryo, 'MS PGothic', Sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
	color: #000;
	min-width: 1220px;
	-webkit-text-size-adjust: 100%;
}
h1 {
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: 40px;
}
h2 {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 30px;
	padding: 4px 0 2px 10px;
	background: #d4d5d6;
}
h3 {
	font-size: 2rem;
	font-weight: bold;
	margin-bottom: 20px;
	padding-left: 10px;
	border-left: 5px solid #e75400;
}
table + h2,
table + h3 {
	margin-top: 50px;
}
p + h3 {
	margin-top: 50px;
}
.container {
	width: 1200px;
	margin: 0 auto;
	padding: 0;
}
.container + .bg_beige {
	margin-top: 70px;
	padding-bottom: 70px;
}
.indent {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}
.txt_r {
	text-align: right;
}
.txt_c {
	text-align: center;
}
.pc_none {
	display: none;
}
.sp_none {
	display: block;
}
@media screen and (max-width: 768px) {
	body{
		min-width: initial;
	}
	.container {
		width: 94%;
	}
	.container + .bg_beige {
		margin-top: 30px;
		padding-bottom: 30px;
	}
	h1 {
		font-size: 2.4rem;
		padding: 0;
		margin-bottom: 20px;
	}
	h2 {
		margin-bottom: 20px;
	}
	h3 + table {
		margin-bottom: 30px;
	}
	.pc_none {
		display: block;
	}
	.sp_none {
		display: none;
	}
}
/*bg_color*/
.bg_beige {
	background: #ebe8e5;
	min-width: 1200px;
	padding: 50px 0;
	margin-bottom: 50px;
}

/*box*/
.box_conteiner {
	display: flex;
	justify-content: center;
}
.case_box {
	box-shadow: 0 0 8px gray;
	background: #fff;
}
.case_box + .case_box {
	margin-left: 40px;
}

@media screen and (max-width: 768px) {
	.box_conteiner {
		flex-direction: column;
		height: auto;
	}
	.bg_beige {
		min-width: 100%;
		padding: 30px 0;
		margin-bottom: 40px;
	}
	.case_box {
		width: 100%;
		min-height: 0%;
		padding-bottom: 2%;
	}
	.case_box + .case_box {
		margin: 20px 0 0 0;
	}
}
@media screen and (max-width: 375px) {
	.case_box {
		width: 100%;
	}
}

/*リンク---------------------------------------------------*/
a {
	color:#333;
	text-decoration: none;
}
a:hover {
	color:#e75400;
	/*text-decoration: underline;*/
}
a:hover img {
	opacity: 0.8;
}
a.link_color{
	color: #e75400;
}
a.link_color:hover{
	text-decoration: underline;
}
a.icon_blank {
	background: url("../img/icon_blank_g.svg") no-repeat center right;
	background-size: 17px 15px;
	padding-right: 20px;
}
@media screen and (max-width: 768px) {
	table a {
		color: #e75400;
	}
	table a:hover {
		text-decoration: underline;
	}
	.tel-link {
		color: #e75400;
	}
	.tel-link:hover {
		text-decoration: underline;
	}
}

/*画像-------------------------------------------------------------*/
img {
	vertical-align: bottom;
}
@media screen and (max-width: 768px) {
	img {
		width: 100%;
	}
}

/*フォントカラー---------------------------------------------------*/
.red {
	color: red;
}
/*フォントサイズ---------------------------------------------------*/
.font_10 {
	font-size: 1rem !important;
}
.font_11 {
	font-size: 1.1rem !important;
}
.font_12 {
	font-size: 1.2rem !important;
}
.font_13 {
	font-size: 1.3rem !important;
}
.font_14 {
	font-size: 1.4rem !important;
}
.font_15 {
	font-size: 1.5rem !important;
}
.font_16 {
	font-size: 1.6rem !important;
}
.font_17 {
	font-size: 1.7rem !important;
}
.font_18 {
	font-size: 1.8rem !important;
}
.font_19 {
	font-size: 1.9rem !important;
}
.font_20 {
	font-size: 2rem !important;
}
.font_30 {
	font-size: 3rem !important;
}

/*マージン-----------------------------------------------------*/
.ml_5 {
	margin-left: 5px;
}
.ml_10 {
	margin-left: 10px;
}
.ml_20 {
	margin-left: 20px;
}
.ml_30 {
	margin-left: 30px;
}
.ml_40 {
	margin-left: 40px;
}
.ml_50 {
	margin-left: 50px;
}
.mb_5 {
	margin-bottom: 5px;
}
.mb_10 {
	margin-bottom: 10px;
}
.mb_20 {
	margin-bottom: 20px;
}
.mb_30 {
	margin-bottom: 30px;
}
.mb_40 {
	margin-bottom: 40px;
}
.mb_50 {
	margin-bottom: 50px;
}
.mb_60 {
	margin-bottom: 60px;
}
.mt_10 {
	margin-top: 10px;
}
.mt_20 {
	margin-top: 20px;
}
.mt_30 {
	margin-top: 30px;
}
.mt_40 {
	margin-top: 40px;
}
.mt_50 {
	margin-top: 50px;
}
.mt_60 {
	margin-top: 60px;
}

/*ヘッダー------------------------------------------------------*/
#PC_gnav {
	border-bottom: 1px solid #d4d4d4;
	position: relative;
	z-index: 1000;
	min-width: 1200px;
}
#PC_gnav .PC_gnav_inner {
	margin: 20px auto 5px auto;
	width: 1200px;
	display: flex;
}
#PC_gnav nav ul {
	display: flex;
	justify-content: flex-end;
}
#PC_gnav nav ul li {
	margin-left: 3rem;
}
#PC_gnav nav ul li:first-child {
	margin-left: 0;
}
#PC_gnav nav.subnav ul {
	font-size: 1.3rem;
	margin-bottom: 10px;
}
#PC_gnav nav.subnav ul li {
	background: url("../img/icon_arrow.svg") no-repeat left 4px;
	background-size: 6px 10px;
	padding-left: 15px;
}

#PC_gnav nav.subnav ul li.subnav_e {
	background: none;
	padding-top: 0;
	padding-left: 0;
}
#PC_gnav nav.subnav ul li.subnav_e a {
	background: #e75400;
	color: #fff;
	display: block;
	padding: 2px 10px 2px 8px;
	border-radius: 5px;
}
#PC_gnav nav.subnav ul li.subnav_e a:hover {
	opacity: 0.8;
}

#PC_gnav nav.mainnav ul {
	font-size: 1.5rem;
}
#PC_gnav nav.mainnav ul li {
	padding-bottom: 15px;
}
#PC_gnav nav.mainnav > ul li a {
	display: block;
}
#PC_gnav .main_title {
	font-size: 2.4rem;
	font-weight: bold;
	margin-right: auto;
}
#PC_gnav .main_title span {
	font-size: 1.2rem;
	font-weight: normal;
	display: block;
}
#PC_gnav .main_title span {
	font-size: 1.2rem;
	font-weight: normal;
	display: block;
}
#PC_gnav .mainnav ul li {
	position: relative;
}
#PC_gnav .mainnav ul li ul {
	display: block;
	position: absolute;
	top: 20px;
	width: 180px;
	background: #404040;
	-webkit-transition: .2s ease;
	transition: .2s ease;
	visibility: hidden;
	opacity: 0;
}
#PC_gnav .mainnav ul li:nth-child(6) ul {
	width: 200px;
}
#PC_gnav .mainnav ul li:last-child ul {
	right: 0;
}
#PC_gnav .mainnav ul li:hover ul {
	top: 30px;
	visibility: visible;
	opacity: 1;
	padding: 0;
	padding: 5px 0;
}
#PC_gnav .mainnav ul li ul li {
	margin: 0;
	padding-bottom: 0;
}
#PC_gnav .mainnav ul li ul li a {
	padding: 3px 10px;
	color: #fff;
}
#PC_gnav .mainnav ul li ul li a:hover {
	text-decoration: underline;
}
#PC_gnav .mainnav ul li ul::before{
	content: '';
	position: absolute;
	left: 10px;
	top: -8px;
	display: block;
	width: 0;
	height: 0;
	border-right: 8px solid transparent;
	border-bottom: 8px solid #404040;
	border-left: 8px solid transparent;
}
#PC_gnav .mainnav ul li:last-child ul::before{
	left: 50%;
}

/* sp menu */
#SP_gnav,
#SP_gnav_wrap {
	display: none;
}
#nav-toggle {
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 50px;
	cursor: pointer;
	background: #e75400;
	z-index: 100;
}
#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	-webkit-transition: .3s ease-in-out;
	-moz-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
	position: absolute;
	left: 11px;
	width: 28px;
	height: 2px;
	background: #fff;
	display: block;
}
#nav-toggle span:nth-child(1) {
	top: 17px;
}
#nav-toggle span:nth-child(2) {
	top: 25px;
}
#nav-toggle span:nth-child(3) {
	top: 33px;
}
@media screen and (max-width: 768px) {
	#PC_gnav {
		min-width: 80%;
	}
	#PC_gnav .PC_gnav_inner {
		margin: 5px 2% 5px 2%;
		width: 80%;
	}
	#PC_gnav nav ul {
		display: none;
		width: 100%;
	}
	#PC_gnav .main_title {
		margin: 0 0.8%;
		font-size: 1.8rem;
		font-weight: bold;
		margin-right: auto;
	}
	#PC_gnav .main_title span {
		font-size: 1rem;
		font-weight: normal;
		display: block;
	}
	/* sp menu */
	#SP_gnav .main_title {
		font-size: 1.8rem;
		font-weight: bold;
		margin-right: auto;
		margin: 5px 0 4px 2.8%;
	}
	#SP_gnav .main_title span {
		font-size: 1rem;
		font-weight: normal;
		display: block;
	}
	#SP_gnav {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 3000;
	}
	#SP_gnav_wrap {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(84,88,90,0.6);
		overflow: auto;
		z-index: 15;
	}
	#SP_gnav_wrap .inner {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background: #fff;
		z-index: 10;
	}
	#PC_gnav_wrap .inner {
		width: 100%;
	}

	/* Open Effect */
	.open #nav-toggle span {
		background: #fff;
	}
	.open #nav-toggle span:nth-child(1) {
		top: 26px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 26px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
	}

	/* nav */
	#SP_gnav_wrap nav {
		clear: both;
		padding: 50px 0 0 0;
		width: 100%;
		background: #404040;
	}
	#SP_gnav_wrap h2 {
		width: 100%;
		border-top: 1px solid #fff;
		text-align: left;
		color: #fff;
		margin: 0;
		padding: 0;
		font-size: 1.6rem;
		font-weight: normal;
		box-sizing: border-box;
		cursor: pointer;
		background: rgba(84,88,90,1);
	}
	#SP_gnav_wrap h2 a {
		display:block;
		padding: 10px 0 10px 15px;
		color: #fff;
		position: relative;
	}
	#SP_gnav_wrap h2 a::before {
		position: absolute;
		top: 40%;
		left: 90%;
		content: "";
		display:inline-block;
		width:6px;
		height:10px;
		background: url(../img/icon_arrow.svg) no-repeat center right;
	}
	#SP_gnav_wrap h2.icon_blank a::before {
		width:12px;
		height:12px;
		background: url("../img/icon_blank_w.svg") no-repeat center right;
	}
	#SP_gnav_wrap h2 a:active {
		color: #fff;
	}
	#SP_gnav_wrap  nav .btn_title {
		padding: 10px 0 10px 15px;
	}
	#SP_gnav_wrap nav .btn_title.active::before {
		content:"";
		display:inline-block;
		width:10px;
		height:6px;
		background: url(../img/icon_close.svg) no-repeat center right;
	}
	#SP_gnav_wrap nav .btn_title {
		position: relative;
	}
	#SP_gnav_wrap nav .btn_title::before {
		position: absolute;
		top: 48%;
		left: 90%;
		content: "";
		display:inline-block;
		width:10px;
		height:6px;
		background: url(../img/icon_open.svg) no-repeat center right;
	}
	#SP_gnav_wrap nav .active {
		border-bottom: 1px solid #fff;
	}
	#SP_gnav_wrap ul {
		width: 100%;
		background: #7f7f7f;
	}
	#SP_gnav_wrap ul li a {
		padding: 10px 0 10px 30px;
		border-bottom: 1px solid #fff;
		display: block;
		color: #fff;
	}
	#SP_gnav_wrap ul li:last-child a {
		border-bottom: none;
	}
}
/*フッター-------------------------------------------------------*/
footer {
	font-size: 1.2rem;
	background: #d4d5d6;
	margin-top: 60px;
	min-width: 1200px;
}
footer .container {
	padding: 30px 0;
}
footer .fnav {
	display: flex;
}
footer .fnav div {
	/*margin-right: 45px;*/
	margin-right: 40px;
}
footer .fnav div:last-child {
	margin-right: 0;
}
footer .fnav h2 {
	font-size: 1.3rem;
	text-align: left;
	margin-bottom: 10px;
	padding: 0;
}
footer nav.fnav li {
	font-size: 1.3rem;
}
footer .footer_bottom {
	display: flex;
	margin-top: 40px;
}
footer .footer_bottom .copy {
	width: 950px;
	padding-left: 125px;
	text-align: center;
}
footer .footer_bottom .lixil_logo {
	width: 125px;
	height: 60px;
}

@media screen and (max-width: 768px) {
	footer {
		min-width: 100%;
	}
	footer .container {
		width: 100%;
		padding: 0 0 30px 0;
	}
	footer .PC_fnav {
		display: none;
	}
	footer .footer_bottom {
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
	}
	footer .footer_bottom .copy {
		width: 100%;
		margin-top: 30px;
		padding-left: 0;
		font-size: 1.2rem;
	}
	footer .footer_bottom .lixil_logo {
		margin-top: 20px;
	}
}

/*pagetop*/
.pagetop {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 80px;
	height: 80px;
}
.pagetop a {
	opacity: 0.6;
	transition-property: all;
	transition: 0.3s ease-out;
}
.pagetop a:hover {
	opacity: 0.4;
	filter: alpha(opacity=40);
	-ms-filter: "alpha(opacity=40)";
}
@media screen and (max-width: 768px) {
	.pagetop {
		width: 60px;
		height: 60px;
	}
}

/*トップページ-----------------------------------------------------*/
.sp-slide.sp-selected {
	opacity: 1;
}
.sp-slide {
	opacity: 0.3;
}
.top_notice { /*メルマガ登録バナー掲載時設定*/
    display: flex;
}
.top_notice .bnr { /*メルマガ登録バナー掲載時設定*/
	width: 277px;
    margin-bottom: 20px;
}

.top_emergency { /*メルマガ登録バナー掲載時設定*/
	width: 900px;
	margin: 0 auto 20px 0;
	padding: 15px 15px 0 15px;
	border: 5px solid #f9d4bf;
	box-sizing: border-box;
	background: #fff;
	color: #e75400;
}
/*.top_emergency {
	width: 1000px;
	margin: 0 auto 20px auto;
	padding: 15px 20px 0px 20px;
	border: 5px solid #f9d4bf;
	box-sizing: border-box;
	background: #fff;
	color: #e75400;
}*/
h2.top {
	font-size: 3rem;
	color: #e75400;
	margin-bottom: 50px;
	background: none;
	padding: 0;
	text-align: center;
}
.top_area_serch, .top_method_serch, .top_menu_serch {
	padding: 15px 20px;
	border: 1px solid #d4d4d4;
	box-sizing: border-box;
	background: #fff;
}
.top_area_serch,
.top_method_serch{
	width: 350px;
	min-height: 275px;
	margin-right: 30px;
	position: relative;
}
.top_menu_serch {
	width: 820px;
}
.top_area_serch h2, .top_method_serch h2, .top_menu_serch h2 {
	font-size: 2rem;
	text-align: left;
	margin: 0;
}
.top_area_serch .area_txt {
	width: 176px;
	position: relative;
	top: 30px;
	left: 10px;
	z-index: 20;
}
.top_area_serch .area_map {
	width: 240px;
	position: absolute;
	top: 55px;
	left: 55px;
	z-index: 10;
}
.top_method_serch .serch-category { /*研修カレンダー掲載時に設定*/
    display: flex;
	margin-top: 10px;
	padding: 0;
}
.top_method_serch .serch-category .calendar { /*研修カレンダー掲載時に設定*/
    display: block;
	margin-left: 25px;
	width: 40%;
}
.top_method_serch .serch-category .calendar img { /*研修カレンダー掲載時に設定*/
	width: 100%;
}
.top_method_serch ul{
    /*margin: 15px 0;*/
	width: 60%; /*研修カレンダー掲載時に設定*/
}
.top_method_serch ul li{
    display: block;
	/*margin-top: 10px;*/
    margin-bottom: 10px; /*研修カレンダー掲載時に設定*/
}
.top_method_serch ul li a{
    display: block;
    padding: 10px;
    border-radius: 5px;
    background: #ada29a;
    text-align: center;
    font-weight: bold;
    color: #fff;
}
.top_method_serch ul li a:hover{
    background: #ccc;
    color: #e75400;
}
.top_menu_serch h2 {
	width: 193px;
}
.top_menu_serch .tub_area{
	width: 585px;
	margin-bottom: 20px;
}
.top_menu_serch .tub_area ul{
	overflow:hidden;
	display: flex;
}
.top_menu_serch .tub_area li{
	margin-left: 3px;
	margin-bottom: 15px;
	background: #d4d5d6;
	width: 140px;
	text-align: center;
	padding: 8px 0 4px;
	font-size: 1.4rem;
	color: #e75400;
	font-weight: bold;
	cursor: pointer;
	box-sizing: border-box;
}
.top_menu_serch .tub_area li:nth-child(3) {
	width: 180px;
}
.top_menu_serch .tub_area li:last-child {
	width: 110px;
}
.top_menu_serch .tub_area li:hover,
.top_menu_serch .tub_area li.select
{
	background: #e75400;
	color: #fff;
	position: relative;
}
.top_menu_serch .tub_area li:hover:before,
.top_menu_serch .tub_area li.select:before{
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	left: 45%;
	bottom: -8px;
	border-top: 8px solid #e75400;
	border-right: 8px solid transparent;
	border-left: 8px solid transparent;
}
/*ここまで*/
.top_menu_serch .page_contents .serch_btn ul {
	display: flex;
}
.top_menu_serch .page_contents .serch_btn ul li {
	margin-right: 12px;
}
.top_menu_serch .page_contents .serch_btn ul li:first-child {
	margin-left: 0;
}
.top_menu_serch .page_contents .serch_btn ul li a {
	display: block;
}
.top_menu_serch .page_contents .serch_btn ul li a figure span {
	display: block;
	/*width: 100px;*/
	/*height: 100px;*/
	width: 86px;
	height: 86px;
	border-radius: 10px;
	box-shadow: 0px 5px #d4d4d4;
	background: #FF7F00;
}
.top_menu_serch .page_contents .serch_btn ul li a figcaption {
	text-align: center;
	font-size: 1.3rem;
	margin-top: 8px;
}
.PC_area_serch {
	display: block;
}
.SP_area_serch {
	display: none;
}
/*ランキング*/
.box_top_rank {
	display: flex;
}
.top_rank_box {
	width: 270px;
}
.top_rank_box + .top_rank_box {
	margin-left: 40px;
}
.top_rank_box h3 {
	font-size: 2rem;
	text-align: center;
	border-bottom: 2px solid #d4d4d4;
	border-left: none;
	padding-bottom: 0 0 5px 0;
	margin-bottom: 0 0 2px 0;
}
.top_rank_box ul ol {
	border-bottom: 1px dotted #d4d4d4;
	line-height: 3.6rem;
	font-size: 1.5rem;
	padding-left: 40px;
}
.top_rank_box ul ol a {
	display: block;
}
.top_rank_box ul ol.lank1 {
	background: url("../../img/rank1.svg") no-repeat 0 50%;
	background-size: 30px 24px;
}
.top_rank_box ul ol.lank2 {
	background: url("../../img/rank2.svg") no-repeat 0 50%;
	background-size: 30px 24px;
}
.top_rank_box ul ol.lank3 {
	background: url("../../img/rank3.svg") no-repeat 0 50%;
	background-size: 30px 24px;
}
.top_rank_box ul ol.lank4 {
	background: url("../../img/rank4.svg") no-repeat 0 50%;
	background-size: 30px 24px;
}
.top_rank_box ul ol.lank5 {
	background: url("../../img/rank5.svg") no-repeat 0 50%;
	background-size: 30px 24px;
}
/*活用事例*/
.top_case {
	margin-right: 30px;
}
.top_case .top_cace_title {
	font-size: 2.2rem;
	font-weight: bold;
	margin: 20px 0;
}
.top_case_box {
	box-shadow: 0 0 8px gray;
	background: #fff;
	padding: 30px;
}
.top_cace_link {
	margin-top: 20px;
}
.top_cace_link a {
	background: url("../img/icon_arrow.svg") no-repeat 0 center;
	background-size: 6px 10px;
	padding-left: 15px;
	float:right;
}
.top_cace_link a:after {
	content: "";
	display: block;
	clear: both;
}
/*お知らせ*/
.top_info_scroll{
	height: 300px; 
	overflow: auto; 
	padding: 5px; 
	border: 1px solid #ccc; 
	background: #ffffff; 
	border-radius: 6px;
}
.top_info {
	width: 1000px;
	margin: 0 auto;
}
.top_info li {
	border-bottom: 1px dotted #d4d4d4;
	padding: 15px 0;
}
.top_info .info_date{
	width: 120px;
	display: inline-block;
	vertical-align: top;
}
.top_info .info_badge {
	width: 120px;
	display: inline-block;
	background: #e75400;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
	margin-right: 20px;
	padding: 2px 0 0 0;
	vertical-align: top;
}
.top_info .info_txt {
	width: 740px;
	display: inline-block;
	vertical-align: top;
}

@media screen and (max-width: 768px) {
	.top_notice { /*メルマガ登録バナー掲載時設定*/
    	display: block;
	}
	.top_notice .bnr { /*メルマガ登録バナー掲載時設定*/
    	margin: 0 auto 30px;
}
	.top_emergency {
		width: 100%;
		margin-bottom: 30px;
	}
	h2.top {
		font-size: 2rem;
		margin-bottom: 20px;
	}
	.top_area_serch, .top_method_serch {
		width: 100%;
		min-height: auto;
		margin-bottom: 30px;
		padding: 15px;
	}
	.top_menu_serch {
		width: 100%;
		padding: 15px;
	}
	.top_area_serch h2, .top_method_serch, .top_menu_serch h2 {
		margin-bottom: 8px;
	}
	.top_menu_serch h2 {
		width: 100%;
	}
	.top_menu_serch .tub_area {
		width: 100%;
		margin-bottom: 10px;
	}
	.top_menu_serch .tub_area ul {
		width: 100%;
	}
	.top_menu_serch .tub_area li {
		width: 25%;
		padding: 2px 3px;
		box-sizing: border-box;
	}
	.top_menu_serch .tub_area li:hover:before,
	.top_menu_serch .tub_area li.select:before{
		display: none;
	}
	.top_menu_serch .tub_area li:nth-child(3) {
		width: 25%;
	}
	.top_menu_serch .tub_area li:last-child {
		width: 25%;
	}
	.top_menu_serch .page_contents .serch_btn ul {
		flex-wrap: wrap;
	}
	.top_menu_serch .page_contents .serch_btn ul li {
		margin-right: 2%;
		width: 23.5%;
	}
	.top_menu_serch .page_contents .serch_btn ul li:nth-child(4n) {
		margin-right: 0;
	}
	.top_menu_serch .page_contents .serch_btn ul li a {
		margin-bottom: 5px;
	}
	.top_menu_serch .page_contents .serch_btn ul li a figure span {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: auto;
	}
	.top_menu_serch .page_contents .serch_btn ul li a figure span:before {
		content:"";
		display: block;
		padding-top: 100%;
	}
	.PC_area_serch {
		display: none;
	}
	.SP_area_serch {
		display: block;
		background: url("../img/icon_arrow.svg") no-repeat 96% 50%;
		background-size: 6px 10px;
	}
	.SP_area_serch select{
		outline:none;
		-moz-appearance: none;
		text-indent: 0.01px;
		text-overflow: '';
		background: none transparent;
		vertical-align: middle;
		font-size: inherit;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		appearance: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		height: 40px;
		padding: 8px 12px;
		border:1px solid #ddd;
		width:100%;
		border-radius:3px;
	}
	.SP_area_serch  select option{
		background-color: #fff;
	}
	.SP_area_serch  select::-ms-expand {
		display: none;
	}
	.SP_area_serch select:-moz-focusring { 
		color: transparent; 
		text-shadow: 0 0 0 #828c9a;
	}
	/*ランキング*/
	.top_rank_box h3 {
		font-size: 1.8rem;
	}
	.box_top_rank {
		flex-wrap: wrap;
	}
	.top_rank_box {
		width:48.5%;
		margin-right: 3%;
		margin-bottom: 20px;
	}
	.top_rank_box + .top_rank_box {
		margin-left: 0;
	}
	.top_rank_box:nth-child(2n) {
		margin-right: 0;
	}
	.top_info {
		width: 100%;
	}
	.top_info li {
		border-bottom: 1px dotted #d4d4d4;
		padding: 15px 0;
	}
	.top_info .info_date{
		width: 120px;
	}
	.top_info .info_badge {
		width: 120px;
	}
	.top_info .info_txt {
		width: 100%;
        margin-top: 10px;
	}
	/*導入事例*/
	.top_case {
		margin-right: 0;
	}
	.top_case .top_cace_title {
		font-size: 2rem;
	}
	.top_case_box {
		padding: 20px;
	}
	.top_case_img {
		margin-top: 30px;
	}
}
@media screen and (max-width: 560px) {
	/*ランキング*/
	.box_top_rank {
		flex-direction: column;
	}
	.top_rank_box {
		width: 100%;
	}
}
@media screen and (max-width: 375px) {
	/*エリアで探す*/
	.top_menu_serch .page_contents .serch_btn ul li {
		margin-right: 2%;
		width: 32%;
	}
	.top_menu_serch .page_contents .serch_btn ul li:nth-child(4n) {
		margin-right: 2%;
	}
	.top_menu_serch .page_contents .serch_btn ul li:nth-child(3n) {
		margin-right: 0;
	}
	/*導入事例*/
	.top_case_inner {
		flex-direction: column;
	}
	.top_case_inner p {
		width: 100%;
		padding: 4% 4% 2% 4%;
		box-sizing: border-box;
	}
	.top_case_inner picture {
		width: 100%;
		min-height: 0%;
	}
}


/*2階層以下共通レイアウト--------------------------------------------*/

/*パンくずリスト*/
.breadcrumb-list ul {
	margin: 12px 0 30px 0;
}
.breadcrumb-list ul li {
	display: inline-block;
	font-size: 1.3rem;
}
.breadcrumb-list ul li::before {
	padding: 0 4px 0 8px;
	content: ">";
}
.breadcrumb-list ul li:first-child::before {
	padding: 0;
	content: "";
}
.breadcrumb-list ul li a {
	color: #e75400;
}
.breadcrumb-list ul li a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 768px) {
	.breadcrumb-list ul {
		margin: 10px 0 20px 0;
	}
}
/*カテゴリーリストメニュー*/
.category_nav ul {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}
.category_nav ul li + li {
	/*margin-left: 90px;*/
	margin-left: 80px;
}
.category_nav ul li a {
	display: block;
	padding: 0 5px;
	position: relative;
}
.category_nav ul li a::after {
	position: absolute;
	bottom: -8px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #e75400;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
}
.category_nav ul li a:hover::after {
	bottom: -4px;
	opacity: 1;
	visibility: visible;
}
.category_nav ul li.active a::after {
	bottom: -4px;
	opacity: 1;
	visibility: visible;
}
@media screen and (max-width: 768px) {
	.category_nav ul {
		display: block;
		width: 100%;
	}
	.category_nav ul:after {
		display: block;
		content: " ";
		clear: both;
	}
	.category_nav ul li + li {
		margin-left: 0;
	}
	.category_nav ul li a {
		display: block;
		float: left;
		background: url("../img/icon_arrow.svg") no-repeat 6px 48%;
		background-size: 6px 10px;
		padding-left: 18px;
		width: 48%;
		line-height: 3rem;
		border: 1px solid #d4d4d4;
		margin: 2px;
		box-sizing: border-box;
	}
	/*.category_nav ul li.size_b a {
		width: 280px;
	}*/
	.category_nav ul li.active a {
		background:  #f7dacb url("../img/icon_arrow.svg") no-repeat 6px 48%;
		background-size: 6px 10px;
		border: 1px solid #d4d4d4;
		color: #e75400;
	}
	.category_nav ul li a:hover::after {
		visibility: hidden;
	}
	.category_nav ul li.active a::after {
		visibility: hidden;
	}
}
@media screen and (max-width: 375px) {
	.category_nav ul {
		flex-direction: column;
	}
	.category_nav ul li a {
		width: 100%;
	}
	.category_nav ul li.size_b a {
		width: 100%;
	}
}

/*テーブル Type1----------------------------------*/
table.table_type1 {
	width:100%;
}
table.table_type1 thead th {
	padding:5px 8px;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;
}
table.table_type1 tbody td {
	padding: 6px 8px;
	border-bottom: #ccc solid 1px;
	box-sizing: border-box;
	vertical-align: middle;
}
table.table_type1 tbody td.next:hover{
	background: #FDEEE5;
}
table.table_type1 tbody td.category {
	font-weight: bold;
}
table.table_type1 tbody td span.sub_menu {
	display: block;
	font-size: 1.2rem;
}
table.table_type1 tbody td span.menu {
	display: block;
	font-weight: bold;
}
table.table_type1 tbody td span.target {
	display: block;
	font-size: 1.4rem;
}
table.table_type1 tbody td span.not-held {
	display: block;
	color: #0671b8;
	font-size: 1.4rem;
}
table.table_type1 tbody td span.not-held a{
	color: #0671b8 !important;
	text-decoration: underline;
}
table.table_type1 tbody td span.not-held a:hover{
	color: #e75400 !important;
}
table.table_type1 tbody td span.remote:before{
	content: "";
    display:inline-block;
	width:105px;
    height:22px;
    background: url("../img/remote.png") no-repeat;
    position:relative;
    top: 4px;
}
table.table_type1 tbody td span.gather:before{
	content: "";
	display:inline-block;
	width:105px;
    height:20px;
    background: url("../img/gather.png") no-repeat;
    position:relative;
    top: 4px;
}
table.area_table tbody td.category,
table.product_table tbody td.category {
	width: 200px;
}
/*エリアテーブル*/
table.area_table tbody td:last-child {
	width: 320px;
}
/*商品テーブル*/
table.product_table tbody td.category {
	width: 200px;
}
table.product_table tbody td.category .step {
	display: inline-block;
	background: #e75400;
	text-align: center;
	font-size: 1.2rem;
	color: #fff;
	width: 86px;
	padding: 4px 0 1px 0;
	margin-right: 12px;
}
/*リフォームテーブル*/
table.reform_table tbody td.category {
	width: 100px;
}
/*カリキュラムテーブル*/
table.curriculum_table tbody td {
	text-align: center;
}
table.curriculum_table tbody td .curriculum_btn {
	text-align: center;
}
table.curriculum_table tbody td .curriculum_btn a {
	display: block;
	text-align: center;
	background: #7F8283;
	border-radius: 5px;
	margin: 0 auto;
	padding: 4px 0 1px 0;
	color: #fff;
	width: 240px;
	font-weight: bold;
}
table.curriculum_table tbody td .curriculum_btn a:hover {
	opacity: 0.6;
}
table.curriculum_table tbody td .curriculum_btn_none {
	display: block;
	text-align: center;
	background: #B2B4B5;
	border-radius: 5px;
	margin: 0 auto;
	padding: 4px 0 1px 0;
	color: #fff;
	width: 240px;
	font-weight: bold;
}
table.curriculum_table tbody td .curriculum_btn_reform {
	display: flex!important;
	justify-content: center;
}
table.curriculum_table tbody td .curriculum_btn_reform .curriculum_btn + .curriculum_btn {
	margin-left: 10px;
}

.app {
	margin-bottom: 15px;
}
.app span{
	display: block;
	font-size: 1.2rem;
	color: #e75400;
}
.add {
    margin-top: 50px;
}
.add ul.area{
    display: flex;
    flex-wrap: wrap;
    margin-left: 15px;
    border: dotted 1px #ccc;
    padding: 15px;
}
.add ul.area li{
    display: flex;
    margin-right: 50px;
}
.add ul.area li:last-child{
    margin-right: 0;
}

@media screen and (max-width: 768px) {
	table.table_type1 thead {
		display:none;
	}
	table.table_type1 tbody tr + tr {
		border-top: #ccc solid 1px;
	}
	table.table_type1 tbody tr + tr:before {
		content: "";
		display: block;
		margin-bottom: 5px;
	}
	table.table_type1 tbody tr:last-child {
		border-bottom: #ccc solid 1px;
	}
	table.table_type1 tbody td {
		display:flex;
		padding: 5px 0 10px 0;
		border: none;
	}
	table.table_type1 tbody td.next:hover{
		background: none;
}
	table.table_type1 tbody td.category {
		border-bottom: #ccc solid 1px;
		text-align: center;
		margin-bottom: 5px;
		margin-top: 30px;
	}
	table.table_type1 tbody tr:first-child td.category {
		margin-top: 0;
	}
	table.table_type1 tbody td.category::before {
		min-width: 0;
		background: none;
		padding: 0;
		margin: 0;
	}
	table.table_type1 tbody td:first-child {
		width: 100%;
	}
	table.area_table tbody td:last-child {
		width: 100%;
	}
	table.table_type1 tbody td::before {
		content: attr(label);
		min-width: 110px;
		display:block;
		background: #f4f4f4;
		padding: 3px 5px;
		margin-right: 5px;
		font-size: 1.4rem;
		box-sizing: border-box;
	}
	table.table_type1 tbody td .td_inner {
		display: block;
		flex-basis: 100%;
	}
	table.table_type1 tbody td span.not-held a{
		color: #e75400 !important;
	}
    table.table_type1 tbody td span.remote:before{
	display:block;
    margin-bottom: 5px;
    }
    table.table_type1 tbody td span.gather:before{
	display:block;
    margin-bottom: 5px;
    }
	/*リフォームテーブル*/
	table.reform_table tbody td.category img {
		width:86px;
	}
	/*カリキュラムテーブル*/
	table.curriculum_table tbody td {
		text-align: left;
	}
	table.curriculum_table tbody td:last-child::before {
		min-width: 0;
		background: none;
		padding: 0;
		margin: 0;
	}
    .add ul.area{
        padding: 20px 15px 0 15px;
    }
    .add ul.area li{
        margin-right: 20px;
    }
    .add ul.area li span{
        margin-left: 10px;
    }
}
@media screen and (max-width: 560px) {
	table.curriculum_table tbody td .curriculum_btn_reform {
		flex-direction: column;
	}
	table.curriculum_table tbody td .curriculum_btn_reform .curriculum_btn + .curriculum_btn {
		margin-left: 0;
		margin-top: 10px;
	}
}

/*テーブル Type2----------------------------------*/
table.table_type2 {
	width:100%;
}
table.table_type2 th {
	background: #f4f4f4;
	padding: 5px;
	width: 120px;
	vertical-align: middle;
	border-bottom: 2px solid #fff;
}
table.table_type2 td {
	padding: 5px 10px;
	vertical-align:middle;
}
table.table_type2 tbody td span.target {
	display: block;
}
table.table_type2 tbody td span.target span {
	display: inline-block;
	font-size: 1rem;
	text-align: center;
	color: #0671b8;
	border: 1px solid #0671b8;
	padding: 2px 5px;
}
table.table_type2 tbody td span.target span + span {
	margin-left: 8px;
}

/*テーブル Type3----------------------------------*/
table.table_type3 {
	width:100%;
}
table.table_type3 .none{
	display: none;
}
table.table_type3 thead th,
table.table_type3 tbody td {
	padding:5px 8px;
	border: #ccc solid 1px;
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	table.table_type3 thead {
		display:none;
	}
	table.table_type3 tbody td {
		display:flex;
		width: 100%;
		border-bottom: none;
	}
	table.table_type3 tbody td:last-child {
		border: #ccc solid 1px;
	}
	table.table_type3 .none{
		display:flex;
	}
	table.table_type3 tbody td::before {
		content: attr(label);
		min-width: 110px;
		display:block;
		padding: 3px 5px;
		margin-right: 5px;
		font-size: 1.4rem;
		box-sizing: border-box;
		color: #000;
		font-weight: normal;
	}
	table.table_type3 tbody td .td_inner {
		display: block;
		flex-basis: 100%;
	}
	table.table_type3 tbody tr:after {
		content: "";
		display: block;
		margin-bottom: 20px;
	}
}
/*2階層インデックス*/
.icon_nav ul {
	display: flex;
	flex-wrap: wrap;
}
.icon_nav ul li {
	margin-right: 20px;
	margin-bottom: 20px;
}
.icon_nav ul li:nth-child(4n) {
	margin-right: 0;
}
.icon_nav ul li a {
	display: block;
	padding: 5px 10px;
	border: 1px solid #d4d5d6;
	width: 285px;
	box-sizing: border-box;
}
.icon_nav ul li a figure {
	display: flex;
	align-items: center;
}
.icon_nav ul li a figure span {
	display: block;
	width: 70px;
	height: 70px;
	border-radius: 8px;
	margin-right: 10px;
	background: #FF7F00;
}
.icon_nav ul li a figcaption {
	font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
	.icon_nav ul li {
		margin-right: 2%;
		width:49%;
		box-sizing: border-box;
	}
	.icon_nav ul li:nth-child(2n) {
		margin-right: 0;
	}
	.icon_nav ul li a {
		width:100%;
	}
}
@media screen and (max-width: 500px) {
	.icon_nav ul li {
		display: block;
		margin-right: 0;
		width:100%;
	}
}

/*研修詳細-----------------------------*/
.program_title .sub_title {
	font-weight: bold;
}
.program_title .sub_title .sub_title_icon {
	background: #e75400;
	padding: 2px 6px 1px 6px;
	margin-right: 10px;
	text-align: center;
	color: #fff;
	font-size: 1.2rem;
}
.program_title .sub_title .sub_title_icon-remote,
.program_title .sub_title .sub_title_icon-gather{
	padding: 2px 6px 1px 6px;
	margin-right: 10px;
	text-align: center;
	color: #fff;
	font-size: 1.2rem;
}
.program_title .sub_title .sub_title_icon-remote{
	background: #00AAAA;
}
.program_title .sub_title .sub_title_icon-gather{
	background: #ED7F40;
}
.program_title h1 img {
	width: 86px;
	vertical-align: top;
	margin-top: 7px;
	margin-right: 7px;
}
.program_title h1 span {
	display: block;
	font-weight: normal;
	font-size: 1.6rem;
	margin-top: 3px;
}
.closed-info{
	color: #D90000;
	font-weight: bold;
	margin-bottom: 30px;
}
.details_wrap {
	display: flex;
	margin-bottom: 30px;
}
.details_wrap .details_img {
	margin-left: 30px;
}
.details_wrap .table_type2 {
	min-width: 795px;
}
.other_schedule {
	border: 2px solid #cc0000;
	padding: 5px;
	width: 300px;
	margin: 0 auto 20px auto;
	text-align: center;
}
.other_schedule a {
	color: #cc0000;
}
.other_schedule a:hover {
	text-decoration: underline;
}
.comingsoon {
	border: 2px solid #cc0000;
	padding: 5px;
	width: 500px;
	margin: 0 auto 20px auto;
	text-align: center;
}
.attention {
	color: #cc0000;
}
.price_pp{
	display: block;
	text-align: center;
	font-size: 1.2rem;
}
.price2023{
	display: block;
	padding: 2px 1px;
	margin: 5px;
	background-color: #cc0000;
	color: #fff;
	text-align: center;
	font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
	.details_wrap {
		flex-direction: column;
	}
	.details_wrap .details_img {
		margin-left: 0;
		margin-top: 20px;
	}
	.details_wrap .table_type2 {
		min-width: 0;
	}
	.comingsoon {
	width: 300px;
}
}
/*研修カリキュラム-----------------------------*/
h2.curriculum {
	background: none;
	padding: 0;
	text-align: center;
	padding-top: 30px;
	border-top: 1px solid #d4d5d6;
}
.curriculum_wrap {
	display: flex;
	justify-content: center;
	margin: 0 auto 30px auto;
}
.curriculum_wrap .days_wrap + .days_wrap {
	margin-left: 60px;
}
.curriculum_wrap .days_inner:after {
	content: "";
	display: block;
	clear: both;
}
.curriculum_wrap .days_inner + .days_inner {
	margin-top: 20px;
}
.curriculum_wrap .days_inner .date {
	font-weight: bold;
}
.curriculum_wrap .days {
	margin-left: 25px;
}
.curriculum_wrap .days dt {
	margin-right: 20px;
	width: 120px;
	clear: both;
	float: left;
}
.curriculum_wrap .days dd {
	float: left;
	width: 405px;
}
.curriculum_wrap .days .menu dt{
	margin-right: 0;
	width: 100%;
}
.curriculum_wrap .days .menu dt + dt{
	margin-top: 0.5em;
}
.curriculum_wrap .days .menu dd{
	margin: 0 0 0.5em 1em;
}
.curriculum_wrap .days .menu dd:last-child{
	margin-bottom: 0;
}
.curriculum_note_wrap {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}
.curriculum_note_wrap .curriculum_note_inner p{
	font-size: 1.2rem;
	margin-bottom: 5px;
}
@media screen and (max-width: 768px) {
	.curriculum_wrap {
		flex-direction: column;
	}
	.curriculum_wrap .days_wrap + .days_wrap {
		margin-left: 0;
		margin-top: 20px;
	}
	.curriculum_wrap .days {
		margin-left: 5px;
	}
	.curriculum_wrap .days dt {
		float: none;
		width: 100%;
	}
	.curriculum_wrap .days dd {
		float: none;
		margin-left: 4%;
		width: 96%;
	}
	.curriculum_note_wrap {
		display: block;
	}
}
/*研修日程-------------------------------*/
.place_title {
	display: flex;
}
.map_btn a {
	display: block;
	font-size: 1.2rem;
	font-weight: normal;
	color: #e75400;
	border: 1px solid #e75400;
	text-align: center;
	width: 80px;
	height: 20px;
	padding-top: 4px;
	margin-left: 20px;
}
table + .place_title {
	margin-top: 30px;
}
@media screen and (max-width: 768px) {
	.place_title {
		flex-direction: column;
	}
	.place_title h3 {
		margin-bottom: 10px;
	}
	.map_btn a {
		margin-left: 0;
		margin-bottom: 30px;
	}
}
/*▼個別ページレイアウト----------------------*/

/*エリアから探す----------------------------*/
.area_title {
	background: none;
	font-size: 2.4rem;
	margin-bottom: 20px;
	font-weight: bold;
}
/*お申込の流れ・活用事例-------------------------------*/
.academy_main {
	text-align: center;
}
.academy_case_box {
	width: 270px;
}
.academy_case_box .academy_case_title {
	font-size: 2.2rem;
	font-weight: bold;
	text-align: center;
	margin: 5px 0;
}
.academy_case_box img {
	width:100%;
}
.academy_case_box p {
	padding: 10px;
	font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
	.academy_main img {
		width: 100%;
	}
	.academy_case_box {
		width: 100%;
	}
	.academy_case_box .academy_case_title {
		font-size: 1.6rem;
	}
	.academy_case_inner {
		display: flex;
		flex-direction: row-reverse;
	}
	.academy_case_inner p {
		width: 49%;
		margin-right: 2%;
		display: inline-block;
	}
	.academy_case_inner picture {
		width: 49%;
		margin-right: 2%;
	}
}
@media screen and (max-width: 375px) {
	.academy_case_inner {
		flex-direction: column;
	}
	.academy_case_inner p {
		width: 100%;
		padding: 4% 4% 2% 4%;
		box-sizing: border-box;
	}
	.academy_case_inner picture {
		width: 100%;
		min-height: 0%;
	}
}
/*カスタマイズ研修-------------------------------*/
.custom_case_box {
	width: 370px;
	padding: 20px;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}
.custom_case_box + .custom_case_box {
	margin-left: 45px;
}
.custom_case_box + .custom_case_box:after {
	position: absolute;
	top: 45%;
	left: -35px;
	display: block;
	content: "";
	background: url("../img/icon_triangle.svg") no-repeat;
	background-size: 20px 40px; 
	width: 20px;
	height: 40px;
}
.custom_case_box li {
	text-align: center;
	position: relative;
	margin-bottom: 15px;
}
.custom_case_box li + li:before {
	position: absolute;
	top: -18px;
	left: 50%;
	display: block;
	content: " ";
	background: url("../img/icon_triangle.svg") no-repeat;
	background-size: 10px 20px; 
	transform: rotate( 90deg );
	width: 10px;
	height: 20px;
}
.custom_case_box .step {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.custom_case_box .step img {
	width: 60px;
	margin-right: 20px;
}
.custom_case_box .step p {
	color: #e75400;
	font-weight: bold;
	font-size: 2.4rem;
}
.custom_case_box picture img {
	margin-top: 10px;
}
.custom_table td {
	width: 20%;
	vertical-align: middle;
}
.custom_table td.custom_menu {
	color: #e75400;
	font-weight: bold;
}

@media screen and (max-width: 768px) {
	.custom_case_box {
		width: 100%;
	}
	.custom_case_box + .custom_case_box {
		margin-left: 0;
		margin-top: 45px;
	}
	.custom_case_box + .custom_case_box:after {
		top: -43px;
		left: 50%;
		background-size: 20px 40px; 
		width: 20px;
		height: 40px;
		transform: rotate( 90deg );
	}
	.custom_case_box:nth-child(2) picture img {
		width: 137px;
		height: 140px;
	}
	.custom_case_box:nth-child(3) picture img {
		width: 103px;
		height: 140px;
	}
}

/*受講までの流れ-------------------------------*/
.flow_case_box {
	width: 370px;
	padding: 20px;
	box-sizing: border-box;
	position: relative;
	text-align: center;
}
.flow_case_box + .flow_case_box {
	margin-left: 45px;
}
.flow_case_box li {
	text-align: center;
	position: relative;
	margin-bottom: 15px;
}
.flow_case_box li + li:before {
	position: absolute;
	top: -18px;
	left: 50%;
	display: block;
	content: " ";
	background: url("../img/icon_triangle.svg") no-repeat;
	background-size: 10px 20px; 
	transform: rotate( 90deg );
	width: 10px;
	height: 20px;
}
.flow_case_box .step {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
}
.flow_case_box .step img {
	width: 60px;
	margin-right: 20px;
}
.flow_case_box .step p {
	color: #e75400;
	font-weight: bold;
	font-size: 2.4rem;
}
.flow_case_box picture img {
	margin-top: 10px;
}
.goodliving span {
	background: #e75400;
	padding: 8px 0;
	display: block;
}
.goodliving span img {
	width: 70px;
	height: 35px;
}
.general span {
	background: #0671b8;
	padding: 15px 0;
	color: #fff;
	font-weight: bold;
	font-size: 1.2rem;
	display: block;
}
.other_c span {
	background: #89bd28;
	padding: 15px 0;
	color: #fff;
	font-weight: bold;
	font-size: 1.1rem;
	display: block;
}
.flow_case_box .box_conteiner .goodliving,
.flow_case_box .box_conteiner .general,
.flow_case_box .box_conteiner .other_c {
	width: 100px;
	margin-right: 10px;
}
.flow_case_box .reform_title {
	background: #eee;
	font-weight: bold;
	padding: 2px 10px;
	margin: 20px 0 10px 0;
}
.flow_case_box .box_conteiner + .box_conteiner {
	padding-top: 10px;
	margin-top: 10px;
	border-top: #ccc solid 1px;
}
.flow_case_box .box_conteiner:nth-child(3) {
	margin-bottom: 10px;
}
.flow_case_box .box_conteiner p {
	width: 220px;
}
.flow_case_box:nth-child(2) p {
	text-align: left;
}
p.goodliving,
p.general,
p.other_c {
	text-align: center !important;
}
/*数字*/
.nam {
	display: flex;
	margin-bottom: 10px;
	flex-basis: auto;
}
.nam:before {
	display: block;
	content: "";
	width: 25px;
	height: 25px;
	margin-right: 10px;
	flex-basis: 25px;
	flex-shrink: 0;
}
.nam1:before {
	background: url(../../academy/img/nam1.svg);
}
.nam2:before {
	background: url(../../academy/img/nam2.svg);
}
.nam3:before {
	background: url(../../academy/img/nam3.svg);
}
.nam4:before {
	background: url(../../academy/img/nam4.svg);
}
/*none*/
.flow_note {
	border: 5px solid #f9d4bf;
	padding: 15px 15px 8px 15px;
}
.flow_note dl {
	display: flex;
	flex-wrap: wrap;
}
p + .flow_note {
	margin-top: 10px;
}
.flow_note dt {
	margin-right: 20px;
	margin-bottom: 10px;
	padding-top: 5px;
	background: #f9d4bf;
	color: #e75400;
	font-weight: bold;
	text-align: center;
	flex-basis: 60px;
	flex-shrink: 0;
}
.flow_note dd {
	margin-bottom: 10px;
	padding-top: 5px;
	flex-basis: 1080px;
}
.flow_table {
	margin-bottom: 20px;
}
.flow_table th {
	font-weight: bold;
	color: #e75400;
}
.flow_table td:first-child {
	text-align: center;
	vertical-align: middle;
}
.flow_table .goodliving,
.flow_table .general,
.flow_table .other_c {
	width: 140px;
}
.cancel_table th {
	font-weight: bold;
	color: #e75400;
}
.cancel_table td:nth-child(2) {
	text-align: center;
}
.cancel_box div {
	width: 585px;
}
.cancel_box div + div {
	margin-left: 30px;
}
.flow_contact {
	margin-top: 10px;
	margin-bottom: 30px;
}
.flow_contact li {
	display: inline-block;
	margin-right: 5px;
}
.flow_contact li a {
	display: block;
	background: #e75400;
	padding: 5px 20px;
	border-radius: 8px;
	color: #fff;
	font-weight: bold;
}
.flow_contact li a:hover {
	opacity: 0.7;
}
.privacy,
.terms {
	border: 1px solid #ccc;
	padding: 30px 20px 20px;
	margin: 0 auto;
	width: 1000px;
	box-sizing: border-box;
}
.privacy p + p {
	margin-top: 2em;
}
.privacy ol {
	margin: 10px 0 10px 25px;
	list-style-type: lower-latin;
}
.terms p {
	margin-top: 2em;
}
.terms ul {
	margin: 10px 0 10px 0px;
	list-style-type: none;
}
.terms ul li{
	margin-bottom: 5px;
}
.terms ol {
	margin: 10px 0 10px 25px;
	list-style-type: decimal;
}
.terms ol li{
	margin-bottom: 5px;
}
.terms ol li > ol {
	margin: 10px 0 10px 25px;
	list-style-type: none;
}
.terms ol li > ol li{
	counter-increment: cnt;
}
.terms ol li > ol li::before {
	content: "(" counter(cnt) ") ";
	display: inline-block;
	margin-left: -3.5rem;
	width: 3.5rem;
}
.privacy h2,
.terms h2{
	padding: 0;
	text-align: center;
	background: none;
}
@media screen and (max-width: 768px) {
	.privacy,
	.terms{
		width: 100%;
	}
	.flow_case_box {
		width: 100%;
	}
	.flow_case_box {
		margin-left: 0 !important;
		margin-top: 30px;
	}
	.flow_case_box:nth-child(3) picture img {
		width: 137px;
		height: 140px;
	}
	.flow_table td {
		display: block !important;
		border: none !important;
		padding: 5px 0 !important;
	}
	.flow_table td:before {
		flex-basis: auto;
		background: #d4d5d6;
		font-weight: bold;
		margin-bottom: 5px;
		font-size: 1.6rem;
	}
	.flow_table td:first-child:before {
		background: none;
		margin: 0;
		padding: 0;
		clear: both !important;
	}
	.flow_table td:first-child {
		display: flex;
	}
	.flow_table td:first-child p:nth-child(2) {
		text-align: left;
	}
	.flow_note dt {
		flex-basis: 15%;
		margin-right: 5%;
		padding: 3px 2%;
		box-sizing: border-box;
	}
	.flow_note dd {
		flex-basis: 76%;
	}
	.cancel_box .flow_note {
		width: 100%;
		box-sizing: border-box;
	}
	.cancel_box div {
		width: 100%;
	}
	.cancel_box div + div {
		margin-left: 0;
	}
	.cancel_table tbody td:before {
		min-width: 180px;
		width: 180px !important;
		background: #eee;
	}
	.cancel_table td:nth-child(2) {
		text-align: left;
	}
}
@media screen and (max-width: 500px) {
	.flow_contact li {
		display: block;
		margin-right: 0px;
		margin-bottom: 10px;
	}
	.flow_contact li a {
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}
/*faq--------------------------------------------------------*/
.faq dt {
	background: #efefef;
	padding: 2px 28px 2px 42px;
	margin-bottom: 10px;
	position: relative;
	text-indent: -1.6rem;
	cursor: pointer;
}
.faq dt::before {
	display: inline-block;
	content: "Q";
	color: #e75400;
	font-weight: bold;
	font-size: 2.2rem;
	margin-right: 15px;
}
.faq dt.active::after {
	content:"";
	display:inline-block;
	width:10px;
	height:6px;
	background: url(../img/icon_close.svg) no-repeat center right;
}
.faq dt::after {
	position: absolute;
	top: 48%;
	left: 96%;
	content: "";
	display:inline-block;
	width:10px;
	height:6px;
	background: url(../img/icon_open.svg) no-repeat center right;
}
.faq dd {
	padding: 0 10px 10px 10px;
	text-indent: -1.6rem;
	margin-left: 33px;
}
.faq dd::before {
	display: inline-block;
	content: "A";
	color: #e75400;
	font-weight: bold;
	font-size: 2.2rem;
	margin-right: 10px;
}
.faq + h3 {
	margin-top: 50px;
}
.faq dd a {
	color: #e75400 !important;
}
.faq dd a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 450px) {
	.faq dt::after {
		left: 94%;
	}
}
/*メールマガジン-------------------------------------*/
.mailmagazine {
	border: 10px solid #f9d4bf;
	padding: 30px;
}
.mailmagazine h2 {
	color: #e75400;
	font-size: 3.6rem;
	background: none;
	padding: 0;
	margin-bottom: 20px;
}
.mailmagazine .mail_txt {
	width: 730px;
	margin-right: 40px;
}
.mailmagazine .mail_txt p {
	margin-bottom: 20px;
}
.mailmagazine .mail_img {
	width: 326px;
	padding-right: 44px;
}
.mailmagazine .mail_img img {
	width: 100%;
	margin-top: 60px;
}
.mailmagazine_btn {
	margin-top: 20px;
	margin-bottom: 30px;
}
.mailmagazine_btn a {
	display: block;
	background: #e75400;
	width: 640px;
	border-radius: 5px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 8px 0;
	margin: 0 auto;
}
.mailmagazine_btn a:hover {
	opacity: 0.7;
}
.mailmagazine_back_link {
	background: url("../img/icon_arrow.svg") no-repeat 0 center;
	background-size: 6px 10px;
	padding-left: 15px;
}
.mailmagazine_back {
	width: 1000px;
	margin: 0 auto;
}
.mailmagazine_back li a {
	display: flex;
	border-bottom: 1px solid #eee;
	padding: 5px 0;
}
.mailmagazine_back li .date {
	display: block;
	margin-right: 15px;
}
.mailmagazine_back li .title {
	display: block;
}

@media screen and (max-width: 768px) {
	.mailmagazine {
		flex-direction: column;
		padding: 15px;
	}
	.mailmagazine h2 {
		font-size: 2.2rem;
	}
	.mailmagazine .mail_txt {
		width: 100%;
		margin-right: 0;
	}
	.mailmagazine .mail_img {
		width: 100%;
		padding-right: 0;
	}
	.mailmagazine .mail_img {
		width: 80%;
		margin: 20px auto 0 auto;
	}
	.mailmagazine .mail_img img {
		margin-top: 0;
	}
	.mailmagazine_btn a {
		width: 100%;
		padding: 8px 10px;
		margin: 0 auto;
		box-sizing: border-box;
	}
	.mailmagazine_back {
		width: 100%;
	}
	.mailmagazine_back li a {
		flex-direction: column;
	}
	.mailmagazine_back li .date {
		width: 100%;
		margin-right: 0;
	}
	.mailmagazine_back li .title {
		width: 100%;
	}
}

/*導入事例---------------------------*/
.case_list {
	flex-wrap: wrap;
	justify-content: flex-start;
}
.case_list_box {
	width: 580px;
	position: relative;
	border: 1px solid #d4d5d6;
	padding: 15px;
	box-sizing: border-box;
	display: flex;
	margin-bottom: 20px;
}
.case_list_box .txt {
	width: 318px;
	margin-right: 30px;
}
.case_list_box .case_img_thumbnail {
	margin-bottom: 0;
	width: 200px;
}
.case_list_box .case_img_thumbnail img {
	width: 100%;
}
.case_list_box:nth-child(odd) {
	margin-right: 40px;
}
.cace_list_title {
	font-weight: bold;
	margin: 10px 0;
}
.case_list_box a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.case_list_box:hover {
	background: #fce9df;
	opacity:1;
}
.cace_link {
	background: url("../img/icon_arrow.svg") no-repeat 0 center;
	background-size: 6px 10px;
	padding-left: 15px;
}
.case_main_img {
	float: right;
	margin-left: 30px;
	margin-bottom: 30px;
}
@media screen and (max-width: 768px) {
	.case_list_box {
		width: 100%;
		min-height: 0%;
		margin-bottom: 30px;
	}
	.case_list_box:nth-child(odd) {
		margin-right: 0;
	}
	.case_list_box .txt {
		width: 67%;
		margin-right: 3%;
		margin-bottom: 0;
	}
	.case_list_box .case_img_thumbnail {
		width: 30%;
		margin-top: 10px;
	}
}
@media screen and (max-width: 600px) {
	.case_list_box {
		flex-direction: column;
	}
	.case_list_box .txt {
		width: 100%;
		margin-right: 0;
	}
	.case_list_box .case_img_thumbnail {
		width: 100%;
		min-height: 0%;
	}
	.case_main_img {
		float: none;
		margin-left: 0;
	}
}

/*研修テキスト--------------------------------------------*/

.request_btn a {
	display: block;
	font-size: 20px;
	font-weight:bold;
	color: #fff;
	background: #e75400;
	text-align: center;
	width: 240px;
	padding: 8px 0;
	/* margin: 0 auto; */
	border-radius: 5px;
}
.request_btn a:hover {
	opacity: 0.8;
}
.text_table th {
	font-weight: bold;
	background-color:#999999;
	color: #ffffff;
	text-align: center;
}


/*コンタクト--------------------------------------------*/
.contact_box .contact_box_inner {
	width: 580px;
	border: 1px solid #d4d5d6;
	padding: 15px;
	box-sizing: border-box;
}
.contact_box .contact_box_inner:first-child {
	margin-right: 30px;
}


.contact_btn {
	margin-top: 20px;
	margin-bottom: 30px;
}
.contact_btn a {
	display: block;
	background: #e75400;
	width: 80%;
	border-radius: 5px;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 8px 10px;
	margin: 0 auto;
	box-sizing: border-box;
}
.contact_btn a:hover {
	opacity: 0.7;
}
#smp_form {
	width: 1200px;
}
@media screen and (max-width: 768px) {
	.contact_box .contact_box_inner {
		width: 100%;
		margin-bottom: 30px;
	}
	.contact_box .contact_box_inner:first-child {
		margin-right: 0;
	}
	.contact_btn a {
		width: 100%;
	}
	#smp_form {
		width: 98% !important;
	}
}

/*研修体系--------------------------------------------*/
.course_map {
	overflow: auto;
}
.course_map table {
	width: 1200px;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
	.course_map table {
		width: 750px;
	}
}
.course_map + h2 {
	margin-top: 50px;
}
h3 + .course_map {
	margin-bottom: 30px;
}
.course_map table.t_product {
	background: linear-gradient(90deg, #ffffff 0%, #ffffff 56%, #f4f4f4 56%, #f4f4f4 100%);
	/*background: linear-gradient(90deg, #ffffff 0%, #ffffff 70.7%, #f4f4f4 70.7%, #f4f4f4 100%);*/
}
.course_map table.t_install {
	background: linear-gradient(90deg, #ffffff 0%, #ffffff 56%, #f4f4f4 56%, #f4f4f4 100%);
}
.course_map table.t_business {
	background: linear-gradient(90deg, #ffffff 0%, #ffffff 34%, #f4f4f4 34%, #f4f4f4 56%, #ffffff 56%, #ffffff 78%, #f4f4f4 78%, #f4f4f4 100%);
}
.course_map table.t_housing {
	background: linear-gradient(90deg, #ffffff 0%, #ffffff 41.33333333333333%, #f4f4f4 41.33333333333333%, #f4f4f4 70.66666666666666%, #ffffff 70.66666666666666%, #ffffff 100%);
}
.course_map table th {
	padding: 13px 8px;
	border-bottom: 1px solid #ccc;
}
.course_map thead table th {
	padding: 10px 8px;
}
.course_map table thead th:nth-child(odd) {
	background-color: #F3A980;
}
.course_map table thead th:nth-child(even) {
	background-color: #F9D4BF;
}

.course_map table thead th.head01 {
	background-color: #FCE9DF !important;
}
.course_map table thead th.head02 {
	background-color: #F9D4BF !important;
}

.course_map table thead th.head03 {
	background-color: #bfe8e3 !important;
}

.course_map table thead th.head04 {
	background-color: #dff3f1 !important;
}

.course_map table thead th.head05 {
	background-color: #7FD1C7 !important;
}

.course_map table thead th:first-child {
	background-color: #f4f4f4;
}
.course_map table tbody th {
	background-color: #f4f4f4;
	vertical-align: middle;
}
.course_map table td {
	padding: 8px;
	border-bottom: 1px solid #ccc;
}
.course_map table td.none-b {
	border-bottom: none;
}
.course_map a.cource_btn {
	display: block;
	text-align: center;
	padding: 7px 0px;
	border-radius: 5px;
	text-decoration: none;
	line-height: 1.2 !important;
}
.course_map .-remote {
	border: 2px solid #00aaaa;
	font-weight: bold;
	background-color: #fff;
	color: #00aaaa;
}
.course_map a:hover.-remote {
	background-color: #e5f2f2;
}
.course_map .none-a {
	display: block;
	text-align: center;
	padding: 5px 0px;
	border-radius: 5px;
	text-decoration: none;
	border: 1px dashed #7F8283;
	color: #7F8283;
}
.course_map .-local {
	border: 2px solid #e75400;
	font-weight: bold;
	background-color: #fff;
	color: #e75400;
}
.course_map a:hover.-local {
	background-color: #FDEEE5;
}
.course_map .ex_list {
	margin-bottom: 30px;
}
.course_map .ex_list li {
	display: inline-block;
	margin-bottom: 5px;
}
.course_map .ex_list li a {
	padding: 3px 8px;
	cursor: default;
	font-size: 1.4rem;
}
.course_map .ex_list li a:hover {
	background: #fff;
}
.course_map .semester {
	padding: 2px 10px 1px 10px;
	text-align: center;
	background: #d7d2cb;
	color: #000;
	font-size: 1.2rem;
}
.course_map .term {
	margin-bottom: 30px;
}
.course_map .term li {
	display: inline-block;
	margin: 0 25px 5px 0;
}
.course_map .term li .semester {
	margin-right: 5px;
	font-weight: bold;
}
.course_map .t_business .semester {
	display: block;
	margin: 5px 5px 0;
	padding: 1px 5px 1px 5px;
}

.course_map .t_housing .semester {
	display: block;
	margin: 5px 5px 0;
	padding: 1px 5px 1px 5px;
}

