
/*-----------------------------------------------------------------------/
	Description: responsive setting
	Version: 1.0
	Author: AdTECHNICA
/*----------------------------------------------------------------------*/
/*-----------------------------------------------------------------------/
	CONTENTS
	0: COMMON
	1: LAYOUT
	2: HEADER
	3: NAVIGATION
	4: MAIN CONTENT
	5: FOOTER
	6: OTHER
/*----------------------------------------------------------------------*/
@media screen and (max-width:767px){
/*-----------------------------------------------------------------------/
	0: COMMON
/*----------------------------------------------------------------------*/
body {
	font-size: -webkit-calc(1.5rem + 2 * (100vw - 320px) / (960 - 320));
	font-size: calc(1.5rem + 2 * (100vw - 320px) / (960 - 320));
}
img {
	max-width: 100%;
	height: auto !important;
}
input[type="submit"], input[type="button"], input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="datetime"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime-local"], input[type="number"], textarea {
	-webkit-appearance: none;
	border-radius: 0;
}
input[type="text"], input[type="email"], input[type="password"], input[type="search"], input[type="tel"], input[type="url"], input[type="datetime"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime-local"], input[type="number"], input[type="range"], textarea {
	width: 100%;
	margin: 0;
	padding: 5px;
}
.sp_none {
	display: none;
}

/*-----------------------------------------------------------------------/
	1: LAYOUT
/*----------------------------------------------------------------------*/
body,
#wrp {
	min-width: inherit;
	border:none;
}
#bpt {
	display: block;
}

#wrp_hdr{min-width:100%;}

#hdr,
#gnav,
#main,
#path,
#cnt,
#maincontent,
#ftr,.ftr_cnt {
	width: 100%;
}
#snav {
	display: none;
	width: auto;
}
#wrp_maincnt {
	width: 100%;
}
/*-----------------------------------------------------------------------/
	2: HEADER
/*----------------------------------------------------------------------*/



#wrp_hdr {
	position: fixed;
	z-index: 9999;
	width: 100%;
	height:auto;
	left: 0;
}
#hdr {
	position: relative;
	padding:0;
	min-width: 100%;
}
#hdr .logo {
	position: absolute;
	padding: 0;
	left: 32%;
	top: 23px;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 60%;
	 z-index: 30;
}
#hdr .logo a {
	display: block;
}

#hdr .logo h1{
display:none;
}



#hdr .logo a {
	display: block;
}
#hdr .logo img {
	width: auto;
	height: 40px !important;
}
#hdr .hdr_nav {
	display: none;
}
/* btn_menu */

#btn_menu {
	display: inline-block;
	margin-right: auto;
	float:right;
	background: #F1F1F1;
/*padding: 0 0 7px;*/
}
#btn_menu a {
display: block;
overflow: hidden;
width: 45px;
height: 48px;
color: #A91F28;
text-align: center;
text-decoration: none;
top: 0px;
/*left: 0px;*/
padding: 11px 10px 7px;
position: relative;
}
#btn_menu span.brdr {
	display: block;
	width: 80%;
	height: 3px;
	margin: 0 auto 4px;
	background-color: #A91F28;
	transition: 0.3s;
}
#btn_menu span:nth-of-type(3) {
	margin-bottom: 0;
}
#btn_menu .active span:nth-of-type(1) {
	-webkit-transform: translate(0, 4px) rotate(-45deg);
	transform: translate(0, 4px) rotate(-45deg);
}
#btn_menu .active span:nth-of-type(2) {
	opacity: 0;
}
#btn_menu .active span:nth-of-type(3) {
	-webkit-transform: translate(0, -10px) rotate(45deg);
	transform: translate(0, -10px) rotate(45deg);
}
#btn_menu span.txt {
	display: block;
font-size:0.4em;
	white-space: nowrap;
	overflow: hidden;
	font-weight:bold;
	margin-top:2px;
}

#hdr_contact {
    font-size: 0.8em;
    position: relative;
    width:95px;
    height: auto;
}



#hdr_contact a {
    padding: 0 10px 7px;
height:auto;
}

#hdr_contact a::before{background-size:22px;}

/* sp_menu */
#sp_menu {
	width: 100%;
	clear: both;
}
#sp_menu.active {
	display: block;
	overflow-y: auto;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(255, 255, 255, 0.7);
}
#sp_menu .toggle_menu {
	transition: 0.4s max-height;
}
#sp_menu ul {
	list-style: none;
}
#sp_menu li a,
#sp_menu h6 {
	display:block;
	border-bottom:1px solid #FFF;
	padding:9px 10px;
	font-size:1.6rem;
	text-decoration:none;
	color:#FFF;
	background-color:#666;
	font-weight: normal;
}
#sp_menu li ul {
	display: block;
}
#sp_menu li ul li a {
	border-bottom:1px solid #FFF;
	padding:7px 20px;
	font-size:1.4rem;
	color:#FFF;
	background-color:#AAA;
}

/*-----------------------------------------------------------------------/
	3: NAVIGATION
/*----------------------------------------------------------------------*/
#wrp_gnav {
	padding: 0; /*#wrp_hdrの次の要素に#wrp_hdrの高さ分上余白*/
	display: none;
}
#gnav {
	display: none;
}

.ttl_cate span{padding:26px 0;font-size:1.4em;}

/*-----------------------------------------------------------------------/
	4: MAIN CONTENT
/*----------------------------------------------------------------------*/

.pc_disp{display:none;}
.smt_disp{display:block;}

#wrp_maincnt {
	padding: 10px;
}

#top_service .wrp_cont{padding:30px 0;}
#top_service .wrp_cont ul li{max-width:280px;padding: 14em 1.5em 2em;}


#cnt{margin:20px 0px;padding:0 10px ;}

.smt_br{display:block;}

/* selector
-----------------------------------*/
#maincontent h1 {
	font-size: -webkit-calc(2rem + 20 * (100vw - 320px) / (767 - 320));
	font-size: calc(2rem + 20 * (100vw - 320px) / (767 - 320));
}
#maincontent h2 {
	font-size: -webkit-calc(2.2rem + 10 * (100vw - 320px) / (767 - 320));
	font-size: calc(2.2rem + 10 * (100vw - 320px) / (767 - 320));
}
#maincontent h3 {
	font-size: -webkit-calc(2rem + 4 * (100vw - 320px) / (767 - 320));
	font-size: calc(2rem + 4 * (100vw - 320px) / (767 - 320));
}
#maincontent h4,
#maincontent h5,
#maincontent h6 {
	font-size: -webkit-calc(1.8rem + 2 * (100vw - 320px) / (767 - 320));
	font-size: calc(1.8rem + 2 * (100vw - 320px) / (767 - 320));
}

#maincontent h5,
#maincontent h6 {
	margin-bottom: -webkit-calc(0.6em + 4 * (100vw - 320px) / (767 - 320));
	margin-bottom: calc(0.6em + 4 * (100vw - 320px) / (767 - 320));
}

/* parts
-----------------------------------*/
/* scroll */
.wrp_scroll::-webkit-scrollbar {
	height: 5px;
}
.wrp_scroll::-webkit-scrollbar-track {
	background: #ebebeb;
}
.wrp_scroll::-webkit-scrollbar-thumb {
	background: #969696;
}
.wrp_scroll {
	position: relative;
	overflow-x: scroll;
	overflow-y: hidden;
	margin: 0 0 10px;
	/*-webkit-overflow-scrolling: touch;*/
}
.scroll {
	min-width: 768px;
}

/* fc_templates
-----------------------------------*/
.wrp_iframe {
	display: block;
	position: relative;
	overflow: hidden;
	height: 0;
	padding-top: 56.25%;
}
.wrp_iframe iframe,
.googlemap object,
.googlemap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}
#maincontent table {
	width: auto;
	height: auto !important;
	background-position: 50% 100%;
	background-size:320%;
}

#maincontent table.layout_r {
	width: auto;
	height: auto !important;
background-position: 80% 50%;
background-size: 320%;
}

#maincontent table.layout_l {
	width: auto;
	height: auto !important;
background-position: 20% 50%;
background-size: 320%;
}




#maincontent table th,
#maincontent table td {
	width: auto;
	height: auto !important;
	background-position: 0% 50%;
background-size: 100%;
}
/* col2 col3 */
#maincontent .col2,
#maincontent .col3 {
	width: 100% !important;
}
#maincontent .col2 .col2_l,
#maincontent .col2 .col2_r,
#maincontent .col3 .col3_l,
#maincontent .col3 .col3_m,
#maincontent .col3 .col3_r,
#maincontent .col2 .col2 .col2_l,
#maincontent .col2 .col2 .col2_r {
	display: block;
	width:100% !important;
	padding: 0 0 15px;
}
#maincontent .col2 .col2 .col2_r,
#maincontent .col2 .col3 .col3_r,
#maincontent .col3 .col2 .col2_r,
#maincontent .col3 .col3 .col3_r {
	padding-bottom: 0;
}
/* table head_horizon */
#maincontent .head_horizon {
	width: 100% !important;
}
#maincontent .head_horizon tr.head {
	display: none;
}
#maincontent .head_horizon > tbody > tr > th,
#maincontent .head_horizon > tbody > tr > td {
	display: block;
	width: 100% !important;
	text-align: left !important;
}
#maincontent .head_horizon th::before,
#maincontent .head_horizon td::before {
	display: block;
	content: attr(data-head);
	margin: 0 0 5px;
	font-weight: bold;
}
/* table head_vertical */
#maincontent .head_vertical {
	width: 100% !important;
}
#maincontent .head_vertical > tbody > tr > th,
#maincontent .head_vertical > tbody > tr > td,
#maincontent .head_vertical .head {
	display: block;
	width: 100% !important;
}



/*-----------------------------------------------------------------------/
	5: FOOTER
/*----------------------------------------------------------------------*/
#ftr .ftr_nav {
	display: none;
}
#ftr .ftr_cnt {
	display: block;
}
#wrp_ftr{margin-top:100px;}
#wrp_ftr::before {background-position: 46% 50%;}


#wrp_ftr .change a {
	display: block;
	padding: 12px 0;
	background-color: #ddd;
	font-size: 1.6rem;
	color: inherit;
	text-decoration: none;
	text-align: center;
	color:#333;
}
#wrp_ftr .change a span {
	padding: 0 0 0 27px;
	background: url(../_smt/_cmn/icn_change_pc.png) 0 50% no-repeat;
	background-size: 16px;
	font-weight:bold;
}


#wrp_ftr .pagetop{right: 10px;}
#wrp_ftr .pagetop a,#wrp_ftr .pagetop.fixed a {
    width: 40px;
    height: 40px;
}

#wrp_ftr .pagetop a::before, #wrp_ftr .pagetop a::after{top: 17px;}
#other_link ul{float:none;}
#other_link ul li{width:100%;margin-left: 40px;}

/*-----------------------------------------------------------------------/
	6: OTHER
/*----------------------------------------------------------------------*/
/* news */

#maincontent h2.title {
    font-size:1.2em;
}

.news_list .news .date {
	display: block;
	width: auto;
}
.news_list .news .title,
.news_list .news .title a,
.news_list .news .news_link {
	display: block;
float: left;
clear: both;
}

body#index .news_list .news .title {
    float: left;
    width: 100%;
    text-align: left;
}

.news_list .news .title {
    float: right;
    width: 100%;
    text-align: left;
}

/*body#index .news_list .news{margin:0;}*/

body#index .news_list .news .date {
    width: 210px;
}

#maincontent .newsresult .newsimg {
	float: none;
	display: block;
	max-width: 100%;
	margin-right: 0;
}
.s .link span {
	display: block;
}
/* form */
table.frm_tbl {
	width: 100% !important;
	border-top: 1px solid #ccc;
}
table.frm_tbl th,
table.frm_tbl td {
	display: block;
	border-top: none;
}
table.frm_tbl label {
	display: block;
}
table.frm_tbl input.no_search {
	margin-top: 5px;
	padding: 5px 10px;
}
.form_btn {
	margin:0 0 50px;
	text-align:center;
}
.form_btn button {
	width: 100%;
	margin: 0 0 20px;
}

/*top*/


#wrp_main {
    padding: 54px 0 0;
}
#main{margin:0 0 10px;}
#main, #top_service{background-size: 15%;}

a.shiromaru,a.shiromaru2{width:90%;}

a.shiromaru span::after {top: 120%;}

a.shiromaru {padding: 12px 30px 12px 20px;}
.shiromaru span {position: relative;}
a.shiromaru span::after {right: -70px;top: 120%;}

a.shiromaru:hover span::after,
a.shiromaru:focus span::after {right: -80px;}


a.shiromaru2 {padding: 12px 30px 12px 20px;}
.shiromaru2 span {position: relative;}
a.shiromaru2 span::after {right: -10px;top: 120%;}

a.shiromaru2:hover span::after,
a.shiromaru2:focus span::after {right: -20px;}




/*slider*/
#wrp_news{padding: 9px 5px 8px;height: auto;}

.news .icn{font-size: 0.8em;padding:2px 4px 2px ;min-width: 60px;
	vertical-align: top;}



.main_ttl{font-size:1.2em;letter-spacing: 4px;}
body#index #wrp_news .news_list .news .inr_news{display:block;}

#wrp_news{
position: static !important;
top:0;
}


.new_ttl a {
    position: absolute;
}
/*
body#index .news_list .news {font-size: 0.7em;}
body#index .news_list .news {padding: 0 0 0 6px;}
*/
.main_ttl::before {background-size: 64px;}

#main .slide1 {
	background:url(../_prt/_top/bg_main1.jpg) no-repeat center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide2 {
	background:url(../_prt/_top/bg_main2.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide3 {
	background:url(../_prt/_top/bg_main3.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide4 {
	background:url(../_prt/_top/bg_main4.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide5 {
	background:url(../_prt/_top/bg_main5.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide6 {
	background:url(../_prt/_top/bg_main6.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide7 {
	background:url(../_prt/_top/bg_main7.jpg) no-repeat  center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide8 {
	background:url(../_prt/_top/bg_main8.jpg) no-repeat center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}
#main .slide9 {
	background:url(../_prt/_top/bg_main9.jpg) no-repeat center 50%;
	background-size:cover;
	height:200px;
	padding:40px 0 0;
}

#top_service .wrp_cont ul{display:block;/*width: 100%;*/width:280px;}
#top_service .wrp_cont ul li{margin: 0 auto 20px;}

#top_message{background-image: url(../_prt/_top/bg_message.jpg);color:#fff;background-repeat: no-repeat;
background-position: center 50%;margin:0 0 50px;background-size:140%;}

#top_message p {
    display:none;
}
#top_message .wrp_cont{padding:0px 0 40px;}

#top_message .wrp_cont h3{
 padding:20% 0 4%;
}

.wrp_cont h3,.new_ttl h3 {
 font-size:3rem !important;
 line-height:1.3;
 margin: 0 0 4%;
}
#top_consult ul{margin: 0 0 4%;}
#top_consult ul li{width:94%;margin:0 3%;}
#top_consult ul li h4{font-size:2rem;}
#top_consult ul li p{font-size:1.7rem;}


body#index #top_used{background-position: center 60%;color: #fff;background-size: 200%;}
body#index #top_used .wrp_cont{padding:60px 0 40px;}
#top_used .wrp_cont{padding:20px 0;}
#top_used .wrp_cont ul li a{width:90%;font-size:1.2rem;padding: 14px 25px 14px 20px;margin: 5px 0;}
#top_used a.akamaru span::after {right: -10px;}

#top_used a.akamaru:hover span::after,
#top_used a.akamaru:focus span::after {
	right: -20px;
}


#top_business{padding: 2%;}
#top_business ul li{width:100%;display:block;}
#top_business ul li#wrp_reservation{background-size: 120%;background-position: center 50%;}
#top_business ul li#wrp_media{background-size: 120%;background-position: center 50%;}
#top_business ul li#wrp_bpo{background-size: 120%;background-position: center 50%;}
#top_business ul li#wrp_ad{background-size:120%;background-position: center 50%;}
#top_business ul li .top_layer {
    padding: 30px 0;
}

#top_recruit{
background-position: center -40px;
color: #fff;
background-size: 180%;
}


#top_recruit .wrp_cont {
    padding: 70px 0 40px;
    width: 100%;
}
#recruit_cont{float:none;}

#ad{float:none;}
.ftr_cnt address {
    text-align: center;
}

#pmark{width:100%;text-align: center;}


/*赤丸枠ボタン小*/

a.akamaru_s {
	width:50px;
	font-size:0.6em;
	padding: 4px 10px 3px 10px;
	z-index:10;
	border: 2px solid #A91F28;
}

a.akamaru_s span::after {
right: -2px;
}

a.akamaru_s:hover span::after,
a.akamaru_s:focus span::after {
	right: -4px;
}

/*contact*/

body#c_2 #maincontent table th,body#c_3 #maincontent table th {
	background-size:50px !important;
	background-position:10px 12px;
	/*width:60px;*/
}

body#c_2 #maincontent table.frm_tbl td textarea {width:100%;}

body#c_2 table.frm_tbl select {
    width: 100%;
}

body#c_2 table.frm_tbl select option{
    width: 100%;
}

.privacy{font-size:0.85em;}

/*調査レポート*/

.report_list{padding:20px;margin:0 0 20px;}


/*----------------------------------------------------------------------*/
}/* @media screen and (max-width:767px) */