/*
Theme Name: エージェントリソース
Version: 1.0
*/
/*-------------------------------------------------------------- */

@import url(../css/inview.css);
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:500,700&display=swap&subset=japanese');
@import url('https://fonts.googleapis.com/css2?family=Caveat&display=swap');

/***** CSS Document  *****/

@media print {
	.drawer-toggle,
	.drawer-hamburger,
	.drawer-nav {
		display: none;
		visibility: hidden;
	}
}

/***** Common *****/

html,
body {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
}

p,hr,h1,h2,h3,h4,h5,h6,ul,ol,li,table,tr,td,form,dl {
	margin: 0;
	padding: 0;
}

img {
	margin: 0;
	border: 0;
}

img [class*="wp-image-"],
img [class*="attachment-"],
img.size-full {
	max-width: 100%;
	height: auto;
	margin: 0 auto 10px auto;
}

img.alignright, img.alignleft, img.aligncenter {
	display: block;
}

img.alignright { margin: 0 0 10px auto; }
img.alignleft { margin: 0 auto  10px 0; }
img.aligncenter { margin: 0 auto 10px; }

.img_border {
	border: 1px solid #ddd;
	box-sizing: border-box;
	margin: -1px;
}

br {
	margin: 0;
	padding: 0;
}

hr {
	clear: both;
	height: 1px;
	margin-left: 0;
	margin-right: 0;
	margin-bottom: 0;
	padding: 0;
	border: none;
	border-top: 1px solid #e0e0e0;
	overflow: hidden;
}

body {
	background: #fff;
	margin: 0;
	line-height: 1.8;
	font-size: 105%;
	font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 500;
	color: #000;
	text-align: center;
	overflow-x: hidden;
}

strong,h1,h2,h3,h4,h5,th {
	font-weight: 700;
	font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
}

_:lang(x)::-ms-backdrop,
.selector {
	font-family: "Segoe UI", Meiryo, sans-serif;
}

h1,h2,h3,h4,h5,strong,th,dt,button,.strong {
	font-weight: 700;
}

.fl {float: left;}
.fr {float: right;}

.tal {text-align: left !important;}
.tac {text-align: center !important;}
.tar {text-align: right !important;}

.mt0 {margin-top: 0px !important;}
.mt5 {margin-top: 5px !important;}
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt70 {margin-top: 70px !important;}
.mt80 {margin-top: 80px !important;}
.mt90 {margin-top: 90px !important;}
.mt100 {margin-top: 100px !important;}

.mb0 {margin-bottom: 0px !important;}

.pb20 {padding-bottom: 20px !important;}
.pb30 {padding-bottom: 30px !important;}
.pb40 {padding-bottom: 40px !important;}
.pb50 {padding-bottom: 50px !important;}
.pb60 {padding-bottom: 60px !important;}
.pb70 {padding-bottom: 70px !important;}

.small {font-size: 80% !important;}
.large {font-size: 140% !important;}

.italic {font-style: italic;}

.clear {clear: both;}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {min-height: 1px;}

*html .clearfix {
	height: 1px;
	/*\*/
	/*/
	height: auto;
	overflow: hidden;
	/**/
}

.fa {color: #000;}

ul,dl {list-style: none;}

.red {color: #d60b35;}

.sp,
.sp2 {
	display: none !important;
}

@media screen and (max-width: 768px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
}

@media screen and (max-width: 520px) {
	.sp2 {
		display: block !important;
	}
}

.marker {
	background: linear-gradient(transparent 80%, #d60b35 80%);
}

.marker:before,
.marker:after {
	content: "\00A0";
}

.ofi {
	object-fit: cover;
	font-family: 'object-fit: cover;'
}

.ofi_contain {
	object-fit: contain;
	font-family: 'object-fit: contain;'
}

.lt {
	text-decoration: line-through;
}

/***** Hyper link *****/

a {
	color: #208aba;
	text-decoration: none;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

a:hover {
	color: #40aada;
}

a.sr {
	position: relative;
	right: 0;
}

a.sr:hover {
	text-decoration: none;
	right: -3px;
}

a.sl {
	position: relative;
	left: 0;
}

a.sl:hover {
	text-decoration: none;
	left: -3px;
}

a.st {
	position: relative;
	top: 0;
}

a.st:hover {
	text-decoration: none;
	top: -3px;
}

a.blank {
	background: url(/wp-content/themes/agent-resource/images/icon_blank.svg) no-repeat;
	background-size: 11px;
	background-position: top 5px right;
	padding-right: 15px;
	margin-right: 5px;
}

@media screen and (max-width: 768px) {
	a.blank {
		background: url(/wp-content/themes/agent-resource/images/icon_blank.svg) no-repeat;
		background-size: 6px;
		background-position: top 3px right;
	}
}

a.button:hover img {
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

a i.fa-window-restore {
	font-size: 90%;
}

.url {
	margin-top: 10px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
	letter-spacing: 1px;
	font-size: 12pt;
	line-height: 1.0;
}

.url a {
	color: #000;
}

.link_text,
.list_link_text {
	margin: 0.75em 0;
	position: relative;
	padding-left: 1.5em;
}

.link_text:before,
.list_link_text:before {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
	top: 0.6em;
	left: 0;
	width: 6px;
	height: 6px;
	border-top: 1px solid #000;
	border-right: 1px solid #000;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

a.pdf:after,
.link_text.pdf:after,
.list_link_text .pdf:after {
	content: "PDF";
	display: inline-block;
	font-size: 12px;
	background: #e70000;
	color: #fff;
	padding: 0 0.5em;
	margin-left: 0.75em;
	position: relative;
	top: -1px;
}

a.docx:after,
.link_text.docx:after,
.list_link_text .docx:after {
	content: "DOCX";
	display: inline-block;
	font-size: 12px;
	background: #2a5598;
	color: #fff;
	padding: 0 0.5em;
	margin-left: 0.75em;
	position: relative;
	top: -1px;
}

a.xlsx:after,
.link_text.xlsx:after,
.list_link_text .xlsx:after {
	content: "XLSX";
	display: inline-block;
	font-size: 12px;
	background: #1f6f43;
	color: #fff;
	padding: 0 0.5em;
	margin-left: 0.75em;
	position: relative;
	top: -1px;
}

/***** Drawer *****/

@media screen and (min-width: 1200px) {
	.drawer-toggle,
	.drawer-hamburger,
	.drawer-nav {
		display: none;
		visibility: hidden;
	}
}

@media screen and (max-width: 1200px) {
	.drawer-toggle,
	.drawer-hamburger,
	.drawer-nav {
		display: block;
		visibility: visible;
	}
}

#drawer {
	padding-bottom: 30px;
}

#drawer-logo {
	position: relative;
	width: 100%;
	height: 80px;
	overflow: hidden;
}

#drawer-logo a {
	color: #fff;
}

#drawer-logo h1 {
	position: absolute;
	top: 21px;
	left: 20px;
}

#drawer-logo h1 img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
	object-position: 0 0;
	width: 40px;
	height: 35.75px;
}

#drawer button {
	min-width: 220px;
	font-size: 10.5pt;
}

.drawer-menu {
	overflow: hidden;
}

.drawer-menu ul {
	float: left;
	width: 90%;
	margin: 0 5%;
	text-align: left;
	font-size: 10.5pt;
}

.drawer-menu li {
	border-top: 1px solid #555;
	padding: 10px 0;
	margin: 0;
    letter-spacing: 1px;
}

.dm_en {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
    letter-spacing: 1px;
}

.drawer-menu li:last-child {
	border-bottom: 1px solid #555;
}

.drawer-menu a {
	color: #fff;
	display: block;
}

.drawer-menu a.blank,
.drawer-bottom-menu a.blank {
	background: url(/wp-content/themes/agent-resource/images/icon_blank_wh.svg) no-repeat top 3px right;
	background-size: 6px;
	padding-right: 12px;
}

.drawer-bottom-menu {
	margin-top: 30px;
	color: #fff;
}

.drawer-bottom-menu p {
	margin-top: 10px;
	text-align: center;
	font-weight: normal;
	font-size: 11pt;
	line-height: 1.0;
}

.drawer-bottom-menu a {
	color: #fff;
}

#drawer address {
	margin-top: 30px;
	font-style: normal;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 400;
	letter-spacing: 1px;
	font-size: 9pt;
	color: #fff;
}

/***** Header *****/

#header {
	position: absolute;
	top: 0;
	z-index: 10;
	width: 100%;
	height: 100px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

#header #logo {
	position: absolute;
	top: 20px;
	left: 1.5vw;
}

#header #logo img {
	width: 200px;
	filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.2));
}

@media screen and (max-width: 1146px) {
	#header {
		width: 100%;
		height: 80px;
	}
	#header #logo {
		top: 14px;
		left: 1.25vw;
	}
	#header #logo img {
		width: 170px;
	}
}

#header nav {
	position: absolute;
	right: 1.5vw;
}

#header nav>a {
	background: #d60b35;
	width: 170px;
	height: 45px;
	line-height: 45px;
	color: #fff;
	text-decoration: none;
	display: inline-block;
	border-radius: 3px;
	font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 700;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	border-bottom: 1px solid transparent;
}

#header nav>a:hover {
	background-color: #e61b45;
}

#main_menu {
	position: relative;
	top: 0;
	display: inline-block;
	font-size: 0;
}

#main_menu li {
	display: inline-block;
	height: 100px;
	line-height: 100px;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	border-bottom: 1px solid transparent;
	font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 12pt;
	text-shadow: 0px 1px 1px rgba(0, 0, 0, .3);
}

@media screen and (max-width: 1280px) {
	#header nav>a {
		width: 140px;
		height: 40px;
		line-height: 40px;
		font-size: 11.5pt;
	}
	#main_menu li {
		font-size: 11.5pt;
	}
}

#main_menu li:hover,
.home #main_menu li.mm_01,
.web-production #main_menu li.mm_02,
.system-development #main_menu li.mm_03,
.recruitment-support #main_menu li.mm_04,
.works #main_menu li.mm_05,
.voices #main_menu li.mm_06,
.company #main_menu li.mm_07 {
	border-bottom: 1px solid #d60b35;
}

#main_menu li a {
	color: #fff;
	text-decoration: none;
	display: block;
	position: relative;
	height: 100px;
	padding: 0 1.2vw;
}

@media screen and (max-width: 1280px) {
	#main_menu li a {
		color: #fff;
		text-decoration: none;
		display: block;
		position: relative;
		height: 100px;
		padding: 0 1.0vw;
	}
}

@media screen and (max-width: 1146px) {
	#header nav>a,
	#main_menu {
		display: none;
	}
}

/***** Main visual *****/

.swiper-container {
	position: relative;
	z-index: 5;
	width: 100%;
	height: 94vh;
	background: #171717;
	overflow: visible;
}

.swiper-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	text-align: left;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.swiper-slide img {
	width: 100%;
	height: 94vh;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	filter: brightness(80%);
}

.swiper-text {
	position: absolute;
	top: 50%;
	left: 3.5vw;
	transform: translate(0, -50%);
	text-align: left;
	color: #fff;
	z-index: 50;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.swiper-text h1 {
	margin-top: 20px;
	font-weight: 700;
	font-size: 52pt;
	line-height: 1.6;
}

.swiper-text h1 span {
	padding: 0.5vh 2.0vw;
	background: #d60b35;
}

.swiper-text h1 a {
	font-size: 11pt;
	color: #fff;
}

.swiper-container h2 {
	position: absolute;
	right: 2.0vw;
	bottom: -40px;
	text-align: right;
	font-family: 'Caveat', cursive;
	font-size: 156pt;
	line-height: 120pt;
	font-weight: 400;
	transform: rotate(-10deg);
	color: #d60b35;
	z-index: 10;
}

@media screen and (max-width: 1280px) {
	.swiper-container {
		height: 86vh;
	}
	.swiper-slide img {
		height: 86vh;
	}
	.swiper-text {
		left: 3.0vw;
	}
	.swiper-text h1 {
		font-size: 48pt;
	}
	.swiper-container h2 {
		font-size: 128pt;
		line-height: 96pt;
	}
}

@media screen and (max-width: 1146px) {
	.swiper-container {
		height: 76vh;
	}
	.swiper-slide img {
		height: 76vh;
	}
	.swiper-text h1 {
		font-size: 42pt;
	}
}

@media screen and (max-width: 950px) {
	.swiper-container {
		height: 72vh;
	}
	.swiper-slide img {
		height: 72vh;
	}
	.swiper-text h1 {
		font-size: 36pt;
	}
	.swiper-text h1 a {
		font-size: 10pt;
	}
	.swiper-container h2 {
		font-size: 116pt;
		line-height: 90pt;
	}
}

@media screen and (max-width: 768px) {
	.swiper-container {
		height: 64vh;
	}
	.swiper-slide img {
		height: 64vh;
	}
	.swiper-text h1 {
		font-size: 32pt;
		line-height: 1.8;
	}
	.swiper-container h2 {
		font-size: 100pt;
		line-height: 76pt;
	}
}

@media screen and (max-width: 650px) {
	.swiper-container {
		height: 56vh;
	}
	.swiper-slide img {
		height: 56vh;
	}
	.swiper-text h1 {
		font-size: 26pt;
	}
	.swiper-text h1 a {
		margin-left: -5px;
	}
	.swiper-container h2 {
		font-size: 80pt;
		line-height: 60pt;
	}
}

@media screen and (max-width: 520px) {
	.swiper-text h1 {
		font-size: 22pt;
	}
	.swiper-text h1 a {
		font-size: 9pt;
	}
	.swiper-text h1 a .arrow_02 {
		width: 20px;
		margin-left: 5px;
	}
	.swiper-container h2 {
		font-size: 66pt;
		line-height: 50pt;
	}
}

/***** Arrow *****/

.arrow_01,
.arrow_02 {
	display: inline-block;
	width: 40px;
	height: 5px;
	transform: skew(45deg);
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	margin-left: 10px;
}

.arrow_01 {
	border-bottom: 1px solid #000;
	border-right: 1px solid #000;
}

.arrow_02 {
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
}

.arrow_03 {
	position: absolute;
	left: 0;
	top: 7px;
	display: inline-block;
	width: 50px;
	height: 5px;
	transform: skew(-45deg);
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	border-bottom: 1px solid #d60b35;
	border-left: 1px solid #d60b35;
}

.arrow_04 {
	display: inline-block;
	width: 40px;
	height: 5px;
	transform: skew(-45deg);
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}

@media screen and (max-width: 650px) {
	.arrow_01,
	.arrow_02 {
		width: 30px;
		margin-left: 7px;
	}
	.arrow_04 {
		width: 30px;
	}	
}

/***** Our Service *****/

#our_service {
	position: relative;
	width: 100%;
	padding: 110px 0 100px;
	background-image: url(/wp-content/themes/agent-resource/images/bg_gradation.jpg);
	background-position: center top;
	background-size: cover;
	overflow: hidden;
	z-index: 0;
}

#our_service p {
	margin-top: 30px;
	font-size: 14pt;
	font-weight: 500;
}

#service_menu {
	max-width: 1280px;
	height: 540px;
	margin: 65px auto;
	background-position: right;
	background-size: 540px;
	background-repeat: no-repeat;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.os_01 { background-image: url(/wp-content/themes/agent-resource/images/os_01.jpg); }
.os_02 { background-image: url(/wp-content/themes/agent-resource/images/os_02.jpg); }
.os_03 { background-image: url(/wp-content/themes/agent-resource/images/os_03.jpg); }

.service_list {
	width: calc(100% - 600px);
	border-top: 1px solid #dcdcdc;
	text-align: left;
}

.service_list li {
	position: relative;
	height: 179px;
	margin: 0;
	font-size: 11pt;
	font-weight: 500;
	line-height: 1.6;
	border-bottom: 1px solid #dcdcdc;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.service_list a:hover li {
	background-color: rgba(255,255,255,0.50);
}

.service_list li span {
	position: absolute;
	width: 93%;
	top: 47%;
	left: 20px;
	transform: translateY(-53%);
	-webkit-transform: translateY(-53%);
}

.service_list h3 {
	margin-bottom: 5px;
	font-size: 18pt;
	font-weight: 700;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

@media screen and (max-width: 1280px) {
	#our_service {
		padding: 90px 0 100px;
	}
	#our_service p {
		font-size: 13pt;
	}
	#service_menu {
		background-size: 460px;
	}
	.service_list {
		width: calc(100% - 510px);
	}
	.service_list h3 {
		font-size: 17pt;
	}
}

@media screen and (max-width: 1024px) {
	#our_service p {
		font-size: 12pt;
	}
	#service_menu {
		background-size: 400px;
		height: 510px;
	}
	.service_list {
		width: calc(100% - 430px);
	}
	.service_list li {
		height: 170px;
		font-size: 10.5pt;
	}
	.service_list li span {
		position: absolute;
		width: 96%;
		top: 47%;
		left: 12px;
		transform: translateY(-53%);
		-webkit-transform: translateY(-53%);
	}
	.service_list h3 {
		font-size: 16pt;
	}
}

@media screen and (max-width: 950px) {
	#service_menu {
		background-size: 360px;
	}
	.service_list {
		width: calc(100% - 390px);
	}
	.service_list h3 {
		font-size: 15pt;
	}
}

@media screen and (max-width: 768px) {
	#service_menu {
		background-size: 300px;
		height: auto;
	}
	.service_list {
		width: calc(100% - 320px);
	}
	.service_list li {
		height: auto;
		display: block;
		font-size: 10.5pt;
	}
	.service_list li span {
		position: relative;
		top: 0;
		transform: translateY(0);
		-webkit-transform: translateY(0);
		padding: 20px 0 35px;
		display: block;
	}
	.service_list h3 {
		font-size: 14pt;
	}
}

@media screen and (max-width: 480px) {
	#service_menu {
		background-size: 200px;
		height: auto;
	}
	.service_list {
		width: calc(100% - 220px);
	}
}

.service_list a {
	display: block;
	width: 100%;
	height: 100%;
	color: #000;
}

.service_list a:hover h3 {
	position: relative;
	padding-left: 32px;
}

.service_list a h3::after {
	width: 0;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.service_list a:hover h3::after {
	position: absolute;
	top: 49%;
	left: 0;
	transform: translateY(-51%);
	-webkit-transform: translateY(-51%);
	content: '';
	width: 20px;
	height: 4px;
	background-color: #d60b35;
}

.service_list a .arrow_01 {
	position: absolute;
	bottom: 2.5vh;
	right: 20px;
}

.service_list a:hover .arrow_01 {
	right: 15px;
}

/***** Scroll *****/

.scroll {
	height: 400px;
	overflow-y: scroll;
	overflow-x: hidden;
}

.scroll {
	--sb-track-color: rgba(0, 0, 0, .3);
	--sb-thumb-color: #40a1c6;
	--sb-size: 7px;
	scrollbar-color: var(--sb-thumb-color) 
					 var(--sb-track-color);
}
  
.scroll::-webkit-scrollbar {
	width: var(--sb-size) 
}
  
.scroll::-webkit-scrollbar-track {
	background: var(--sb-track-color);
	border-radius: 7px;
}
  
.scroll::-webkit-scrollbar-thumb {
	background: var(--sb-thumb-color);
	border-radius: 7px;
}

/***** News Archive *****/

#news_archive {
	max-width: 1515px;
	margin: 25px auto;
}

.news_archive_grid {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center;
}

.news_archive_grid li {
	width: calc((100% / 5) - 50px);
	margin: 25px;
	text-align: left;
	font-size: 0;
}

.news_archive_grid li img {
	position: relative;
	top: 0;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.news_archive_grid li a:hover img {
	top: -5px;
}

@media screen and (max-width: 1280px) {
	.news_archive_grid li {
		width: calc((100% / 4) - 40px);
		margin: 20px;
	}
}

.news_archive_grid li h5 {
	margin-top: 18px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 11.5pt;
	line-height: 1.0;
}

.news_archive_grid li h4 {
	margin-top: 15px;
	font-weight: 500;
	font-size: 11.5pt;
	line-height: 1.5;
}

.news_archive_grid li a {
	width: 100%;
	height: 100%;
	color: #000;
}

.cell.is-empty {
	height: 0;
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 0;
	margin-bottom: 0;
}

/***** News *****/

#news {
	position: relative;
	background:
		url(/wp-content/themes/agent-resource/images/bg_news_left.png) no-repeat left center,
		url(/wp-content/themes/agent-resource/images/bg_news_right.png) no-repeat right center,
		linear-gradient(60deg, #000, #0d3e62);
	padding: 70px 0 80px;
}

#news_contents {
	position: relative;
	margin: 0 auto;
	width: 70.0vw;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
	color: #fff;
	text-align: left;
}

#news_contents h2 {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 24pt;
	line-height: 1.0;
}

#news_contents .scroll {
	margin-top: 30px;
}

#news_contents table {
	width: 96%;
	border-collapse: collapse;
}

#news_contents table th,
#news_contents table td {
	vertical-align: top;
	font-size: 11pt;
	line-height: 1.5;
	padding: 6px 0;
}

#news_contents table th {
	width: 110px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 400;
	letter-spacing: 1.0px;
}

@media screen and (max-width: 1280px) {
	#news {
		background:
			url(/wp-content/themes/agent-resource/images/bg_news_left.png) no-repeat left -70px center,
			url(/wp-content/themes/agent-resource/images/bg_news_right.png) no-repeat right -70px center,
			linear-gradient(60deg, #000, #0d3e62);
	}
	#news_contents {
		width: 76.0vw;
	}
}

@media screen and (max-width: 1024px) {
	#news {
		background:
			url(/wp-content/themes/agent-resource/images/bg_news_left.png) no-repeat left -90px center,
			url(/wp-content/themes/agent-resource/images/bg_news_right.png) no-repeat right -90px center,
			linear-gradient(60deg, #000, #0d3e62);
	}
}

@media screen and (max-width: 950px) {
	#news_contents h2 {
		font-size: 18pt;
	}
	#news_contents table th {
		width: 100px;
	}
}

@media screen and (max-width: 768px) {
	#news_contents {
		width: 88.0vw;
	}
	#news_contents h2 {
		font-size: 17pt;
	}
	#news_contents table th {
		width: 90px;
	}
	#news_contents table th,
	#news_contents table td {
		font-size: 10.5pt;
	}
}

#news_contents table td {
	font-weight: 200;
}

#news_contents p {
	margin-top: 30px;
}

#news_contents table td a {
	color: #fff;
}

#news_contents table td a:hover {
	color: #fff;
}

#news_contents table td a[target="_blank"] {
	background: url(/wp-content/themes/agent-resource/images/icon_blank_wh.svg) no-repeat;
	background-size: 8px;
	background-position: top 3px right;
	padding-right: 12px;
	margin-right: 5px;
}

@media screen and (max-width: 768px) {
	#news_contents table td a[target="_blank"] {
		background: url(/wp-content/themes/agent-resource/images/icon_blank_wh.svg) no-repeat;
		background-size: 6px;
		background-position: top 3px right;
	}
}

/***** Service Contents *****/

.service {
	max-width: 1515px;
	margin: 80px auto 0;
	overflow: hidden;
}

.service_body {
	float: left;
	width: 50%;
	margin-left: 3%;
	text-align: left;
}

.service_title {
	padding-bottom: 35px;
	margin-bottom: 35px;
	border-bottom: 1px solid #000;
	overflow: hidden;
}

.service_title h3 {
	font-size: 24pt;
	line-height: 1.4;
}

.service_title p {
	margin-top: 20px;
}

.service_body h4 {
	font-size: 16pt;
}

.service_image {
	float: right;
	position: relative;
	width: 36%;
	margin-bottom: 100px;
	font-size: 0;
}

.service_image img {
	position: relative;	
	z-index: 2;
}

.service_image::before {
	position: absolute;	
	left: -15%;
	bottom: -25%;
	width: 30%;
	aspect-ratio: 1;
	content: '';
	background-color: #f3f3f3;
	z-index: 1;
}

.recruitment-support .service_image {
	float: right;
	position: relative;
	width: 44%;
	margin-bottom: 100px;
	font-size: 0;
}

.recruitment-support .service_image::before {
	display: none;
}

/***** Features *****/

.features_wrap {
	background-color: #f3f3f3;
	padding: 80px 0 90px;
	margin-top: 50px;
}

.web-production .features_wrap {
	padding: 80px 0 60px;
}

.ruled_line .section .heading {
	font-size: 26pt;
}

@media screen and (max-width: 1146px) {
	.ruled_line .section .heading {
		font-size: 24pt;
	}
}

@media screen and (max-width: 1024px) {
	.ruled_line .section .heading {
		font-size: 22pt;
	}
}

.ruled_line .section>p {
	margin-top: 20px;
}

#features {
	max-width: 1515px;
	margin: 25px auto 0;
}

.features_grid {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center;
}

.features_grid li {
	width: calc((100% / 3) - 60px);
	max-width: 400px;
	margin: 30px;
	text-align: left;
	font-size: 0;
}

.features_grid li img {
	position: relative;
	top: 0;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.features_grid li a:hover img {
	top: -5px;
}

@media screen and (max-width: 1146px) {
	.features_grid li {
		width: calc((100% / 3) - 40px);
		margin: 20px;
	}
}

.features_grid li h3 {
	margin-top: 20px;
	font-weight: 700;
	font-size: 18pt;
	line-height: 1.5;
}

.features_grid li h4 {
	margin-top: 20px;
	font-weight: 700;
	font-size: 18pt;
	line-height: 1.3;
}

.features_grid li h4 span.en {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 11pt;
	line-height: 1.0;
}

.features_grid li h5 {
	margin-top: 10px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	font-size: 11pt;
	line-height: 1.0;
}

.features_grid li p {
	margin-top: 20px;
	font-size: 12pt;
	line-height: 1.5;
}

/***** Features Round Box  *****/

#features_round {
	max-width: 1680px;
	margin: 25px auto 0;
}

.features_round_grid {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center;
}

.features_round_grid li {
	width: calc((100% / 4) - 40px);
	max-width: 320px;
	margin: 20px;
	text-align: left;
	font-size: 0;
	background: #fff;
	padding: 10px 0 35px;
	border-radius: 30px;
	filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.15));
}

.features_round_grid li img {
	width: calc(100% - 50px);
	position: relative;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.features_round_grid li h4 {
	margin-top: 20px;
	padding: 0 25px;
	font-weight: 700;
	font-size: 18pt;
	line-height: 1.3;
}

.features_round_grid li p {
	margin-top: 20px;
	padding: 0 25px;
	font-size: 11pt;
	line-height: 1.5;
}

/***** Industries *****/

#industries {
	max-width: 1150px;
	margin: 25px auto 0;
}

.industries_grid {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center;
}

.industries_grid li {
	position: relative;
	width: calc(20% - 50px);
	aspect-ratio: 1;
	background-color: #fff;
	border-radius: 9999px;
	margin: 25px;
	text-align: center;
    filter: drop-shadow(0 3px 3px rgba(0, 0, 0, 0.1));
}

.industries_grid li img {
	position: absolute;
	width: 50%;
	top: 50%;
	left: 50%;
	-webkit-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
	margin-top: -15px;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.industries_grid li h4 {
	position: absolute;
	bottom: 13%;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	font-size: 16pt;
	line-height: 1.0;
}

/***** Our Works *****/

#our_works {
	position: relative;
	width: 100%;
	padding: 70px 0 90px 0;
	background: url(/wp-content/themes/agent-resource/images/bg_grid.png) center center;
	overflow: hidden;
}

/***** Works Archive *****/

#works_archive {
	max-width: 1515px;
	margin: 50px auto;
}

.home #works_archive {
	margin: 25px auto;
}

.works_archive_grid {
	display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	justify-content: center;
}

.works_archive_grid li {
	width: calc((100% / 4) - 50px);
	margin: 30px 25px;
	text-align: left;
	font-size: 0;
}

.works_archive_grid li img {
	position: relative;
	top: 0;
	filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.2));
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.works_archive_grid li a:hover img {
	top: -5px;
}

@media screen and (max-width: 1280px) {
	.works_archive_grid li {
		width: calc((100% / 3) - 40px);
		margin: 20px;
	}
}

.works_archive_grid li h4 {
	margin-top: 15px;
	font-weight: 700;
	font-size: 13pt;
	line-height: 1.5;
}

.works_archive_grid li .url {
	font-size: 10.5pt;
}

.works_archive_grid li p {
	margin-top: 10px;
}

.icon_cat {
	display: inline-block;
	font-size: 10pt;
	line-height: 1.0;
	border-radius: 9999px;
	background: #eaeaea;
	padding: 8px 12px;
	margin: 10px 10px 0 0;
}

.works_archive_grid li a {
	width: 100%;
	height: 100%;
	color: #000;
}

/***** Works Detail *****/

.works_detail_box {
	background: #f3f3f3;
	margin: 50px 0 50px;
	padding: 100px 0;
	text-align: center;
}

.works_detail_box img {
	filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.2));
}

/***** Voices Archive *****/

#voices_archive {
	max-width: 1515px;
	margin: 25px auto;
}

.voices_archive_grid li {
	width: 100%;
	margin-top: 50px;
	text-align: left;
	overflow: hidden;
}

.voices_archive_grid li .icon_cat,
.voices_detail_box .icon_cat {
	background-color: #fff;
}

.voices_archive_grid li img {
	width: 162px;
}

.voices_archive_grid li:nth-child(odd) img { float: left; }
.voices_archive_grid li:nth-child(even) img { float: right; }

.voices_archive_grid li div {
	position: relative;
	width: calc(100% - 197px);
	background-color: #f3f3f3;
	padding: 20px 0 60px;
}

.voices_archive_grid li:nth-child(odd) div { float: right; }
.voices_archive_grid li:nth-child(even) div { float: left; }

.voices_archive_grid li:nth-child(odd) div:before {
    content: "";
    position: absolute;
    top: 50px;
    left: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-right: 15px solid #f3f3f3;
}

.voices_archive_grid li:nth-child(even) div:before {
    content: "";
    position: absolute;
    top: 50px;
    left: 100%;
    margin-top: -15px;
    border: 15px solid transparent;
    border-left: 15px solid #f3f3f3;
}

.voices_archive_grid li p,
.voices_archive_grid li h4 {
	padding: 0 40px;
}

.voices_archive_grid li h4 {
    margin-top: 15px;
	font-size: 14pt;
}

.number {
	display: inline-block;
	margin-right: 10px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
	font-size: 18pt;
	line-height: 1.0;
	vertical-align: middle;
}

.voices_archive_grid li .button_04 {
	position: absolute;
	right: 40px;
	bottom: 30px;
}

/***** Voices Detail *****/

.voices_detail_box {
	background: #f3f3f3;
	margin: 50px 0 50px;
	padding: 20px 0 90px;
	text-align: center;
}

.voices_detail_box h3,
.voices_detail_box p {
	padding: 0 50px;
	text-align: left;
}

.voices_detail_box h3 {
	margin-top: 20px;
}

.voices_detail_box img {
	margin-top: 40px;
}

/***** Button *****/

.button_01,
.button_02,
.button_03 {
	position: relative;
	display: inline-block;
	width: 320px;
	height: 60px;
	line-height: 59px;
	border: 1px solid #000;
	border-radius: 3px;
	white-space: nowrap;
	color: #000;
	font-weight: 700;
	font-size: 12.5pt !important;
	text-align: center;
	-webkit-transition: .3s all ease;
	transition: .3s all ease;
	z-index: 100;
}

.button_02 {
	background-color: #fff;
	border: 1px solid #fff;
	color: #000;
}

.button_03 {
	background-color: #d60b35;
	border: 1px solid #d60b35;
	color: #fff;
}

.button_01 .arrow_01,
.button_02 .arrow_01,
.button_03 .arrow_02 {
	position: absolute;
	right: 20px;
	top: 25px;
}

.button_01 .arrow_04,
.button_02 .arrow_04,
.button_03 .arrow_04 {
	position: absolute;
	left: 20px;
	top: 25px;
}

.button_01:hover,
.button_02:hover {
	color: #000;
}

.button_03:hover {
	color: #fff;
}

.button_01:hover .arrow_01,
.button_02:hover .arrow_01,
.button_03:hover .arrow_02 {
	right: 15px;
}

.button_01:hover .arrow_04,
.button_02:hover .arrow_04,
.button_03:hover .arrow_04 {
	left: 15px;
}

.button_04 {
	position: relative;
	display: inline-block;
	color: #000;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 500;
	font-size: 11.5pt !important;
	line-height: 1.0;
	letter-spacing: 1px;
	-webkit-transition: .3s all ease;
	transition: .3s all ease;
	padding-right: 50px;
}

.button_04:hover {
	color: #000;
}

.button_04 .arrow_01 {
	position: absolute;
	right: 0;
	bottom: 5px;
	margin: 0;
}

.button_04:hover .arrow_01 {
	right: -5px;
}

/***** Layouts *****/

.ruled_line {
	background-image: linear-gradient(90deg, transparent calc(100% - 1px), #eaeaea calc(100% - 1px));
	background-size: 249px;
	background-repeat: repeat;
	background-position: center center;
	padding-bottom: 200px;
	overflow: hidden;
}

.message_box {
	background: #fafafa;
	border: 1px solid #eaeaea;
	width: 96%;
	max-width: 1200px;
}

.message_box p {
	padding: 50px;
	text-align: center;
}

.note_box {
	background: #fff;
	border: 1px solid #d60b35;
	width: calc(100% - 2px);
	padding: 25px 0;
	font-size: 94%;
}

.note_box h4,
.note_box p {
	padding: 0 25px;
}

.note_box .list_basic {
	margin: 0 25px;
}

.note_box .list_basic li {
	margin-bottom: 0;
}

.round_box {
	max-width: 600px;
	margin: 50px auto;
	background: #fff;
	padding: 50px;
	border-radius: 30px;
	filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.15));
}

.w1200 {
	width: 1200px;
	margin: 0 auto;
	position: relative;
	text-align: left;
	overflow: hidden;
}

.section.w1200 {
	margin-top: 90px;
}

.section.border_bottom {
	overflow: hidden;
	padding-bottom: 90px;
	border-bottom: 1px solid #000;
}

.w1200 .column_left {
	float: left;
	width: 33.3%;
}

.w1200 .column_right {
	float: right;
	width: 66.6%;
}

.w1200.company_greeting .column_left {
	float: left;
	width: 42%;
}

.w1200.company_greeting .column_left h3 {
	font-size: 22pt;
}

.w1200.company_greeting .column_right {
	float: right;
	width: 50%;
}

.w1200 .column_box_left,
.w1200 .column_box_right {
	width: calc(46% - 100px);
	border-radius: 30px;
	padding: 50px;
}

.w1200 .column_box_left {
	float: left;
	background-color: #f5f5f9;
}

.w1200 .column_box_right {
	float: right;
	background-color: #f9f5f5;
}

.w1200 .text_box img.fr {
	margin-left: 20px;
}

.w1200 .text_box img.fl {
	margin-right: 20px;
}

@media screen and (max-width: 1024px) {
	.w1200 p,
	.w1200 table,
	.w1200 ul li,
	.w1200 ol li {
		font-size: 11pt;
	}
}

@media screen and (max-width: 768px) {
	.w1200 p,
	.w1200 table,
	.w1200 ul li,
	.w1200 ol li {
		font-size: 10.5pt;
	}
}

@media screen and (max-width: 520px) {
	.w1200 .text_box img.fl,
	.w1200 .text_box img.fr {
		max-width: 200px;
	}
}

.text_box p {
	margin-top: 40px;
}

.text_box .indent {
	text-indent: 1em;
	margin-top: 1.5em;
}

.text_box .image {
	margin: 40px 0;
	text-align: center;
}

@media screen and (max-width: 1200px) {
	.w1200 {
		width: 96%;
		margin: 0 auto;
	}
}

@media screen and (max-width: 768px) {
	#container section:last-child {
		margin-bottom: 45px;
	}
}

img {
	max-width: 100%;
	height: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.flex_box {
	display: flex;
	gap: 7.0vw;
	margin-top: 50px;
}

.flex_left {
	max-width: 520px;
	width: 43.3333%;
}

.flex_left img {
	width: 100%;
	height: auto;
}

/***** Page Title *****/

.page_title {
	position: relative;
	width: 100%;
	height: 500px;
	overflow: hidden;
	color: #fff;
}

.page_title:before {
	position: absolute;
	content: "";
	width: 4px;
	height: 130px;
	background: #d60b35;
	left: 50%;
	bottom: 0;
}

.news .page_title,
.contact .page_title,
.privacy-policy .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .4), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_news.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.web-production .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_web-production.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.system-development .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_system-development.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.recruitment-support .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_recruitment-support.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.works .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .5), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_works.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.voices .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_voices.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.company .page_title {
	background: linear-gradient(180deg, rgba(0, 0, 0, .2), rgba(0, 0, 0, .2)) ,url(/wp-content/themes/agent-resource/images/bg_company.jpg) no-repeat;
	background-position: bottom center;
	background-size: cover;
}

.page_title h1 {
	position: absolute;
	bottom: 220px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-size: 32pt;
	line-height: 1.0;
	letter-spacing: 1px;
	text-shadow: 0px 1px 1px rgba(0, 0, 0, .3);
}

.page_title h2 {
	position: absolute;
	bottom: 170px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	font-size: 18pt;
	line-height: 1.0;
	text-shadow: 0px 1px 1px rgba(0, 0, 0, .3);
}

/***** Topic path *****/

.topic_path {
	position: relative;
	padding: 18px 0 17px;
	overflow: hidden;
	background-color: #fff;
	border-bottom: 1px solid #eaeaea;
}

.topic_path ul {
	margin-left: 2.0vw;
	font-size: 9.5pt;
	text-align: left;
	line-height: 1.1;
}

@media screen and (max-width: 950px) {
	.topic_path {
		padding: 15px 0;
	}
	.topic_path ul {
		font-size: 9pt;
	}
}

.topic_path li {
	position: relative;
	display: inline-block;
	padding-right: 20px;
	margin-left: 10px;
	max-width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	color: #000;
}

@media screen and (max-width: 480px) {
	.topic_path li {
		max-width: 200px;
	}
}

.topic_path li:first-child {
	margin-left: 0;
}

.topic_path li:after {
	position: absolute;
	content: "";
	width: 10px;
	height: 1px;
	background: #000;
	right: 0;
	bottom: 52%;
}

.topic_path li:last-child:after {
	background: none;
}

.topic_path a {
	color: #000;
}

.topic_path a:hover {
	text-decoration: underline;
}

/***** Heading *****/

.heading {
    position: relative;
    top: 0;
    left: 0;
	display: inline-block;
	font-size: 36pt;
	font-weight: 700;
	line-height: 1.0;
	color: #000;
	padding-bottom: 15px;
}

.heading::before {
    position: absolute;
    bottom: 0;
	left: 0;
	width: 100%;
    content: '';
	border-bottom: 2px solid #d60b35;
}

.heading_en {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 40pt;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 2px;
}

.home .heading::before {
    position: absolute;
    bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	border-bottom: 2px solid #d60b35;
}

.w1200.company_staff .heading {
	font-size: 40pt;
}

.w1200.company_staff .heading::before {
    position: absolute;
    bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
}

@media screen and (max-width: 1146px) {
	.heading {
		font-size: 34pt;
	}
	.heading_en {
		font-size: 36pt;
	}
	.w1200.company_staff .heading {
		font-size: 36pt;
	}
}

@media screen and (max-width: 1024px) {
	.heading {
		font-size: 32pt;
	}
	.heading_en {
		font-size: 34pt;
	}
	.w1200.company_staff .heading {
		font-size: 34pt;
	}
}

@media screen and (max-width: 768px) {
	.heading {
		font-size: 28pt;
		padding-bottom: 10px;
	}
	.heading_en {
		font-size: 30pt;
	}
	.w1200.company_staff .heading {
		font-size: 30pt;
	}
}

.sub_heading {
    position: relative;
	font-size: 30pt;
	font-weight: 700;
	line-height: 1.0;
	color: #000;
	padding: 25px 0;
	border-top: 2px solid #d60b35;
	border-bottom: 2px solid #d60b35;
	text-align: center;
}

.sub_heading_line {
    position: relative;
	font-size: 20pt;
	font-weight: 700;
	line-height: 1.5;
	color: #000;
	padding-bottom: 10px;
	border-bottom: 2px solid #d60b35;
}

.sub_heading_black {
	font-size: 20pt;
	font-weight: 700;
	color: #000;
}

/***** Table *****/

.table_01 {
	width: 100%;
	border-collapse: collapse;
}

.table_01 th,
.table_01 td {
	vertical-align: top;
	padding: 1.0em 0;
}

.table_01 th {
	width: 300px;
	border-bottom: 1px solid #000;
}

.table_01 tr:first-of-type th {
	border-top: 1px solid #000;
}

.table_01 td {
	padding-left: 1.0em;
	border-bottom: 1px solid #e3e3e3;
}

.table_01 tr:first-of-type td {
	border-top: 1px solid #e3e3e3;
}

@media screen and (max-width: 950px) {
	.table_01 th,
	.table_01 td {
		font-size: 11pt;
	}
}

@media screen and (max-width: 768px) {
	.table_01 th,
	.table_01 td {
		font-size: 10.5pt;
	}
}

/***** List style *****/

.list_basic li {
	position: relative;
	padding-left: 1.0em;
	margin-left: 0;
	margin-bottom: 0.3em;
}

.list_basic.hor li {
	display: inline-block;
	margin-right: 15px;
}

.list_basic li:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 5px;
	background: #d60b35;
	position: absolute;
	top: 0.6em;
	left: 0;
}

.list_checkbox {
	list-style: none;
	text-align: left;
}

.list_checkbox li {
	background: url(/wp-content/themes/agent-resource/images/checkbox.png) no-repeat 0 3px;
	background-size: auto 22px;
	padding-left: 35px;
	margin-bottom: 5px;
}

.list_num {
	margin-left: 35px;
}

.list_num li {
	margin-bottom: 0.5em;
}

.list_num2 {
	margin-left: 15px;
	list-style: none;
	counter-reset: number;
}

.list_num2 li {
	position: relative;
	padding-left: 30px;
	margin-bottom: 0.5em;
}

.list_num2 li::before {
	counter-increment: number;
	content: counter(number) ")";
	position: absolute;
	left: 0;
}

/***** Google map *****/

.gmap iframe {
	width: 100%;
	height: 500px;
}

/***** Form *****/

.mw_wp_form input,
.mw_wp_form textarea,
.mw_wp_form select {
	font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-weight: 500;
	font-size: 12pt;
}

.mw_wp_form input[type=text],
.mw_wp_form input[type=email],
.mw_wp_form input[type=password] {
	padding: 10px;
	border: 1px solid #bbb;
	border-radius: 3px;
}

.mw_wp_form textarea {
	padding: 10px;
	border: 1px solid #bbb;
	width: 500px;
	height: 150px;
	border-radius: 3px;
}

@media screen and (max-width: 520px) {
	.mw_wp_form input[type=text],
	.mw_wp_form input[type=email],
	.mw_wp_form input[type=password] {
		max-width: 94%;
	}
	.mw_wp_form textarea {
		width: 94%;
	}
}

.mw_wp_form select {
	padding: 8px 10px 12px 10px;
	border: 1px solid #bbb;
	border-radius: 3px;
}

:placeholder-shown,
::-webkit-input-placeholder,
:-ms-input-placeholder {
	color: #d0d0d0;
}

:-moz-placeholder,
::-moz-placeholder {
	color: #d0d0d0;
	opacity: 1;
}

/***** Bottom Teaser *****/

#teaser {
	position: relative;
	display: flex;
	width: 100%;
	height: 500px;
	background: url(/wp-content/themes/agent-resource/images/bg_contact.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
    background-color: rgba(32, 32, 32, .50);
    background-blend-mode: darken;
}

#teaser_left {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 50%;
	height: 200px;
	padding: 50px 0;
	color: #fff;
	border-right: 1px solid #fff;
}

#teaser_left h2 {
	width: 80%;
	margin: 0 auto;
	padding-bottom: 20px;
	color: #fff;
	text-align: left;
}

#teaser_left p {
	width: 80%;
	margin: 15px auto 0;
	font-size: 11pt;
	text-align: left;
}

#teaser_right {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	width: 50%;
	height: 240px;
	color: #fff;
}

#teaser_right h2 {
	margin-top: 20px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-size: 42pt;
	line-height: 1.0;
	letter-spacing: 1px;
}

#teaser_right p {
	margin-top: 10px;
}

#teaser_right .button_02 {
	margin-top: 30px;
}

/***** Chat bot *****/

#chatbot {
	position: absolute;
	right: 0;
	top: -180px;
	max-width: 336px;
	padding: 27px;
	background: url(/wp-content/themes/agent-resource/images/bg_chatbot.jpg) no-repeat;
	background-position: center center;
	background-size: cover;
	border: 5px solid #fff;
	z-index: 10;
	text-align: left;
	filter: drop-shadow(0 5px 10px rgba(0, 0, 0, 0.2));
}

#chatbot img {
	float: right;
	width: 100px;
	margin: -15px -10px 0 0;
}

#chatbot h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-size: 34pt;
	line-height: 1.0;
	letter-spacing: 1px;
}

#chatbot h4 {
	font-size: 12.5pt;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 10px;
	padding-bottom: 15px;
	border-bottom: 2px solid #d60b35;
}

#chatbot p {
	clear: both;
	padding-top: 15px;
	font-size: 10.5pt;
	line-height: 1.5;
}

#chatbot a {
	display: block;
	padding: 7px 0;
	margin: 15px auto 0;
	background-color: #d60b35;
	color: #fff;
	text-align: center;
	border-radius: 3px;
}

#chatbot a:hover {
	background-color: #e61b45;
}

/***** Scroll up *****/

.scroll_up {
	position: absolute;
	top: 95px;
	right: -95px;
	transform: rotate(90deg);
	display: inline-block;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	font-size: 10.5pt;
	letter-spacing: 1px;
	color: #d60b35 !important;
	padding-left: 60px;
}

.scroll_up:hover .arrow_03 {
	left: -5px;
}

/***** Footer *****/

#footer {
	position: relative;
	width: 92%;
	margin: 0 auto;
}

#footer_top {
	position: relative;
	height: 100px;
	border-bottom: 1px solid #dbdbdb;
}

#footer_top p {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	font-size: 10.5pt;
	text-align: left;
}

#footer_top ul {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	text-align: right;
	font-size: 0;
}

#footer_top ul li {
	display: inline-block;
	font-size: 10.5pt;
	white-space: nowrap;
	line-height: 1.0;
	margin-right: 1.75vw;
}

#footer_top ul li:last-child {
	margin-right: 0;
}

#footer a {
	color: #000;
}

#footer a.blank {
	background: url(/wp-content/themes/agent-resource/images/icon_blank.svg) no-repeat;
	background-size: 11px;
	background-position: top 4px right;
}

#footer_bottom {
	position: relative;
	height: 130px;
}

#footer_left {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#footer_left p {
	text-align: left;
}

#footer_left p img {
	float: left;
	width: 180px;
	margin: -4px 30px 0 0;
}

#footer_left p {
	font-size: 10.5pt;
	font-weight: 700;
}

#footer_right {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

#footer_right ul {
	text-align: right;
	font-size: 0;
}

#footer_right ul li {
	display: inline-block;
	font-size: 10.5pt;
	line-height: 1.0;
	margin-right: 1.5vw;
	vertical-align: middle;
}

#footer_right ul li.sns {
	margin-right: 1.0vw;
}

#footer_right ul li.sns img {
	height: 23px;
}

#footer_right ul li:last-of-type {
	margin-right: 0;
}

#footer address {
	margin-top: 20px;
	font-style: normal;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: 700;
	text-align: right;
	letter-spacing: 1px;
	font-size: 9pt;
}
