@charset "utf-8";
/*==================================================
	タブレットのみ適応
==================================================*/
@media only screen and (max-width: 768px) and (min-width: 641px){
	.dsp_smt { display: none; }
	#footer .contact .txt span {
		display: inline-block;
		margin-left: 10px;
	}
	#page_title .toppage img {
		max-height: 370px;
	}
}
/*==================================================
	タブレット・スマホに適応
==================================================*/
@media only screen and (max-width: 768px) {
	.dsp_hp { display: none; }

	/* ヘッダ */
	#header {
		overflow: hidden;
		height: 50px;
		padding: 0;
		background: none;
	}
	#header h1.title {
		height: 50px;
		padding-left: 10px;
	}
	#header h1.title img {
		width: auto;
		max-height: 30px;
	}
	#sticky {
		z-index: 9997;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background: none;
	}
	/* お問い合わせ */
	#header .contact {
		position: relative;
	}
	#header .contact .tel,
	#header .contact .btn {
		position: absolute;
		top: 0;
		right: 90px;
		display: block;
		width: 24px;
		height: 50px;
		padding: 0 11px;
		/* 縦方向中央揃え */
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
		align-items: center; /* 縦方向中央揃え */
		-webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
		justify-content: center; /* 横方向中央揃え */
	}
	#header .contact .tel,
	#header .contact .btn {
		display: none;
	}
	#header .contact .btn {
		right: 44px;
	}
	#header .contact .txt,
	#header .contact .tel span,
	#header .contact .btn span {
		display: none;
	}
	/* コンテナ */
	#container h3.sub {
		margin-bottom: 20px;
		font-size: 20px;
	}
	#container h3.sub .en {
		font-size: 16px;
	}
	.main {
		padding-left: 15px;
		padding-right: 15px;
	}
	#main, #navi {
		clear: both;
		padding-bottom: 30px;
	}
	/* フッター */
	#footer .box {
		padding: 30px 0;
	}
	#footer .box dt {
		margin-bottom: 20px;
	}
	#copyright {
		height: 30px;
		line-height: 30px;
	}
	/* お問合せ */
	#footer .contact {
		margin: 0 20px 30px;
	}
	#footer .contact .tel {
		margin: 0 auto 10px;
	}
	#footer .contact .tel_link {
		font-size: 26px;
	}
	#footer .contact .tel_link img {
		width: 30px;
	}
	/* パンくずリスト */
	#page_navi {
		margin-bottom: 20px;
		padding-top: 15px;
		font-size: 11px;
	}
	/* 枠のマージン・パディング */
	.mb { margin-bottom: 40px; }
	.pt { padding-top: 40px; }
	.pb { padding-bottom: 40px; }
	/* アンカーリンク用上部スペース */
	.pad_anchor {
		margin-top: -50px;
		padding-top: 50px;
	}
	/*--------------------------------------------------
		トップページ
	--------------------------------------------------*/
	/* メニューコンテンツ */
	#top_menu .box {
		width: 48%;
		padding: 30px 20px;
	}
	#top_menu .box__title {
		font-size: 22px;
	}
	#top_menu .box__title .en {
		margin-bottom: 10px;
		font-size: 16px;
		line-height: 1.2em;
	}
	#top_menu .box__txt {
		margin-bottom: 20px;
	}
	/* お知らせ */
	#top_info dl {
		padding: 15px;
	}
	#top_info dl + dl {
		margin-top: 10px;
	}
	/* 会社概要 */
	#about .tb dt {
		width: 120px;
		padding-left: 15px;
	}
	#about .tb dd {
		width: calc(100% - 180px);
	}
	/* アクセス */
	#access .map iframe {
		height: 250px;
	}
	/*--------------------------------------------------
	  KEYVOX 事業
	--------------------------------------------------*/
	#service {
		margin-bottom: 50px;
	}
	#service h3.headline {
		font-size: 22px;
		margin-bottom: 20px;
	}
	#service h3.headline span {
		font-size: 16px;
		margin-top: 0;
	}
	#service h4.headline {
		font-size: 18px;
	}
	/*スマートロッカー*/
	#service_locker {
		padding-bottom: 70px;
	}
	#service_locker .flex01_txtarea {
		margin-right: 30px;
	}
	#service_locker .locker_dl01 {
		margin-bottom: 20px;
	}
	#service_locker .locker_dl01 dt {
		font-size: 16px;
		padding: 0 10px;
	}
	#service_locker .locker_dl01 dd {
		margin-left: 10px;
	}
	#service_locker .locker_dl01 li {
		background-size:15px auto;
		padding-left: 25px;
	}
	#service_locker .img01 {
		width: 20%;
	}
	#service_locker .locker_flex02 {
		margin-bottom: 70px;
	}
	#service_locker .img02 {
		border: 14px solid #f4f4f4;
		width: 45%;
	}
	#service_locker .flex02_txtarea {
		margin-left: 20px;
	}
	#service_locker .flex02_txtarea li {
		margin-bottom: 14px;
	}
	/*スマートキー*/
	#service_key {
		padding-bottom: 50px;
	}
	#service_key .key_flex01 {
		margin-bottom: 40px;
	}
	#service_key .flex01_txtarea {
		margin-right: 20px;
	}
	#service_key .img05 {
		width: 40%;
	}
	#service_key .flex01_txtarea .b {
		font-size: 14px;
	}
	#service_key .img04 {
		margin: 30px auto 0;
	}
	#service_key .key_txt01 {
		margin-bottom: 30px;
	}
	#service_key .key_dl01 {
		width: 32%;
		padding: 10px;
		margin-right: 2%;
		margin-bottom: 15px;
	}
	#service_key .key_dl01 dt {
		margin-bottom: 10px;
	}
	/*service_access*/
	#service_access {
		padding-bottom: 50px;
	}
	#service_access .access_box01 {
		padding: 14px;
	}
	#service_access .access_box01:before {
		font-size: 48px;
	}
	#service_access .box01_img {
		width: 80%;
	}
	#service_access h4.headline02 {
		font-size: 18px;
	}
	/*--------------------------------------------------
		お問い合せ
	--------------------------------------------------*/
	#mailform .tbl {
		border-bottom: 1px solid #333333;
	}
	#mailform .tbl th,
	#mailform .tbl td {
		display: block;
		width: auto;
		border-bottom: none;
	}
	#mailform .tbl input[type="text"],
	#mailform .tbl textarea {
		font-size: 120%;
	}
	#mailform .btn input {
		width: 120px;
	}

/*------------------------------------------------*/
}