@charset "utf-8";
/* CSS Document */
main{color: #7E7E7E;}
.mv{background:linear-gradient(124deg, #61BADB 0%, #416FC7 100%);}
h3{
	font-size: 18px;
	color: #3C3C3C;
	letter-spacing: 0.05em;
}
table{
	font-size: min(2.67vw,13px);
	margin-top: 25px;
	letter-spacing: 0.05em;
	line-height: 1.7;
	width: 100%;
}
tr:nth-of-type(odd),dl:nth-of-type(odd){
	background-color: white;
	border-top: solid 1px #D8D8D8;
	border-bottom: solid 1px #D8D8D8;
}
tr:last-of-type{
	border-bottom: solid 1px #D8D8D8;
}
th,td{
	padding-top: 10px;
	padding-bottom: 10px;
}
th{
	width:100px;
	padding-left: 10px;
}
td{padding-left: 24px;}
@media screen and (min-width: 768px) {
	.mv{
		background: transparent linear-gradient(104deg, #61BADB 0%, #416FC7 100%) 0% 0% no-repeat padding-box;
	}
	table{
		font-size: min(1.69vw,18px);
		margin-top: 30px;
	}
	th, td{
		padding-top: 17px;
		padding-bottom: 17px;
	}
	th.one_line{
		padding-top: 26px;
	}
	td.one_line{
		padding-top: 28px;
  		padding-bottom: 28px;
	}
	.base_point td span{
		margin-left: 10px;
	}
	th{
		width: min(calc(17% - 3px),203px);
	}
	h3{
		font-size: min(2.6vw,30px);
	}
}
@media screen and (min-width: 1280px) {
	table{
		margin-top: 35px;
	}
	th, td{
		padding-top: 20.5px;
		padding-bottom: 20.5px;
	}
	th{
		width: 232px;
	}
	th.one_line{
		padding-top: 19px;
	}
	td.one_line{
		padding-top: 20px;
		padding-bottom: 51px;
	}
}
@media screen and (min-width: 768px) {
	main.lower .mv .outer::before{
		background-image: url("/assets/img/common/common_header_tab.webp");
	}
}
@media screen and (min-width: 1280px) {
	main.lower .mv .outer::before{
		background-image: url("/assets/img/common/common_header_pc.webp");
		width: 1049px;
		margin-right: 0;
		margin-top: 0;
		background-size: contain;
	}
}
@media screen and (min-width: 1600px) {
	main.lower .mv .outer::before{
	}
}


.img_box{
	margin-top: 40px;
	background-image: url("/assets/img/about/sp_img.webp");
	background-size: cover;
	padding-bottom: 47%;
	}
@media screen and (min-width: 768px) {
	.img_box{
		background-image: url("/assets/img/about/tab_img.webp");
		padding-bottom: min(47%,486px);
	}
}
@media screen and (min-width: 1280px) {
	.img_box{
		margin-top: 168px;
		background-image: url("/assets/img/about/pc_img.webp");
	}
}
@media screen and (min-width: 1921px) {
	.img_box{
		min-width: 1920px;
	}
}
.intro,.company_info,.office_list,.base_point,.history{
	width: 88%;
	margin-right: auto;
	margin-left: auto;
}
.intro{
	margin-top: min(8%,80px);
	max-width: 600px;
}
.intro h2{
	color: #416FC7;
	letter-spacing: 0.2em;
	font-size: min(6.13vw,35px);
	line-height: 1.82;
}
.intro .intro_text{
	font-size: min(3.2vw,16px);
	letter-spacing: 0.05em;
	line-height: 2.08;
	margin-top: min(calc(8% - 1px),36px);
}
@media screen and (min-width: 768px) {
	.intro{
		max-width: 1100px;
		width: calc(78% + 1px);
	}
	.intro .intro_text{
		font-size: min(2.08vw,18px);
	}
}
@media screen and (min-width: 1280px) {
	.intro{
		margin-top: 125px;
	}
	.intro .intro_text{
		margin-top: 60px;
	}
}
.company_info, .office_list, .base_point,.history{
	max-width: 667px;
}
.company_info{margin-top: min(calc(11% - 1px),133px);}
.company_info .executives{display: block;}
.company_info .executives .position{
	width: 41%;
	display: inline-block;
}
@media screen and (min-width: 768px) {
	.company_info, .office_list, .base_point,.history{
		max-width: 1100px;
		width: calc(87% - 1px);
	}
	.company_info .executives .position{
		width: 20%;
	}
}
@media screen and (min-width: 1280px) {
	.company_info{
		margin-top: 165px;
	}
	.company_info .executives .position{
		width: 18%;
	}
}
.office_list,.base_point,.history{
	margin-top: 40px;
}
@media screen and (min-width: 768px) {
	.office_list th{
		width: 13%;
	}
}
@media screen and (min-width: 1280px) {
	.office_list,.base_point,.history{
		margin-top: 100px;
	}
	.office_list th{
		width: 232px;
	}
}

.base_point .attention{
	font-size: 10px;
	letter-spacing: 0.05em;
	margin-top: 10px;
}

@media screen and (min-width: 768px) {
	.base_point .attention{
		margin-top: 20px;
	}
}
@media screen and (min-width: 1280px) {
	.base_point .attention{
		font-size:18px;
		margin-top: 37px;
	}
}
.history .history_box{
	background-color: white;
	margin-top: 25px;
	border-top: solid 1px #D8D8D8;
	border-bottom: solid 1px #D8D8D8;
	padding-top: 10px;
	padding-bottom: 10px;
}
.history .history_box ul{
	margin-left: 16px;
}
.history .history_box ul li{
	letter-spacing: 0.05em;
	line-height: 1.5;
	padding-left: 10px;
	position: relative;
	font-size: min(2.76vw,13px);
}

.history .history_box ul li:nth-of-type(2){
	padding-top: 15px;
	padding-bottom: 15px;
}
.history .history_box ul li::before,.history .history_box ul li::after{
	content: "";
	display: block;
	position: absolute;
}
.history .history_box ul li:first-of-type::before,.history .history_box ul li:nth-of-type(2)::before{
	width: 2px;
	height: 100%;
	background-color: #707070;
	top: 0;
	left: 0;
	margin-top: 5px;
}
.history .history_box ul li::after{
	width: 6px;
	height: 6px;
	background-color: #7E7E7E;
	top: 5px;
	left: 0;
	border-radius: 30px;
	margin-left: -2px;
}
.history .history_box ul li:nth-of-type(2)::after{
	margin-top: 15px;
}
.history .history_box ul li .year{
	font-family: "notobo";
}
@media screen and (min-width: 768px) {
	.history .history_box{
		margin-top: 30px;
	}
	.history .history_box ul li{
		display: flex;
		font-size: min(1.69vw,18px);
	}
	.history .history_box ul li .year{
		width: calc(29% + 3px);
	}
	.history .history_box ul li .event{
		margin-left: 13px;
	}
}
@media screen and (min-width: 1280px) {
	.history .history_box{
		padding-top: 30px;
		padding-bottom: 36px;
		margin-top: 35px;
	}
	.history .history_box ul{
		margin-left: 22px;
	}
	.history .history_box ul li{
		padding-left: 21px;
	}
	.history .history_box ul li:nth-of-type(2){
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.history .history_box ul li::after{
		width: 12px;
		height: 12px;
		top: 7px;
		margin-left: -4px;
	}
	.history .history_box ul li:first-of-type::before, .history .history_box ul li:nth-of-type(2)::before{
		width: 4px;
		margin-top: 17px;
	}
	.history .history_box ul li:nth-of-type(2)::after{
		margin-top: 25px;
	}

}






