body{margin:0;padding:0;line-height:2rem;font-family:sans-serif;}
p,table,dl,ul,ol,hr,
h1,h2,h3,h4,h5,h6{margin-top:1rem;margin-bottom:1rem;}
img{max-width:100%;height:auto;vertical-align:bottom;border:none;}

a img{transition:0.3s;}
a:hover img{opacity:0.8;}

.center{margin-left:auto;margin-right:auto;text-align:center;}
.ta_r{text-align:right;}
.ta_l{text-align:left;}
.ofh{overflow:hidden;}
.ofa{overflow:auto;}
.tofh{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}
.w1px{width:1px;}
.w100{width:100%;box-sizing:border-box;}
.wsnr{white-space:nowrap;}
.mincho{font-family:serif;}
.dpn{display:none;}
.hide_txt{
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}

.inner_w,
.inner{max-width:1024px;margin:auto;box-sizing:border-box;}
.inner{padding:0 8px;}
.inner>*{overflow:hidden;}



.content{
	margin:50px auto;
	max-width:1000px;
	box-sizing:border-box;
}
.clr{
	color:#e91;
}
.lnkbtn{
	display:table;
	background:#000;
	color:#fff;
	text-decoration:none;
	padding:15px 30px;
	font-size:18px;
	line-height:25px;
	border:none;
	appearance:none;
	-webkit-appearance:none;
}
.mark{
	display:inline-block;
	background:#e91;
	color:#fff;
	padding:0 6px;
	font-size:13px;
	line-height:20px;
	margin-left:10px;
}
.line_txt{
	position:relative;
	text-align:right;
}
.line_txt span{
	background:#231814;
	position:relative;
	padding-left:10px;
}
.line_txt::before{
	content:"";
	position:absolute;
	width:100%;
	height:1px;
	background:rgba(240,150,20,0.5);
	left:0;
	top:50%;
}



.big{
	font-size:28px;
	line-height:50px;
	font-weight:bold;
}



.ttl{
	margin:2rem auto;
}
.ttl .subhdr{
	font-size:14px;
	line-height:20px;
	margin-bottom:0;
	font-weight:normal;
}
.ttl .hdr{
	font-size:40px;
	line-height:50px;
	margin:0;
}



.box_ttl{
	width:50%;
	border-bottom:1px solid #e69112;
	margin:1rem auto 2rem;
}
.box_ttl > *{
	margin:0;
}
.box_ttl .hdr{
	font-size:32px;
	line-height:40px;
}
.box_ttl .subhdr{
	font-size:12px;
	line-height:18px;
}



.logo_ttl{
	color:#000;
	display:table;
	padding:10px;
	padding-left:60px;
	background:url(../img/logo_only.png) center left 10px no-repeat #fff;
	background-size:40px;
}
.logo_ttl > *{
	margin:0;
}
.logo_ttl .hdr{
	font-size:32px;
	line-height:40px;
}
.logo_ttl .subhdr{
	font-size:12px;
	line-height:18px;
}



.nav{
	list-style:none;
	padding:0;
	font-size:18px;
	line-height:20px;
}
.nav span{
	display:block;
	font-size:12px;
}
.box{
	background:rgba(255,255,255,0.07);
	margin:2rem 0;
}



.dl_tbl{
	display:flex;
	flex-wrap:wrap;
	max-width:700px;
	margin:30px auto;
}
.dl_tbl dt,
.dl_tbl dd{
	margin:0 0 10px;
	padding:10px 20px;
	box-sizing:border-box;
	border:1px solid rgba(255,255,255,0.5);
}
.dl_tbl dt{
	border-right:none;
	white-space:nowrap;
}
.dl_tbl dd{
	border-left:none;
	position:relative;
}
.dl_tbl dd::after{
	content:"";
	background:rgba(255,255,255,0.5);
	width:1px;
	height:calc(100% - 20px);
	left:0;
	top:10px;
	position:absolute;
}



body{
	background:#231814;
	color:#fff;
}



#header a{
	text-decoration:none;
}
#header .hdr img{
	vertical-align:middle;
}



#footer a{
	text-decoration:none;
	color:inherit;
}
#footer .wrp .logo{
	background:#fff;
	margin:0;
}
#footer .wrp .dv{
	background:#bbb;
	color:#000;
	position:relative;
	padding:20px;
}
#footer .wrp .info{
	margin:0;
}
#footer .wrp .nav{
	display:flex;
	column-gap:20px;
	margin:0;
}
#footer .wrp .nav a{
	text-decoration:none;
	color:inherit;
}



#visual{
	background-repeat:no-repeat;
	background-position:center;
	background-size:cover;
	background-image:url('../img/visual.jpg');
	position:relative;
}
#visual .txt{
	position:absolute;
	margin:0;
	font-weight:bold;
	padding-bottom:10px;
}
#visual .txt::before{
	content:"";
	position:absolute;
	width:40%;
	height:8px;
	background:#e91;
	bottom:0;
	left:0;
}



#top_lnks .wrp{
	display:flex;
	column-gap:20px;
	justify-content:center;
}
#top_lnks .wrp small{
	display:block;
	text-align:right;
}



#top_svc .box{
	background:#fff;
	position:relative;
}
#top_svc .box .img{
	position:absolute;
}
#top_svc .txt{
	background:#333;
	padding:10px 20px;
	position:relative;
}
#top_svc .txt > *:first-child{
	margin-top:0;
}
#top_svc .txt > *:last-child{
	margin-bottom:0;
}
#top_svc .txt_1 .hdr{
	font-weight:bold;
	margin-top:10px;
}
#top_svc .txt_3 .dscr{
	font-weight:bold;
}
#top_svc .txt_1 .hdr{
	position:relative;
	padding-top:20px;
}
#top_svc .txt_1 .hdr::before{
	content:"";
	position:absolute;
	width:75%;
	height:8px;
	background:#e91;
	top:0;
	left:0;
}



#top_com .box{
	background:#fff;
	color:#000;
}



#top_rec .box{
	
}



#recruit .wrp .cell{
	border-left:6px solid #e91;
	padding-left:30px;
	margin:50px 0;
}
#recruit .box .hdr{
	font-size:25px;
	line-height:30px;
}
#recruit .wrp .cell .hdr{
	font-size:23px;
	line-height:30px;
}
#recruit .box{
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
}
#recruit .box::before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);
}
#recruit .box > *{
	position:relative;
}
#recruit_trzm_info{
	background:url(../img/recruit_1.jpg);
}
#recruit_trzm_tbl{
	background:url(../img/recruit_2.jpg);
}
#recruit_mktg_info{
	background:url(../img/recruit_3.jpg);
}
#recruit_mktg_tbl{
	background:url(../img/recruit_4.jpg);
}

#recruit .dl_tbl{
	border-left:6px solid #e91;
	margin:0;
}
#recruit .dl_tbl dt,
#recruit .dl_tbl dd{
	border:none;
	border-bottom:2px solid #e91;
}
#recruit .dl_tbl dd::after{
	background:transparent;
}



#marketing_head .inner{
	position:relative;
}
#marketing_head .inner > *{
	position:relative;
}
#marketing_head .inner .img{
	position:absolute;
	background:url(../img/recruit_4.jpg) center no-repeat;
	background-size:cover;
	top:10px;
	right:0;
	clip-path:polygon(0 0,100% 0,100% 100%,100px 100%);
}

#marketing_head .hdr{
	font-size:35px;
	line-height:70px;
}
#marketing_head .hdr span{
	background:#fff;
	color:#000;
	padding:0 10px;
}
#marketing_head .dscr{
	font-size:16px;
	line-height:40px;
}
#marketing_head .dscr span{
	background:#e91;
	padding:0 10px;
}
#svc_lnks .wrp{
	display:flex;
	column-gap:20px;
}



#marketing_results .wrp_ctt{
	display:flex;
	column-gap:20px;
}
#marketing_results .wrp_ctt .hdr{
	font-weight:bold;
	font-size:20px;
	line-height:30px;
}
#marketing_results .wrp_ctt .dscr{
	font-size:14px;
	line-height:25px;
}



#marketing_foot .wrp .big{
	background:#fff;
	color:#000;
	padding:0 10px;
}



#mktg_dtl_flow .wrp{
	display:flex;
}
#mktg_dtl_flow .wrp .cell{
	flex:1;
}
#mktg_dtl_flow .wrp .img{
	color:#000;
	font-weight:bold;
	position:relative;
	height:80px;
	background:url(../img/flow_arrow.png) center no-repeat;
	background-size:contain;
}
#mktg_dtl_flow .wrp .img span{
	position:absolute;
	width:65%;
	white-space:nowrap;
	text-align:center;
	bottom:10px;
	left:0;
}
#mktg_dtl_flow .wrp .cell:last-child .img{
	background-image:url(../img/flow_end.png);
}
#mktg_dtl_flow .wrp .cell:last-child .img span{
	left:auto;
	right:0;
	width:90%;
}
#mktg_dtl_flow .wrp .txt{
	font-size:13px;
	line-height:20px;
	padding-right:10px;
}
#mktg_dtl_flow .wrp .cell:last-child .txt{
	padding-right:0;
	padding-left:20px;
}



#mktg_dtl_plan .wrp .cell{
	padding:20px 0;
	border-bottom:1px solid #e91;
}
#mktg_dtl_plan .wrp .cell:first-child{
	border-top:1px solid #e91;
}
#mktg_dtl_plan .wrp .cell *{
	margin:0;
}
#mktg_dtl_plan .wrp .cell .itm{
	font-weight:bold;
	font-size:18px;
	line-height:30px;
}
#mktg_dtl_plan .wrp .cell .prc{
	font-size:18px;
	line-height:30px;
}
#mktg_dtl_plan .wrp .cell .dscr{
	font-size:14px;
	line-height:25px;
}



#mktg_dtl_qa .wrp .cell{
	padding:10px;
	color:#000;
}
#mktg_dtl_qa .wrp .q{
	background:#fff;
	margin-bottom:10px;
}
#mktg_dtl_qa .wrp .a{
	background:#ccc;
	margin-bottom:20px;
}







/***** form *****/
select,
textarea,
input[type=password],
input[type=tel],
input[type=url],
input[type=email],
input[type=search],
input[type=number],
input[type=reset],
input[type=text]{
	padding:10px;
	font-size:1.1rem;
	border:1px solid rgba(0,0,0,0.3);
	border-radius:5px;
	margin:1px;
	box-sizing:border-box;
	width:calc(100% - 1px);
}
input[type=reset]{
	padding:5px 15px;
	font-size:1rem;
}

/***** color *****/
.red{color:#ff0000;}
.green{color:#008000;}
.blue{color:#0000ff;}
.cyan{color:#00ffff;}
.magenta{color:#ff00ff;}
.yellow{color:#ffff00;}
