/* Responsive CSS */

@import url('https://fonts.googleapis.com/css?family=Open+Sans:700');

/* ---------- 基本レイアウト ---------- */

@media screen and (min-width: 768px) {
	.sp-header,
	.sp-sidebar {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	* {
	  -webkit-box-sizing: border-box;
	     -moz-box-sizing: border-box;
	          box-sizing: border-box;
	}
	body {
		overflow: hidden;
	}
	.header_outer,
	.nav_outer_top,
	.nav_outer,
	.outer {
		display: none;
	}
	.cont {
		width: 100%;
		padding: 0 15px 70px 15px;
		margin: 0;
	}
	.cont_left {
		float: none;
		width: 100%;
		margin: 0;
	}
	.cont_right {
		display: none;
	}
	.footer,
	.footer2 {
		width: 100%;
	}
	.img-responsive {
		display: block;
		height: auto;
		max-width: 100%;
		margin: 0 auto;
	}
}

/* ---------- Header ---------- */

/* 基本レイアウト */
.sp-header {
	padding: 10px;
}
.sp-header-box {
	display: table;
	width: 100%;
}
.sp-header-box .sp-logo {
	display: table-cell;
	vertical-align: middle;
}
.sp-header-box .sp-logo h1 {
	display: inline-block;
	position: relative;
	top: 0;
}
.sp-header-box .sp-logo h1 img {
	width: 150px;
}
.sp-header-box .sp-gnav {
	display: table-cell;
	width: 70px;
}
.sp-header-box .sp-gnav li img {
	width: 70px;
	height: 40px;
}

/* ---------- グローバルナビ ---------- */

.sp-gnav-content {
	background: #ffffff;
	display: none;
}
.sp-gnav-btn li {
	cursor: pointer;
}
.sp-gnav-close-btn a {
	display: block;
	background-color: #cbcbcb;
	color: #ffffff;
	text-align: center;
	cursor: pointer;
	padding: 5px 15px;
}
.sp-gnav-close-btn a:hover {
	text-decoration: none;
}
.sp-gnav-close-btn a strong {
	font-weight: bold;
	color: #ffffff;
}
.sp-gnav-close-btn a:before {
	font-family: FontAwesome;
	content: '\f00d';
	margin-right: 0.3em;
}

/* グローバルナビ　コンテンツ */
.sp-gnav-dl dt {
	border-top: 1px solid #e7e7e7;
	cursor: pointer;
	padding: 5px 15px;
}
.sp-gnav-dl dt:after {
	font-family: FontAwesome;
	content: '\f0d7';
	margin-left: 0.5em;
	color: #666666;
}
.sp-gnav-dl dt.active {
	background-color: #e7e7e7;
}
.sp-gnav-dl dt.active:after  {
	font-family: FontAwesome;
	content: '\f0d8';
	margin-left: 0.5em;
}
.sp-gnav-dl dd {
	display: none;
}
.sp-gnav-dl dd ul li a {
	padding-left: 30px;
}
.sp-gnav-ul li a {
	display: block;
	border-top: 1px solid #e7e7e7;
	padding: 5px 15px;
	color: #505050;
}
.sp-gnav-ul li a:hover {
	text-decoration: none;
}
.sp-gnav-content {
	width: 100%;
	background-color: #ffffff;
	padding-bottom: 20px;
	display: none;
}
.sp-gnav-content .sp-gnav-ul-last-child {
	border-bottom: 1px solid #e7e7e7;
	margin-bottom: 30px;
}
.sp-gnav-btn-box {
	max-width: 280px;
	margin: 0 auto;
	text-align: center;
}
.sp-gnav-btn-box .login-btn {
	display: block;
	background-color: #00568f;
	color: #ffffff;
	border-radius: 3px;
	padding: 3px 5px;
	font-weight: bold;
}
.sp-gnav-btn-box a:hover {
	text-decoration: none;
}
.sp-view-btn-box {
	max-width: 280px;
	margin: 10px auto;
	text-align: center;
}
.sp-view-btn-box .login-btn {
	display: block;
	background-color: #00568f;
	color: #ffffff;
	border-radius: 3px;
	padding: 3px 5px;
	font-weight: bold;
}
.sp-view-btn-box a:hover {
	text-decoration: none;
}
.sp-world-btn {
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 10px 0;
}
.sp-world-btn li:first-child {
	display: table-cell;
	padding-right: 5px;
}
.sp-world-btn li:last-child {
	display: table-cell;
	padding-left: 5px;
}
.sp-world-btn a {
	display: block;
	background-color: #cbcbcb;
	color: #ffffff;
	font-weight: bold;
	border-radius: 3px;
	text-align: center;
	padding: 2px 5px;
}
.sp-sidebar.sp-sidebar-gnav {
	margin: 30px 0 20px 0;
}
@media screen and (min-width: 768px) {
	.sp-gnav-content-wrapper {
		display: none;
	}
}

/* ---------- タブメニュー ---------- */

@media screen and (min-width: 768px) {
	.sp-header-tab {
		display: none;
	}
}
.sp-header-tab {
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.2);
}
.sp-tabmenu {
	width: 100%;
}
.sp-tab {
	display: table;
	table-layout: fixed;
	width: 100%;
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
	border-bottom: 10px solid #f6f6f6;
	padding-top: 5px;
}
.sp-tab li {
	display: table-cell;
	cursor: pointer;
	text-align: center;
	vertical-align: middle;
	padding-top: 5px;
	background-color: #eeeeee;
	background: linear-gradient(#cccccc, #dddddd);
	border-top: 5px solid #ffffff;
	line-height: 100%;
	padding-bottom: 5px;
}
.sp-tab li:first-child {
	box-shadow: -2px -2px 2px 0 rgba(0,0,0,0.1) inset;
}
.sp-tab li:last-child {
	box-shadow: 2px -2px 2px 0 rgba(0,0,0,0.1) inset;
}
.sp-tab li img {
	filter: grayscale(100%);
	opacity: 0.6;
}
.sp-tab li.sp-theme-on {
	background: linear-gradient(#ffffff, #f6f6f6);
	box-shadow: 0 -2px 2px 0 rgba(0,0,0,0.1);
	overflow: visible;
}
.sp-tab li.sp-theme-on:first-child {
	border-top-right-radius: 5px;
}
.sp-tab li.sp-theme-on:last-child {
	border-top-left-radius: 5px;
}
.sp-tab li.sp-theme-on img {
	filter: grayscale(0);
	opacity: 1;
}
.sp-tab-content {
	background-color: #ffffff;
	display: none;
}
.sp-close-btn a {
	display: block;
	background-color: #cbcbcb;
	color: #ffffff;
	text-align: center;
	cursor: pointer;
	padding: 5px 15px;
}
.sp-close-btn a:hover {
	text-decoration: none;
}
.sp-close-btn a strong {
	font-weight: bold;
	color: #ffffff;
}
.sp-close-btn a:before {
	font-family: FontAwesome;
	content: '\f00d';
	margin-right: 0.3em;
}

/* タブメニューコンテンツ1 */
.sp-tab-1 dt {
	border-top: 1px solid #e7e7e7;
	cursor: pointer;
	padding: 5px 15px;
}
.sp-tab-1 dt:after {
	font-family: FontAwesome;
	content: '\f0d7';
	margin-left: 0.5em;
	color: #00568f;
}
.sp-tab-1 dt.active:after  {
	font-family: FontAwesome;
	content: '\f0d8';
	margin-left: 0.5em;
	color: #00568f;
}
.sp-tab-1 dd {
	border-top: 1px solid #e7e7e7;
	display: none;
	padding: 20px 15px;
}
.sp-tab-1 .sp-tab-title {
	font-weight: bold;
	color: #00568f;
	border-bottom: 2px solid #00568f;
	margin: 15px 0 10px 0;
}
.sp-tab-1 .sp-tab-title:first-child {
	margin-top: 0;
}
.sp-tab-1 dd ul li a {
	display: block;
	color: #505050;
	padding: 5px 0;
	line-height: 140%;
	padding-left: 1.3em;
	text-indent: -0.7em;
}
.sp-tab-1 dd ul li a:hover {
	text-decoration: none;
}
.sp-tab-1 dd ul li a:before {
	font-family: FontAwesome;
	content: '\f0da';
	margin-right: 0.3em;
	color: #00568f;
}
.sp-tab-1 dd .sp-img-btn {
	margin: 15px 0 0 0;
}
.sp-tab-1 dd .sp-img-btn a {
	display: block;
	border: 1px solid #e7e7e7;
	border-radius: 3px;
	text-align: center;
	margin: 10px 0;
	line-height: 120%;
	font-size: 12px;
	color: #505050;
	padding: 7px 5px 5px 5px;
}
.sp-tab-1 dd .sp-img-btn a:hover {
	text-decoration: none;
}
.sp-tab-1 dd .sp-img-btn a img {
	height: 18px;
	vertical-align: middle;
	margin-right: 0.5em;
	padding-bottom: 2px;
}
.sp-tab-1-ul li a {
	display: block;
	border-top: 1px solid #e7e7e7;
	padding: 5px 15px;
	color: #505050;
}
.sp-tab-1-ul li a:hover {
	text-decoration: none;
}

/* タブメニューコンテンツ2 */
.sp-tab-2 li a {
	display: block;
	border-top: 1px solid #e7e7e7;
	padding: 5px 15px;
	color: #505050;
}
.sp-tab-2 li a:hover {
	text-decoration: none;
}

/* ---------- Footer ---------- */

@media screen and (min-width: 768px) {
	.sp-footer-links-1 {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.footer {
		width: 100%;
	}
	.ffloatwaku1:first-child,
	.footerdiv1,
	.footerdiv3,
	.footerdiv5 {
		display: none;
	}
	.pagetop {
		left: 0;
		right: 0;
		text-align: center;
	}
	.footerallbox {
		text-align: center;
	}
	.footerdiv4 {
		float: none;
	}
	.footerlinkp {
		margin-top: 20px;
	}
	.footer2_outer {
		height: 25px;
		margin-bottom: 80px;
	}
	.footer2 {
		padding: 0;
	}
	p.copyrightr {
		text-align: center;
		padding-top: 4px;
	}
}

/* ---------- 固定 Footer A ---------- */
.sp-footer-links-a {
	position: fixed;
	bottom: 0;
	display: table;
	width: 100%;
	border-top: 1px solid #00558e;
	border-bottom: 1px solid #00558e;
	background-color: #ffffff;
}
.sp-footer-links-a a {
	display: table-cell;
	height: 45px;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	line-height: 125%;
	background-image: url(/img-sp/common/footer-arrow-1.png);
	background-repeat: no-repeat;
	background-size: 6px 6px;
	background-position: right 5px bottom 5px;
}
.sp-footer-links-a a:hover {
	text-decoration: none;
}
.sp-footer-links-a a:first-child {
	background-image: url(/img-sp/common/footer-arrow-2.png);
	background-color: #00558e;
	color: #ffffff;
}
.sp-footer-links-a a:last-child {
	border-left: 1px solid #00558e;
}
@media screen and (min-width: 768px) {
	.sp-footer-links-a {
		display: none;
	}
}

/* ---------- 固定 Footer B ---------- */
.sp-footer-links-b {
	position: fixed;
	bottom: 0;
	display: table;
	width: 100%;
	border-top: 1px solid #00558e;
	border-bottom: 1px solid #00558e;
	background-color: #ffffff;
}
.sp-footer-links-b .sp-mailtel-box {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	line-height: 125%;
	border-right: 1px solid #00558e;
}
.sp-footer-links-b .sp-foterlink-box {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	font-size: 12px;
	font-weight: bold;
	line-height: 125%;
	padding: 8px 3px;
	border-right: 1px solid #00558e;
}
.sp-footer-links-b .sp-mailtel-box a {
	font-size: 12px;
	line-height: 125%;
	display: block;
	width: 100%;
}
.sp-footer-links-b .sp-mail-box {
	padding: 4px 3px 0 3px;
}
.sp-footer-links-b .sp-tel-box {
	padding: 0 3px 3px 3px;
}
.sp-footer-links-b a.sp-login {
	background-color: #00558e;
	color: #ffffff;
}
.sp-footer-links-b a:hover {
	text-decoration: none;
}
.sp-footer-links-b a .sub {
	display: block;
	font-size: 10px;
	line-height: 130%;
	margin-top: 1px;
}
.sp-footer-links-b a .tel {
	display: inline-block;
	font-family: 'Open Sans', sans-serif;
	background-color: #00558e;
	color: #ffffff;
	line-height: 100%;
	padding: 3px 5px;
	border-radius: 2px;
	margin-top: 2px;
	font-size: 14px;
}
@media screen and (min-width: 768px) {
	.sp-footer-links-b {
		display: none;
	}
}
@media screen and (max-width: 369px) {
	.sp-footer-links-b a .tel {
		padding: 2px 5px;
		font-size: 12px;
	}
	.sp-footer-links-b a .sub {
		font-size: 8px;
	}
}

/* ---------- SP Sidebar ---------- */

.sp-sidebar {
	margin: 0;
}
.sp-sidebar-box {
	padding: 0 15px;
}
.sp-sidebar .side_tel1 {
	width: 100%;
	margin-bottom: 30px;
}
.sp-sidebar .side_tel1 .side_tel1-box {
	padding: 20px;
}
.sp-sidebar .side_tel1 .p3 {
	margin: 0;
}
.sp-sidebar .side_tel1 .p2 {
	margin: 0 0 10px 0;
	text-align: center;
}
.sp-sidebar .side_tel1 .p2 a {
	display: block;
}
.sp-sidebar .side_tel1 .a1 {
	display: block;
	width: 100%;
	margin: 0;
	background-image: none;
	background-color: #00558e;
}
.sp-bnr-box .sp-row {
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-bottom: 15px;
}
.sp-bnr-box .sp-row .sp-col-12 {
	max-width: 240px;
	margin: 0 auto;
}
.sp-bnr-box .sp-row .sp-col-12 p {
	line-height: 140%;
	margin-top: 5px;
}
.sp-bnr-box .sp-row .sp-col-6 {
	display: table-cell;
	text-align: center;
}
.sp-bnr-box .sp-row .sp-col-6:first-child {
	padding-right: 7px;
}
.sp-bnr-box .sp-row .sp-col-6:last-child {
	padding-left: 7px;
}
.sp-bnr-box .sp-row img {
	height: auto;
	max-width: 100%;
}
.sp-sidebar-box.gray-box {
	background-color: #f5f5f5;
	padding: 15px;
	margin: 25px 0 20px 0;
}
.sp-bnr-box .sp-row-2 {
	display: table;
	width: 100%;
}
.sp-bnr-box .sp-row-2 .sp-col-4 {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 0 5px;
}
.sp-bnr-box .sp-row-2 .sp-col-4:first-child {
	padding-left: 0;
}
.sp-bnr-box .sp-row-2 .sp-col-4:last-child {
	padding-right: 0;
}
.sp-bnr-box .sp-row-2 img {
	height: auto;
	max-width: 100%;
}
.sp-sidebar-box.icon-box {
	padding: 0 20%;
	margin: 0;
}


/* ---------- トップページ ---------- */

/* カルーセル */
@media screen and (min-width: 768px) {
	.sp-carousel {
		display: none;
	}
}

/* コンテンツ */
@media screen and (min-width: 768px) {
	.sp-indexbox2 {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.indexbox1 .leftindexbox {
		width: 100%;
		border: 0;
		border-bottom: 1px dotted #999999;
		padding: 0 0 20px 0;
		margin-bottom: 15px;
	}
	.indexbox1 .leftindexbox li,
	.indexbox1 .leftindexbox li a {
		display: block;
		width: 100%;
	}
	.indexbox1 .rightindexbox {
		width: 100%;
		padding: 0;
	}
	.indexbox1 .rightindexbox li,
	.indexbox1 .rightindexbox li a {
		display: block;
		width: 100%;
	}
	.indexbox1 .rightindexbox li a {
		margin-bottom: -1px;
	}
	.infoboxdotted table.infobox td {
		display: block;
	}
	.infoboxdotted table.infobox td.col1 {
		padding-bottom: 5px;
	}
	.infoboxdotted table.infobox td.col2 {
		padding: 0 0 15px 0;
	}
	.pc-indexbox2 {
		display: none;
	}
	.indexh3.margintop30 {
		margin: 0 0 20px 0 !important;
	}
	.index_longp {
		margin: 0;
	}
	.index_longp img {
		float: none !important;
		margin: 0 auto 10px auto !important;
	}
}
.sp-indexbox2 .sp-leftindexbox,
.sp-indexbox2 .sp-rightindexbox {
	width: 100%;
	border: 0;
	border-bottom: 1px dotted #999999;
	padding: 0 0 20px 0;
	margin-bottom: 30px;
}
.sp-indexbox2 .sp-leftindexbox dl dt,
.sp-indexbox2 .sp-rightindexbox dl dt {
	margin-top: 1em;
}
.sp-indexbox2 .sp-leftindexbox dl dd a,
.sp-indexbox2 .sp-rightindexbox dl dd a {
	color: #505050;
}
.sp-indexbox2 .sp-leftindexbox dl dd a:hover,
.sp-indexbox2 .sp-rightindexbox dl dd a:hover {
	color: #00558e;
}
.sp-indexbox2 .sp-rightindexbox dl dt span {
	margin-left: 1em;
}
.sp-indexbox2 .sp-rightindexbox dl dt .span1,
.sp-indexbox2 .sp-rightindexbox dl dt .span2{color:#fff;background:#636363;font-size:10px;width:110px;text-align:center;display:inline-block;margin-bottom:5px;}
.sp-indexbox2 .sp-rightindexbox dl dt .span3{color:#fff;background:#00558e;font-size:10px;width:110px;text-align:center;display:inline-block;margin-bottom:5px;}


/* ---------- 下層ページ共通 ---------- */

@media screen and (min-width: 768px) {
	.sp-img90,
	.sp-text,
	.sp-table,
	.sp-btn {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.pc-img,
	.pc-table,
	.pc-btn {
		display: none;
	}
	.punkuz {
		margin-top: -30px;
	}
	.kasouwakuh3 {
		margin-top: 20px;
	}
	h3.indexh3 {
		margin-top: 40px;
	}
	h4.listbullet {
		margin-top: 50px;
		background-image: none;
		background-origin: border-box;
		padding: 0;
		line-height: 140%;
	}
	h4.listbullet:before {
		font-family: FontAwesome;
		content: '\f04d';
		margin-right: 0.5em;
		color: #00558e;
		font-size: 0.6em;
		vertical-align: text-top;
	}
	.sp-img90 {
		max-width: 90%;
	}
	.sp-bold-gray {
		font-weight: bold;
		color: #737373;
	}
	.sp-margin20 {
		margin: 20px auto;
	}
	.sp-margin-top20 {
		margin-top: 20px
	}
	.sp-margin-bottom-20 {
		margin-bottom: -20px;
	}
}

/* ---------- 会社情報 ---------- */

/* 会社情報 */
@media screen and (min-width: 768px) {
	.corplate_box1-sp {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.corplate_box1-pc {
		display: none !important;
	}
	.corplate_box1 {
		display: table;
		table-layout: fixed;
		width: 100%;
		margin: 30px 0 0 0;
	}
	.corplate_box1 .dl1 {
		float: none;
		display: table-cell;
		width: 100%;
		height: auto;
	}
	.corplate_box1 .dl1:first-child {
		padding-right: 7px;
	}
	.corplate_box1 .dl1:last-child {
		padding-left: 7px;
	}
}

/* 代表挨拶 */
@media screen and (max-width: 767px) {
	h3.indexh3b {
		margin-top: 30px;
	}
	.aisatudiv1,
	.aisatup {
		float: none;
	}
}

/* 企業理念 */

/* 会社概要 */
@media screen and (max-width: 767px) {
	.profile_table.margintop50 {
		margin-top: 30px !important;
	}
	.profile_table th,
	.profile_table td {
		display: block;
		width: 100%;
	}
	table.bbotm th {
		width: 100% !important;
		padding-bottom: 0 !important;
		border: 0;
	}
	table.sp-profile-torikumi {
		margin-bottom: 15px;
	}
	table.bbotm td {
		padding: 0 20px 15px 20px !important;
	}
}

/* 国内事業所一覧 */
@media screen and (max-width: 767px) {
	.divContainer_block .clearfix {
		display: table;
		width: 100%;
	}
	.divContainer_block .clearfix .divLeft3,
	.divContainer_block .clearfix .divRight2,
	.divContainer_block .clearfix .divRight3 {
		float: none;
		display: table-cell;
		vertical-align: top;
	}
}

/* 会社沿革 */
@media screen and (max-width: 767px) {
	table.corp_his {
		margin-top: 30px;
	}
	table.corp_his th,
	table.corp_his td {
		display: block;
	}
	table.corp_his td {
		padding-left: 0 !important;
	}
	table.corp_his img {
		margin: 0 auto 10px auto !important;
	}
}


/* ---------- お引越し・解約について ---------- */

.sp-removal-table th,
.sp-removal-table td {
	width: 100%;
    display: block;
}
.sp-removal-table td {
	border-bottom: 5px solid #ffffff !important;
}
.sp-removal-btn {
	padding-top: 10px;
}
.sp-removal-btn a {
	display: block;
	background-color: #00558e;
	color: #ffffff;
	padding: 10px;
	text-align: center;
	margin-top: 10px;
}
.sp-removal-btn a:hover {
	text-decoration: none;
}
.sp-removal-btn a:before {
	font-family: FontAwesome;
	content: '\f138';
	margin-right: 0.3em;
}


/* ---------- パターン変更 ---------- */

@media screen and (max-width: 767px) {
	.responsive-a .sp-footer-links-b {
		display: none;
	}
	.responsive-b .sp-footer-links-a {
		display: none;
	}
	.responsive-c .sp-footer-links-a,
	.responsive-c .sp-footer-links-b {
		display: none;
	}
	.responsive-c .footer2_outer {
		height: 25px;
		margin-bottom: 80px;
	}
}






