@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Oswald:400,500&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:300,500,700&display=swap');

body{
	margin: 0;
	padding: 0;
	font-family: "游ゴシック",YuGothic,"Hiragino Kaku Gothic ProN","メイリオ", Meiryo, sans-serif;
	line-height: 1.6;
	font-size: 14px;
	color: #333333;
}

*, *:after, *:before { -webkit-box-sizing: border-box; box-sizing: border-box; }

a{
	color: #000000;
	text-decoration: none;
}

/* @group clear */

header:after,
.contents_inner:after,
footer:after,
#footer_down:after,
.index_style_container:after,
.index_recruit_container ul:after,
.keywords_point_per:after,
.keywords_map_container:after,
.modal_contents:after,
.connector_contents_photo:after,
.connector_contents_long:after,
.businessflow_people:after,
.base_tab_container:after,
.base_people:after,
.base_use:after,
.base_workperson_content:after,
.interview_tab_container:after,
.interview_block:after,
.nav_head:after,
.businessflow_tab_box:after,
.businessflow_tab_box a:after,
.base_use_left:after,
.base_use_right:after,
.welfare_photo_container:after,
.welfare_sports_container:after,
.requirements_tab ul:after,
.history_contents_inner:after,
.history_contents_photo_container:after,
.interview_profile_inner:after,
.interview_careerstep dl:after{
	visibility: hidden;
	display: block;
	font-size:0;
	content: " ";
	clear: both;
	height: 0;
}
/* @end */

.contents_inner{
	max-width: 1120px;
	padding: 0 20px;
	margin: 0 auto;
}

.fullimg{
	width: 100%;
	height: auto;
}

#header_sp_menu{
	display: none;
}

article{
	position: relative;
}

.boxlink {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	z-index: 100;
	display: block;
}
a.boxlink{
	color: #00000000;
}


.effect{
  -moz-transition-duration: 0.6s;
  -o-transition-duration: 0.6s;
  -webkit-transition-duration: 0.6s;
  transition-duration: 0.6s;
  -moz-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
  -moz-transition-property: all;
  -o-transition-property: all;
  -webkit-transition-property: all;
  transition-property: all;
  opacity: 1;
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.trigger{
  opacity: 0;
  -moz-transform: translateY(50px);
  -ms-transform: translateY(50px);
  -webkit-transform: translateY(50px);
  transform: translateY(50px);
}

.text-combine {
	-webkit-text-combine: horizontal;
	-ms-text-combine-horizontal: all;
	text-combine-upright: all;
}
.ov-x_hidden{
	overflow-x: hidden;
}

.index_works_nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
  margin: 24px auto 0;
}

.index_works_prev,
.index_works_next {
	width: 39px;
    height: 39px;
    border-radius: 50px;
    border: 1px solid #163C80;
  background: #fff;
  text-indent: -9999px;
  position: relative;
  cursor: pointer;
	transition : all 0.5s ease 0s;
}

.index_works_prev::before,
.index_works_next::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../img/index_works_arrow_pr.svg") no-repeat center / 8px ;
}
.index_works_next::before {
  background: url("../img/index_works_arrow_ne.svg") no-repeat center / 8px ;
}

.index_works_prev:hover ,
.index_works_next:hover{
	background-color: #163C80;
	transition : all 0.5s ease 0s;
}
.index_works_prev:hover::before {
  background: url("../img/index_works_arrow_pr_w.svg") no-repeat center / 8px ;
}
.index_works_next:hover::before {
  background: url("../img/index_works_arrow_ne_w.svg") no-repeat center / 8px ;
}



.fadeup.is-animated {
  animation: fadeup 1s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
 
@keyframes fadeup {
  0% {
    transform: translateY(30px);
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.smooth {
  clip-path: inset(0 100% 0 0);
  display: inline-block;
  transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);
  transition-property: clip-path;
}
.smooth.is-animated {
  clip-path: inset(0);
}

@media (max-width: 768px) {
  .index_works_nav {
    position: absolute;
    top: 60%; /* slick-listの上下中央に配置 */
    left: 0;
    width: 100%;
    transform: translateY(-60%);
    display: flex;
    justify-content: space-between; /* 左右に矢印を配置 */
    align-items: center;
    pointer-events: none; /* 中央配置してもクリックを透過 */
  }

  .index_works_prev,
  .index_works_next {
    pointer-events: auto; /* ボタン自体はクリックできるように */
    position: relative;
    top: 0;
    transform: none;
	          background-color: transparent;
	  border:none;
  }
	.index_works_prev::before, .index_works_next::before {
    content: "";
    position: absolute;
    inset: 0;
    background: url(../img/index_works_arrow_pr.svg) no-repeat center / 20px;
}
.index_works_next::before {
  background: url("../img/index_works_arrow_ne.svg") no-repeat center / 20px ;
}

  .index_works_prev {
    margin-left: 8px;
  }

  .index_works_next {
    margin-right: 8px;
  }


}
@media all and (min-width: 769px) {

.sponly {
	display: none;
}

.text_btn {
	display: inline-block;
	background: #163C87;
	color: #ffffff;
	padding: 2px 15px;
	margin-bottom: 5px;
}

/* @group header */

header{
	padding: 25px 30px;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	background: #F7F7F7;
}

.header_left{
	float: left;
	text-align: left;
	margin: 12px 0px 12px 20px;
}

.header_logo{
	width: 120px;
	float: left;
}

.header_logo img {
	width: 108px;
	height: auto;
}

.header_copy {
	float: left;
	font-family: 'Oswald', sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 2px;
	padding: 8px 0 0 ;
}

.header_right{
	float: right;
	margin-right: 70px;
}

.header_nav{
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 2px;
}

.header_nav ul{
	display: flex;
}

.header_nav ul li{
	display: flex;
	margin: 0 10px;
}
.header_nav ul li {
  display: flex;
}

.header_nav ul li a{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 17px;
	line-height: 1.2;
	font-weight: 600;
	letter-spacing: -0.01rem;
	text-decoration: none;
	text-align: center;
	color: #163C8C;
	width: 140px;
	height: 53px;
	padding: 5px 0px;
	border: 1px solid #163C80;
	background-color: #fff;
}


/* @end */

/* @group sp_menu */

#sp_menu{
	position: absolute;
	top: 30px;
	right: 30px;
	z-index: 10000;
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 33px;
	height: 24px;
}
.menu-trigger span {
	position: absolute;
	left: 0px;
	width: 33px;
	height: 2px;
	background-color: #000000;
	border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0px;
}
.menu-trigger span:nth-of-type(2) {
	top: 11px;
}
.menu-trigger span:nth-of-type(3) {
	top: 23px;
}

#sp_menu .text-menu{
	font-size: 11px;
	font-weight: 600;
	color: #1C3ADB;
}

.is-open .menu-trigger span:nth-of-type(1) {
	top: 19px;
	-webkit-transform: translateY(0px) rotate(-45deg);
    -ms-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
}

.is-open .menu-trigger span:nth-of-type(2) {
	display: none;
}
.is-open .menu-trigger span:nth-of-type(3) {
	top: 19px;
	-webkit-transform: translateY(0px) rotate(45deg);
    -ms-transform: translateY(0px) rotate(45deg);
    transform: translateY(0px) rotate(45deg);
}

/* @end */

/* @group nav */

nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #163C8C;
	z-index: 20000;
	border: 10px solid #ffffff;
	display: none;
}

.nav_close {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 20001;
}

.nav_close a {
	display: block;
	position: relative;
	width: 30px;
	height: 30px;
	text-indent: -9999px;
}

.nav_close a:before {
	position: absolute;
	content: "";
	width: 40px;
	height: 1px;
	background: #ffffff;
	transform: rotate(45deg);
	z-index: 20002;
	top: 14px;
	left: -5px;
}

.nav_close a:after {
	position: absolute;
	content: "";
	width: 40px;
	height: 1px;
	background: #ffffff;
	transform: rotate(-45deg);
	z-index: 20002;
	top: 14px;
	left: -5px;
}

nav a {
	color: #ffffff;
	text-decoration: none;
}

.nav_wrapper {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	position: relative;
}
	
	.nav_inner{
		max-width: 1398px;
  margin: auto;
  width: 100%;
  padding: 20px;
	}

.nav_head {
	margin-bottom: 40px;
}

.nav_logo{
	width: 140px;
	float: left;
}

.nav_logo img {
	width: 130px;
	height: auto;
}

.nav_copy {
	float: left;
	font-family: 'Oswald', sans-serif;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 2px;
	padding: 8px 0 0 ;
}
	
	.nav_head_btn {
		display: none;
	}

.nav_container {
	display: flex;
	justify-content: space-between;
}

.nav_box {
	width: 20%;
}

.nav_box:nth-child(2) {
	width: 34%;
}

.nav_box ul li {
	margin: 0 0 15px 0;
}

.nav_box ul li.indent {
	padding-left: 18px;
}

.nav_box img{
	width: 100%;
	height: auto;
}
.nav_box:nth-child(1) img {
	margin: 5px 0 0;
	border-radius: 5px;
}

.nav_line {
	display: inline-block;
	padding-left: 18px;
	position: relative;
}

.nav_line:before {
	content: "";
	position: absolute;
	width: 12px;
	height: 1px;
	background: #ffffff;
	z-index: 1;
	top: 50%;
	left: 0;
	margin-top: -1px;
}

.nav_box_title {
	position: relative;
	margin-bottom: 15px;
	border-bottom: 1px solid #ffffff;
}

.nav_box_title h3 {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	padding: 0 20px 10px 0;
	display: inline-block;
	position: relative;
}

.nav_box_title h3 .line1 {
	width: 100%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -2px;
	left: 0;
	background: #ffffff;
}

.nav_box_title h3 .line1 i {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #ffffff;
	z-index: 10;
	top: -3px;
	right:-10px;
}

.nav_box_title h3 .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #ffffff;
	z-index: 10;
	top: -3px;
	right: 0;
}

.nav_box_title h3 .line1:after {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: -8px;
}

.nav_box_2column {
	display: flex;
	justify-content: space-between;
}

.nav_box_2box {
	width: 48%;
}

.nav_box_2box_person {
	margin-bottom: 20px;
}

.nav_box_2box_person a {
	display: flex;
}

.nav_box_2box_person_text {
	margin-left: 20px;
	line-height: 1.2;
}
	
	.nav_box_2box_person .nav_box_2box_person_thumb{
		width: 67px;
	}

.nav_box_2box_person_label {
	display: inline-block;
	background: #ffffff;
	color: #163B8C;
	font-size: 15px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	padding: 3px 10px;
	margin-bottom: 10px;
}

.nav_box_2box_person_name {
	font-size: 13px;
	font-weight: bold;
}

.nav_box_2box_person_year {
	font-size: 13px;
}

.nav_box_title_mt {
	margin-top: 100px;
}
.nav_box_title_mt02 {
	margin-top: 120px;
}
/* @end */

/* @group index */

.mainimage {
	position: relative;
}
	
	#main-mv{
		max-width: 1600px;
		width: 100%;
		margin: 120px auto 50px;
	}
	#main-mv .pc{
		display: block;
	}
	#main-mv .sp{
		display: none;
	}
	#main-mv img{
		width: 100%;
		height: auto;
	}
	
.mainimage h1 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 20;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	text-align: center;
}

.mainimage h1 span {
		display: block;
	margin-bottom: 10px;
	font-family: "BIZ UDPGothic", sans-serif;
	    font-weight: 700;
	font-size: clamp(24px, 3vw, 38px);
	letter-spacing: 2px;
	color: #004098;
	line-height: 1.4;
}


.index_news {
	padding: 30px 0 70px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_news h2 {
	font-size: 22px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 2px;
	border-bottom: 3px solid #163C8C;
	padding: 0 3px;
	float: left;
	margin-right: 30px;
}

.index_news_text {
}

.index_news_box {
	display: flex;
	margin-bottom: 5px;
}

.index_news_box:last-child {
	margin-bottom: 0;
}

.index_news_date {
	margin: 0 30px 0 0;
	color: #0c1d42;
}

.index_news_title {
	margin: 0 0 0 0;
}

.index_news_title a.linkcolor {
	color: #163C8C;
}

.index_topics {
	background: #ededed;
	position: relative;
	padding: 80px 0;
	text-align: center;
	margin: 100px 0 0;
	overflow: hidden;
}

.index_topics_title {
	font-size: 34px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	letter-spacing: 2px;
	margin-bottom: 15px;
}

.index_topics_text {
	font-size: 14px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-bottom: 60px;
}

.index_topics_box {
	background: #ffffff;
	position: relative;
	width: 460px;
	float: left;
	padding-bottom: 40px;
	margin: 0 20px;
	opacity: 0.7;
	overflow: hidden;
}

.index_topics_box.slick-current {
	opacity: 1;
}

.index_topics_box_thumb {

}

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

.index_topics_box_title {
	padding: 30px 20px;
	color: #163C8C;
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: left;
}

.index_topics_box_num {
	position: absolute;
	bottom: 15px;
	left: 0;
	width: 75%;
	border-bottom: 1px solid #000000;
	text-align: right;
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	padding-right: 12px;
	line-height: 1;
	padding-bottom: 5px;
}

.index_topics_box_num:after {
	position: absolute;
	content: "";
	width: 3px;
	height: 6px;
	background: #000000;
	bottom: -3px;
	right: 0;
}

.index_topics_box_more {
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 23%;
	border-bottom: 2px solid #163C8C;
	text-align: left;
	font-size: 14px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	color: #163C8C;
	padding-left: 12px;
	line-height: 1;
	padding-bottom: 5px;
}

.index_topics_box_more:after {
	position: absolute;
	content: "";
	width: 3px;
	height: 6px;
	background: #163C8C;
	bottom: -4px;
	left: 0;
}

.index_topics_container .slick-prev {
	width: 22px;
	height: 36px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 22px 36px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	left: 34%;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	transform: rotate(180deg);
	margin-top: -18px;
}

.index_topics_container .slick-next {
	width: 22px;
	height: 36px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 22px 36px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	right: 34%;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	margin-top: -18px;
}


.index_keywords {
	margin: 200px 0 0;
}

.index_keywords .contents_inner {
	position: relative;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
 .index_keywords .contents_inner::after {
    display: none;
  }

.index_keywords_img {
	margin: 0 0 80px 0;
    width: 44%;
}
.index_keywords_img:last-child {
	margin-top: 80px;
}

.index_keywords_img img {
	box-shadow: 20px 20px 20px rgba(0,0,0,0.1);
    object-fit: cover;
    height: 380px;
    width: 100%;
}
    .index_keywords_box{
    background-color: #fff;
    position: absolute;
    width: 86%;
    padding: 30px 0 30px 30px;
    left: 90px;
    box-shadow: 20px 20px 20px rgba(0,0,0,0.1);
    bottom: -4%;
    }
.index_keywords_img:last-child .index_keywords_box{
	    bottom: calc(-4% - 80px);
}

.index_keywords_title {
	right: 91px;
	z-index: 2;
	width: auto;
	font-size: 25px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;

}

.index_keywords_title_inner {
	position: relative;
}

.index_keywords_title_inner h2 {
	margin-left: 0;
	padding-bottom: 10px;
	font-weight: 300;
    font-size:25px;
}
	.index_keywords_title_inner h2 span{
		font-size:20px;
	}

.index_keywords_title_inner .line1 {
	width: 75%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background:#163C8C;
	z-index: -1;
}

.index_keywords_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background:#163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_keywords_title_inner .line2 {
	width: 23%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0px;
	right: 0;
	background: #000000;
}

.index_keywords_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_keywords_text {
	right: 8%;
	z-index: 10;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	line-height: 2;
	font-size: 13px;
    margin-top: 20px;
}

.index_connector .contents_inner {
	position: relative;
}

.index_connector_img {
	position: absolute;
	top: -280px;
	right: 0;
	padding-right: 100px;
	z-index: 30;
	margin-bottom: 20px;
}

.index_connector_img img {
	box-shadow: -20px 20px 20px rgba(0,0,0,0.1);
}

.index_connector_line {
	position: absolute;
	content: "";
	width: 50%;
	height: 250px;
	background: url("../img/index_line.gif");
	top: -240px;
	right: 0;
}

.index_connector_title {
	margin: 100px 0 0 100px;
}

.index_connector_title_inner {
	position: relative;
}

.index_connector_title_inner h2 {
	font-size: 26px;
	padding: 0 0 10px 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;

}

.index_connector_title_inner .line1 {
	width: 30%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_connector_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_connector_title_inner .line2 {
	width: 40%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 31%;
	background: #000000;
}

.index_connector_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_connector_text {
	margin: 20px 0 0 110px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_topmessage .contents_inner {
	position: relative;
	margin: 300px auto;
}

.index_topmessage_img {
	position: absolute;
	top: -250px;
	left: 130px;
	z-index: 30;
	margin-bottom: 20px;
	height: 380px;
	overflow: hidden;
}

.index_topmessage_img img {
	box-shadow: 20px 20px 20px rgba(0,0,0,0.1);
}

/*.index_topmessage_line {
	position: absolute;
	content: "";
	width: 50%;
	height: 620px;
	background: url("../img/index_line.gif");
	top: -190px;
	left: 0;
}*/

.index_topmessage_title {
	margin: 100px 0 0 100px;
}

.index_topmessage_title_inner {
	position: relative;
}

.index_topmessage_title_inner h2 {
	font-size: 26px;
	padding: 0 0px 10px 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: right;
	margin-right: 10%;
	padding-right: 3%;
}

.index_topmessage_title_inner .line1 {
	width: 25%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	right: 10%;
	background: #163C8C;
}

.index_topmessage_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	left: 0;
}

.index_topmessage_title_inner .line2 {
	width: 30%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 36%;
	background: #000000;
}

.index_topmessage_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	right: 0;
}

.index_topmessage_text {
	margin: 20px 0 0 110px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_topmessage_img2 {
	position: absolute;
	top: 220px;
	right: 100px;
	z-index: 20;
	margin-bottom: 20px;
}

.index_business {
	margin: 100px 0 0;
}

.index_business_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}

.index_business_title h2 {
	font-size: 35px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
	margin-left: 20px;
}

.index_business_title p {
	line-height: 2.5;
}

.index_business01 {
	position: relative;
	margin: 80px 0 30px;
}

.index_business02 {
	position: relative;
	margin: 45px 0 0;
}

.index_business03 {
	position: relative;
	margin: 45px 0 0;
}

.index_business04 {
	position: relative;
	margin: 45px 0 0;
}

.index_business05 {
	position: relative;
	margin: 45px 0 0;
}

.index_business01_img,
.index_business02_img,
.index_business03_img,
.index_business04_img,
.index_business05_img {
	width: 70%;
}

.index_business02_img,
.index_business04_img {
	margin-left: 30%;
}

.index_business01_img img,
.index_business02_img img,
.index_business03_img img,
.index_business04_img img,
.index_business05_img img {
	width: 100%;
	height: auto;
}

.index_business01_title,
.index_business03_title,
.index_business05_title{
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	width: 30%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_business03_title {
	top: 50%;
}

.index_business05_title {
	top: 20%;
}

.index_business01_title_inner,
.index_business02_title_inner,
.index_business03_title_inner ,
.index_business04_title_inner{
	position: relative;
}

.index_business01_title_inner h3,
.index_business03_title_inner h3,
.index_business05_title_inner h3 {
	padding-bottom: 10px;
	font-weight: 300;
	font-size: 25px;
	text-align: right;
}

.index_business05_title_inner h3 {
	line-height: 1.3;
}

.index_business01_title_inner .line1,
.index_business03_title_inner .line1,
.index_business05_title_inner .line1 {
	width: 30%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #000000;
}

.index_business01_title_inner .line1:before,
.index_business03_title_inner .line1:before,
.index_business05_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	right: 0;
}

.index_business01_title_inner .line2,
.index_business03_title_inner .line2,
.index_business05_title_inner .line2 {
	width: 68%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	right: 0;
	background: #163C8C;
}

.index_business01_title_inner .line2:before,
.index_business03_title_inner .line2:before,
.index_business05_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	left: 0;
}

.index_business02_title,
.index_business04_title {
	position: absolute;
	top: 35%;
	left: 0;
	z-index: -1;
	width: 30%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_business02_title_inner h3,
.index_business04_title_inner h3 {
	padding-bottom: 10px;
	font-weight: 300;
	font-size: 25px;
	text-align: left;
}

.index_business02_title_inner .line1,
.index_business04_title_inner .line1 {
	width: 68%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_business02_title_inner .line1:before,
.index_business04_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_business02_title_inner .line2,
.index_business04_title_inner .line2 {
	width: 30%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	background: #000000;
}

.index_business02_title_inner .line2:before,
.index_business04_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_business05_title_sub {
	font-size: 22px;
	color: #163C8C;
	text-align: right;
	display: block;
}




.index_works {
	position: relative;
	padding: 0 0 80px;
	overflow: hidden;
	margin: 0 0 0;
}

.index_works:before {
	position: absolute;
	width: 150%;
	height: 700px;
	content: "";
	background: url("../img/index_line.gif");
	top: 350px;
	left: -25%;
	z-index: -1;
	transform: rotate(-8deg);
}

.index_works_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	margin: 200px auto 50px 9%;
}

.index_works_title h2 {
	font-size: 35px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
	margin-left: 0;
}

.index_works_title p {
	line-height: 2.5;
}

.index_works_flow {
	text-align: center;
}

.index_works_flow a {
	display: inline-block;
	background: #163C8C;
	padding: 5px 30px;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 22px;
	margin: 80px 0 0;
}

	.index_works .contents_inner {
  max-width: none;
  padding: 0;            /* 既存で余白があればリセット */
}
.index_works_container {
	width: 100%;
	margin: 0;
}

.index_works_box {
	position: relative;
  padding: 0px 15px;
}
	.index_works_container .slick-list {
  overflow: visible;     /* 端の見切れが気になる場合はvisibleに */
}
	
.index_works_box:nth-child(3n) {
	margin-right: 0;
}
.index_works_thumb img {
	width: 100%;
	height: 24vw;
	object-fit: cover;
	object-position: 0 0;
	max-height: 360px;
	min-height: 280px;
}

.index_works_text {
	position: relative;
	padding: 40px 0px 40px 80px;
	background-color: #fff;
}

.index_works_bumon {
	background: #163C8C;
	padding: 5px 20px 5px 20px;
	width: 180px;
	position: absolute;
	top: -25px;
	right: -10px;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 22px;
}

.index_works_profile {
	position: relative;
	padding: 10px 0 0 ;
}

.index_works_profile .line1 {
	width: 60%;
	height: 3px;
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
	background: #163C8C;
}

.index_works_profile .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_works_profile .line2 {
	width: 38%;
	height: 1px;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background: #000000;
}

.index_works_profile .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_works_sub {
	font-size: 12px;
}

.index_works_name h3 {
	font-size: 18px;
	font-weight: bold;
	display: inline-block;
}

.index_works_name span {
	font-size: 14px;
}

.index_style {
	margin: 100px 0 0;
}

.index_style .contents_inner {
	position: relative;
}

.index_style_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: 0;
	left: 28%;
}

.index_style_title h2 {
	font-size: 35px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
	margin-left: 20px;
}

.index_style_container {
	display: flex;
	justify-content: center;
	margin-bottom: 250px;
	position: relative;
}

.index_style_box {
	width: 40%;
}

.index_style_box:nth-child(1) {
	margin: 300px 5px 0 0;
}

.index_style_box:nth-child(2) {
	margin: 100px 0 0 5px;
}

.index_style_box:nth-child(3) {
	position: absolute;
	top: 470px;
	left: calc(50% + 5px);
	z-index: 1;
}

.index_style_thumb {
	position: relative;
}

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

.index_style_text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #ffffff;
	padding: 20px 0 20px 20px;
}

.index_style_inner {
	position: relative;
	padding: 0 0 10px 0;
}

.index_style_sub {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 20px;
}

.index_style_inner .line1 {
	width: 35%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_style_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	bottom: -3px;
	right: 0;
}

.index_style_inner .line2 {
	width: 63%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	background: #000000;
}

.index_style_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	bottom: -4px;
	left: 0;
}

.index_recruit {
	background: url("../img/index_recruit_back.jpg") no-repeat;
	background-size: cover;
	padding: 130px 0;
}

.index_recruit .contents_inner {
	position: relative;
}

.index_recruit_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top: 0;
	left: 0;
}

.index_recruit_title h2 {
	font-size: 35px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #ffffff;
	color: #ffffff;
	letter-spacing: 2px;
}

.index_recruit_container {
	margin-left: 20%;
}

.index_recruit_container ul {

}

.index_recruit_container ul li {
	width: 48%;
	float: left;
	margin-bottom: 10px;
}

.index_recruit_container ul li:nth-child(2n) {
	float: right;
}

.index_recruit_container ul li a {
	display: block;
	background: #ffffff;
	padding: 35px 20px;
	font-size: 16px;
	font-weight: normal;
	text-align: center;
	text-decoration: none;
}

.modal_topics_head {
	border-top: 1px solid #163C8C;
	border-bottom: 1px solid #163C8C;
	padding: 20px 20px 20px 20px;
	position: relative;
	min-height: 110px;
	display: flex;
	align-items: center;
}

.modal_topics_num {
	position: absolute;
	top: 0;
	left: 20px;
	font-size: 72px;
	color: rgba(22,60,138,0.4);
	z-index: 10;
}

.modal_topics_head h4{
	font-size: 23px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	color: #163C8C;
}

.modal_topics_photo {
	text-align: center;
	margin: 30px 0;
}

.modal_topics_text {
	font-size: 15px;
	line-height: 2;
}

/* @end */


/* @group footer */

footer{
	background: #e8edf4;
	text-align: center;
	padding: 23px 0;
	font-size: 13px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 2px;
}
.footer_inner {
    max-width: 1120px;
    padding: 0 20px;
    margin: 0 auto;
	position: relative;
}/* 200305追加 */
.footer_privacy{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
}/* 200305追加 */
a.footer_privacy{
	opacity: 1;
	transition: all 1s;
}
a.footer_privacy:hover{
	opacity: 0.5;
	transition: all 1s;
}/* 200305追加 */
/* @end */


/* @group page keywords */

.page_title {
	text-align: center;
	margin: 122px 0 0;
	padding: 120px 0 0 ;
}

.page_title h1 {
	font-size: 46px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	letter-spacing: 1px;
}

.keywords_head {
	background: url("../img/icon_keywords.svg") no-repeat top center;
	background-size: 90px 37px;
	margin: 30px 0 0;
	padding: 80px 0 0;
	text-align: center;
}

.keywords_head h2 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 30px;
	margin-bottom: 50px;
}

.keywords_head p {
	font-size: 16px;
}

.keywords_point_container {
	margin: 100px 0 0;
}

.keywords_point_box {
	width: 49%;
	float: left;
	background: #e8edf4;
	padding: 40px 50px 30px;
	margin-bottom: 50px;
}

.keywords_point_box:nth-child(2n) {
	float: right;
}

.keywords_point_box h3 {
	font-size: 28px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	position: relative;
	padding: 20px 0 20px 55px;
	margin-bottom: 20px;
	line-height: 1.2;
}

.keywords_point_title_sub {
	font-size: 21px;
}

.keywords_point_box h3 .keywords_point_title_num {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 70px;
	color: #163C80;
	font-weight: 300;
	line-height: 1;
}

.keywords_point_title1:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	width: 91px;
	height: 85px;
	background: url("../img/icon_keywords01.svg") no-repeat right center;
	background-size: 91px 85px;
}

.keywords_point_title2:after {
	content: "";
	position: absolute;
	top: -10px;
	right: 0;
	z-index: 10;
	width: 88px;
	height: 97px;
	background: url("../img/icon_keywords02.svg") no-repeat right center;
	background-size: 88px 97px;
}

.keywords_point_title3:after {
	content: "";
	position: absolute;
	top: 10px;
	right: 0;
	z-index: 10;
	width: 75px;
	height: 78px;
	background: url("../img/icon_keywords03.svg") no-repeat right center;
	background-size: 75px 78px;
}

.keywords_point_title4:after {
	content: "";
	position: absolute;
	top: 20px;
	right: 0;
	z-index: 10;
	width: 81px;
	height: 67px;
	background: url("../img/icon_keywords04.svg") no-repeat right center;
	background-size: 81px 67px;
}

.keywords_point_title5:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	width: 71px;
	height: 67px;
	background: url("../img/icon_keywords05.svg") no-repeat right center;
	background-size: 71px 67px;
}

.keywords_point_title6:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	z-index: 10;
	width: 70px;
	height: 83px;
	background: url("../img/icon_keywords06.svg") no-repeat right center;
	background-size: 70px 83px;
}

.keywords_point_box p {
	font-size: 15px;
	line-height: 1.8;
}

.keywords_point_per {
	margin: 50px 0;
}

.keywords_point_per_box {
	width: 25%;
	float: left;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin: 0 4.166%;
}

.keywords_point_per_box h3 {
	background: #000000;
	color: #ffffff;
	font-size: 23px;
	text-align: center;
	letter-spacing: 1px;
}

.keywords_point_per_num {
	font-size: 65px;
	text-align: center;
}

.keywords_point_per_num span {
	font-size: 44px;
}

.keywords_map {
	background: url("../img/keywords_map.gif") no-repeat;
	background-size: 100% auto;
}

.keywords_map_container {
	padding: 200px 0 500px;
}

.keywords_map_box {
	width: 25%;
	float: left;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin: 0 4.166% 100px;
}

.keywords_map_box:nth-child(4) {
	clear: both;
	float: none;
	margin: 0 auto;
}

.keywords_map_box h3 {
	background: #163C80;
	color: #ffffff;
	font-size: 23px;
	text-align: center;
	letter-spacing: 1px;
}

.keywords_map_num {
	font-size: 60px;
	text-align: center;
}

.keywords_map_num span {
	font-size: 36px;
}

/* @end */

/* @group page topmessage */

.topmessage_title {
	position: relative;
	margin: 102px 0 0;
	padding: 0px 0 0 ;
}

.topmessage_photo {
	width: 55%;
	text-align: right;
	margin-left: 45%;
}

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

.topmessage_text {
	position: absolute;
	top: 100px;
	left: 8%;
	width: 45%;
	padding: 40px 10px 30px 30px;
	background: rgba(22,60,131,0.9);
	color: #ffffff;
}

.topmessage_text span {
	font-size: 18px;
	color: #ffffff;
	opacity: 0.5;
}

.topmessage_text h1 {
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin: 20px 0 5px 0;
}

.topmessage_text p {
	text-align: right;
	color: #ffffff;
	opacity: 0.5;
	margin-right: 20px;
}

.topmessage_block {
	position: relative;
	margin: 200px auto 0;
	max-width: 1200px;
}

.topmessage_block_end {
	margin: 100px auto 200px;
	max-width: 1200px;
}

.topmessage_block_photo {
	position: absolute;
	width: 50%;
}

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

.topmessage_block_photo_left {
	top: -100px;
	left: 0;
	z-index: 10;
}

.topmessage_block_photo_right {
	bottom: -100px;
	right: 0;
	z-index: 10;
}

.topmessage_block_text {
	background: #e8edf4;
	padding: 50px 80px;
	width: 52%;
}

.topmessage_block_text_right {
	margin-left: 48%;
}

.topmessage_block_text h2 {
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	color: #163C8C;
	margin-bottom: 15px;
}

.topmessage_block_text h3 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 23px;
	margin-bottom: 15px;
}

.topmessage_block_text p {
	line-height: 2;
}
	
	.topmessage_block_text p + p{
		margin-top: 30px;
	}

/* @end */

/* @group page global */

.global_title {
	text-align: center;
	margin: 102px 0 0;
	padding: 30px 0 0 ;
}

.global_title h1 {
	font-size: 35px;
}

.global_head {
	margin: 30px 0 0;
	padding: 30px 0 0;
	text-align: center;
}

.global_head p {
	font-size: 16px;
}

.global_container {
	margin: 80px 0 0;
}

.global_container .contents_inner {
	min-height: 850px;
	width: 1282px;
	max-width: none;
	background: url("../img/global_map.gif") no-repeat top center;
	background-size: 1282px 850px;
	position: relative;
}

.global_box {
	background: rgba(255,255,255,0.6);
	position: absolute;
}

.global_box h2 {
	background: #163C87;
	color: #ffffff;
	text-align: center;
	padding: 10px 10px 12px;
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	position: relative;
	line-height: 1.2;
}

.global_box h2 span {
	font-size: 14px;
}

.global_box_eu {
	width: 350px;
	top: -50px;
	left: 150px;
	z-index: 20;
}

.global_box_wrapper {
	padding: 15px 20px;
	position: relative;
}

.global_box_text {
	position: relative;
}

.global_box_text ul li {
	color: #163C87;
	list-style: disc;
	margin: 0 0 5px 1em;
}

.global_viewmore {
	display: inline-block;
	background: #163C87;
	color: #ffffff;
	text-decoration: none;
	color: #ffffff;
	font-size: 13px;
	padding: 0px 10px;
}

.global_box_eu .global_viewmore,
.global_box_cn2 .global_viewmore,
.global_box_sg .global_viewmore,
.global_box_us .global_viewmore {
	position: absolute;
	bottom: 5px;
	right: 0px;
	z-index: 30;
}

.global_box_cn {
	width: 310px;
	top: 375px;
	left: 100px;
	z-index: 20;
}

.global_box_my {
	width: 350px;
	top: 691px;
	left: 100px;
	z-index: 20;
}

.global_box_sg {
	width: 380px;
	top: 690px;
	left: 560px;
	z-index: 20;
}

.global_box_cn2 {
	width: 330px;
	top: 30px;
	left: 670px;
	z-index: 20;
}

.global_box_cn3 {
	width: 310px;
	top: 300px;
	left: 100px;
	z-index: 20;
}

.global_box_id {
	width: 380px;
	top: 620px;
	left: 560px;
	z-index: 20;
}

.global_box_us {
	width: 320px;
	top: 355px;
	left: 705px;
	z-index: 20;
}

.global_box_in {
	width: 350px;
	top: 470px;
	left: 100px;
	z-index: 20;
}

.global_box_kr {
	width: 220px;
	top: 220px;
	left: 660px;
	z-index: 20;
}

.global_box_cn h2,
.global_box_cn3 h2,
.global_box_my h2,
.global_box_id h2,
.global_box_in h2,
.global_box_kr h2,
.global_box_tw h2{
	text-align: left;
	padding: 10px 100px 12px 10px;
}

.global_viewmore2 {
	position: absolute;
	top: 10px;
	right: 10px;
	border: 1px solid #ffffff;
	padding: 2px 8px;
	color: #ffffff;
	font-size: 12px;
}

.global_box_tw {
	width: 300px;
	top: 298px;
	left: 660px;
	z-index: 20;
}

.global_box_line_eu {
	position: absolute;
	top: -20px;
	left: 122px;
	z-index: 18;
}

.global_box_line_cn3 {
	position: absolute;
	top: 320px;
	left: 409px;
	z-index: 18;
}

.global_box_line_cn {
	position: absolute;
	top: 390px;
	left: 409px;
	z-index: 18;
}

.global_box_line_in {
	position: absolute;
	top: 423px;
	left: 262px;
	z-index: 18;
}

.global_box_line_my {
	position: absolute;
	top: 472px;
	left: 430px;
	z-index: 18;
}

.global_box_line_id {
	position: absolute;
	top: 520px;
	left: 508px;
	z-index: 18;
}

.global_box_line_sg {
	position: absolute;
	top: 488px;
	left: 484px;
	z-index: 18;
}

.global_box_line_cn2 {
	position: absolute;
	top: 50px;
	left: 531px;
	z-index: 18;
}

.global_box_line_kr {
	position: absolute;
	top: 241px;
	left: 559px;
	z-index: 18;
}

.global_box_line_tw {
	position: absolute;
	top: 318px;
	left: 523px;
	z-index: 18;
}

.global_box_line_id {
	position: absolute;
	top: 519px;
	left: 509px;
	z-index: 18;
}

.global_box_line_us {
	position: absolute;
	top: 344px;
	left: 1021px;
	z-index: 18;
}

/* @end */

/* @group modal */

.modaal-content-container {
	padding: 0;
}

.modaal-overlay {
	z-index: 9990;
	background: rgba(22,60,139,0.5) !important;
}

.modaal-container {
	max-width: 840px;
}

.modaal-inner-wrapper {
	padding-top: 150px;
}

.modal {
	display: none;
}

.modal_inner {
}

.modal_wrapper {
	position: relative;
	width: 100%;
}

.modaal-wrapper .modaal-close {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 10010;
	width: 25px;
	height: 25px;
	background: url("../img/modal_close.svg") no-repeat;
	background-size: 25px 25px;
}

.modaal-wrapper .modaal-close:before {
	display: none;
}

.modaal-wrapper .modaal-close:after {
	display: none;
}

/* @end */

/* @group modal global */

.modal_global_head {
	text-align: center;
}

.modal_global_head h3 {
	font-size: 50px;
	margin-bottom: 10px;
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	letter-spacing: 2px;
	color: #163C8B;
	line-height: 1;
}

.modal_global_head h4 {
	font-size: 17px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 20px;
}

.modal_global_head h5 {
	font-size: 19px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 60px;
}

.modal_inner_global {
	background: #ffffff;
	border: 1px solid #163C8B;
	margin: 5px;
}

.modal_wrapper_global {
	position: relative;
	width: 100%;
	padding: 60px;
}

.modal_text {
	width: 58%;
	float: left;
	margin-bottom: 30px;
}

.modal_text h4 {
	font-family: 'Noto Serif JP', serif;
	font-size: 23px;
	color: #163C8B;
	display: inline-block;
	border-bottom: 1px solid #163C8B;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

.modal_photo {
	width: 38%;
	float: right;
	margin: 67px 0 30px;
}

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

/* @end */

/* @group page business flow */

.businessflow_title h1{
	font-size: 35px;
}

.businessflow_title h1.business_title{
	padding-bottom: 42px;
}

.businessflow_title h2{
    font-family: 'Noto Serif JP', serif;
    font-weight: 300;
    letter-spacing: 1px;
    font-size: 24px;
    margin-bottom: 40px;
}
.businessflow_head {
	margin: 50px 0 0;
}

.businessflow_head p {
	max-width: 840px;
	margin: 0 auto 100px;
    text-align: center;
}


.businessflow_sec_header h2{
    max-width: 1000px;
    width: 100%;
    margin: auto;
    font-size: 35px;
    padding-left: 90px;
    font-family: Oswald, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
    display: flex;

}
.businessflow_sec_header h2 span{
    max-width: 1000px;
    width: auto;
    margin: auto auto auto 30px;
    font-size: 16px;
    font-family: Oswald, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
    font-weight: normal;
    display: inline-block;
    padding-bottom: 0px;
}
   
.businessflow_sec_header{
    padding-top: 100px;
    color: #fff;
    height: 290px;
    width: 100%;
    background-size:60px auto,60px auto,cover;
    background-position:30px 110px,30px -10px,0;
    background-repeat: no-repeat;
    }
    #businessflow_01 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),none,url("../img/businessflow_stage1_img.jpg");
    }
    #businessflow_02 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage2_img.jpg");
    }
    #businessflow_03 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage3_img.jpg");
    }
    #businessflow_04 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage4_img.jpg");
    }
    .businessflow_contents ul{
        margin-top: -90px;
        background-image: url("../img/businessflow_bar.svg");
        background-position: 30px top;
        background-repeat: no-repeat;
        padding-bottom: 100px;
        background-size: 60px auto;
    }
	.businessflow_contents ul.business_flow_last_ul {
        margin-top: -90px;
        background-image: url("../img/businessflow_bar.svg");
        background-position: 30px top;
        background-repeat: no-repeat;
        padding-bottom: 0px;
        background-size: 60px auto;
    }
    .businessflow_contents li{
        max-width: 1000px;
        min-height: 178px;
        height: auto;
        background-color: #E8EDF4;
        margin: auto auto 40px;
        padding: 26px 60px 26px 60px;
        display: flex;
        box-shadow: 10px 10px 10px rgba(70,70,70,0.20);
    }
	.businessflow_contents .business_flow_last_ul li:last-child{
        max-width: 1000px;
        height: 178px;
        background-color: #E8EDF4;
        margin: auto auto 0px;
        padding: 26px 60px 26px 60px;
        display: flex;
        box-shadow: 10px 10px 10px rgba(70,70,70,0.20);
    }

    .businessflow_sec_icon{
        width: 125px;
        height: 125px;
        background-color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        margin-right: 35px;
    }
    .businessflow_sec_icon img{
        width: 70px;
        height: auto;
    }
    .businessflow_sec_txt{
        width: calc(100% - 160px);
    }
    
    .businessflow_contents li h3{
        font-size: 22px;
        margin-bottom: 20px;
        font-family: 'Noto Serif JP', serif;
        color: #1E51BC;
        font-weight: 500;
    }
    .businessflow_contents li p{
        font-size: 15px;
    }
	.business_inner{
		position: relative;
	}
  .businessflow_title.interview_thumb {
    margin: 0px 0 60px;
    }
   .businessflow_title.interview_thumb .interview_thumb_box:nth-child(4n+1) {
    clear:none;
  }
   .businessflow_title.interview_thumb .interview_thumb_box {
    width: 32%;
    float: left;
    margin: 0 1.333% 10px 0;
    position: relative;
}
   .businessflow_title.interview_thumb .interview_name {
    position: absolute;
    padding: 20px 10px 10px;
  }

.businessflow_person {
	width: 42%;
	float: left;
	position: relative;
	margin-right: 5%;
	margin-bottom: 20px;
}

.businessflow_person:nth-child(3) {
	margin: 0 0 0 26%;
}

.businessflow_person:nth-child(2n) {
}

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

.businessflow_name {
	position: absolute;
	top: 0;
	left: 0;
	width: 60%;
	height: 100%;
	background: rgba(22,60,131,0.7);
	color: #ffffff;
	padding: 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.businessflow_name h3 {
	font-size: 15px;
	margin-bottom: 5px;
}

.businessflow_name p {
	font-size: 11px;
}


/* @end */

/* @group page base */

.tab_contents {
	display: none;
}

#base_miyako {
	display: block;
}

.base_title h1{
	font-size: 35px;
}

.base_head {
	margin: 50px 0 0;
}

.base_head p {
	margin: 0 auto;
	text-align: center;
}

.base_tab_container {
	margin: 50px 15% 120px;
}

.base_tab_box {
	width: 30%;
	float: left;
	margin: 0 1.665%;
	text-align: center;
}

.base_tab_box a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	color: #000000;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
}

.base_tab_box a.active {
	background: #163C87;
	color: #ffffff;
}

.base_contents {
	margin-bottom: 60px;
}

.base_container {
	border: 1px solid #163C87;
	position: relative;
	padding: 40px 50px 50px;
}

.base_container:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: -10px;
	left: -10px;
	z-index: -1;
	background: #e8edf4;
}

.base_subtitle {
	text-align: center;
	font-size: 27px;
}

.base_subtitle h2 {
	display: inline-block;
	border-bottom: 1px solid #163C87;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	padding-bottom: 5px;
}

.base_use {
	margin: 80px 3% 0;
}

.base_use_left {
	width: 45%;
	float: left;
}

.base_use_right {
	width: 45%;
	float: right;
}

.base_use_box {
	width: 40%;
	float: left;
	position: relative;
}

.base_use_box:last-child {
	float: right;
}

.base_user_box_name {
	border: 2px solid #163C87;
	text-align: center;
	padding: 5px;
	font-size: 14px;
	position: relative;
	color: #163C87;
}

.base_user_box_name2 {
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.base_user_box_name:before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 14px solid #163C87;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	left: 50%;
	bottom: -14px;
	margin-left: -9px;
	z-index: 10;
}

.base_user_box_name:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 12px solid #e8edf4;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	left: 50%;
	bottom: -11px;
	margin-left: -7px;
	z-index: 10;
}

.base_use_box:last-child .base_user_box_name {
	background: #ffffff;
}

.base_use_box:last-child .base_user_box_name:after {
	border-top: 12px solid #ffffff;
}

.base_user_box_thumb {
	margin: 20px 0 0;
}

.base_use_box_arrow {
	background: url("../img/base_arrow.svg")no-repeat top center;
	background-size: 41px 20px;
	width: 20%;
	height: 20px;
	margin: 130px 0 0;
	float: left;
}

.base_user_box_thumb img {
	width: 100%;
	height: auto;
	border: 2px solid #163C87;
}

.base_workperson {
	position: relative;
	margin: 60px 0;
}

.base_workperson_photo {
	width: 48%;
	margin-left: 52%;
}

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

.base_workperson_name {
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	z-index: 10;
	display: flex;
	align-items: center;
}

.base_workperson_name h3 {
	font-size: 28px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	padding-bottom: 50px;
	margin-bottom: 50px;
	position: relative;
}

.base_workperson_name h3:after {
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 54px;
	height: 2px;
	background: #000000;
	content: "";
}

.base_workperson_name_op h4{
	font-size: 21px;
	font-weight: bold;
	letter-spacing: 2px;
}

.base_workperson_name_op p {
	font-size: 13px;
	line-height: 2;
}

.base_workperson_thumb {
	width: 35%;
	float: left;
}

.base_workperson_thumb img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.base_workperson_text {
	width: 60%;
	float: right;
	line-height: 2;
}

/* @end */


/* @group page interview */

.interview_title {
	position: relative;
	margin: 105px 0 0;
}

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

.interview_title h1 {
	font-size: 28px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	position: absolute;
	top: 20%;
	left: 10%;
}

.interview_title h1 span {
	display: inline-block;
	background: rgba(255,255,255,0.6);
	margin-bottom: 5px;
	padding: 0 10px;
}
	.interview_title h1.bg_70 span{
		background: rgba(255,255,255,0.7);
	}

.interview_profile {
	position: absolute;
	top: 90%;
	left: 0;
	width: 100%;
	z-index: 10;
}

.interview_profile_inner {
	max-width: 960px;
	padding: 0 20px;
	padding: 40px 50px;
	background: rgba(22,60,131,0.9);
	margin: 0 auto;
}

.interview_status {
	color: #ffffff;
	width: 30%;
	float: left;
}

.interview_status h2 {
	font-size: 21px;
	margin-bottom: 10px;
}

.interview_status p {
	font-size: 13px;
}

.interview_careerstep {
	width: 65%;
	float: right;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	color: #ffffff;
}

.interview_careerstep h3 {
	color: #ffffff;
	font-size: 18px;
	font-weight: 300;
	margin-bottom: 5px;
}

.interview_careerstep dl {
	line-height: 2;
}

.interview_careerstep dt {
	width: 8em;
	float: left;
}

.interview_careerstep dd {
	padding: 0 0 0 9em;
}

.interview_careerstep .interview_careerstep_dl1 dt {
	width: 5em;
}
.interview_careerstep .interview_careerstep_dl1.wid dt {
	width: 9em;
}
.interview_careerstep .interview_careerstep_dl1 dd {
	padding: 0 0 0 6em;
}

.interview_tab {
	margin: 200px 0 0;
}

.interview_tab_box {
	width: 24%;
	float: left;
	margin: 0 1.333% 0 0;
}

.interview_tab_box:last-child {
	margin-right: 0;
}

.interview_tab_box a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	text-decoration: none;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: center;
}

.interview_block {
	position: relative;
	margin: 80px auto 0;
	max-width: 1400px;
}

.interview_block_end {
	margin: 80px auto 100px;
	max-width: 1400px;
}

.interview_block_photo {
	position: absolute;
	width: 50%;
}

.interview_block_photo_left {
	position: static;
	margin-top: -250px;
}

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

.interview_block_photo_left {
	top: 100px;
	left: 0;
	z-index: 10;
}

.interview_block_photo_right {
	bottom: -100px;
	right: 0;
	z-index: 10;
}

.interview_block_text {
	background: #e8edf4;
	padding: 50px 80px;
	width: 52%;
}

.interview_block_text_right {
	margin-left: 48%;
}

.interview_block_title {
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin-bottom: 15px;
}

.interview_block_title span {
	color: #163C8C;
	font-size: 50px;
	font-weight: 300;

}

.interview_block_text p,
.interview_block_text1 p,
.interview_block_text2 p {
	line-height: 2;
}

.interview_block_text1 {
	padding: 50px 40px 50px 80px;
	width: 48%;
	float: left;
}

.interview_block_text2 {
	padding: 50px 80px 50px 40px;
	width: 48%;
	float: right;
	margin: 200px 0 0;
}

.interview_thumb {
	margin: 180px 0 60px;
}

.interview_thumb_box {
	width: 24%;
	float: left;
	margin: 0 1.333% 10px 0;
	position: relative;
}

.interview_thumb_box:nth-child(4n) {
	margin-right: 0;
}

.interview_thumb_box:nth-child(4n+1) {
	clear: both;
}

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

.interview_name {
	position: absolute;
	top: 0;
	left: 0;
	width: 55%;
	height: 100%;
	background: rgba(22,60,131,0.7);
	color: #ffffff;
	padding: 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.interview_name h3 {
	font-size: 14px;
	margin-bottom: 5px;
}

.interview_name p {
	font-size: 11px;
}

/* @end */

/* @group page faq */

.faq_title {
	background: url("../img/faq_background.jpg") no-repeat center center;
	background-size: cover;
	height: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	margin: 102px 0 0;
}

.faq_title h1 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 35px;
	letter-spacing: 2px;
}

.faq_container {
	margin: 40px 0;
}

.faq_box {
	margin: 0 0 2px 0;
}

.faq_q {

}

.faq_q a {
	display: block;
	background: #e8edf4;
	font-size: 18px;
	font-weight: bold;
	color: #163C87;
	padding: 50px 100px 50px 150px;
	text-decoration: none;
	position: relative;
}

.faq_q a.open {
	background: #163C87;
	color: #ffffff;
}

.faq_q a:before {
	position: absolute;
	content: "";
	width: 24px;
	height: 1px;
	background: #163C87;
	z-index: 10;
	top: 50%;
	right: 30px;
}

.faq_q a:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 24px;
	background: #163C87;
	z-index: 10;
	top: 50%;
	right: 42px;
	margin-top: -12px;
}

.faq_q a.open:before{
	background: #ffffff;
}

.faq_q a.open:after {
	display: none;
}

.faq_q a span {
	position: absolute;
	top: 50%;
	left: 80px;
	z-index: 10;
	font-size: 46px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-top: -25px;
	line-height: 1;
}

.faq_a {
	padding: 30px 80px;
	display: none;
}

/* @end */

/* @group page entry */

.entry_title {
	background: url("../img/entry_background.jpg") no-repeat center center;
	background-size: cover;
	height: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	margin: 102px 0 0;
}

.entry_title h1 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 35px;
	letter-spacing: 2px;
	text-align: center;
}

.entry_title h1 .entry_title_small {
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 18px;
	letter-spacing: 2px;
}

.entrybox {
	margin: 50px 60px;
}

.entrybox_head {
	font-size: 19px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
}

.entrybox h2 {
	margin: 40px 0 20px;
}

.entrybox h2 span {
	border: 1px solid #163C87;
	display: inline-block;
	padding: 7px 15px;
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
}

.entrybox_rikunavi {
	margin: 50px 0 0;
}

.entrybox_contact {
	margin: 30px 0 0;
	font-size: 15px;
}

/* @end */

/* @group page training */

.training_head {
	font-size: 19px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	margin: 60px 0 50px;
	text-align: center;
	line-height: 1.8;
}

.training_sectitle {
	font-size: 20px;
	font-weight: bold;
	color: #163C87;
	margin-bottom: 30px;
}

.training_table {
	width: 100%;
	border-top: 1px solid #163C87;
	border-bottom: 1px solid #163C87;
	border-collapse: collapse;
	margin-bottom: 80px;
}

.training_table th {
	width: 20%;
	border-right: 1px solid #163C87;
	border-bottom: 1px solid #163C87;
	padding: 20px;
	font-size: 18px;
	vertical-align: middle;
}

.training_table th span {
	font-size: 15px;
}

.training_table td {
	border-bottom: 1px solid #163C87;
	padding: 20px 8%;
	background: #e8edf4;
	font-size: 14px;
	line-height: 2;
}

.training_table tr:nth-child(2n) td {
	background: #ffffff;
}


/* @end */

/* @group page message */

.message_inner {
	position: relative;
	margin: 60px 15%;
}

.message_head {
	font-size: 19px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	margin: 0px 0 50px;
	text-align: left;
	line-height: 1.8;
}

.message_text {
	font-size: 15px;
	line-height: 2;
}

.message_parts01 {
	position: absolute;
	top: 20px;
	right: -180px;
	z-index: 10;
}

.message_parts02 {
	position: absolute;
	top: 220px;
	left: -251px;
	z-index: 10;
}

.message_parts03 {
	position: absolute;
	bottom: 120px;
	left: -201px;
	z-index: 10;
}

.message_parts04 {
	position: absolute;
	bottom: 220px;
	right: -150px;
	z-index: 10;
}

/* @end */

/* @group page welfare */

.welfare_head {
	font-size: 16px;
	margin: 70px 0;
	text-align: center;
	line-height: 1.8;
}

.welfare_container2 {
	background: #F7F7F7;
	padding: 90px 0 90px;
}

.welfare_container2 h2 {
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align: center;
}

.welfare_work {
	max-width: 875px;
	display: flex;
	justify-content: space-between;
	margin: 40px auto 0;
	        flex-wrap: wrap;
}

.welfare_work_box {
	width: 32%;
	background: #ffffff;
	padding: 40px 20px;
	text-align: center;
	margin-bottom: 30px;
}

.welfare_work_box h3 {
	background: #1B5092;
	color: #ffffff;
	font-size: 16px;
	padding: 7px 5px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}

.welfare_work_num {
	font-size: 30px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align: center;
}
.welfare_work_num.center{
		    display: flex;
    justify-content: center;
    align-items: center;
	letter-spacing: 0.3rem;
	}
.welfare_work_num span {
	font-size: 75px;
	letter-spacing: 0.2rem;
}
	.welfare_work_num span.long{
		letter-spacing: -0.2rem;
	}

.welfare_work_year {
		max-width: 875px;
	text-align: right;
	font-size: 15px;
	margin: 10px auto 0;
}

.welfare_table {
	margin: 80px 0;
	border-top: 1px solid #163C87;
}

.welfare_table_row {
	border-bottom: 1px solid #163C87;
	display: flex;
	align-items: center;
}

.welfare_table_label {
	width: 120px;
	text-align: center;
	padding: 30px 5px;
	font-size: 18px;
	font-weight: bold;
}

.welfare_table_text {
	width: calc(100% - 120px);
	padding: 30px 60px;
	font-size: 15px;
	border-left: 1px solid #163C87;
	position: relative;
}

.welfare_table_row:nth-child(odd) .welfare_table_text{
	background: #E8EDF4;
}

.welfare_table_text_icon {
	position: absolute;
	top: 50%;
	right: 60px;
	z-index: 1;
	margin: -50px 0 0;
}

.welfare_table_row:last-child .welfare_table_text{
	padding-right: 260px;
}

.welfare_box {
	background: #E8EDF4;
	padding: 10px;
	margin-bottom: 80px;
}

.welfare_box_inner {
	border: 1px solid #163C87;
	padding: 60px;
	text-align: center;
}

.welfare_box_inner h2 {
	font-size: 30px;
	color: #333333;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-bottom: 30px;
}

.welfare_box_text {
	font-size: 16px;
}

.welfare_box_img {
	margin: 50px 20px 0;
	display: flex;
	justify-content: space-between;
}

.welfare_box_img img {
	width: 31.5%;
	height: auto;
}

.welfare_plan {
	display: flex;
	justify-content: space-between;
	margin: 40px 0 0;
}

.welfare_plan_box {
	background: #ffffff;
	width: 31.5%;
	text-align: center;
	padding: 30px;
}

.welfare_plan_box h4 {
	font-size: 18px;
	color: #1B5092;
	margin-bottom: 15px;
}

.welfare_plan_box ul {
	text-align: left;
}

.welfare_plan_bn {
	margin: 40px 0 0;
}

/* @end */

/* @group page requirements */

.requirements_tab {
	margin: 50px 0;
}

.requirements_tab li {
	width: 23%;
	float: left;
	margin: 0 1%;
	text-align: center;
}

.requirements_tab li a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	color: #000000;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
}

.requirements_tab li a.active {
	background: #163C87;
	color: #ffffff;
}

.requirements_contents {
	margin: 130px 10%;
	display: none;
}

#requirements01 {
	display: block;
}

.requirements_title {
	margin-bottom: 50px;
}

.requirements_title h2 {
	display: inline-block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 5px 30px;
	color: #163C87;
	text-decoration: none;
	font-size: 23px;
	font-weight: bold;
}

.requirements_contents dt {
	font-size: 20px;
	font-weight: bold;
	color: #163C87;
	margin-bottom: 10px;
	padding: 0 15px;
}

.requirements_contents dd {
	padding: 0 15px 40px;
	border-bottom: 1px solid #163C87;
	margin-bottom: 40px;
	font-size: 15px;
}
.requirements_contents dd p{
	font-size: 16px;
    margin-bottom: 5px;
    font-weight: 600;
}

.requirements_contents dd:last-child {
	border-bottom: 0;
}

/* @end */

/* @group page history */

.history_title h1 {
	font-size: 35px;
	margin-bottom: 56px;
}


.history_head {
	margin: 70px 0 0;
}

.history_box {
	margin: 50px 0 0;
}

.history_box h2 {
	font-size: 27px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.history_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 50px 0;
	position: relative;
}

.history_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 50px;
	background: #163C87;
	z-index: 10;
	top: -25px;
	left: 50%;
}

.history_contents:after {
	content: "";
	position: absolute;
	width: 1px;
	height: 50px;
	background: #163C87;
	z-index: 10;
	bottom: -25px;
	left: 50%;
}

.history_contents_inner {
	border: 1px solid #163C87;
	padding: 50px 80px;
}

.history_contents_text {
	width: 50%;
	float: left;
	font-size: 14px;
	line-height: 2;
}

.history_contents_photo {
	margin: 0px 0 0;
	width: 50%;
	float: left;
	padding: 0 5%;
	text-align: center;
}

.history_contents_photo1 {
	width: 49%;
	float: left;
	font-size: 10px;
}

.history_contents_photo2 {
	width: 49%;
	float: right;
	font-size: 10px;
}

.history_contents_photo_caption img,
.history_contents_photo1 img,
.history_contents_photo2 img,
.history_contents_photo3 img {
	width: 100%;
	height: auto;
}

.history_contents_inner h3 {
	font-size: 40px;
	font-weight: bold;
	color: rgba(22,60,128,0.5);
	font-family: 'Oswald', sans-serif;
	line-height: 1.2;
	margin-bottom: 20px;
}

.history_contents_photo_title {
	background: #163C87;
	color: #ffffff;
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	padding: 5px 0;
	margin-bottom: 20px;
}

.history_contents_photo_caption2 {
	margin: 10px 5% 0;
	font-size: 12px;
}

.history_contents_photo_caption3 {
	margin: 0 10% 20px;
	text-align: left;
	font-size: 13px;
}

.history_contents_photo_caption3 img {
	margin-bottom: 5px;
}


.history_box_last .history_contents:after {
	content: "";
	position: absolute;
	width: 1px;
	height: 115px;
	background: #163C87;
	z-index: 10;
	bottom: -70px;
	left: 50%;
}

.history_box_last {
	position: relative;
}

.history_box_last:before {
	content: "";
	position: absolute;
	width: 21px;
	height: 1px;
	background: #163C87;
	z-index: 10;
	bottom: -61px;
	left: 50%;
	transform: rotate(-65deg);
	margin-left: -5px;
}

.history_box_foot {
	font-size: 30px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	color: #163C87;
	position: relative;
	text-align: center;
	padding: 100px 0;
}

.history_box_foot01 {
	position: absolute;
	top: 20px;
	left: 0;
	z-index: 10;
}

.history_box_foot02 {
	position: absolute;
	top: 20px;
	right: 0;
	z-index: 10;
}

/* @end */

/* @group page region */

.region_title h1 {
	font-size: 35px;
	margin-bottom: 56px;
}

.region_title p {
	max-width: 820px;
	margin: 0 auto;
	text-align: left;
	line-height: 1.8;
}

.region_num  {
	position: absolute;
	top: -60px;
	left: 90px;
	font-size: 90px;
	font-weight: bold;
	color: rgba(22,60,128,0.5);
	font-family: 'Oswald', sans-serif;
	line-height: 1.2;
	margin-bottom: 20px;
}

.region_more {
	margin: 30px 0 20px;
}

.region_more span {
	display: inline-block;
	border: 1px solid #163C87;
	padding: 3px 20px;
	color: #163C87;
	position: relative;
}

.region_more span:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 12px solid #e8edf4;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	bottom: -12px;
	left: 26px;
	z-index: 10;
}

.region_more span:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 14px solid #163C87;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	bottom: -14px;
	left: 25px;
	z-index: 5;
}

.region_contents_text {
	width: 60%;
	float: left;
}

.region_contents_photo {
	width: 35%;
	float: right;
	font-size: 12px;
}

.region_contents_photo ul.column1 li {
	text-align: center;
}

.region_contents_photo ul.column2 li {
	float: left;
	width: 49%;
	text-align: center;
}

.region_contents_photo ul.column2 li:nth-child(2n) {
	float: right;
}

.region_contents_photo ul li img {
	width: 100%;
	height: auto;
	margin-bottom: 5px;
}

.region_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 50px 0;
	position: relative;
}

.region_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 50px;
	background: #163C87;
	z-index: 10;
	top: -25px;
	left: 50%;
}

/* @end */

/* @group page nextcontent */

.nextcontent {
	padding: 80px 0;
	text-align: center;
}

.nextcontent h4 {
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 30px;
}

.nextcontent_img {
	text-align: center;
	max-width: 800px;
	height: auto;
	margin: 50px auto 0;
	position: relative;
}

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

.nextcontent_title {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 50px;
	z-index: 1;
	font-size: 25px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	color: #ffffff;
	display: flex;
	align-items: center;
}
/* @end */


/* @group page atfirst */


.atfirst_title h1 {
	margin-bottom: 56px;
}

.atfirst_title p {
	font-size: 15px;
}

.atfirst_title ul {
	display: flex;
	justify-content: space-between;
	margin: 60px 0 0;
}

.atfirst_title ul li {
	width: 24%;
	margin: 0;
}

.atfirst_title ul li a {
	display: block;
	border: 1px solid #163C87;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	text-decoration: none;
	padding: 20px 0;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.5);
}

.atfirst_title ul li a span {
	font-family: 'Noto Serif JP', serif;
	display: inline-block;
	margin-right: 5px;
}

.atfirst_content01 {
	margin: 70px 0 0;
}

.atfirst_content_head {
	background: #E8EDF4;
	padding: 80px 0;
	text-align: center;
	margin-bottom: 80px;
}

.atfirst_content_head h2 {
	font-size: 24px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
}

.atfirst_content_head h2 span {
	color: #163C8C;
	margin-right: 15px;
}

.atfirst_content_head_text {
	border: 1px solid #163C8C;
	padding: 50px;
	position: relative;
	margin: 60px 60px 0;
	font-size: 16px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}

.atfirst_content_head_text:before {
	position: absolute;
	content: "";
	width: 1px;
	height: 50px;
	background: #163C8C;
	top: -25px;
	left: 50%;
	z-index: 1;
}

.atfirst_text {
	font-size: 15px;
	line-height: 1.8;
	margin: 0 60px 70px;
}

.atfirst_lead {
	font-size: 24px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.atfirst_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 50px 0 0;
	position: relative;
}

.atfirst_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 50px;
	background: #163C87;
	z-index: 10;
	top: -25px;
	left: 50%;
}

.atfirst_contents_inner {
	border: 1px solid #163C87;
	padding: 50px;
}

.atfirst_box_lead {
	font-size: 24px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.atfirst_box_container {
	margin: 45px 0 0;
}

.atfirst_box_wrap {
	display: flex;
	justify-content: space-between;
	margin-bottom: 70px;
}

.atfirst_box_thumb {
	width: 45%;
}

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

.atfirst_box_text {
	width: 50%;
	font-size: 15px;
	line-height: 1.8;
}

.atfirst_box_title {
	background: #163C8C;
	font-size: 18px;
	color: #ffffff;
	padding: 10px 0;
	font-weight: bold;
	text-align: center;
}

.atfirst_box_lead2 {
	display: flex;
	justify-content: center;
	color: #163C8C;
	font-size: 18px;
	font-weight: bold;
	padding: 20px 0;
	border-bottom: 1px solid #163C8C;
	margin-bottom: 30px;
}

.atfirst_box_lead2 p {
	text-align: left;
}

.atfirst_box_icon {
	display: flex;
	justify-content: space-between;
	padding: 0 30px;
}

.atfirst_box_icon_list {
	text-align: center;
}

.atfirst_box_icon_img {
	margin: 10px 0 0;
	display: flex;
	min-height: 64px;
	align-items: center;
	justify-content: center;
}

.atfirst_content02,
.atfirst_content03 {
	margin: 80px 0 0;
}

.atfirst_nums {
	display: flex;
	justify-content: space-between;
	background: url("../img/atfirst_map.png") no-repeat top center;
	background-size: 640px auto;
	padding-bottom: 130px;
	margin: 0 60px;
}

.atfirst_nums_box {
	width: 23%;
}

.atfirst_nums_title {
	background: #163C8C;
	color: #ffffff;
	font-size: 16px;
	font-weight: bold;
	padding: 5px;
	text-align: center;
}

.atfirst_nums_num {
	margin: 70px 0 0;
	font-size: 24px;
	font-weight: normal;
	font-family: 'Noto Serif JP', serif;
	line-height: 1;
	text-align: center;
}

.atfirst_nums_num span {
	font-size: 110px;
	color: #163C8C;
}

.atfirst_photo {
	display: flex;
	justify-content: space-between;
	margin: 60px 10px 0;
}

.atfirst_photo_box {
	width: 31%;
}

.atfirst_photo_text {
	border: 2px solid #1E3D82;
	padding: 8px 10px 8px 65px;
	position: relative;
	background: #ffffff;
	color: #1E3D82;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
}

.atfirst_photo_text span {
	position: absolute;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	font-size: 32px;
	top: 5px;
	left: 15px;
	z-index: 1;
}

.atfirst_photo_text:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid #ffffff;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	bottom: -15px;
	left: calc(50% - 11px);
	z-index: 2;
}

.atfirst_photo_text:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 18px solid #1E3D82;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	bottom: -18px;
	left: calc(50% - 14px);
	z-index: 1;
}

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

.atfirst_content_head .contents_inner {
	position: relative;
}

.atfirst_content03_img {
	position: absolute;
	top: -120px;
	left: -50px;
	z-index: 1;
}

.atfirst_concept {
	margin: 60px 0 0;
}

.atfirst_concept_box {
	margin-bottom: 60px;
	position: relative;
}

.atfirst_concept_img {
	text-align: right;
}

.atfirst_concept_img img {
	max-width: 700px;
	height: auto;
}

.atfirst_concept_text {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	background: #ffffff;
	padding: 40px 40px 10px 0;
	width: 540px;
}

.atfirst_concept_text h3 {
	font-size: 22px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	margin-bottom: 30px;
}

.atfirst_concept_text p {
	font-size: 15px;
	line-height: 1.8;
}

.atfirst_concept_box:nth-child(2n) .atfirst_concept_img {
	text-align: left;
}

.atfirst_concept_box:nth-child(2n) .atfirst_concept_text {
	left: auto;
	right: 0;
	padding: 40px 0 10px 30px;
}

.atfirst_keyword_box {
	display: flex;
	align-items: center;
	margin: 60px 0 0;
}

.atfirst_keyword_label {
	width: 35%;
	text-align: center;
	font-size: 28px;
	font-family: 'Noto Serif JP', serif;
}

.atfirst_keyword_text {
	width: 60%;
	font-size: 15px;
	line-height: 2;
}

.atfirst_content04_img {
	position: absolute;
	top: -100px;
	right: -50px;
	z-index: 1;
}

/* @end */

/* @group page tech */

.page_tech h1 {
	margin-bottom: 56px;
}

.tech_01container {
	display: flex;
	justify-content: space-between;
	margin: 60px 0 0;
}

.tech_01_text {
	width: 50%;
}

.tech_01_img {
	width: 45%;
}

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

.tech_lead {
	position: relative;
	font-family: 'Noto Serif JP', serif;
	font-size: 28px;
	padding: 2px 0 0 110px;
	line-height: 1.4;
	margin-bottom: 60px;
}

.tech_lead span {
	color: #163C8C;
	font-size: 75px;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	line-height: 1;
}

.tech_text {
	font-size: 15px;
	line-height: 2;
}

.tech_content02 {
	background: #E8EDF4;
	padding: 90px 0;
	margin: 70px 0 0;
}

.tech_02_head,
.tech_03_head {
	display: flex;
	justify-content: space-between;
}

.tech_02_head .tech_lead,
.tech_03_head .tech_lead {
	width: 45%;
}

.tech_02_head .tech_text,
.tech_03_head .tech_text {
	width: 50%;
}

.tech_03_head .tech_text {
	width: 52%;
}

.tech_closeup {
	display: flex;
	justify-content: space-between;
	margin: 50px 0 0;
}

.tech_closeup_img {
	width: 45%;
	display: flex;
	justify-content: space-between;
}

.tech_closeup_img2 {
	width: 48%;
}

.tech_closeup_img img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.tech_closeup_text {
	width: 50%;
}

.tech_closeup_text h3 {
	font-size: 22px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	margin: 40px 0 10px;
}

.tech_closeup_text h3 span {
	font-size: 32px;
}

.tech_content03 {
	padding: 90px 0;
}

.tech_product {
	margin: 50px 0 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.tech_product_box {
	width: 48%;
	margin-bottom: 50px;
}

.tech_product_box h3 {
	border: 2px solid #1E3D82;
	padding: 15px 10px;
	position: relative;
	background: #ffffff;
	color: #1E3D82;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
	font-size: 18px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
}

.tech_product_box h3:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid #ffffff;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	bottom: -15px;
	left: calc(50% - 11px);
	z-index: 2;
}

.tech_product_box h3:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 18px solid #1E3D82;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	bottom: -18px;
	left: calc(50% - 14px);
	z-index: 1;
}

.tech_product_img img {
	width: 100%;
	height: auto;
	margin-bottom: 30px;
}

.tech_product_box h4 {
	font-size: 22px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	text-align: left;
	margin-bottom: 30px;
}

.tech_product_text {
	font-size: 15px;
	line-height: 2;
}

/* @end */



/* @group page connector */

.connector_main {
	background: url("../img/connector_main.jpg") no-repeat center center;
	background-size: cover;
	margin: 102px 0 0;
}

.connector_main .contents_inner {
	display: flex;
	align-items: center;
	height: 700px;
}

.connector_main_inner h2 {
	background: rgba(255,255,255,0.9);
	display: inline-block;
	padding: 5px 20px;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	color: #1E3D82;
}

.connector_main_inner h1 {
	background: rgba(255,255,255,0.9);
	display: inline-block;
	padding: 5px 20px;
	font-size: 26px;
	font-family: 'Noto Serif JP', serif;
	color: #1E3D82;
	margin: 10px 0 0;
}

.connector_head {
	padding: 90px 0;
	background: #EDEDED;
}

.connector_head h3 {
	text-align: center;
	margin-bottom: 60px;
}

.connector_head h3 span {
	background: #1E3D82;
	display: inline-block;
	padding: 2px 20px;
	font-size: 28px;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	color: #ffffff;
	margin-bottom: 10px;
}

.connector_head_text {
	margin: 0 60px;
	font-size: 15px;
	line-height: 2;
}

.connector_blue {
	padding: 90px 0;
	background: #1E3D82;
}

.connector_white {
	padding: 90px 0;
}

.connector_blue_container,
.connector_white_container {
	display: flex;
	justify-content: space-between;
}

.connector_thumb {
	width: 37%;
}

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

.connector_textarea {
	width: 52%;
}

.connector_white_container .connector_thumb {
	order: 2;
}

.connector_white_container .connector_textarea {
	order: 1;
}

.connector_blue .connector_textarea {
	color: #ffffff;
}

.connector_textarea h4 {
	font-size: 24px;
	color: #163C8C;
}

.connector_textarea h4 span {
	background: #ffffff;
	display: inline-block;
	padding: 5px 25px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 8px;
}

.connector_white_container .connector_textarea h4 {
	color: #fff;
}

.connector_white_container .connector_textarea h4 span{
	background: #163C8C;
}

.connector_white_container .connector_text {
	color: #163C8C;
}

.connector_text {
	font-size: 15px;
	line-height: 2;
	margin: 30px 0;
}

.connector_point {
	
}

.connector_point span {
	display: inline-block;
	background: #ffffff;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-size: 15px;
	padding: 3px 30px;
	position: relative;
	margin-bottom: 20px;
}

.connector_point span:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	z-index: 1;
	border-top: 14px solid #ffffff;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	bottom: -14px;
	left: calc(50% - 8px);
}

.connector_pointlist {
	font-size: 15px;
	line-height: 2;
}

.connector_white_container .connector_point span {
	background: #163C8C;
	color: #ffffff;
}

.connector_white_container .connector_point span:after {
	border-top: 14px solid #163C8C;
}

.connector_white_container .connector_pointlist {
	color: #163C8C;
}

/* @end */


/* @group page talk session */
.talksession_section .contents_inner {
  max-width: 1120px;
  padding: 0 20px;
  margin: 0 auto;
  margin-top: 0px;
  margin-top: -150px;
  background-color:rgba(255,255,255,0.80);
  padding-top: 60px;
}


.talksession_headimg {
	height: 700px;
	background: url("../img/talksession_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 102px 0 0;
}
		.talksession_headimg.section_sales {
	height: 700px;
	background: url("../img/talksession_sales_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 102px 0 0;
}
	.talksession_headimg.section_career {
	height: 700px;
	background: url("../img/talksession_career_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 102px 0 0;
}
	.talksession_headimg.section_female {
	height: 700px;
	background: url("../img/talksession_female_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 102px 0 0;
}

.talksession_head {
	
}

.talksession_head_inner {
	background: #ffffff;
	transform: translateY(-107px);
	margin: 0 60px 0px;
	text-align: center;
	padding: 80px 0 0;
}

.talksession_head h2 {
	font-size: 35px;
	font-family: 'Oswald', sans-serif;
	color: #163C8C;
	font-weight: normal;
}

.talksession_head h1 {
	margin: 100px 0 0;
	font-size: 28px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
}

.talksession_head_text {
	margin: 54px 0 0;
	text-align: center;
	font-size: 15px;
}

.talksession_head h3 {
	font-size: 28px;
	font-family: 'Oswald', sans-serif;
	color: #163C8C;
	font-weight: normal;
	margin: 54px 0 0;
}

.talksession_head_container {
	display: flex;
	justify-content: space-between;
	margin: 54px 30px 0;
}

.talksession_head_box {
	width: 28%;
}
	.section_female .talksession_head_box{
		width: 22%;
	}

.talksession_head_thumb img {
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}
    .talksession_head_thumb{
        position: relative;
    }
.talksession_head_thumb::after {
	content: '';
    width: 100%;
    height: calc(100% - 20px);
    border-radius: 50%;
    background-color: #6EA8FF;
    display: block;
    bottom:15px;
    left:-5px;
    position: absolute;
    z-index: -1;
}
.talksession_head_thumb.sa::after {
    background-color: #3FC7F0;
}
.talksession_head_thumb.rk::after {
    background-color: #425DF0;
}
	.talksession_head_thumb.pp::after {
    background-color: #7842F0;
}
.talksession_head_box h4 {
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
}

.talksession_head_box p {
	font-size: 14px;
	margin: 20px 0 0;
	line-height: 2;
}
	.talksession_head_box .ls01{
		letter-spacing: -0.1px;
	}
	
.talksession_img01 {
	height: 600px;
	background: url("../img/talksession_photo01.jpg") no-repeat top center;
    background-position: right top;
    background-size: contain;
    text-align: right;
    }
.talksession_section_head {
	margin: 0 auto;
	max-width: 1120px;
    height: 100%;
}
.talksession_section_head div{
	background: #ffffff;
	margin: 0 ;
	text-align: center;
	padding: 0;
    width: 40%;
    height: 100%;
    display: flex;
    align-items: center;
}

.talksession_section_lead {
	margin: 80px 0;
	text-align:left;
}
.talksession_section_lead.bg_grad {
	margin: 80px 0 0;
}
.talksession_section_lead.bg_grad div {
    height: 275px;
    max-width: 1120px;
    margin: auto;
    padding-top: 50px;
}
.bg_grad + .contents_inner{
        margin-top: 0;
    }
.talksession_section_lead{
	text-align:right;
}
.h2_r{
   display: inline-block;
  margin: 0 0 0 auto;
    text-align: left;
    }
.h2_r span{
   text-align: right;
    }
.talksession_section_head h2,
.talksession_section_lead h2 {
	font-size: 24px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
}

.talksession_section_head h2 span,
.talksession_section_lead h2 span {
	font-size: 60px;
    display: block;
    margin-bottom: 30px;
}

.talksession_talk {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
}

.talksession_talk {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
    position: relative;
    z-index: 1;
}
.talksession_section .contents_inner .talksession_talk{
  margin-right: 40px;
}
.talksession_section .contents_inner .talksession_talk.thumb_r{
   margin-right: 0px;
    margin-left: 40px;
}
.talksession_section .contents_inner.talksession_04 .talksession_talk.thumb_r{
   margin-right: 40px;
    margin-left: 0;
}
.talksession_section .contents_inner .talksession_talk.thumb_r .talksession_thumb{
  order: 2;
}
.talksession_section .contents_inner .talksession_talk.thumb_r .talksession_textarea{
  order: 1;
}
.talksession_thumb {
	width: 120px;
        position: relative;
}

.talksession_thumb img {
	width: 100%;
	height: auto;
}
.talksession_thumb::after {
    content: '';
    width: 100%;
    height: calc(100%);
    border-radius: 50%;
    background-color: #6EA8FF;
    display: block;
    bottom: -5px;
    left: -5px;
    position: absolute;
    z-index: -1;
  }
.talksession_thumb.sa::after {
    background-color: #3FC7F0;
    }
.talksession_thumb.rk::after {
    background-color: #425DF0;
    }
.talksession_thumb.pp::after {
    background-color: #7842F0;
    }
.talksession_textarea {
	width: calc(100% - 180px);
	font-size: 16px;
	line-height: 1.8;
}
	
.section_career .talksession_img01 {
	background: url("../img/talksession_career_photo01.jpg") no-repeat top center;
	background-position: right top;
    background-size: contain;
    }
	.section_sales .talksession_img01 {
	background: url("../img/talksession_sales_photo01.jpg") no-repeat top center;
	background-position: right top;
    background-size: contain;
    }
.section_female .talksession_img01 {
	background: url("../img/talksession_female_photo01.jpg") no-repeat top center;
	background-position: right top;
    background-size: contain;
    }

.talksession_img03 {
	height: 600px;
	background: url("../img/talksession_photo03.jpg") no-repeat top center;
    background-position: left top;
    background-size: contain;
}
	
.section_career .talksession_img03 {
	background: url("../img/talksession_career_photo02.jpg") no-repeat top center;
	background-position: left top;
    background-size: contain;
    }
	.section_sales .talksession_img03 {
	background: url("../img/talksession_sales_photo02.jpg") no-repeat top center;
	background-position: left top;
    background-size: contain;
    }
.section_female .talksession_img03 {
	background: url("../img/talksession_female_photo02.jpg") no-repeat top center;
	background-position: left top;
    background-size: contain;
    }

.talksession_img05 {
	height: 600px;
	background: url("../img/talksession_photo05.jpg") no-repeat top center;
    background-position: right top;
    background-size: contain;
}
	
	.section_career .talksession_img05 {
	background: url("../img/talksession_career_photo03.jpg") no-repeat top center;
		background-position: right top;
    background-size: contain;
    }	
	.section_sales .talksession_img05 {
	background: url("../img/talksession_sales_photo03.jpg") no-repeat top center;
		background-position: right top;
    background-size: contain;
    }
.section_female .talksession_img05 {
	background: url("../img/talksession_female_photo03.jpg") no-repeat top center;
	background-position: right top;
    background-size: contain;
    }

.talksession_end {
	height: 600px;
	background: url("../img/talksession_photo06.jpg") no-repeat top center;
	background-size: cover;
}
	
	.talksession_end.section_career {
	background: url("../img/talksession_career_photo04.jpg") no-repeat top center;
		background-size: cover;
    }
	.talksession_end.section_sales {
	background: url("../img/talksession_sales_photo04.jpg") no-repeat top center;
		background-size: cover;
    }
.talksession_end.section_female {
	background: url("../img/talksession_female_photo04.jpg") no-repeat top center;
	background-size: cover;
    }

    
.talksession_img03 .talksession_section_head div{
    margin: 0 0 0 auto;
    justify-content: flex-end;
  }
.talksession_img05 .talksession_section_head div{
    margin: 0 0 0 0;
  }
.talksession_img05 .talksession_section_head div{
    text-align: left;
  }

.talksession_img03 .talksession_section_head div{
    text-align: left;
  }
    .talksession_03{
        
    }
      .talksession_section .contents_inner.talksession_03 .talksession_talk {
    margin-right: 0px;
          margin-left: 40px;
  }
  .talksession_section .contents_inner.talksession_03 .talksession_talk.thumb_r {
    margin-right: 0px;
    margin-left: 40px;
  }
    .bg_grad::before{
       background: linear-gradient(135deg, #E8EDF4, #fff);
        width: 100vw;
        display: block;
        content: "";
left: 0;

position: absolute;
        height: 600px;
        z-index: -1;
        
    }
        .bg_grad.left_bl::before{
       background: linear-gradient(135deg, #FFF, #E8EDF4);
        width: 100vw;
        display: block;
        content: "";
        left: 0;
        position: absolute;
        height: 600px;
        z-index: -1;
    }
/* @end */





}

@media only screen and (max-width: 1175px) {
	    .nav_box {
        width: 18%;
    }
}

@media only screen and (max-width: 885px) {
	
	.header_nav ul li{
		margin: 0 5px;
	}
	.header_nav ul li a{
		        width: 110px;
		font-size: 15px;
	}
}

@media only screen and (max-width: 768px) {

.pconly {
	display: none;
}

.text_btn {
	display: inline-block;
	background: #163C87;
	color: #ffffff;
	padding: 2px 10px;
	margin-bottom: 5px;
}

/* @group header */

header{
	padding: 20px 20px;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 110;
		background-color: #F7F7F7;
}

.header_left{
	text-align: left;
}

.header_logo{
	width: 90px;
	float: left;
	padding: 6px 0 0 ;
}

.header_logo img {
	width: 80px;
	height: auto;
}

.header_copy {
	font-family: 'Oswald', sans-serif;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 1px;
	padding: 10px 0 0 ;
}
.header_nav{
	display: none;
}


.header_nav ul li a{
	font-size: 16px;
	text-decoration: none;
	color: #163C8C;
	border-bottom: 2px solid #163C8C;
}


/* @end */

/* @group sp_menu */

#sp_menu{
	position: absolute;
	top: 18px;
	right: 20px;
	z-index: 10000;
}

.menu-trigger,
.menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.menu-trigger {
	position: relative;
	width: 33px;
	height: 24px;
}
.menu-trigger span {
	position: absolute;
	left: 0px;
	width: 33px;
	height: 2px;
	background-color: #000000;
	border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
	top: 0px;
}
.menu-trigger span:nth-of-type(2) {
	top: 11px;
}
.menu-trigger span:nth-of-type(3) {
	top: 23px;
}
	
#sp_menu .text-menu{
	font-size: 11px;
	font-weight: 600;
	color: #1C3ADB;
}


.is-open .menu-trigger span:nth-of-type(1) {
	top: 19px;
	-webkit-transform: translateY(0px) rotate(-45deg);
    -ms-transform: translateY(0px) rotate(-45deg);
    transform: translateY(0px) rotate(-45deg);
}

.is-open .menu-trigger span:nth-of-type(2) {
	display: none;
}
.is-open .menu-trigger span:nth-of-type(3) {
	top: 19px;
	-webkit-transform: translateY(0px) rotate(45deg);
    -ms-transform: translateY(0px) rotate(45deg);
    transform: translateY(0px) rotate(45deg);
}

/* @end */
/* @group nav */

nav {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #163C8C;
	z-index: 20000;
	border: 5px solid #ffffff;
	display: none;
}

.nav_close {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 20001;
}

.nav_close a {
	display: block;
	position: relative;
	width: 24px;
	height: 24px;
	text-indent: -9999px;
}

.nav_close a:before {
	position: absolute;
	content: "";
	width: 30px;
	height: 1px;
	background: #ffffff;
	transform: rotate(45deg);
	z-index: 20002;
	top: 12px;
	left: -3px;
}

.nav_close a:after {
	position: absolute;
	content: "";
	width: 30px;
	height: 1px;
	background: #ffffff;
	transform: rotate(-45deg);
	z-index: 20002;
	top: 12px;
	left: -3px;
}

nav a {
	color: #ffffff;
	text-decoration: none;
}

.nav_wrapper {
	width: 100%;
	height: 100%;
	color: #ffffff;
	position: relative;
	overflow: auto;
	padding: 20px;
}

.nav_head {
	margin-bottom: 30px;
}

.nav_logo{
	width: 90px;
	float: left;
}

.nav_logo img {
	width: 80px;
	height: auto;
}

.nav_copy {
	font-family: 'Oswald', sans-serif;
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 2px;
	padding: 6px 0 0 ;
}

.nav_head_btn ul{
		display: flex;
	flex-wrap: wrap;
		margin: 15px 0px;
	}
	.nav_head_btn ul li{
		margin-right: 10px;
		margin-bottom: 10px;
	}
.nav_head_btn ul li a {
    display: flex;
	align-items: center;
	justify-content: center;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -0.01rem;
    text-decoration: none;
    text-align: center;
    color: #fff;
    width: 140px;
	height: 63px;
    padding: 5px 0px;
    border: 1px solid #fff;
  }
	
.nav_box ul li {
	margin: 0 0 15px 0;
}

.nav_box ul li.indent {
	padding-left: 18px;
}

.nav_box:nth-child(1) ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.nav_box:nth-child(1) ul li {
	width: 47%;
}

.nav_box:nth-child(1) img {
	margin: 5px 0 0;
	border-radius: 5px;
	width: 100%;
	height: auto;
}

.nav_line {
	display: inline-block;
	padding-left: 18px;
	position: relative;
}

.nav_line:before {
	content: "";
	position: absolute;
	width: 12px;
	height: 1px;
	background: #ffffff;
	z-index: 1;
	top: 50%;
	left: 0;
	margin-top: -1px;
}

.nav_box {
	margin: 0 0 40px 0;
	width: 100%;
}

.nav_box ul li {
	font-size: 12px;
}

.nav_box_title {
	position: relative;
	margin-bottom: 20px;
	border-bottom: 1px solid #ffffff;
}
.nav_box_title_mt02{
	 margin-top: 40px;
}
.nav_box_title h3 {
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	padding: 0 20px 10px 0;
	display: inline-block;
	position: relative;
}

.nav_box_title h3 .line1 {
	width: 100%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -2px;
	left: 0;
	background: #ffffff;
}

.nav_box_title h3 .line1 i {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #ffffff;
	z-index: 10;
	top: -3px;
	right:-10px;
}

.nav_box_title h3 .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #ffffff;
	z-index: 10;
	top: -3px;
	right: 0;
}

.nav_box_title h3 .line1:after {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: -8px;
}

.nav_box_2column {
	display: flex;
	justify-content: space-between;
}

.nav_box_2box {
	width: 48%;
}

.nav_box_2box_person {
	margin-bottom: 20px;
}

.nav_box_2box_person a {
	display: flex;
}

.nav_box_2box_person_thumb img {
	width: 45px;
	height: auto;
}

.nav_box_2box_person_text {
	margin-left: 10px;
	line-height: 1.2;
}

.nav_box_2box_person_label {
	display: inline-block;
	background: #ffffff;
	color: #163B8C;
	font-size: 13px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	padding: 3px 5px;
	margin-bottom: 5px;
}

.nav_box_2box_person_name {
	font-size: 12px;
	font-weight: bold;
}

.nav_box_2box_person_year {
	font-size: 12px;
}

/* @end */


/* @group index */

.mainimage {
	position: relative;
}
	#main-mv{
		width: 100%;
		margin: 84px auto 0px;
	}
	#main-mv .pc{
		display: none;
	}
	#main-mv .sp{
		display: block;
	}
	#main-mv img{
		width: 100%;
		height: auto;
	}

 .mainimage h1 {
	 width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 20;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
  }

 .mainimage h1 span {
    display: block;
    margin-bottom: 10px;
    font-family: "BIZ UDPGothic", sans-serif;
    font-weight: 700;
    font-size: clamp(20px, 5vw, 30px);
    letter-spacing: 2px;
    color: #004098;
    line-height: 1.2;
  }

.index_news {
	padding: 30px 0 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: center;
	margin-bottom: 50px;
}

.index_news h2 {
	font-size: 22px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 2px;
	border-bottom: 3px solid #163C8C;
	padding: 0 3px;
	display: inline-block;
}

.index_news_date {
	margin: 10px 3px 0 0;
	font-size: 15px;
	color: #0c1d42;
}

.index_news_title {
	margin: 5px 0 15px 0;
	font-size: 18px;
}

.index_news_title a.linkcolor {
	color: #163C8C;
}

.index_topics {
	background: #ededed;
	position: relative;
	padding: 40px 0;
	text-align: center;
	margin: 100px 0;
    overflow: hidden;
}

.index_topics_title {
	font-size: 25px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	letter-spacing: 2px;
	margin-bottom: 15px;
}

.index_topics_text {
	font-size: 13px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-bottom: 30px;
}

.index_topics_box {
	background: #ffffff;
	position: relative;
	width: 460px;
	float: left;
	padding-bottom: 40px;
	margin: 0 20px;
	opacity: 0.7;
	overflow: hidden;
}

.index_topics_box.slick-current {
	opacity: 1;
}

.index_topics_box_thumb {

}

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

.index_topics_box_title {
	padding: 20px 15px;
	color: #163C8C;
	font-size: 14px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: left;
}

.index_topics_box_num {
	position: absolute;
	bottom: 15px;
	left: 0;
	width: 70%;
	border-bottom: 1px solid #000000;
	text-align: right;
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	padding-right: 12px;
	line-height: 1;
	padding-bottom: 5px;
}

.index_topics_box_num:after {
	position: absolute;
	content: "";
	width: 3px;
	height: 6px;
	background: #000000;
	bottom: -3px;
	right: 0;
}

.index_topics_box_more {
	position: absolute;
	bottom: 15px;
	right: 0;
	width: 28%;
	border-bottom: 2px solid #163C8C;
	text-align: left;
	font-size: 10px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	color: #163C8C;
	padding-left: 12px;
	line-height: 1;
	padding-bottom: 5px;
}

.index_topics_box_more:after {
	position: absolute;
	content: "";
	width: 3px;
	height: 6px;
	background: #163C8C;
	bottom: -4px;
	left: 0;
}

.index_topics_container .slick-prev {
	width: 22px;
	height: 36px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 22px 36px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	left: 28px;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	transform: rotate(180deg);
	margin-top: -18px;
}

.index_topics_container .slick-next {
	width: 22px;
	height: 36px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 22px 36px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	right: 28px;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	margin-top: -18px;
}

.index_keywords {
	margin: 100px 0 0;
}

.index_keywords .contents_inner {
	padding: 0;
}

.index_keywords_img {
	margin: 0 0 50px 0px;
}
.index_keywords_img a {
	margin: 0 0 30px 0px;
	display: block;
}
.index_keywords_img:nth-of-type(2n) a{
	text-align: right;
}
.index_keywords_img h2 a {
	margin: 0;
}
.index_keywords_img img {
	width: 280px;
	height: auto;
	box-shadow: 20px 20px 20px rgba(0,0,0,0.1);
}

.index_keywords_title {
	z-index: 10;
	width: 80%;
	font-size: 25px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}
.index_keywords_img:nth-of-type(2n) 
.index_keywords_title {
	margin-left: auto;
}
.index_keywords_title_inner {
	position: relative;
}

.index_keywords_title_inner h2 {
	margin-left: 24%;
	padding-bottom: 10px;
	font-weight: 300;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner h2 {
	margin-left: 0;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner h2 a{
	text-align: left;
}
.index_keywords_title_inner .line1 {
	width: 18%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #000000;
}

.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner .line1 {
	left: auto;
	right: 0;
}

.index_keywords_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	right: 0;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner .line1:before {
	right: 0;
    left: 0;
}
    
.index_keywords_title_inner .line2 {
	width: 80%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	right: 0;
	background: #163C8C;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner .line2 {
	right: auto;
}
.index_keywords_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	left: 0;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_title_inner .line2:before {
    left: auto;
    right: 0;
    }
.index_keywords_text {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	line-height: 2;
	font-size: 17px;
	margin: 15px 20px 0 19%;
}
.index_keywords_img:nth-of-type(2n) .index_keywords_text p a{
	text-align: left;
}
.index_connector .contents_inner {
	margin: 50px 0 0;
	padding: 0;
}

.index_connector_img {
	text-align: right;
}

.index_connector_img img {
	box-shadow: -20px 20px 20px rgba(0,0,0,0.1);
}

.index_connector_line {
	position: absolute;
	content: "";
	width: 50%;
	height: 250px;
	background: url("../img/index_line.gif");
	top: -240px;
	right: 0;
}

.index_connector_title {
	margin: 30px 0 0 30px;
}

.index_connector_title_inner {
	position: relative;
}

.index_connector_title_inner h2 {
	font-size: 25px;
	padding: 0 0 10px 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;

}

.index_connector_title_inner .line1 {
	width: 80%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_connector_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_connector_title_inner .line2 {
	width: 18%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 82%;
	background: #000000;
}

.index_connector_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_connector_text {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	line-height: 2;
	font-size: 17px;
	margin: 20px 0 0 40px;

}

.index_topmessage .contents_inner {
	margin: 50px 0 0;
	padding: 0;
	position: relative;
}

.index_topmessage_img {
	margin-bottom: 20px;
}

.index_topmessage_img img {
	box-shadow: 20px 20px 20px rgba(0,0,0,0.1);
}

.index_topmessage_line {
	display: none;
}

.index_topmessage_title {
	z-index: 10;
	width: 80%;
	font-size: 25px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_topmessage_title_inner {
	position: relative;
}

.index_topmessage_title_inner h2 {
	margin-left: 24%;
	padding-bottom: 10px;
	font-weight: 300;
}

.index_topmessage_title_inner .line1 {
	width: 18%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #000000;
}

.index_topmessage_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	right: 0;
}

.index_topmessage_title_inner .line2 {
	width: 80%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	right: 0;
	background: #163C8C;
}

.index_topmessage_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	left: 0;
}

.index_topmessage_text {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	line-height: 2;
	font-size: 17px;
	margin: 15px 20px 0 20%;
}

.index_topmessage_img2 {
	display: none;
}

.index_business {
	margin: 100px 0 0;
}

.index_business .contents_inner {
	padding: 0;
}

.index_business_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	margin: 0 auto;
}

.index_business_title h2 {
	font-size: 26px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
	margin-left: 10px;
}

.index_business_title p {
	line-height: 2.5;
	font-size: 16px;
}

.index_business01 {
	margin: 80px 0 30px;
	position: relative;
}

.index_business02 {
	margin: 60px 0 0;
	position: relative;
}

.index_business03 {
	margin: 60px 0 0;
	position: relative;
}

.index_business04 {
	margin: 60px 0 0;
	position: relative;
}

.index_business05 {
	margin: 60px 0 0;
	position: relative;
}

.index_business01_img,
.index_business02_img,
.index_business03_img,
.index_business04_img,
.index_business05_img {
	margin-bottom: 20px;
}

.index_business02_img {
}

.index_business01_img img,
.index_business02_img img,
.index_business03_img img,
.index_business04_img img,
.index_business05_img img {
	width: 100%;
	height: auto;
}

.index_business01_title,
.index_business03_title,
.index_business05_title{
	width: 65%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.index_business03_title {
	top: 50%;
}

.index_business01_title_inner,
.index_business02_title_inner,
.index_business03_title_inner,
.index_business04_title_inner,
.index_business05_title_inner {
	position: relative;
}

.index_business01_title_inner h3,
.index_business03_title_inner h3,
.index_business05_title_inner h3 {
	padding-bottom: 10px;
	font-weight: 300;
	font-size: 23px;
	text-align: right;
}

.index_business01_title_inner .line1,
.index_business03_title_inner .line1,
.index_business05_title_inner .line1 {
	width: 30%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: #000000;
}

.index_business01_title_inner .line1:before,
.index_business03_title_inner .line1:before,
.index_business05_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	right: 0;
}

.index_business01_title_inner .line2,
.index_business03_title_inner .line2,
.index_business05_title_inner .line2 {
	width: 68%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	right: 0;
	background: #163C8C;
}

.index_business01_title_inner .line2:before,
.index_business03_title_inner .line2:before,
.index_business05_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	left: 0;
}

.index_business02_title,
.index_business04_title {
	width: 70%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-left: 30%;
}

.index_business02_title_inner h3,
.index_business04_title_inner h3 {
	padding-bottom: 10px;
	font-weight: 300;
	font-size: 25px;
	text-align: left;
}

.index_business02_title_inner .line1,
.index_business04_title_inner .line1 {
	width: 68%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_business02_title_inner .line1:before,
.index_business04_title_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_business02_title_inner .line2,
.index_business04_title_inner .line2 {
	width: 30%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	background: #000000;
}

.index_business02_title_inner .line2:before,
.index_business04_title_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_business05_title_sub {
	font-size: 16px;
	color: #163C8C;
	text-align: right;
	display: block;
}

.index_works {
	position: relative;
	padding: 0;
	overflow: hidden;
}

.index_works .contents_inner {
	padding: 0;
}

.index_works:before {
	position: absolute;
	width: 150%;
	height: 570px;
	content: "";
	background: url("../img/index_line.gif");
	top: 340px;
	left: -25%;
	z-index: -1;
	transform: rotate(-8deg);
}

.index_works_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	margin: 100px 20px 0;
}

.index_works_title h2 {
	font-size: 26px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
	margin-left: 20px;
}

.index_works_title p {
	line-height: 2.5;
	font-size: 16px;
}

.index_works_flow {
	text-align: center;
}

.index_works_flow a {
	display: inline-block;
	background: #163C8C;
	padding: 5px 30px;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 18px;
	margin: 60px 0 0;
}

.index_works_container {
	margin: 60px 0 100px;
}

.index_works_container .slick-prev {
	width: 31px;
	height: 48px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 31px 48px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	left: 30px;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	transform: rotate(180deg);
	margin-top: -24px;
}

.index_works_container .slick-next {
	width: 31px;
	height: 48px;
	background: url("../img/index_works_arrow.svg") no-repeat;
	background-size: 31px 48px;
	border: 0;
	text-decoration: none;
	position: absolute;
	top: 50%;
	right: 30px;
	text-indent: -9999px;
	cursor: pointer;
	z-index: 20;
	margin-top: -24px;
}

.index_works_box {
	width: 210px;
	background: #ffffff;
	margin: 0 15px;
	padding-bottom: 30px;
	position: relative;
}

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

.index_works_text {
	position: relative;
	padding: 40px 0px 0px 0px;
}

.index_works_bumon {
	background: #163C8C;
	padding: 5px 10px 5px 30px;
	width: 170px;
	position: absolute;
	top: -25px;
	right: -10px;
	color: #ffffff;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 20px;
}

.index_works_profile {
	position: relative;
	padding: 10px 0 0 ;
}

.index_works_profile .line1 {
	width: 60%;
	height: 3px;
	display: block;
	position: absolute;
	top: -1px;
	left: 0;
	background: #163C8C;
}

.index_works_profile .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	top: -3px;
	right: 0;
}

.index_works_profile .line2 {
	width: 38%;
	height: 1px;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background: #000000;
}

.index_works_profile .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	top: -4px;
	left: 0;
}

.index_works_sub {
	font-size: 12px;
	padding: 0 20px;
}

.index_works_name {
	padding: 0 20px;
}

.index_works_name h3 {
	font-size: 18px;
	font-weight: bold;
	display: inline-block;
}

.index_works_name span {
	font-size: 14px;
}

.index_style {

}

.index_style .contents_inner {
}

.index_style_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	margin: 100px auto;
}

.index_style_title h2 {
	font-size: 30px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
}

.index_style_container {
}

.index_style_box {
	margin-bottom: 20px;
}

.index_style_thumb {
	position: relative;
}

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

.index_style_text {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #ffffff;
	padding: 20px 0 20px 0px;
}

.index_style_inner {
	position: relative;
	padding: 0 0 10px 0;
}

.index_style_sub {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 18px;
}

.index_style_inner .line1 {
	width: 35%;
	height: 3px;
	display: block;
	position: absolute;
	bottom: -1px;
	left: 0;
	background: #163C8C;
}

.index_style_inner .line1:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #163C8C;
	z-index: 10;
	bottom: -3px;
	right: 0;
}

.index_style_inner .line2 {
	width: 63%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	right: 0;
	background: #000000;
}

.index_style_inner .line2:before {
	position: absolute;
	content: "";
	width: 2px;
	height: 8px;
	background: #000000;
	z-index: 10;
	bottom: -4px;
	left: 0;
}

.index_recruit {
	padding: 0px 0;
}

.index_recruit .contents_inner {
	position: relative;
	padding: 0;
}


.index_recruit_title {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	margin: 50px 20px -30px;
}

.index_recruit_title h2 {
	font-size: 30px;
	font-weight: 500;
	display: inline-block;
	border-right: 3px solid #163C8C;
}

.index_recruit_container {
	background: url("../img/index_recruit_back.jpg") no-repeat;
	background-size: cover;
	padding: 50px 30px;
}

.index_recruit_container ul {

}

.index_recruit_container ul li {
	margin-bottom: 10px;
}

.index_recruit_container ul li:nth-child(2n) {
}

.index_recruit_container ul li a {
	display: block;
	background: #ffffff;
	padding: 15px;
	font-size: 15px;
	font-weight: normal;
	text-align: center;
	text-decoration: none;
}

.modal_topics_head {
	border-top: 1px solid #163C8C;
	border-bottom: 1px solid #163C8C;
	padding: 10px;
	position: relative;
	display: flex;
	align-items: center;
	margin: 20px 0 0;
}

.modal_topics_num {
	position: absolute;
	top: 0;
	left: 20px;
	font-size: 72px;
	color: rgba(22,60,138,0.4);
	z-index: 10;
}

.modal_topics_head h4{
	font-size: 15px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	color: #163C8C;
}

.modal_topics_photo {
	text-align: center;
	margin: 15px 0;
}

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

.modal_topics_text {
	font-size: 13px;
	line-height: 2;
}



/* @end */


/* @group footer */

footer{
	background: #e8edf4;
	text-align: center;
	padding: 15px 0;
	font-size: 10px;
	font-family: 'Oswald', sans-serif;
	font-weight: 400;
	letter-spacing: 1px;
}


/* @end */
/* @group page keywords */

.page_title {
	text-align: center;
	margin: 78px 0 0;
	padding: 70px 0 0 ;
}

.page_title h1 {
	font-size: 24px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	letter-spacing: 1px;
}

.keywords_head {
	background: url("../img/icon_keywords.svg") no-repeat top center;
	background-size: 59px 24px;
	margin: 30px 0 0;
	padding: 80px 0 0;
	text-align: center;
}

.keywords_head h2 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 18px;
	margin-bottom: 50px;
}

.keywords_head p {
	font-size: 14px;
	text-align: left;
	padding: 0 40px;
	line-height: 2;
}

.keywords_point_container {
	margin: 50px 0 0;
}

.keywords_point_box {
	background: #e8edf4;
	padding: 40px 20px 30px;
	margin-bottom: 50px;
	text-align: center;
}

.keywords_point_box:nth-child(2n) {
}

.keywords_point_box h3 {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	position: relative;
	padding: 20px 0 120px 30px;
	margin-bottom: 20px;
	line-height: 1.2;
	display: inline-block;
}

.keywords_point_title_sub {
	font-size: 18px;
}

.keywords_point_box h3 .keywords_point_title_num {
	position: absolute;
	top: 7px;
	left: 0;
	font-size: 44px;
	color: #163C80;
	font-weight: 300;
	line-height: 1;
}

.keywords_point_title1:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 91px;
	height: 85px;
	background: url("../img/icon_keywords01.svg") no-repeat right center;
	background-size: 91px 85px;
	margin-left: -45px;
}

.keywords_point_title2:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 88px;
	height: 97px;
	background: url("../img/icon_keywords02.svg") no-repeat right center;
	background-size: 88px 97px;
	margin-left: -44px;
}

.keywords_point_title3:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 75px;
	height: 78px;
	background: url("../img/icon_keywords03.svg") no-repeat right center;
	background-size: 75px 78px;
	margin-left: -44px;
}

.keywords_point_title4:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 81px;
	height: 67px;
	background: url("../img/icon_keywords04.svg") no-repeat right center;
	background-size: 81px 67px;
	margin-left: -44px;
}

.keywords_point_title5:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 71px;
	height: 67px;
	background: url("../img/icon_keywords05.svg") no-repeat right center;
	background-size: 71px 67px;
	margin-left: -44px;
}

.keywords_point_title6:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 10;
	width: 70px;
	height: 83px;
	background: url("../img/icon_keywords06.svg") no-repeat right center;
	background-size: 70px 83px;
	margin-left: -44px;
}

.keywords_point_box p {
	font-size: 14px;
	line-height: 2;
	text-align: left;
}

.keywords_point_per {
	margin: 0 auto 50px;
	width: 60%;
}

.keywords_point_per_box {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin-bottom: 20px;
}

.keywords_point_per_box h3 {
	background: #000000;
	color: #ffffff;
	font-size: 14px;
	text-align: center;
	letter-spacing: 1px;
	padding: 3px 0;
}

.keywords_point_per_num {
	font-size: 46px;
	text-align: center;
}

.keywords_point_per_num span {
	font-size: 28px;
}

.keywords_map {
	background: url("../img/keywords_map_sp.gif") no-repeat;
	background-size: 100% auto;
	padding: 20px 0 0;
}

.keywords_map_container {
	padding: 50px 0 100px;
	margin: 0 5%;
}

.keywords_map_box {
	width: 49%;
	float: left;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin: 0 0 50px;
}

.keywords_map_box:nth-child(2n) {
	float: right;
}

.keywords_map_box h3 {
	background: #163C80;
	color: #ffffff;
	font-size: 14px;
	text-align: center;
	letter-spacing: 1px;
}

.keywords_map_num {
	font-size: 40px;
	text-align: center;
}

.keywords_map_num span {
	font-size: 20px;
}

/* @end */


/* @group page topmessage */

.topmessage_title {
	position: relative;
	margin: 58px 0 0;
	padding: 0px 0 0 ;
}

.topmessage_photo {
}

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

.topmessage_text {
	padding: 40px 30px 30px 30px;
	background: rgba(22,60,131,0.9);
	color: #ffffff;
}

.topmessage_text span {
	font-size: 15px;
	color: #ffffff;
	opacity: 0.5;
}

.topmessage_text h1 {
	font-size: 21px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin: 20px 0 5px 0;
}

.topmessage_text p {
	text-align: right;
	color: #ffffff;
	opacity: 0.5;
	margin-right: 20px;
}

.topmessage_block {
	position: relative;
	margin: 0;
}

.topmessage_block_end {
}

.topmessage_block_photo {
}

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

.topmessage_block_text {
	background: #e8edf4;
	padding: 50px 30px;
	text-align: center;
}

.topmessage_block_text h2 {
	font-size: 22px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	color: #163C8C;
	margin-bottom: 15px;
}

.topmessage_block_text h3 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 19px;
	margin-bottom: 30px;
}

.topmessage_block_text p {
	line-height: 2;
	text-align: left;
}
	.topmessage_block_text p + p{
		margin-top: 20px;
	}

/* @end */

/* @group page global */

.global_title {
	text-align: center;
	margin: 58px 0 0;
	padding: 50px 0 0 ;
}

.global_title h1 {
	font-size: 26px;
}

.global_head {
	margin: 30px 0 0;
	padding: 30px 0 0;
	text-align: center;
}

.global_head p {
	font-size: 16px;
	text-align: left;
}

.global_container {
	margin: 20px 0 0;
}

.global_container .contents_inner {
	padding: 0;
}

.global_box {
	margin-bottom: 40px;
}

.global_box h2 {
	background: #163C87;
	color: #ffffff;
	text-align: center;
	padding: 8px 6px;
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.global_box h2 span {
	font-size: 12px;
	display: block;
}

.global_box_eu {
}

.global_box_wrapper {
	padding: 20px;
	position: relative;
}

.global_box_text {
	font-size: 16px;
}

.global_box_photo {
	margin: 20px 0 ;
}

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

.global_box_text ul li {
	color: #163C87;
	list-style: disc;
	margin: 0 0 5px 1.5em;
}

.global_viewmore {
	display: inline-block;
	background: #163C87;
	color: #ffffff;
	text-decoration: none;
	color: #ffffff;
	font-size: 16px;
	padding: 0px 10px;
	margin: 20px 0 0;
}

.global_viewmore2 {
	font-size: 12px;
	color: #ffffff;
	border: 1px solid #ffffff;
	padding: 0 10px;
	display: block;
	width: 90px;
	margin: 10px auto 0;
}

/* @end */

/* @group modal */

.modaal-content-container {
	padding: 0;
}

.modaal-overlay {
	z-index: 9990;
	background: rgba(22,60,139,0.5) !important;
}

.modaal-container {
	max-width: 840px;
}

.modaal-inner-wrapper {
	padding-top: 50px;
}

.modal {
	display: none;
}

.modal_inner {
}

.modal_wrapper {
	position: relative;
	width: 100%;
}

.modaal-wrapper .modaal-close {
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 10010;
	width: 25px;
	height: 25px;
	background: url("../img/modal_close.svg") no-repeat;
	background-size: 25px 25px;
}

.modaal-wrapper .modaal-close:before {
	display: none;
}

.modaal-wrapper .modaal-close:after {
	display: none;
}

/* @end */

/* @group modal global */

.modal_global_head {
	text-align: center;
}

.modal_global_head h3 {
	font-size: 26px;
	margin-bottom: 10px;
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	letter-spacing: 2px;
	color: #163C8B;
	line-height: 1;
}

.modal_global_head h4 {
	font-size: 14px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 20px;
}

.modal_global_head h5 {
	font-size: 13px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 60px;
}

.modal_inner_global {
	background: #ffffff;
	border: 1px solid #163C8B;
	margin: 5px;
}

.modal_wrapper_global {
	position: relative;
	width: 100%;
	padding: 30px 20px;
}

.modal_text {
	font-size: 14px;
	margin-bottom: 20px;
}

.modal_text h4 {
	font-family: 'Noto Serif JP', serif;
	font-size: 17px;
	color: #163C8B;
	border-bottom: 1px solid #163C8B;
	padding-bottom: 5px;
	margin-bottom: 20px;
}

.modal_photo {
}

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

/* @end */



/* @group page business flow */

.businessflow_title h1{
	font-size: 26px;
	font-weight: bold;
}

.businessflow_head {
	margin: 50px 0 0;
}

.businessflow_head p {
	max-width: 840px;
	margin: 0 auto;
}

.businessflow_tab_container {
	margin: 50px 0 0;
}

.businessflow_tab_box {
	margin-bottom: 10px;
}

.businessflow_tab_box a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
}

.businessflow_tab_box a.active {
	background: #163C87;
	color: #ffffff;
}

.businessflow_tab_box h2 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 26px;
	width: 120px;
	float: left;
	line-height: 1;
	text-align: left;
	margin: 0 10px 0 20px;
}

.businessflow_tab_box h2 span {
	font-size: 38px;
}

.businessflow_tab_box ul {
	float: left;
	text-align: left;
}

.businessflow_tab_box ul li {
	list-style: disc;
}

.businessflow_contents {
	/*display: none;*/
}

#businessflow_01 {
	display: block;
}


.businessflow_contents .contents_inner {
}

.businessflow_container {
	border: 1px solid #163C87;
	margin: 40px 0 50px;
	padding: 30px 20px;
}

.businessflow_box {
	position: relative;
	margin-bottom: 80px;
}

.businessflow_box:last-child {
	margin-bottom: 0;
}

.businessflow_subtitle {
	font-size: 25px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	border-bottom: 1px solid #163C87;
	text-align: center;
	line-height: 1;
	position: relative;
	padding: 0 0 10px 0;
	margin: 0 30px;
}

.businessflow_subtitle:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 14px solid #163C87;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	left: 50%;
	bottom: -14px;
	margin-left: -8px;
	z-index: 10;
}

.businessflow_subtitle:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 13px solid #ffffff;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	left: 50%;
	bottom: -13px;
	margin-left: -7px;
	z-index: 10;
}

.businessflow_subtitle span {
	font-size: 20px;
}

.businessflow_detail {
	margin: 40px 0 0;
}

.businessflow_text {
	margin-bottom: 30px;
	line-height: 2;
}

.businessflow_person {
	position: relative;
	margin-bottom: 10px;
}

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

.businessflow_name {
	position: absolute;
	top: 0;
	left: 0;
	width: 55%;
	height: 100%;
	background: rgba(22,60,131,0.7);
	color: #ffffff;
	padding: 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.businessflow_name h3 {
	font-size: 17px;
	margin-bottom: 5px;
}

.businessflow_name p {
	font-size: 12px;
}

@media all and (max-width: 768px) {
	.businessflow_title .contents_inner {
		max-width: 1120px;
		padding: 0px;
		margin: 0 auto;
	}
	.businessflow_head p {
		font-size: 15px;
		padding: 0 20px 60px;
	}
	.businessflow_sec_header {
		height: 200px;
		width: 100%;
        background-position: 30px 60px ,30px -10px, 0 0;
		background-repeat: no-repeat;
        background-size: 60px auto,60px auto,cover;
	}
    #businessflow_01 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),none,url("../img/businessflow_stage1_img.jpg");
    }
    #businessflow_02 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage2_img.jpg");
    }
    #businessflow_03 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage3_img.jpg");
    }
    #businessflow_04 .businessflow_sec_header{
        background-image:url("../img/businessflow_cercle.svg"),url(../img/businessflow_cercle_bar.svg),url("../img/businessflow_stage4_img.jpg");
    }
	.businessflow_sec_header h2 {
		max-width: 1000px;
		width: 100%;
		margin: auto;
		font-size: 35px;
		padding-left: 90px;
		padding-top: 50px;
		padding-bottom: 35px;
		font-family: Oswald, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		display: flex;
		color: #ffffff;
		flex-direction: column;
	}
	.businessflow_sec_header h2 span {
		max-width: 1000px;
		width: auto;
		margin: auto auto auto 0px;
		font-size: 16px;
		font-family: Oswald, "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
		font-weight: normal;
		display: inline-block;
		padding-bottom: 0px;
	}
	.businessflow_sec_icon img{
		width: 60px;
	}
	.businessflow_contents li {
		max-width: 1000px;
		height: auto;
		background-color: #E8EDF4;
		margin: auto auto 40px;
		padding: 27px;
		display: flex;
		flex-direction: column;
		box-shadow: 10px 10px 10px rgba(70,70,70,0.20);
	}
	.businessflow_contents .business_flow_last_ul li:last-child {
		max-width: 1000px;
		height: auto;
		background-color: #E8EDF4;
		margin: auto auto 0px;
		padding: 26px 60px 26px 60px;
		display: flex;
		box-shadow: 10px 10px 10px rgba(70,70,70,0.20);
	}
	.businessflow_sec_icon {
		width: 125px;
		height: 125px;
		background-color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		margin: 0 auto;
	}

	.businessflow_contents ul {
		margin-top: -50px;
		background-image: url(../img/businessflow_bar.svg);
		background-position: 30px top;
		background-repeat: no-repeat;
		padding: 0 20px 80px;
        background-size: 60px auto;
	}
	.businessflow_contents ul.business_flow_last_ul{
		padding-bottom: 0px;
	}

	.businessflow_contents li h3{
		font-size: 22px;
		text-align: center;
		font-family: 'Noto Serif JP', serif;
		color: #1E51BC;
		margin: 33px auto 24px;
	}
	.businessflow_contents li p{
		font-size: 15px;
	}
	.business_title{
		padding-bottom: 42px;
        font-family: 'Noto Serif JP', serif;
	}
	.business_inner{
		position: relative;
	}
}


@media all and (max-width: 1100px) {
	.businessflow_sec_header h2 {
		padding-left: 90px;
	}
}
    
    
/* @end */
/* @group page base */

.base_title h1{
	font-size: 26px;
	font-weight: bold;
}

.base_head {
	margin: 50px 0 0;
}

.base_head p {
	margin: 0 auto;
	text-align: left;
}

.base_tab_container {
	margin: 50px 0px;
}

.base_tab_box {
	text-align: center;
	margin-bottom: 10px;
}

.base_tab_box a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	color: #000000;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
}

.base_contents {
	margin-bottom: 60px;
}

.base_container {
	border: 1px solid #163C87;
	position: relative;
	padding: 40px 20px 20px;
}

.base_container:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: -10px;
	left: -10px;
	z-index: -1;
	background: #e8edf4;
}

.base_subtitle {
	text-align: center;
	font-size: 21px;
}

.base_subtitle h2 {
	display: inline-block;
	border-bottom: 1px solid #163C87;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	padding-bottom: 8px;
}

.base_use {
	margin: 40px 0;
}

.base_use_left {
	margin-bottom: 50px;
}

.base_use_right {
}

.base_use_box {
	width: 47%;
	float: left;
	position: relative;
}

.base_use_box:last-child {
	float: right;
}

.base_user_box_name {
	border: 2px solid #163C87;
	text-align: center;
	padding: 5px;
	font-size: 13px;
	position: relative;
	color: #163C87;
}

.base_user_box_name2 {
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.base_user_box_name:before{
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 14px solid #163C87;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	left: 50%;
	bottom: -14px;
	margin-left: -9px;
	z-index: 10;
}

.base_user_box_name:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 12px solid #e8edf4;
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	left: 50%;
	bottom: -11px;
	margin-left: -7px;
	z-index: 10;
}

.base_use_box:last-child .base_user_box_name {
	background: #ffffff;
}

.base_use_box:last-child .base_user_box_name:after {
	border-top: 12px solid #ffffff;
}

.base_user_box_thumb {
	margin: 20px 0 0;
}

.base_use_box_arrow {
	background: url("../img/base_arrow_sp.svg")no-repeat top center;
	background-size: 8px 16px;
	width: 6%;
	height: 20px;
	margin: 115px 0 0;
	float: left;
}

.base_user_box_thumb img {
	width: 100%;
	height: auto;
	border: 2px solid #163C87;
}

.base_workperson {
	margin: 40px 0;
}

.base_workperson_photo {
}

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

.base_workperson_name {
	margin-bottom: 20px;
}

.base_workperson_name h3 {
	font-size: 18px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	padding-bottom: 30px;
	margin-bottom: 30px;
	position: relative;
}

.base_workperson_name h3:after {
	position: absolute;
	bottom: 0px;
	left: 0;
	width: 54px;
	height: 1px;
	background: #000000;
	content: "";
}

.base_workperson_name_op h4{
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
}

.base_workperson_name_op p {
	font-size: 13px;
	line-height: 2;
}

.base_workperson_thumb {
}

.base_workperson_thumb img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.base_workperson_text {
	line-height: 2;
	margin-bottom: 20px;
}

/* @end */

/* @group page interview */

.interview_title {
	position: relative;
	margin: 72px 0 0;
}

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

.interview_title h1 {
	font-size: 21px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	padding: 30px 0;
}

.interview_profile {
	color: #ffffff;
}

.interview_profile_inner {
	padding: 20px;
	background: rgba(22,60,131,0.9);
	margin: 0 auto;
}

.interview_status {
}

.interview_status h2 {
	font-size: 21px;
	margin-bottom: 10px;
}

.interview_status p {
	font-size: 13px;
}

.interview_careerstep {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	margin: 20px 0 0;
}

.interview_careerstep h3 {
	font-size: 16px;
	font-weight: 300;
}

.interview_careerstep dl {
	font-size: 12px;
}

.interview_careerstep dt {

}

.interview_careerstep dd {
	margin: 0 0 5px 1em;
}

.interview_tab {
	margin: 30px 0 0;
}

.interview_tab_box {
	margin-bottom: 10px;
}

.interview_tab_box a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px 10px 30px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	text-decoration: none;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	text-align: left;
}

.interview_block {
	position: relative;
	margin: 50px 0 0;
}

.interview_block_end {
	margin: 50px 0 50px;
}

.interview_block_photo {
}

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

.interview_block_photo_left {
}

.interview_block_photo_right {
}

.interview_block_text {
	background: #e8edf4;
	padding: 40px;
}

.interview_block_text_right {
}

.interview_block_title {
	font-size: 22px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin-bottom: 25px;
	text-align: center;
}

.interview_block_title span {
	color: #163C8C;
	font-size: 25px;
	font-weight: 300;

}

.interview_block_text p,
.interview_block_text1 p,
.interview_block_text2 p {
	line-height: 2;
}

.interview_block_text1 {
	padding: 40px;
}

.interview_block_text2 {
	padding: 40px;
}

.nterview_thumb {
	margin: 50px 40px;
}

.interview_thumb_box {
	margin: 0 0 10px 0;
	position: relative;
}

.interview_thumb_box:nth-child(4n) {
	margin-right: 0;
}

.interview_thumb_box:nth-child(4n+1) {
	clear: both;
}

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

.interview_name {
	position: absolute;
	top: 0;
	left: 0;
	width: 55%;
	height: 100%;
	background: rgba(22,60,131,0.7);
	color: #ffffff;
	padding: 10px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
}

.interview_name h3 {
	font-size: 15px;
	margin-bottom: 5px;
}

.interview_name p {
	font-size: 11px;
}

/* @end */


/* @group page faq */

.faq_title {
	background: url("../img/faq_background.jpg") no-repeat center center;
	background-size: cover;
	height: 180px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	margin: 58px 0 0;
}

.faq_title h1 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 25px;
	letter-spacing: 2px;
}

.faq_container {
	margin: 20px 0;
}

.faq_box {
	margin: 0 0 2px 0;
}

.faq_q {

}

.faq_q a {
	display: block;
	background: #e8edf4;
	font-size: 15px;
	font-weight: bold;
	color: #163C87;
	padding: 20px 40px 20px 40px;
	text-decoration: none;
	position: relative;
}

.faq_q a.open {
	background: #163C87;
	color: #ffffff;
}

.faq_q a:before {
	position: absolute;
	content: "";
	width: 20px;
	height: 1px;
	background: #163C87;
	z-index: 10;
	top: 50%;
	right: 10px;
}

.faq_q a:after {
	position: absolute;
	content: "";
	width: 1px;
	height: 20px;
	background: #163C87;
	z-index: 10;
	top: 50%;
	right: 20px;
	margin-top: -10px;
}

.faq_q a.open:before{
	background: #ffffff;
}

.faq_q a.open:after {
	display: none;
}

.faq_q a span {
	position: absolute;
	top: 20px;
	left: 10px;
	z-index: 10;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	line-height: 1;
}

.faq_a {
	padding: 20px 20px;
	display: none;
}

.faq_a img {
	max-width: 100%;
	height: auto;
}

/* @end */

/* @group page entry */

.entry_title {
	background: url("../img/entry_background.jpg") no-repeat center center;
	background-size: cover;
	height: 180px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	margin: 58px 0 0;
}

.entry_title h1 {
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 25px;
	letter-spacing: 2px;
	text-align: center;
}

.entry_title h1 .entry_title_small {
	display: block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-size: 12px;
	letter-spacing: 2px;
}

.entrybox {
	margin: 30px 0px;
}

.entrybox_head {
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
}

.entrybox h2 {
	margin: 40px 0 20px;
}

.entrybox h2 span {
	border: 1px solid #163C87;
	display: inline-block;
	padding: 7px 10px;
	font-size: 14px;
	font-weight: bold;
	color: #163C87;
}

.entrybox_rikunavi {
	margin: 50px 0 0;
}

.entrybox_contact {
	margin: 30px 0 0;
	font-size: 13px;
}

/* @end */

/* @group page training */

.training_head {
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	margin: 30px 0;
	text-align: left;
	line-height: 1.8;
}

.training_sectitle {
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	margin-bottom: 20px;
}

.training_table {
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 50px;
}

.training_table th {
	display: block;
	border-top: 1px solid #163C87;
	border-bottom: 1px solid #163C87;
	padding: 10px;
	font-size: 16px;
	vertical-align: middle;
	background: #e8edf4;
}

.training_table th span {
	font-size: 12px;
}

.training_table td {
	display: block;
	padding: 20px 15px;
	font-size: 13px;
	line-height: 2;
}

.training_table tr:nth-child(2n) td {
	background: #ffffff;
}

/* @end */


/* @group page message */

.message_inner {
	position: relative;
	margin: 30px 0;
}

.message_head {
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	font-family: 'Noto Serif JP', serif;
	margin: 0px 0 60px;
	text-align: left;
	line-height: 1.8;
}

.message_text {
	font-size: 15px;
	line-height: 2;
	padding-bottom: 100px;
}

.message_parts01 {
	position: absolute;
	top: 80px;
	right: -20px;
	z-index: 10;
}

.message_parts01 img {
	width: 100px;
	height: auto;
}

.message_parts02 {
	display: none;
}

.message_parts03 {
	position: absolute;
	bottom: 0px;
	left: 20px;
	z-index: 10;
}

.message_parts03 img {
	width: 100px;
	height: auto;
}

.message_parts04 {
	position: absolute;
	bottom: 0px;
	right: 20px;
	z-index: 10;
}

.message_parts04 img {
	width: 100px;
	height: auto;
}


/* @end */

/* @group page welfare */

.welfare_head {
	font-size: 14px;
	margin: 30px 0;
	text-align: center;
	line-height: 1.8;
}

.welfare_container2 {
	background: #F7F7F7;
	padding: 40px 0 40px;
}

.welfare_container2 h2 {
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align: center;
}

.welfare_work {
	margin: 20px 0 0;
	        flex-wrap: wrap;
}

.welfare_work_box {
	background: #ffffff;
	padding: 20px 10px;
	text-align: center;
	margin-bottom: 20px;
}

.welfare_work_box h3 {
	background: #1B5092;
	color: #ffffff;
	font-size: 16px;
	padding: 7px 5px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}

.welfare_work_num {
	font-size: 24px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	text-align: center;
}

.welfare_work_num span {
	font-size: 50px;
}

.welfare_work_year {
	text-align: right;
	font-size: 13px;
	margin: 0;
}

.welfare_table {
	margin: 40px 0;
}

.welfare_table_row {
	margin-bottom: 20px;
}

.welfare_table_label {
	text-align: center;
	padding: 15px 5px;
	font-size: 16px;
	font-weight: bold;
	border-top: 1px solid #163C87;
	border-bottom: 1px solid #163C87;
}

.welfare_table_text {
	padding: 30px;
	font-size: 15px;
	position: relative;
	background: #E8EDF4;
}

.welfare_table_text_icon {
}

.welfare_table_text_icon img {
	width: 60px;
	height: auto;
}

.welfare_box {
	background: #E8EDF4;
	padding: 10px;
	margin-bottom: 40px;
}

.welfare_box_inner {
	border: 1px solid #163C87;
	padding: 30px;
	text-align: center;
}

.welfare_box_inner h2 {
	font-size: 20px;
	color: #333333;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	margin-bottom: 20px;
}

.welfare_box_text {
	font-size: 14px;
	text-align: left;
}

.welfare_box_img {
	margin: 20px 0px 0;
}

.welfare_box_img img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.welfare_plan {
	margin: 20px 0 0;
}

.welfare_plan_box {
	background: #ffffff;
	text-align: center;
	padding: 30px 20px;
	margin-bottom: 20px;
}

.welfare_plan_box h4 {
	font-size: 16px;
	color: #1B5092;
	margin-bottom: 15px;
}

.welfare_plan_box ul {
	text-align: left;
}

.welfare_plan_bn {
	margin: 20px 0 0;
}
	.welfare_plan_bn img{
		width: 100%;
		height: auto;
	}

/* @end */

/* @group page requirements */

.requirements_tab {
	margin: 30px 0;
}

.requirements_tab li {
	margin-bottom: 10px;
	text-align: center;
}

.requirements_tab li a {
	display: block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 10px 10px;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.3);
	color: #000000;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
}

.requirements_tab li a.active {
	background: #163C87;
	color: #ffffff;
}

.requirements_contents {
	margin: 50px 0;
	display: none;
}

#requirements01 {
	display: block;
}

.requirements_title {
	margin-bottom: 30px;
}

.requirements_title h2 {
	display: inline-block;
	border: 1px solid #163C87;
	color: #163C87;
	padding: 5px 30px;
	color: #163C87;
	text-decoration: none;
	font-size: 18px;
	font-weight: bold;
}

.requirements_contents dt {
	font-size: 16px;
	font-weight: bold;
	color: #163C87;
	margin-bottom: 10px;
	padding: 0 5px;
}

.requirements_contents dd {
	padding: 0 5px 20px;
	border-bottom: 1px solid #163C87;
	margin-bottom: 20px;
	font-size: 13px;
}

.requirements_contents dd:last-child {
	border-bottom: 0;
}

/* @end */

/* @group page history */

.history_title h1 {
	font-size: 24px;
	margin-bottom: 20px;
}

.history_title p {
	margin: 0 20px;
}

.history_head {
	margin: 35px 0 0;
}

.history_box {
	margin: 25px 0 0;
}

.history_box h2 {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.history_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 30px 0;
	position: relative;
}

.history_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 40px;
	background: #163C87;
	z-index: 10;
	top: -20px;
	left: 50%;
}

.history_contents:after {
	content: "";
	position: absolute;
	width: 1px;
	height: 40px;
	background: #163C87;
	z-index: 10;
	bottom: -20px;
	left: 50%;
}

.history_contents_inner {
	border: 1px solid #163C87;
	padding: 40px 20px;
}

.history_contents_text {
	font-size: 14px;
	line-height: 2;
	margin-bottom: 20px;
}

.history_contents_photo {
	margin: 0px 0 0;
	padding: 0 5%;
	text-align: center;
}

.history_contents_photo1 {
	width: 49%;
	float: left;
	font-size: 10px;
}

.history_contents_photo2 {
	width: 49%;
	float: right;
	font-size: 10px;
}

.history_contents_photo_caption img,
.history_contents_photo_caption2 img,
.history_contents_photo_caption3 img,
.history_contents_photo1 img,
.history_contents_photo2 img,
.history_contents_photo3 img {
	width: 100%;
	height: auto;
}

.history_contents_inner h3 {
	font-size: 20px;
	font-weight: bold;
	color: rgba(22,60,128,0.5);
	font-family: 'Oswald', sans-serif;
	line-height: 1.2;
	margin-bottom: 20px;
}

.history_contents_photo_title {
	background: #163C87;
	color: #ffffff;
	text-align: center;
	font-size: 13px;
	font-weight: bold;
	padding: 5px 0;
	margin-bottom: 20px;
}

.history_contents_photo_caption2 {
	margin: 10px 5% 0;
	font-size: 12px;
}

.history_contents_photo_caption3 {
	margin: 0 10% 20px;
	text-align: left;
	font-size: 13px;
}

.history_contents_photo_caption3 img {
	margin-bottom: 5px;
}


.history_box_last .history_contents:after {
	content: "";
	position: absolute;
	width: 1px;
	height: 115px;
	background: #163C87;
	z-index: 10;
	bottom: -70px;
	left: 50%;
}

.history_box_last {
	position: relative;
}

.history_box_last:before {
	content: "";
	position: absolute;
	width: 21px;
	height: 1px;
	background: #163C87;
	z-index: 10;
	bottom: -61px;
	left: 50%;
	transform: rotate(-65deg);
	margin-left: -5px;
}

.history_box_foot {
	font-size: 20px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	color: #163C87;
	position: relative;
	text-align: center;
	padding: 60px 0;
}

.history_box_foot01 {
	display: none;
}

.history_box_foot02 {
	display: none;
}

/* @end */

/* @group page region */

.region_title h1 {
	font-size: 24px;
	margin-bottom: 20px;
}

.region_title p {
	max-width: 820px;
	margin: 0 20px;
	font-size: 13px;
	text-align: left;
	line-height: 1.8;
}

.region_num  {
	position: absolute;
	top: -23px;
	left: 30px;
	font-size: 45px;
	font-weight: bold;
	color: rgba(22,60,128,0.5);
	font-family: 'Oswald', sans-serif;
	line-height: 1.2;
}

.region_more {
	margin: 30px 0 20px;
}

.region_more span {
	display: inline-block;
	border: 1px solid #163C87;
	padding: 3px 10px;
	color: #163C87;
	position: relative;
	font-size: 13px;
}

.region_more span:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 12px solid #e8edf4;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	bottom: -12px;
	left: 26px;
	z-index: 10;
}

.region_more span:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 14px solid #163C87;
	border-left: 7px solid transparent;
	border-right: 7px solid transparent;
	bottom: -14px;
	left: 25px;
	z-index: 5;
}

.region_contents_photo {
	margin: 20px 0 0;
	font-size: 12px;
}

.region_contents_photo ul.column1 li {
	text-align: center;
}

.region_contents_photo ul.column2 li {
	float: left;
	width: 49%;
	text-align: center;
}

.region_contents_photo ul.column2 li:nth-child(2n) {
	float: right;
}

.region_contents_photo ul li img {
	width: 100%;
	height: auto;
	margin-bottom: 5px;
}

.region_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 50px 0;
	position: relative;
}

.region_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 50px;
	background: #163C87;
	z-index: 10;
	top: -25px;
	left: 50%;
}

/* @end */


/* @group page nextcontent */

.nextcontent {
	padding: 40px 0;
	text-align: center;
}

.nextcontent h4 {
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	font-size: 20px;
}

.nextcontent_img {
	text-align: center;
	max-width: 800px;
	height: auto;
	margin: 30px auto 0;
	position: relative;
}

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

.nextcontent_title {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	z-index: 1;
	font-size: 14px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	color: #ffffff;
	display: flex;
	align-items: center;
}
/* @end */

/* @group page atfirst */


.atfirst_title h1 {
	margin-bottom: 56px;
}

.atfirst_title p {
	font-size: 15px;
}

.atfirst_title ul {
	margin: 60px 0 0;
}

.atfirst_title ul li {
	margin: 0 0 10px;
}

.atfirst_title ul li a {
	display: block;
	border: 1px solid #163C87;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #163C87;
	text-decoration: none;
	padding: 12px 0;
	box-shadow: 0px 3px 3px rgba(22,60,131,0.5);
}

.atfirst_title ul li a span {
	font-family: 'Noto Serif JP', serif;
	display: inline-block;
	margin-right: 5px;
}

.atfirst_content01 {
	margin: 70px 0 0;
}

.atfirst_content_head {
	background: #E8EDF4;
	padding: 40px 0;
	text-align: center;
	margin-bottom: 40px;
}

.atfirst_content_head h2 {
	font-size: 20px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
}

.atfirst_content_head h2 span {
	color: #163C8C;
	margin-right: 15px;
}

.atfirst_content_head_text {
	border: 1px solid #163C8C;
	padding: 20px;
	position: relative;
	margin: 40px 0px 0;
	font-size: 16px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}

.atfirst_content_head_text:before {
	position: absolute;
	content: "";
	width: 1px;
	height: 30px;
	background: #163C8C;
	top: -15px;
	left: 50%;
	z-index: 1;
}

.atfirst_text {
	font-size: 15px;
	line-height: 1.8;
	margin: 0 0px 30px;
}

.atfirst_lead {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.atfirst_contents {
	background: #e8edf4;
	padding: 8px;
	margin: 40px 0 0;
	position: relative;
}

.atfirst_contents:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 30px;
	background: #163C87;
	z-index: 10;
	top: -15px;
	left: 50%;
}

.atfirst_contents_inner {
	border: 1px solid #163C87;
	padding: 20px;
}

.atfirst_box_lead {
	font-size: 20px;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	text-align: center;
}

.atfirst_box_container {
	margin: 25px 0 0;
}

.atfirst_box_wrap {
	margin-bottom: 30px;
}

.atfirst_box_thumb {
	margin-bottom: 20px;
}

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

.atfirst_box_text {
	font-size: 15px;
	line-height: 1.8;
}

.atfirst_box_title {
	background: #163C8C;
	font-size: 16px;
	color: #ffffff;
	padding: 7px 0;
	font-weight: bold;
	text-align: center;
}

.atfirst_box_lead2 {
	color: #163C8C;
	font-size: 15px;
	font-weight: bold;
	padding: 10px 0;
	border-bottom: 1px solid #163C8C;
	margin-bottom: 15px;
}

.atfirst_box_lead2 p {
	text-align: left;
}

.atfirst_box_icon {
	display: flex;
	justify-content: space-between;
	padding: 0;
	font-size: 12px;
}

.atfirst_box_icon_list {
	text-align: center;
}

.atfirst_box_icon_img {
	margin: 10px 0 0;
	display: flex;
	min-height: 64px;
	align-items: center;
	justify-content: center;
}

.atfirst_content02,
.atfirst_content03 {
	margin: 40px 0 0;
}

.atfirst_nums {
	display: flex;
	justify-content: space-between;
	background: url("../img/atfirst_map.png") no-repeat top center;
	background-size: 640px auto;
	padding-bottom: 70px;
	margin: 0 0px;
	flex-wrap: wrap;
}

.atfirst_nums_box {
	width: 48%;
	margin-bottom: 20px;
}

.atfirst_nums_title {
	background: #163C8C;
	color: #ffffff;
	font-size: 14px;
	font-weight: bold;
	padding: 5px;
	text-align: center;
}

.atfirst_nums_num {
	margin: 30px 0 0;
	font-size: 24px;
	font-weight: normal;
	font-family: 'Noto Serif JP', serif;
	line-height: 1;
	text-align: center;
}

.atfirst_nums_num span {
	font-size: 46px;
	color: #163C8C;
}

.atfirst_photo {
	margin: 30px 10px 0;
}

.atfirst_photo_box {
	margin-bottom: 30px;
}

.atfirst_photo_text {
	border: 2px solid #1E3D82;
	padding: 8px 10px 8px 55px;
	position: relative;
	background: #ffffff;
	color: #1E3D82;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
}

.atfirst_photo_text span {
	position: absolute;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
	font-size: 24px;
	top: 5px;
	left: 15px;
	z-index: 1;
}

.atfirst_photo_text:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid #ffffff;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	bottom: -15px;
	left: calc(50% - 11px);
	z-index: 2;
}

.atfirst_photo_text:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 18px solid #1E3D82;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	bottom: -18px;
	left: calc(50% - 14px);
	z-index: 1;
}

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

.atfirst_content_head .contents_inner {
	position: relative;
}

.atfirst_content03_img {
	position: absolute;
	top: -120px;
	left: -50px;
	z-index: 1;
}

.atfirst_content03_img img {
	width: 200px;
	height: auto;
}

.atfirst_concept {
	margin: 30px 0 0;
}

.atfirst_concept_box {
	margin-bottom: 30px;
	position: relative;
}

.atfirst_concept_img {
	margin-bottom: 20px;
}

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

.atfirst_concept_text {
}

.atfirst_concept_text h3 {
	font-size: 18px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
	margin-bottom: 10px;
}

.atfirst_concept_text p {
	font-size: 15px;
	line-height: 1.8;
}

.atfirst_keyword_box {
	margin: 30px 0 0;
}

.atfirst_keyword_label {
	text-align: left;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 10px;
}

.atfirst_keyword_text {
	font-size: 15px;
	line-height: 2;
}

.atfirst_keyword_text br {
	display: none;
}

.atfirst_content04_img {
	position: absolute;
	top: -80px;
	right: 0px;
	z-index: 1;
}

.atfirst_content04_img img {
	width: 120px;
	height: auto;
}

/* @end */

/* @group page tech */

.page_tech h1 {
	margin-bottom: 56px;
}

.tech_01container {
	margin: 50px 0 0;
}

.tech_01_text {
}

.tech_01_img {
}

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

.tech_lead {
	position: relative;
	font-family: 'Noto Serif JP', serif;
	font-size: 20px;
	padding: 0px 0 0 50px;
	line-height: 1.4;
	margin-bottom: 20px;
}

.tech_lead span {
	color: #163C8C;
	font-size: 30px;
	font-weight: bold;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	line-height: 1;
}

.tech_text {
	font-size: 15px;
	line-height: 2;
}

.tech_content02 {
	background: #E8EDF4;
	padding: 40px 0;
	margin: 30px 0 0;
}

.tech_02_head,
.tech_03_head {
}

.tech_closeup {
	margin: 20px 0 0;
}

.tech_closeup_img {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
}

.tech_closeup_img2 {
	width: 48%;
}

.tech_closeup_img img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

.tech_closeup_text {
}

.tech_closeup_text h3 {
	font-size: 20px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	margin: 40px 0 10px;
}

.tech_closeup_text h3 span {
	font-size: 24px;
}

.tech_content03 {
	padding: 40px 0;
}

.tech_product {
	margin: 50px 0 0;
}

.tech_product_box {
	margin-bottom: 30px;
}

.tech_product_box h3 {
	border: 2px solid #1E3D82;
	padding: 12px 10px;
	position: relative;
	background: #ffffff;
	color: #1E3D82;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 30px;
	font-size: 16px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
}

.tech_product_box h3:before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 15px solid #ffffff;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	bottom: -15px;
	left: calc(50% - 11px);
	z-index: 2;
}

.tech_product_box h3:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-top: 18px solid #1E3D82;
	border-left: 15px solid transparent;
	border-right: 15px solid transparent;
	bottom: -18px;
	left: calc(50% - 14px);
	z-index: 1;
}

.tech_product_img img {
	width: 100%;
	height: auto;
	margin-bottom: 15px;
}

.tech_product_box h4 {
	font-size: 18px;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	text-align: left;
	margin-bottom: 20px;
}

.tech_product_text {
	font-size: 15px;
	line-height: 2;
}

/* @end */



/* @group page connector */

.connector_main {
	background: url("../img/connector_main.jpg") no-repeat center center;
	background-size: cover;
	margin: 58px 0 0;
}

.connector_main .contents_inner {
	display: flex;
	align-items: center;
	height: 400px;
}

.connector_main_inner h2 {
	background: rgba(255,255,255,0.9);
	display: inline-block;
	padding: 5px 10px;
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	color: #1E3D82;
}

.connector_main_inner h1 {
	background: rgba(255,255,255,0.9);
	display: inline-block;
	padding: 5px 10px;
	font-size: 18px;
	font-family: 'Noto Serif JP', serif;
	color: #1E3D82;
	margin: 5px 0 0;
}

.connector_head {
	padding: 40px 0;
	background: #EDEDED;
}

.connector_head h3 {
	text-align: center;
	margin-bottom: 30px;
}

.connector_head h3 span {
	background: #1E3D82;
	display: inline-block;
	padding: 2px 10px;
	font-size: 16px;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	color: #ffffff;
	margin-bottom: 10px;
}

.connector_head_text {
	margin: 0 0px;
	font-size: 15px;
	line-height: 2;
}

.connector_blue {
	padding: 40px 0;
	background: #1E3D82;
}

.connector_white {
	padding: 40px 0;
}

.connector_blue_container,
.connector_white_container {
}

.connector_thumb {
	margin-bottom: 20px;
}

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

.connector_textarea {
}

.connector_blue .connector_textarea {
	color: #ffffff;
}

.connector_textarea h4 {
	font-size: 18px;
	color: #163C8C;
}

.connector_textarea h4 span {
	background: #ffffff;
	display: inline-block;
	padding: 5px 15px;
	font-family: 'Noto Serif JP', serif;
	margin-bottom: 8px;
}

.connector_white_container .connector_textarea h4 {
	color: #fff;
}

.connector_white_container .connector_textarea h4 span{
	background: #163C8C;
}

.connector_white_container .connector_text {
	color: #163C8C;
}

.connector_text {
	font-size: 15px;
	line-height: 2;
	margin: 30px 0;
}

.connector_point {
	
}

.connector_point span {
	display: inline-block;
	background: #ffffff;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	font-size: 15px;
	padding: 3px 30px;
	position: relative;
	margin-bottom: 20px;
}

.connector_point span:after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	z-index: 1;
	border-top: 14px solid #ffffff;
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	bottom: -14px;
	left: calc(50% - 8px);
}

.connector_pointlist {
	font-size: 13px;
	line-height: 2;
}

.connector_white_container .connector_point span {
	background: #163C8C;
	color: #ffffff;
}

.connector_white_container .connector_point span:after {
	border-top: 14px solid #163C8C;
}

.connector_white_container .connector_pointlist {
	color: #163C8C;
}

/* @end */


/* @group page talk session */
.talksession_headimg {
	height: 400px;
	background: url("../img/talksession_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 58px 0 0;
}
	
	.talksession_headimg.section_sales {
	height: 400px;
	background: url("../img/talksession_sales_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 58px 0 0;
}	.talksession_headimg.section_career {
	height: 400px;
	background: url("../img/talksession_career_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 58px 0 0;
}
	.talksession_headimg.section_female {
	height: 400px;
	background: url("../img/talksession_female_main.jpg") no-repeat top center;
	background-size: cover;
	margin: 58px 0 0;
}

.talksession_head {
	
}

.talksession_head_inner {
	background: #ffffff;
	transform: translateY(-50px);
	margin: 0 0px 0px;
	text-align: center;
	padding: 40px 0 0;
}

.talksession_head h2 {
	font-size: 24px;
	font-family: 'Oswald', sans-serif;
	color: #163C8C;
	font-weight: normal;
}

.talksession_head h1 {
	margin: 40px 0 0;
	font-size: 18px;
	font-weight: bold;
	font-family: 'Noto Serif JP', serif;
}

.talksession_head_text {
	margin: 40px 0 0;
	text-align: center;
	font-size: 15px;
}

.talksession_head h3 {
	font-size: 18px;
	font-family: 'Oswald', sans-serif;
	color: #163C8C;
	font-weight: normal;
	margin: 30px 0 0;
}

.talksession_head_container {
	margin: 40px 0px 0;
}

.talksession_head_box {
	display: flex;
	justify-content: space-between;
	text-align: left;
}

.talksession_head_thumb {
	width: 25%;
    position: relative;
}
    
 .talksession_head_thumb::after {
    content: '';
    width: 100%;
    height: calc(100% - 20px);
    border-radius: 50%;
    background-color: #6EA8FF;
    display: block;
    bottom: 15px;
    left: -2px;
    position: absolute;
    z-index: -1;
  }
 .talksession_head_thumb.sa::after{
  background-color: #3FC7F0;
  }
 .talksession_head_thumb.rk::after{
  background-color: #425DF0;
  } 
		.talksession_head_thumb.pp::after {
    background-color: #7842F0;
}
.talksession_head_thumb img {
	width: 100%;
	height: auto;
	margin-bottom: 20px;
}

.talksession_head_name {
	width: 70%;
}

.talksession_head_box h4 {
	font-size: 14px;
	font-family: 'Noto Serif JP', serif;
	font-weight: normal;
	margin: 5px 0 0;
}

.talksession_head_box p {
	font-size: 12px;
	margin: 10px 0 0;
}
	.talksession_head_box .ls01{
		letter-spacing: -0.1px;
	}

.talksession_img01 {
	height: 300px;
	background: url("../img/talksession_photo01.jpg") no-repeat top center;
	background-size: cover;
	margin-bottom: 150px;
    position: relative;
}

.talksession_section_head {
	background: #ffffff;
	/*transform: translateY(-40px);*/
	margin: 0 0px 0;
	text-align: center;
	padding: 40px 0 0;
}

.talksession_section_lead {
	margin: 40px 0;
	text-align: center;
    position: relative;
}

.bg_grad::before {
    background: linear-gradient(135deg, #E8EDF4, #fff);
    width: 100vw;
    display: block;
    content: "";
    left: 0;
    position: absolute;
    height: 600px;
    z-index: -1;

}
.talksession_section_lead div{
	text-align: left;
}

.talksession_section_head div {
	font-size: 18px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
    position: absolute;
    bottom: -450px;
    height: 150px;
    padding: 0 20px;
    display: flex;
    align-items: center;
    text-align: left;
    }
	.talksession_section_lead h2{
	font-size: 18px;
	color: #163C8C;
	font-family: 'Noto Serif JP', serif;
	}

.talksession_img01 .talksession_section_head div, .talksession_img01 .talksession_section_lead div {
    position: absolute;
    bottom: -150px;
}
.talksession_img03 .talksession_section_head div, .talksession_img03 .talksession_section_lead div {
    position: absolute;
    bottom: -150px;
}
.talksession_img05 .talksession_section_head div, .talksession_img05 .talksession_section_lead div {
    position: absolute;
    bottom: -150px;
}
.talksession_section_head.bg_grad div,
.talksession_section_lead.bg_grad div {
    padding-top: 40px;
	margin-bottom: 60px;
}

.talksession_section_head h2 span,
.talksession_section_lead h2 span {
	font-size: 30px;
    margin-bottom: 10px;
    display: block;
}

.talksession_talk {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.talksession_thumb {
	width: 60px;
    position: relative;
}

.thumb_r .talksession_thumb {
	order: 2;
}

.talksession_thumb img {
	width: 100%;
	height: auto;
}
.talksession_thumb::after {
    content: '';
    width: 100%;
    height:60px;
    border-radius: 50%;
    background-color: #6EA8FF;
    display: block;
    top: 2px;
    left: -2px;
    position: absolute;
    z-index: -1;
  }
.talksession_thumb.sa::after {
    background-color: #3FC7F0;
    }
.talksession_thumb.rk::after {
    background-color: #425DF0;
    }
.talksession_thumb.pp::after {
    background-color: #7842F0;
    }
.talksession_textarea {
	width: calc(100% - 80px);
	font-size: 14px;
	line-height: 1.8;
}

.talksession_img03 {
	height: 300px;
	background: url("../img/talksession_photo03_sp.jpg") no-repeat top center;
	background-size: cover;
    margin-bottom: 180px;
    position: relative;
}

.talksession_img05 {
	height: 300px;
	background: url("../img/talksession_photo05_sp.jpg") no-repeat top center;
	background-size: cover;
margin-bottom: 150px;
	position: relative;
}

.talksession_end {
	height: 300px;
	background: url("../img/talksession_photo06.jpg") no-repeat top center;
	background-size: cover;
}
	
	
.section_career .talksession_img01 {
	background: url("../img/talksession_career_photo01.jpg") no-repeat top center;
	background-size: cover;
	margin-bottom: 150px;
    position: relative;
    }
	.section_sales .talksession_img01 {
	background: url("../img/talksession_sales_photo01.jpg") no-repeat top center;
	background-size: cover;
	margin-bottom: 150px;
    position: relative;
    }
.section_female .talksession_img01 {
	background: url("../img/talksession_female_photo01.jpg") no-repeat top center;
	background-size: cover;
	margin-bottom: 150px;
    position: relative;
    }

.section_career .talksession_img03 {
	background: url("../img/talksession_career_photo02.jpg") no-repeat top center;
	background-size: cover;
    margin-bottom: 180px;
    position: relative;
    }
	.section_sales .talksession_img03 {
	background: url("../img/talksession_sales_photo02.jpg") no-repeat top center;
	background-size: cover;
    margin-bottom: 180px;
    position: relative;
    }
.section_female .talksession_img03 {
	background: url("../img/talksession_female_photo02.jpg") no-repeat top center;
	background-size: cover;
    margin-bottom: 180px;
    position: relative;
    }

	.section_career .talksession_img05 {
	background: url("../img/talksession_career_photo03.jpg") no-repeat top center;
		background-size: cover;
margin-bottom: 150px;
	position: relative;
    }
	.section_sales .talksession_img05 {
	background: url("../img/talksession_sales_photo03.jpg") no-repeat top center;
		background-size: cover;
margin-bottom: 150px;
	position: relative;
    }
.section_female .talksession_img05 {
	background: url("../img/talksession_female_photo03.jpg") no-repeat top center;
	background-size: cover;
margin-bottom: 150px;
	position: relative;
    }
	
	.talksession_end.section_career {
	background: url("../img/talksession_career_photo04.jpg") no-repeat top center;
		background-size: cover;
    }
	.talksession_end.section_sales {
	background: url("../img/talksession_sales_photo04.jpg") no-repeat top center;
		background-size: cover;
    }
.talksession_end.section_female {
	background: url("../img/talksession_female_photo04.jpg") no-repeat top center;
	background-size: cover;
    }
/* @end */

}
@media (max-width: 1120px) {
  .talksession_section_head h2, .talksession_section_lead h2 {
    padding: 0 20px;
  }
}
@media (max-width: 768px) {
  .talksession_section_head h2{
    padding: 0px;
  }
}
