@charset "utf-8";
.pc{display: block;}
.pc.tablet{display: block;}
.tablet{display: none;}
.sp{display: none;}
img{
    max-width: 100%;
    height: auto;
}
/* lead */
.aboutLead {
	background: #f1f1f1 url(/grantact/img/about/lead_bg01.jpg) 50% 50% no-repeat;
	background-size: cover;
	text-align: center;
	padding: 80px 0;
}
.aboutLeadInbox {
	margin: 0 auto;
	max-width: 930px;
}
.aboutLeadHead1 {
	border-bottom: 1px solid #7d4670;
	color: #7d4670;
	display: inline-block;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: .2em;
	margin-bottom: 50px;
	padding-bottom: .1em;
}
.aboutLeadSection {
	margin-bottom: 75px;
}
.aboutLeadSection:last-child {
	margin-bottom: 0;
}
.aboutLeadHead2 {
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 1.35em;
	line-height: 1.8;
	letter-spacing: .2em;
}
.aboutLeadText {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 0;
}
@media screen and (max-width: 768px){
	.aboutLead {
		background-image: url(/grantact/img/about/lead_bg01_sp.jpg);
		padding: 40px 0;
		text-align: left;
	}
	.aboutLeadInbox {
		margin: 0 10px;
	}
	.aboutLeadHead1 {
		font-size: 18px;
		margin-bottom: 25px;
	}
	.aboutLeadSection {
		margin-bottom: 40px;
	}
	.aboutLeadHead2 {
		font-size: 18px;
		line-height: 1.5;
	}
	.aboutLeadText {
		font-size: 14px;
		line-height: 1.8;
	}
}

/* contents */
.video_area{
	width: 100%;
	max-width: 560px;
	margin: 100px auto 0;
	text-align: center;
}
.video_area p{
	color: #7c4670;
	font-size: 18px;
	text-align: center;
	padding: 0 0 20px;
}
.video_area iframe{
	width: 100%;
	height: 320px;
}
.aboutContents {
	margin: 0 auto 80px;
	max-width: 930px;
	padding-top: 80px;
}
.aboutContents img {
	max-width: 100%;
}
.aboutSection {
	border-top: 1px solid #b8b8b8;
	margin-top: 60px;
	padding-top: 60px;
}
.aboutSection:first-child {
	border-top: 0;
	margin-top: 0;
	padding-top: 0;
}
@media screen and (max-width: 768px){
	.video_area{
		width: 100%;
		margin: 50px auto 25px;
		text-align: center;
	}
	.video_area iframe{
		height: 53vw;
	}
	.aboutContents {
		margin-bottom: 35px;
		padding: 40px 0 0;
	}
	.aboutSection {
		margin-top: 40px;
		padding-top: 40px;
		padding-left: 10px;
		padding-right: 10px;
	}
}

/* heading */
.aboutHead1 {
	background: #6b6969;
	color: #fff;
	letter-spacing: .2em;
	padding: 20px 20px 15px;
	text-align: center;
}
.aboutHead1 span {
	font-size: 20px;
	display: inline-block;
	line-height: 1.4;
	position: relative;
}
.aboutHead1 span:before,
.aboutHead1 span:after {
	border: 1px solid #fff;
	content: "";
	display: inline-block;
	height: 1.4em;
	width: 8px;
	vertical-align: middle;
}
.aboutHead1 span:before {
	border-right-width: 0;
	margin-right: 1em;
}
.aboutHead1 span:after {
	border-left-width: 0;
	margin-left: 1em;
}
.aboutHead1 b {
	display: block;
	font-size: 28px;
	margin-top: 2px;
}
.aboutHead2 {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: .2em;
	margin: 2.3em 0 1.35em;
	text-align: center;
}
.aboutHead3 {
	font-size: 18px;
	margin-bottom: 1.1em;
	text-align: center;
}
.aboutHead3 span {
	border-bottom: 1px solid #5a5250;
	display: inline-block;
	font-weight: bold;
	padding-bottom: .25em;
}
.aboutHead4 {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	letter-spacing: .1em;
	margin: 2.2em 0;
}
.aboutHead4 i {
	color: #7d4670;
	font-style: normal;
	margin-right: .25em;
}
@media screen and (max-width: 768px){
	.aboutHead1 {
		padding: 10px;
	}
	.aboutHead1 span {
		font-size: 12px;
	}
	.aboutHead1 b {
		font-size: 16px;
	}
	.aboutHead2 {
		font-size: 18px;
		line-height: 1.5;
		text-align: left;
	}
	.aboutHead3 {
		font-size: 18px;
		text-align: left;
	}
	.aboutHead4 {
		font-size: 14px;
		margin-bottom: 20px;
		text-align: left;
	}
}

/* module */
.aboutText {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 2.5em;
	text-align: center;
}
.aboutHead3 + .aboutText {
	margin-bottom: 1.25em;
}
.aboutThumb {
	text-align: center;
}
.aboutThumbs {
	font-size: 0;
	margin: 0 0 40px;
	text-align: center;
}
.aboutThumbs li {
	font-size: 16px;
	display: inline-block;
	margin: 0 0 0 3px;
}
.aboutThumbs li:first-child {
	margin: 0;
}
.aboutThumbs li p {
	margin-top: 3px;
}
@media screen and (max-width: 768px){
	.aboutText {
		font-size: 14px;
		line-height: 1.8;
		text-align: left;
	}
	.aboutText br {
		display: none;
	}
	.aboutThumb img {
		width: 100%;
	}
	.aboutThumb.isMiddle img {
		max-width: 70%;
	}
	.aboutThumbs {
		margin: 0 0 40px;
		vertical-align: top;
	}
	.aboutThumbs p {
		font-size: 10px;
	}
	.aboutThumbs.is3col li {
		margin-left: 1%;
		width: 28%;
	}
	.aboutThumbs.is2col:after {
		content: "";
		clear: left;
		display: block;
	}
	.aboutThumbs.is2col li {
		float: left;
		margin-left: 1%;
		width: 49.5%;
	}
	.aboutThumbs.is2col li:first-child {
		margin-left: 0;
	}
}

/* accordion */
.accordion {
	display: none;
	margin-bottom: 60px;
}
.accordionBtn {
	cursor: pointer;
	position: relative;
	min-height: 24px;
	-webkit-transition: opacity .4s ease;
	transition: opacity .4s ease;
	border: 1px solid #231815;
	padding: 10px 40px;
}
.accordionBtn:hover {
	opacity: .7;
}
.accordionBtn:after {
	font-family: 'Linearicons-Free';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	font-size: 21px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: none;
	border: none;
	content: "\e874";
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin-top: -.5em;
}
.accordionBtn.opend:after {
	content: "\e873";
}
@media screen and (max-width: 768px){
	.accordion {
		margin-bottom: 40px;
	}
	.accordionBtn {
		padding-left: 10px;
	}
}
/* aboutDetail */
.aboutDecorate .imageBox {
	display: table;
	margin-bottom: 25px;
	width: 100%;
}
.aboutDecorate .imageBox p {
	display: table-cell;
	vertical-align: middle;
}
.aboutDecorate .imageBox .image {
	padding-right: 2em;
	width: 150px;
}
.aboutDecorate figure {
	display: block;
	margin: 20px 0;
}
.aboutDecorate figcaption,
.aboutDecorate .figcaption {
	font-size: 10px;
	display: block;
	margin-top: 10px;
	text-align: right;
    color: #ad99b4;
}
.aboutDecorate .imageLeft {
	float: left;
	width: 35%;
}
.aboutDecorate .flow {
	font-size: 18px;
	float: right;
	width: 60%;
}
.aboutDecorate .flow dt:before {
	content: "■";
}
@media screen and (max-width: 768px){
	.aboutDecorate .imageBox,
	.aboutDecorate .imageBox p {
		display: block;
	}
	.aboutDecorate .imageBox {
		margin-bottom: 15px;
	}
	.aboutDecorate .imageBox .image {
		margin: 0 auto 15px;
		padding: 0;
		text-align: center;
		width: 150px;
	}
	.aboutDecorate .imageLeft {
		float: none;
		width: auto;
	}
	.aboutDecorate .flow {
		font-size: 14px;
		margin: 10px 0;
		float: none;
		width: auto;
	}
}

/* aboutCrean */
.aboutCrean img.logo {
	width: 180px;
	padding: 0 20px 0 0;
	float: left;
}
.aboutCrean ul.crean {
	width: 100%;
	height: auto;
	margin: 40px 0 0 0;
	padding: 30px 2%;
	box-sizing: border-box;
	overflow: hidden;
	background: #d4cfdd;
}
.aboutCrean ul.crean li {
	width: 29%;
	height: auto;
	margin: 0 2% 4%;
	box-sizing: border-box;
	float: left;
}
.aboutCrean ul.crean li p {
	font-size: 13px;
	font-weight: 500;
	padding: 0 0 5px 0;
}
.aboutCrean ul.crean li p:before {
	content: "●";
	display: inline-block;
	padding: 0 2px 0 0;
	float: left;
}
.aboutCrean ul.crean li span {
	display: block;
	min-height: 3em;
}
.aboutCrean ul.crean li img {
	padding: 10px 0 0 0;
}
.aboutCrean ul.crean li:nth-of-type(5),
.aboutCrean ul.crean li:nth-of-type(6){
	margin: 0 2%;
}
.aboutCrean ul.crean li:nth-of-type(5) span,
.aboutCrean ul.crean li:nth-of-type(6) span{
	min-height: 3em;
}
@media screen and (max-width: 768px){
	.aboutCrean img.logo {
		width: 130px;
		padding: 10px 0;
		margin: 0 auto;
		float: none;
		display: block;
	}
	.aboutCrean ul.crean {
		margin: 20px 0 0 0;
		padding: 20px 4% 0 4%;
	}
	.aboutCrean ul.crean li {
		width: 96%;
	}
	.aboutCrean ul.crean li span {
		min-height: 1em;
	}
	.aboutCrean ul.crean li img {
		padding: 10px 0 15px 0;
	}

}
/* aboutRepair */
.aboutRepair .detail {
	margin: 30px 0 0;
}
.aboutRepair .detail:after {
	content: "";
	clear: both;
	display: block;
}
.aboutRepair table {
	width: 60%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
	float: left;
	overflow: hidden;
	border-collapse:separate;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border: #000 solid 1px;
}
.aboutRepair table + table {
	margin: 0 0 50px 0;
}
.aboutRepair th {
	width: 1em;
	font-size: 13px;
	font-weight: 600;
	line-height: 1em;
	margin: 0 10px 10px 0;
	padding: 15px;
	box-sizing: border-box;
	text-align: center;
	color: #fff;
	background: #3e3a39;
	vertical-align: middle;
}
.aboutRepair td {
	font-size: 12px;
	font-weight: 500;
	padding: 5px 10px;
	box-sizing: border-box;
	vertical-align: middle;
	border-top: #3e3a39 solid 1px;
	border-left: #3e3a39 solid 1px;
}
.aboutRepair td:first-child,
.aboutRepair th + td {
	font-weight: 600;
}
.aboutRepair th + td {
	width: 30%;
}
.aboutRepair tr:first-child td,
.aboutRepair td:first-child th {
	border-top: none;
}
.aboutRepair td:first-child + td {
	width: 47%;
}
.aboutRepair td small {
	padding: 0;
}
.aboutRepair dl {
	width: 37%;
	height: auto;
	float: right;
}
.aboutRepair dl dt {
	font-size: 13px;
	font-weight: 600;
	padding: 12px 0 0 0;
}
.aboutRepair dl dt span {
	font-size: 12px;
	margin: 0 15px 0 0;
	padding: 0 10px 0 0;
	display: inline-block;
	text-align: center;
	float: left;
	border-right: #000 solid 1px;
	position: relative;
	top: -12px;
}
.aboutRepair dl dt span em {
	display: block;
	padding: 5px 0;
	font-size: 30px;
}
.aboutRepair dl dd {
	width: 100%;
}
.aboutRepair dl dd img {
	padding: 10px 0 25px 0;
}
.aboutRepair dl dd ul {
	width: 98%;
	height: auto;
	margin: 0 0 0 2%;
	padding: 10px 15px;
	box-sizing: border-box;
	border: #3e3a39 solid 1px;
}
.aboutRepair dl dd ul li {
	width: 100%;
	font-size: 12px;
	box-sizing: border-box;
}
.aboutRepair dl dd ul li:before {
	content: "●";
	display: inline-block;
	padding: 0 2px 0 0;
	float: left;
}
@media screen and (max-width: 768px){
	.aboutRepair dl {
		width: 100%;
		padding: 0 0 20px 0;
		float: none;
		clear: both;
	}
	.aboutRepair dl dd ul {
		width: 100%;
		margin: 0;
	}
	.aboutRepair table {
		width: 100%;
	}
	.aboutRepair table + table {
		margin: 0;
	}
	.aboutRepair th,
	.aboutRepair td {
		width: 100% !important;
		display: list-item;
		border-left: none !important;
		border-top: none !important;
		border-bottom: none !important;
	}
	.aboutRepair th {
		margin: 0;
		padding: 10px;
	}
	.aboutRepair th br {
		display: none;
	}
	.aboutRepair td {
		padding: 5px 10px;
		border-bottom: #e3e3e3 solid 1px !important;
	}
	.aboutRepair td:first-child {
		padding: 10px;
		background: #e3e3e3;
	}
	.aboutRepair td:first-child br {
		display: none;
	}
}

/* aboutSafe */
.aboutSafe .heading {
	font-size: 18px;
	font-weight: 600;
}
.aboutSafe .bar {
	width: 100%;
	height: auto;
	margin: 2.22em 0;
	padding: .55em 0;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1;
	font-weight: 600;
	color: #fff;
	background: #000;
	text-align: center;
}
.aboutSafe .intro{
	margin-bottom: 40px;
}
.aboutSafe .intro:after {
	content: "";
	clear: both;
	display: block;
}
.aboutSafe .intro img {
	width: 30%;
	height: auto;
	float: left;
}
.aboutSafe .intro dl {
	width: 65%;
	height: auto;
	float: right;
}
.aboutSafe .intro dl dt {
	width: 100%;
	height: auto;
	display: block;
	font-size: 18px;
	font-weight: 600;
	margin: 2.22em 0 1.11em;
	padding: 10px 0 12px 0;
	line-height: 1;
	text-align: center;
	border: #000 solid 1px;
	box-sizing: border-box;
	position: relative;
}
.aboutSafe .intro dl dt:first-child {
	margin-top: 0;
}
.aboutSafe .intro dl dt:before {
	content: " ";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 61px 0 0;
	border-color: #000 transparent transparent;
	position: absolute;
	left: 0;
	top: 0;
}
.aboutSafe .intro dl dd {
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	font-size: 14px;
}
.aboutSafe .intro dl dd strong {
	font-size: 18px;
	line-height: 1.5em;
	font-weight: 600;
	margin: 0;
	padding: 0 0 10px 0;
	border: none;
	display: block;
}
.aboutSafe .intro dl dt a {
	display: block;
}
.aboutSafe .intro dt a:hover {
	opacity: 0.5;
}
.aboutSafe .intro dl dd h4:before {
	display: none;
}
.aboutSafe .intro dl dd img {
	padding: 40px 0 0 0;
}
@media screen and (max-width: 768px){
	.aboutSafe .heading {
		font-size: 16px;
	}
	.aboutSafe p br {
		display: none;
	}
	.aboutSafe .bar {
		margin: 15px 0 0;
		padding: 10px;
		font-size: 14px;
		line-height: 1.3em;
	}
	.aboutSafe .intro img {
		width: 100%;
		padding: 20px 0 0 0;
	}
	.aboutSafe .intro dl {
		width: 100%;
	}
	.aboutSafe .intro dl dt {
		font-size: 14px;
		padding: 10px 30px 10px 0;
		border: none;
		text-align: left;
		border-bottom: #ccc solid 1px;
	}
	.aboutSafe .intro dl dt:first-child {
		margin-top: 2.22em;
	}
	.aboutSafe .intro dl dt:before {
		display: none;
	}
	.aboutSafe .intro dl dd,
	.aboutSafe .intro dl dd strong {
		font-size: 14px;
		line-height: 1.9;
	}
	.aboutSafe .intro dl dd {
		margin: 0 0 20px 0;
	}
	.aboutSafe .intro dl dd br {
		display: none;
	}
}


/* aboutBuilding */
.aboutBuilding dl {
	width: 48%;
	height: auto;
	padding: 2%;
	box-sizing: border-box;
	float: left;
	background: #d4cfdd;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.aboutBuilding dl + dl {
	float: right;
}
.aboutBuilding dl dt {
	width: 100%;
	height: auto;
	padding: 0 0 10px 0;
	font-size: 18px;
	font-weight: 600;
	text-align: center;
	border-bottom: #aeafaf solid 1px;
}
.aboutBuilding dl dd {
	font-size: 12px;
}
.aboutBuilding dl dd p {
	font-size: 12px;
	padding: 10px 0 0 0;
}
.aboutBuilding dl dd > p:first-child {
	min-height: 10em;
}
.aboutBuilding dl dd p + p {
	font-weight: 500;
	padding: 10px 0 20px 0;
}
.aboutBuilding dl dd dl {
	width: 100%;
	height: 100%;
	padding: 10px 2% 20px 2%;
	box-sizing: border-box;
	background: #3e3a39;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	float: none;
	clear: both;
	position: relative;
}
.aboutBuilding dl dd dl:after {
	content: "";
	width: 0;
	height: 0;
	margin: 0 0 0 -5px;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #3e3a39 transparent transparent transparent;
	position: absolute;
	left: 50%;
	bottom: -10px;
}
.aboutBuilding dl dd dl dt {
	background: #3e3a39;
}
.aboutBuilding dl dd dl dd span {
	width: 100px;
	font-size: 13px;
	line-height: 15px;
	display: inline-block;
	margin: 10px 0 0 0;
	padding: 10px;
	box-sizing: border-box;
	color: #000;
	background: #ccc;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	float: left;
	clear: left;
}
.aboutBuilding dl dd dl dd p {
	margin: 0 0 0 110px;
	padding: 10px 0 0 0;
	display: block;
	min-height: 37px;
	line-height: 1.5;
}
.aboutBuilding dl dd dl dd span em {
	width: 15px;
	height: 15px;
	display: block;
	text-align: center;
	line-height: 15px;
	border: #000 solid 1px;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	float: right;
}
.aboutBuilding .point {
	margin: 20px 0 0 0;
	text-align: center;
}
.aboutBuilding .point em {
	padding: 2%;
	min-height: 2.6em;
	font-size: 18px;
	line-height: 1.3em;
	font-weight: 600;
	color: #93278f;
	background: #fff;
	display: block;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
.aboutBuilding dl + dl .point em {
	line-height: 2.6em;
}
.aboutBuilding .point span {
	font-size: 12px;
	display: block;
	padding: 5px 0 0 0;
}
@media screen and (max-width: 768px){
	.aboutBuilding dl {
		margin: 0 0 20px 0;
		padding: 5%;
		float: none;
		width: auto;
	}
	.aboutBuilding dl dt {
		font-size: 13px;
	}
	.aboutBuilding dl dd p {
		font-size: 12px;
	}
	.aboutBuilding dl dd > p:first-child {
		min-height: 0;
	}
	.aboutBuilding dl dd p + p {
		font-size: 13px;
		padding: 10px 0;
	}
	.aboutBuilding dl dd dl dd {
		width: 100%;
		float: none;
		clear: both;
	}
	.aboutBuilding dl dd dl dd span {
		width: 95px;
		display: block;
		margin: 10px  auto 0 auto;
		font-size: 12px;
		float: none;
		clear: both;
	}
	.aboutBuilding dl dd dl dd p {
		margin: 0 5%;
		padding: 5px 0 0 0;
		min-height: 1em;
	}
	.aboutBuilding .point em {
		font-size: 13px;
	}
	.aboutBuilding .point span {
		text-align: left;
		line-height: 1.3em;
	}
}

/* aboutFacility */
.aboutFacility {

}
.aboutFacility .heading {
	width: 100%;
	height: auto;
	padding: 0 0 20px 0;
	font-size: 16px;
	font-weight: 600;
	display: block;
	float: left;
}
.aboutFacility h5 span {
	color: #555;
}
.aboutFacility ol {
	width: 100%;
	height: auto;
	margin: 20px 0 30px 0;
	padding: 30px 2% 0 2%;
	box-sizing: border-box;
	overflow: hidden;
	background: #d4cfdd;
	counter-reset: num;
}
.aboutFacility ol li {
	width: 32%;
	height: auto;
	min-height: 8.9em;
	margin: 0 0 30px 2%;
	padding: 20px 20px  20px 50px;
	float: left;
	font-size: 18px;
	font-weight: 500;
	color: #fff;
	background: #3e3a39;
	box-sizing: border-box;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	position: relative;
	line-height: 1.5;
}
.aboutFacility ol li:first-child {
    margin: 0 0 30px 0;
}
.aboutFacility ol li:before {
	counter-increment: num;
	content: counter(num);
	width: 30px;
	height: 30px;
	margin: 0;
	font-size: 20px;
	font-weight: 600;
	color: #000;
	text-align: center;
	line-height: 28px;
	border-radius: 15px;
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	background: #ccc;
	position: absolute;
	left: 10px;
	top: 20px;
}
.aboutFacility ol li span {
	font-size: 12px;
	padding: 10px 0 10px 10px;
	display: block;
}
.aboutFacility ol li small {
	font-size: 12px;
	display: block;
	margin: 0 0 0 10px;
}
.aboutFacility table {
	width: 100%;
	height: auto;
	color: #fff;
	overflow: hidden;
	border-collapse:separate;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	float: none;
	clear: both;
}
.aboutFacility th {
	font-size: 14px;
	font-weight: 600;
	padding: 10px 20px;
	box-sizing: border-box;
	text-align: center;
	background: #3e3a39;
	vertical-align: middle;
	border-right: #fff solid 1px;
	border-top: #fff solid 1px;
}
.aboutFacility td {
	font-size: 13px;
	font-weight: 500;
	padding: 10px 20px;
	box-sizing: border-box;
	background: #aeafaf;
	border-right: #fff solid 1px;
	vertical-align: middle;
	border-top: #fff solid 1px;
}
.aboutFacility tr td + td + td + td {
	border-right: none;
}
.aboutFacility tr th + td + td,
.aboutFacility tr th + td + td + td {
	text-align: center;
}
.aboutFacility td span {
	font-size: 11px;
	display: block;
}
.aboutFacility tr th + td span {
	display: inline-block;
}
.aboutFacility td em {
	font-size: 18px;
	display: block;
}
@media screen and (max-width: 768px){
	.aboutFacility .heading {
		font-size: 13px;
		padding: 0 0 15px 0;
	}
	.aboutFacility ol {
		margin: 20px 0;
		padding: 20px 5% 10px 5%;
	}
	.aboutFacility ol li:before{
		font-size: 14px;
		top: 10px;
	}
	.aboutFacility ol li {
		font-size: 13px;
		margin: 0 0 10px 0;
		padding: 15px 20px 20px 50px;
		float: none;
		min-height: 0;
		width: auto;
	}
	.aboutFacility ol li:first-child {
		margin: 0 0 10px 0;
	}
	.aboutFacility ol li span {
		font-size: 11px;
		padding: 5px 0 5px 10px;
	}
	.aboutFacility ol li small {
		font-size: 10px;
	}
	.aboutFacility ol li small br {
		display: none;
	}

	.aboutFacility tr:first-child {
		display: none;
	}
	.aboutFacility table {
		border: #000 solid 1px;
	}
	.aboutFacility table + table {
		margin: 0;
	}
	.aboutFacility table + table tr:first-child {
		display: block;
	}
	.aboutFacility th,
	.aboutFacility td,
	.aboutFacility table + table th,
	.aboutFacility table + table td {
		width: 100%;
		display: list-item;
	}
	.aboutFacility th {
		font-size: 13px;
		padding: 10px;
		border: none;
	}
	.aboutFacility td {
		padding: 5px 10px;
		border-top: #e3e3e3 solid 1px !important;
		color: #000;
		background: #fff;
	}
	.aboutFacility th + td {
		border-top: none;
	}
	.aboutFacility td br.tb,
	.aboutFacility td br,
	.aboutFacility td span br {
		display: none;
	}
	.aboutFacility td em {
		font-size: 15px;
	}
}
/* aboutPro */
.aboutPro .imageBox {
	display: table;
	direction: rtl;
	width: 100%;
}
.aboutPro .imageBox .image,
.aboutPro .imageBox .text {
	direction: ltr;
	display: table-cell;
	vertical-align: middle;
}
.aboutPro .imageBox .image {
	padding-right: 80px;
	text-align: center;
	width: 372px;
}
@media screen and (max-width: 768px){
	.aboutPro .imageBox,
	.aboutPro .imageBox .image,
	.aboutPro .imageBox .text {
		display: block;
	}
	.aboutPro .imageBox .image {
		margin-top: 20px;
		padding-right: 0;
		width: auto;
	}
}

/* aboutService */
.aboutService {
	font-size: 12px;
	line-height: 2;
}
.aboutService p {
	font-size: 16px;
	line-height: 2;
}
.aboutService p.aboutHead4 {
	font-size: 18px;
	line-height: 1.2;
	min-height: 24px;
}
.aboutService .note h6 {
	font-size: 14px;
	font-weight: bold;
	margin-bottom: .5em;
}
.aboutService .note ul {
	line-height: 2;
}
.aboutService .note ul li:before {
	content: "●";
	margin-right: .25em;
}
.aboutService .note small {
	font-size: 12px;
}
.aboutService .note small:before {
	content: "※";
	margin-right: .25em;
}
.aboutService .function {
	line-height: 2;
	margin: 20px 0;
}
.aboutService .function li:before {
	content: "●";
	margin-right: .25em;
}
.aboutService .function li ol li {
	counter-increment: number;
}
.aboutService .function li ol li:before {
	border: 1px solid;
	box-sizing: border-box;
	border-radius: 50%;
	content: counter(number);
	display: inline-block;
	font-size: 10px;
	line-height: 1.6;
	text-align: center;
	height: 1.8em;
	width: 1.8em;
}
@media screen and (max-width: 768px){
	.aboutService p {
		line-height: 1.9;
	}
	.aboutService p.aboutHead4 {
		font-size: 14px;
		min-height: 0;
	}
	.aboutService p br {
		display: none;
	}
}

/* advisor */
.advisorInbox p {
	font-size: 16px;
	margin: 0 0 2em;
	line-height: 1.8;
}
.advisorHead {
	font-size: 16px;
	margin-bottom: 2.5em;
	text-align: center;
	line-height: 1.2;
}
.advisor {
	margin: 2% 0 0;
}
.advisor:after {
	content: "";
	clear: both;
	display: block;
}
.advisor li {
	float: left;
	margin: 0 0 0 2%;
	width: 49%;
}
.advisor li:nth-child(2n-1) {
	clear: both;
	margin-left: 0;
}
.advisor figure {
	display: block;
	margin: 0 3% 0 0;
	float: left;
	width: 30%;
}
.advisor figure img {
	height: auto;
	margin-bottom: .5em;
	max-width: 100%;
}
.advisor figcaption b {
	display: block;
	font-size: 18px;
}
.advisor p {
	font-size: 14px;
	float: left;
	line-height: 2;
	width: 67%;
}
.advisorInbox .advisorServiceTitle {
	margin-bottom: .5em;
}
.advisorService {
	width: 100%;
	height: auto;
	border: #000 solid 2px;
	font-size: 14px;
	background: #fff;
}
.advisorService tr th {
	padding: 20px 15px;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	border-right: #000 solid 1px;
	border-bottom: #000 solid 1px;
}
.advisorService tr.top th {
	background: #222;
	color: #fff;
	border-color: #666;
}
.advisorService td {
	width: 40%;
	height: auto;
	padding: 20px 15px;
	box-sizing: border-box;
	border-right: #000 solid 1px;
	border-bottom: #000 solid 1px;
}
@media screen and (max-width: 768px){
	.advisorHead {
		text-align: left;
	}
	.advisorInbox {
		margin: 0 -10px 40px;
	}
	.advisorInbox p {
		font-size: 14px;
		margin: 0 10px 2em;
	}
	.advisor li {
		border-top: 1px solid #b8b8b8;
		float: none;
		margin: 40px 0;
		padding: 40px 10px 0;
		width: auto;
	}
	.advisor figure {
		float: none;
		margin: 0;
		text-align: center;
		width: auto;
	}
	.advisor figure img {
		margin-bottom: 1em;
		max-width: 50%;
	}
	.advisor p {
		float: none;
		margin: 1em 0;
		line-height: 1.8;
		width: auto;
	}
	.advisorInbox .advisorServiceTitle {
		border-top: 1px solid #b8b8b8;
		margin: 35px 0 .5em;
		padding: 35px 10px 0;
	}
	.advisorService {
		font-size: 12px;
		margin: 0 10px;
		width: auto;
	}
	.advisorService tr th {
		padding: 10px;
		font-size: 12px;
	}
	.advisorService td {
		width: 33%;
	}

}



/*____________________________________________________________*/

.leadHead{
	font-size: 22px;
	text-align: center;
}
.leadText{
	font-size: 16px;
	line-height: 2em;
	text-align: center;
}

.sec_lead_p01{
	margin: 0 0 100px;
}
.sec_lead_p02{
	margin: 40px 0 0;
}
/*___*/


#strength_01_link,
#strength_02_link,
#strength_03_link,
#strength_04_link{
	padding-top: 200px;
	margin-top: -200px;
}



.strength{
	margin: 0 0 300px;
}
.strength_box{
	position: relative;
	margin: -160px 0 40px;
}
.strength_box img{
	width: 100%;
}
.strength_box p.note{
	color: #fff;
	position: absolute;
	bottom: 5px;
	right: 5px;
}
.strength_box_txt{
	max-width: 600px;
	width: 100%;
	padding: 45px 0 45px;
	background-color: rgb(0, 0, 0, .4);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	margin: auto;
}
.strength_box_txt::before,
.strength_box_txt::after{
	content: "";
	display: block;
    position: absolute;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    width: 50px;
    height: 50px;
}
.strength_box_txt::before{
	transform: rotate(-90deg);
	top: -10px;
	left: 10px;
}
.strength_box_txt::after{
	transform: rotate(90deg);
	bottom: -10px;
	right: 10px;
}
.strength_box_txt p{
	font-size: 25px;
	color: #fff;
	text-align: center;
}
.strength_box_txt span{
	font-size: 30px;
	font-weight: 600;
}
.strength_box_txt span.num{
	font-size: 40px;
	font-weight: 400;
	font-style: italic;
}

/*___*/

.sec_lead{
    background: #1e111e;
    color: #fff;
    padding: 10rem 0;
}
.sec_lead h3{
   font-size: 4.2rem; 
   font-weight: 300;
}
.sec_lead .leadBox{
    width: 90%;
    align-items: center;
    margin: 17rem auto 8rem;
    gap: 0 5rem;
    flex-wrap: wrap;
}
.sec_lead .logo img{
   width: 20rem;
}
.sec_lead .txt{
    flex: 1;
    font-size: 1.8rem;
    line-height: 1.75;
    font-weight: 300;
}
.sec_lead .txt p{
}
.sec_lead .txt p + p{
    margin-top: 1em;
}
.sec_lead .txt p.note{
    text-align: right;
    margin-top: 3rem;
    font-size: 1.5rem;
    color: #808282;
}
.sec_lead .txt .ex{
    text-align: right;
    color: #808282;
    font-size: 1.5rem;
}
.sec_lead .feature h4{
    text-align: center;
    font-size: 2.7rem;
    font-weight: 600;
    margin: 0 0 3rem;
}
.sec_lead .feature .featureList{
    gap: 3rem;
    flex-wrap: wrap;
}
.sec_lead .feature .featureList > li{
    width: calc((100% - 6rem) / 3);
}
.sec_lead .feature .featureList > li{
    display: block;
}
.sec_lead .feature .featureList > li img{
    max-width: 100%;
}
.sec_lead .feature .featureList .txt{
    border: 1px solid #b7a7b8;
    background: #402944;
    font-size: 1.8rem;
    text-align: center;
    padding: 1rem 0;
    position: relative;
}
body.EN .sec_lead .feature .featureList .txt{
    font-size: 1.4rem;
}
.sec_lead .feature .featureList .txt:after{
    content: "";
    display: block;
    position: absolute;
    width: .75rem;
    height: .75rem;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    right: 2rem;
    top: 50%;
    transform: rotate(45deg) translateY(-50%);
}


/*___*/

.sec_expert{
    background: #271828;
    color: #fff;
}
.aboutBlc h3{
   font-size: 5.5rem; 
   letter-spacing: .4rem;
   margin-bottom: 1rem;
    font-weight: 300;
}
.aboutBlc h3 p{
   font-size: 1.8rem; 
   margin-bottom: 1em;
   font-weight: 300;
}
.aboutBlc .ex{
    font-size: 1.7rem;
    font-weight: 300;
}
.aboutBlc .linkBtn{
    margin: 5rem 0;
    position: relative;
    z-index: 2;
}
.aboutBlc .linkBtn a{
    background: #402944 url(/grantact/img/common/icon_link_white.svg) right 1.5em center / auto 1.2rem no-repeat;
    margin: 0 0 0 auto;
    display: block;
    max-width: 39rem;
    text-align: center;
}
.aboutBlc .linkBtn a.exlink{
    background: #402944 url(/grantact/img/common/icon_exlink_white.svg) right 1.5em center / auto 1.6rem no-repeat;
}
.aboutBlc .linkBtn a.pdf{
    background: #402944 url(/grantact/img/common/icon_pdf_color.svg) right 1.5em center / auto 1.6rem no-repeat;
}
.aboutBlc .mainimg{
    margin: 5rem 0 7.5rem;
}
.aboutBlc .blc,
.aboutBlc .mainimg,
.sec_expert .expertBlc01,
.sec_expert .expertBlc02,
.sec_expert .expertBlc03,
.sec_expert .structure{
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.sec_expert .ttl{
    max-width: 55rem;
    width: 49%;
    margin-bottom: 2rem;
}
.aboutBlc .ttl h4{
    border-left: 3px solid #ded4bd;
    padding-left: 1.5rem;
    font-size: 3.2rem;
    margin-bottom: 2.5rem;
    font-weight: 600;
}
.sec_expert .txt{
    max-width: 55rem;
    width: 49%;
}
.sec_expert .txt p{
    font-weight: 300;
    font-size: 1.6rem;
}
.sec_expert .txt p + p{
    margin-top: 1em;
}
.sec_expert .img{
    max-width: 58rem;
    width: 49%;
}
.sec_expert .expertBlc02,
.sec_expert .expertBlc03{
    margin-top: 10rem;
}
.sec_expert .expertBlc01 .ttl{
    float: left;
}
.sec_expert .expertBlc01 .img{
    float: right;
}
.sec_expert .expertBlc02 .ttl,
.sec_expert .expertBlc02 .txt{
    float: right;
}
.sec_expert .expertBlc02 .img{
    float: left;
}
.sec_expert .expertBlc03 .ttl{
    max-width: 61rem;
    width: 100%;
    float: none;
}
.sec_expert .expertBlc03 .ttl p{
    font-size: 1.6rem;
    font-weight: 300;
    margin-top: 1em;
}
.sec_expert .structure{
    margin-top: 10rem;
}

.sec_analysis{
    background: #3c283f;
    color: #fff;
}
.sec_analysis .marketImg{
    flex-wrap: wrap;
    gap: 1rem;
}
.sec_analysis .marketImg img{
    max-height: 24.5rem;
    width: auto;
    max-width: auto;
}
.sec_analysis .analysisBlc02{
    display: grid;
    width: 90%;
    gap: 2rem;
    grid-template-columns: 49% auto;
    grid-template-rows: 5rem 10rem auto;
}
.sec_analysis .analysisBlc02 .ttl{
    grid-column: 1 /2;
    grid-row: 1 /2;
}
.sec_analysis .analysisBlc02 .txt{
    grid-column: 1 /2;
    grid-row: 2 /3;
}
.sec_analysis .analysisBlc02 .data{
    grid-column: 1 /2;
    grid-row: 3 / 4;
}
.sec_analysis .analysisBlc02 .img{
    grid-column: 2 /3;
    grid-row: 1 /4;
}
.sec_analysis .analysisBlc .txt{
    margin-top: 5rem;
}
.sec_analysis .analysisBlc .txt,
.sec_analysis .analysisBlc02 .txt p,
.sec_analysis .analysisBlc03 .txt{
    font-size: 1.6rem;
    font-weight: 300;
}
.sec_analysis .analysisBlc03 .txt{
    margin: 5rem 0 0;
}
.sec_analysis .analysisBlc02 .structure{
}
.sec_analysis .analysisBlc02 .structure .content{
    font-size: 1.8rem;
    border: 1px solid #fff;
    padding: 1rem;
    text-align: center;
}
.sec_analysis .analysisBlc02 .structure .slash{
    margin: 1rem 0;
    height: 3rem;
}
.sec_analysis .analysisBlc02 .structure .slash span{
    display: block;
    margin: 0 auto;
    width: 3rem;
    height: 3rem;
    background: url(/grantact/img/common/icon_slach.svg) center / contain no-repeat;
}
.sec_analysis .analysisBlc + .linkBtn,
.sec_analysis .analysisBlc02,
.sec_analysis .analysisBlc03{
    margin-top: 10rem;
}

.sec_network{
    background: #4e3754;
    color: #fff;
}
.sec_network .overseaList{
    border: 1px solid #b6a6b7;
    padding: 3rem;
    gap: 3rem;
    flex-wrap: wrap;
}
.sec_network .overseaList > *{
    width: calc( (100% - 3rem) / 2 );
}
.sec_network .overseaImg{
    position: relative;
}
.sec_network .overseaImg figure{
    position: relative;
    z-index: 1;
}
.sec_network .overseaImg figcaption{
    position: absolute;
    z-index: 2;
    bottom: .5rem;
    right: 15%;
}
.sec_network .overseaList h5{
    text-align: center;
    margin-bottom: 1em;
    font-size: 2.1rem;
    font-weight: 600;
}
.sec_network .overseaList .txt{
    font-size: 1.6rem;
    font-weight: 300;
    margin: 2rem 0 0;
}
.sec_network .networkBlc + .networkBlc{
    margin-top: 10rem;
}
.sec_network .networkBlc .ex{
    font-size: 1.6rem;
}

.sec_tokyu{
    padding: 10rem 0;
}
.sec_tokyu h3{
    font-size: 3.2rem;
    margin-bottom: 5rem;
}
.sec_tokyu .feature{
    gap: 5rem  8rem;
    flex-wrap: wrap;
}
.sec_tokyu .feature > .left{
    width: 65%;
}
.sec_tokyu .feature > .right{
    width: calc( 35% - 8rem );
}
.sec_tokyu .feature > .bottom{
    width: 100%;
}
.sec_tokyu .feature h4{
    height: 7rem;
    position:relative;
    margin-bottom: 3rem;
}
.sec_tokyu .feature h4 p{
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.8rem;
    font-weight: 600;
}
.sec_tokyu .feature .ex{
    margin-bottom: 3rem;
}
.sec_tokyu .feature .tokyuList{
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.sec_tokyu .feature .tokyuList > li:first-child{
    width: 33%;
    max-width: 35rem;
}
.sec_tokyu .feature .tokyuList > li:last-child{
    width: 62%;
    max-width: 65rem;
}
.sec_tokyu .feature .bottom + .bottom{
    margin-top: 5rem;
}
.sec_tokyu .feature .bottom h5{
    font-size: 1.8rem;
    font-weight: bold;
}
.sec_tokyu .feature .bottom .troubleList{
    margin-top: 3rem;
    flex-wrap: wrap;
    gap: 1.5rem;
}
.sec_tokyu .feature .bottom .troubleList > *{
    width: calc((100% - 3rem) / 3);
    padding: 2rem;
    font-size: 1.8rem;
    text-align: center;
    border: 2px solid #6c4b6d;
    color: #6c4b6d;
}
.sec_tokyu .linkBtn .btn.btn_white{
    background: #fff url(/grantact/img/common/icon_exlink.svg) right 1.5em center / auto 1.6rem no-repeat;
    font-weight: 400;
    font-size: 1.8rem;
    letter-spacing: 0;
    width: 90%;
    max-width: 40rem;
    padding-right: 3.5rem;
    text-align: left;
}

.sec_movie{
    background: #f7f7f7;
}
.sec_movie .title{
    background: #6c4b6d;
    color: #fff;
}
.sec_movie .title .flex > *{
    width: 50%;
}
.sec_movie .txt{
    position: relative;
}
.sec_movie .txt h3{
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    font-size: 3.2rem;
}
.sec_movie .img_wrap .video{
    display: block;
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
}
.sec_movie .img_wrap .video:after{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: url(/grantact/img/about/about_img19.png) center / cover no-repeat;
    z-index: 2;
    opacity: 1;
    transition: opacity .1s linear;
}
.sec_movie .img_wrap .video.pv:after{
    opacity: 0;
    pointer-events: none;
}
.sec_movie .img_wrap .video iframe{
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    right :0;
}
.sec_movie .img_wrap .control{
    position: relative;
}
.sec_movie .img_wrap .control img{
}
.sec_movie .img_wrap .video span{
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 22rem;
    height: 22rem;
    background: url(/grantact/img/common/icon_play.svg) center / contain no-repeat;
    cursor: pointer;
}
.sec_movie .linkBtn ul{
    justify-content: flex-end;
}
.sec_movie.aboutBlc .linkBtn a{
    background: #F7F7F7;
    padding-right: 5rem;
    position: relative;
}
.sec_movie.aboutBlc .linkBtn a:after{
    content: "";
    display: block;
    position: absolute;
    width: .75rem;
    height: .75rem;
    border-right: .15rem solid #6C4B6D;
    border-top: .15rem solid #6C4B6D;
    right: 2rem;
    top: 50%;
    transform: rotate(45deg) translateY(-50%);
}
.sec_grantact{
    padding-top: 10rem;
    padding-bottom: 5rem;
}
.sec_grantact h4{
    font-size: 2.4rem;
    margin-bottom: 3rem;
}
.sec_grantact .flex{
    gap: 3rem;
}


/*___*/

.strength_01{
	background-image: url(/grantact/img/about/strength_01_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.strength_01_p01{
	margin: 40px 0 40px;
}

.specialist_link{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 0 60px;
}
.specialist_link img{
	width: 100%;
	display: block;
}
.specialist_link a{
	width: 33%;
	position: relative;
}
.specialist .specialist_link a{
	width: 49%;
}
.specialist_link .txtbox{
	width: 86%;
	position: absolute;
	bottom: 18%;
	left: 0;
	right: 0;
	margin: auto;
}
.specialist .specialist_link .txtbox{
	width: 60%;
	margin: 0 0 0 5%;
	bottom: 22%;
}
.specialist_link .txtbox::before{
	content: "";
	width: 136px;
	height: 136px;
	background-color: rgba(0, 0, 0, .6);
	position: absolute;
	top: -30px;
	left: -4%;
	z-index: 0;
}
.specialist_link .txtbox p{
	color: #fff;
	line-height: 1em;
	position: relative;
	z-index: 1;
}
.specialist_link .txtbox p:nth-of-type(1){
	font-size: 18px;
	border-bottom: solid 1px #7c486e;
	padding: 0 0 20px;
}
.specialist_link .txtbox p:nth-of-type(2){
	font-size: 12px;
	margin: 15px 0 8px;
}
.specialist_link .txtbox p:nth-of-type(3){
	font-size: 18px;
}
.specialist_link .morebtn{
	font-size: 14px;
	color: #fff;
	line-height: 1em;
	text-align: center;
	width: 100%;
	padding: 12px 0 12px;
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(116, 67, 112, .75);
}
.specialist .specialist_link .morebtn{
	width: 60%;
	bottom: 14px;
	left: 14px;
	background: -moz-linear-gradient(90deg, #744370 0%, #462144 100%) no-repeat 50% 50% / 100% 100%;
    background: -webkit-linear-gradient(90deg, #744370 0%, #462144 100%) no-repeat 50% 50% / 100% 100%;
    background: linear-gradient(90deg, #744370 0%, #462144 100%) no-repeat 50% 50% / 100% 100%;
}
@media screen and (max-width: 768px){
	.specialist_link{
		flex-wrap: wrap;
	}

	.specialist_link a{
		width: 100%;
	}
	.specialist .specialist_link a{
		width: 100%;
		margin-bottom: 15px;
	}
	.specialist .specialist_link .txtbox{
		width: 90%;
		margin: 0 0 0 5%;
		bottom: 24%;
	}
	.specialist .specialist_link .txtbox::before {
		width: 106px;
		height: 106px;
		top: -30px;
		left: -4%;
	}
	.specialist .specialist_link .txtbox p:nth-of-type(1){
		font-size: 15px;
		padding: 0 0 10px;
	}
	.specialist .specialist_link .txtbox p:nth-of-type(2){
		font-size: 10px;
		margin: 10px 0 8px;
	}
	.specialist .specialist_link .txtbox p:nth-of-type(3){
		font-size: 15px;
	}
	.specialist .specialist_link .morebtn{
		width: 100%;
		bottom: auto;
		left: auto;
		position: relative;
		display: block;
	}
}
/*___*/

.strength_02{
	background-image: url(/grantact/img/about/strength_02_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.strength_02_p01{
	margin: 40px 0 40px;
}

.ordermade_img{
	max-width: 990px;
	margin: 0 auto 50px;
}
.ordermade_img img{
	width: 100%;
}

.grounds_area{
	margin: 0 auto 80px;
}
.grounds_box{
	border: solid 1px #723f77;
	max-width: 930px;
	margin: 0 auto;
}
.grounds_box > p{
	font-size: 22px;
	color: #fff;
	line-height: 1em;
	background-color: #723f77;
	padding: 20px 0 20px 20px;
}
.grounds_flex{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 40px 20px 10px;
}
.grounds_flex div{}
.grounds_flex div:nth-of-type(1){
	/* width: 78%; GRANTACT-299 */
}
.grounds_flex div:nth-of-type(1) p:nth-of-type(1){
	font-size: 20px;
	line-height: 1.4em;
	margin: 0 0 20px;
}
.grounds_flex div:nth-of-type(1) p:nth-of-type(2){
	font-size: 14px;
	line-height: 2em;
}
.grounds_flex div:nth-of-type(2){
	width: 18%;
}
.grounds_flex div:nth-of-type(2) p:nth-of-type(1){
	text-align: right;
}
.grounds_flex img{
	width: 100%;
}
.grounds_area{}
.grounds_area{}


.strength_02_p02{
	margin: 40px 0 40px;
}

.sliderMarket_wrap{
	margin: 0 0 60px;
}

/*___*/

.strength_03{
	background-image: url(/grantact/img/about/strength_03_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}
.strength_03_p01{
	margin: 40px 0 40px;
}

.service7_wrap{}
.service7_ttl{
	font-size: 20px;
	letter-spacing: 0.1em;
	text-align: center;
	margin: 0 0 30px;
}
.service7_ttl span{
	font-size: 30px;
	color: #744370;
}
.service7_box{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
  	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.service7_box a{
	width: 24%;
	margin: 0 0.4% 2%;
	position: relative;
}
.service7_box a img{
	width: 100%;
}
.service7_box a div{
	width: 100%;
	padding: 2px 0 2px;
	background-color: rgba(116, 67, 112, .75);
	position: absolute;
	bottom: 0;
	left: 0;
}
.service7_box a div::before{
	content: ">";
	color: #fff;
	font-size: 14px;
	line-height: 1em;
	position: absolute;
	top: 6px;
    right: 8px;
}
.service7_box a div span{
	display: inline-block;
	color: #fff;
	font-size: 15px;
	line-height: 1em;
	background: #000;
	padding: 5px 8px 4px 8px;
    margin: 0 4px 0 2px;
}
.service7_box a div p{
	display: inline-block;
	color: #fff;
	font-size: 17px;
	line-height: 1em;
	letter-spacing: 0.1em;
}
.service7_box a:hover{
	opacity: 1;
}
a p.link_hover{
	display: block;
    width: 100%;
    height: 100%;
    background-color:rgba(116,67,112,0.9);
    text-align: center;
    padding: 0;
    line-height: 9.5;
	opacity: 0;
	font-size: 20px;
	transition: all 0.6s ease;
	color: #FFFFFF;
	position: absolute;
	top: 0;
}

a:hover p.link_hover{
	opacity: 1;
}

/*___*/

.strength_04{
	background-image: url(/grantact/img/about/strength_04_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	margin: 0;
}
.strength_04_p01{
	margin: 40px 0 80px;
}

.network_wrap{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 0 30px;
}
.network_box{
	width: 48%;
}
.network_box:nth-of-type(1){}
.network_box:nth-of-type(2){}
.network_box p{
	text-align: center;
}
.network_box p:nth-of-type(1){
	font-size: 20px;
	margin: 0 0 20px;
}
.network_box p:nth-of-type(2){
	font-size: 14px;
	line-height: 2em;
	margin: 0 0 30px;
}
.network_box .flex{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: center;
    gap: 0 1rem;
}
.network_box:nth-of-type(1) .flex{
}
.network_box:nth-of-type(1) .flex div{
	width: auto;
    text-align: center;
}
.network_box:nth-of-type(1) .flex div img{
    max-height: 152px;
    width: auto;
}
.network_box:nth-of-type(2) .flex div{
	width: 49%;
}
.network_box .flex span{
	font-size: 14px;
	display: block;
	text-align: center;
	margin: 10px 0 0;
}
.network_wrap img{
	width: 100%;
}



.aboutServiceDetail{
	max-width: 930px;
	margin: 0 auto;
}
.aboutServiceDetail img{
	max-width: 100%;
}

.aboutHead4 {
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    letter-spacing: .1em;
    margin: 2.2em 0;
    border-bottom: solid 1px #7d4670;
    padding: 0 0 4px;
}
.aboutHead4 i {
    color: #fff;
    font-style: normal;
    margin-right: .25em;
    background-color: #7d4670;
    width: 30px;
    display: inline-block;
    text-align: center;
    padding: 0px 0px 2px 0px;
}

.accordionBtn {
    cursor: pointer;
    position: relative;
    min-height: 24px;
    -webkit-transition: opacity .4s ease;
    transition: opacity .4s ease;
    border: 1px solid #231815;
    padding: 10px 40px;
    text-align: center;
}


#modal1{}
#modal1 .aboutDecorate .imageBox p {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
}
#modal1 .aboutDecorate .imageBox .image {
    padding-left: 2em;
    padding-right: 0em;
    width: 130px;
}

#modal1 .aboutDecorate figcaption, .aboutDecorate .figcaption {
    font-size: 10px;
    display: block;
    margin-top: 10px;
    text-align: left;
}

#modal1 .bar {
    width: 100%;
    height: auto;
    margin: 2.22em 0;
    padding: .55em 0;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background: #000;
    text-align: center;
}

#modal1 .p01{
	font-size: 18px;
    font-weight: 600;
    text-align: center;
     margin: 2.22em 0;
}

#modal1 .p02{
	font-size: 14px;
	text-align: center;
}

#modal1 .flex{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 0 0 5em;
}
#modal1 .flex > div{
	width: 30%;
}
#modal1 .flex > div p:nth-of-type(1){
	font-size: 18px;
    font-weight: 600;
}
#modal1 .flex > div p:nth-of-type(2){
	font-size: 14px;
	margin: 10px 0 10px;
}



#modal7 .aboutDecorate .imageBox p span{
	font-size: 20px;
    font-weight: 600;
    display: block;
}
#modal7 .aboutDecorate .imageBox p {
    display: table-cell;
    vertical-align: middle;
    font-size: 16px;
}
#modal7 .aboutDecorate .imageBox .image {
    width: 135px;
}
#modal7 .bar {
    width: 100%;
    height: auto;
    margin: 2.22em 0;
    padding: .55em 0;
    box-sizing: border-box;
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
    color: #fff;
    background: #000;
    text-align: center;
}

#modal7 .d01{
	border-bottom: solid 1px rgba(0,0,0,.5);
	padding: 0 0 2em 0;
	margin: 0 0 2em 0;
}
#modal7 .p01{
	font-size: 18px;
    font-weight: 600;
    margin: 0 0 1em 0;
}
#modal7 .p02{
	font-size: 14px;
}
#modal7 .d02{
	padding: 10px 30px;
	background-color: #aeafaf;
}
#modal7 .d02 p{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	margin: 10px 0;
}
#modal7 .d02 p span{
	font-size: 12px;
	color: #fff;
}
#modal7 .d02 p span:nth-of-type(1){
	width: 100px;
}
#modal7 .d02 p span:nth-of-type(2){}

#modal7 .d03{
	margin: 0 0 20px;
}





.popup {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 99999;
  opacity: 0;
  visibility: hidden;
  transition: .6s;
}
.popup.is-show {
  opacity: 1;
  visibility: visible;
}
.popup-inner {
  position: absolute;
  /*left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);*/
  top: 0;
  right:0 ;
  bottom: 0;
  left : 0;
  margin: auto;
  width: 100%;
  max-width: 930px;
  height: 90vh;
  padding: 50px;
  background-color: #fff;
  z-index: 99999;
  overflow: scroll;
}
.popup-inner img {
  width: 100%;
}
.close-btn {
  position: fixed;
  right: calc(50% - 570px);
  top: 10px;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  cursor: pointer;
  font-size: 20px;
  color: #fff;
}
.close-btn i {
  font-size: 20px;
  color: #333;
}
.black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,.8);
  z-index: 1;
  cursor: pointer;
}














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

.sec_lead{
	margin: 0 0 0px;
}


.leadText {
	font-size: 14px;
}


.sec_lead_p01{
	margin: 0 0 50px;
	text-align: left;
}
.sec_lead_p02{
	text-align: left;
}
.leadHead{
	font-size: 18px;
}


.strength_01_p01{
	text-align: left;
}
.strength_02_p01{
	text-align: left;
}
.strength_02_p02{
	text-align: left;
}
.strength_03_p01{
	text-align: left;
}

.strength_04_p01{
	text-align: left;
}
.network_box p:nth-of-type(2){
	text-align: left;
}

.strength{
	margin: 0 0 100px;
}
.strength_box{
	position: relative;
	margin: 0px 0 40px;
}
/*.strength_box img{
	width: 100%;
}*/
/*.strength_box p.note{
	color: #fff;
	position: absolute;
	bottom: 5px;
	right: 5px;
}*/
.strength_box_txt{
	/*max-width: 600px;*/
	width: 90%;
	padding: 4px 0 10px;
	/*background-color: rgb(0, 0, 0, .4);*/
	/*position: absolute;*/
	/*top: 50%;*/
	/*left: 50%;*/
	/*transform: translateY(-50%) translateX(-50%);*/
	/*-webkit- transform: translateY(-50%) translateX(-50%);*/
	/*margin: auto;*/
}
.strength_box_txt::before,
.strength_box_txt::after{
	/*content: "";*/
	/*display: block;*/
    /*position: absolute;*/
    /*border-top: 1px solid #fff;*/
    /*border-right: 1px solid #fff;*/
    width: 25px;
    height: 25px;
}
.strength_box_txt::before{
	/*transform: rotate(-90deg);*/
	top: -5px;
	left: 5px;
}
.strength_box_txt::after{
	/*transform: rotate(90deg);*/
	bottom: -5px;
	right: 5px;
}
.strength_box_txt p{
	font-size: 19px;
	color: #fff;
	text-align: center;
}
.strength_box_txt span{
	font-size: 18px;
	font-weight: 600;
}
.strength_box_txt span.num{
	font-size: 25px;
	font-weight: 400;
	font-style: italic;
}


.strength_box p.note {
    /*color: #fff;*/
    /*position: absolute;*/
    bottom: 2px;
    /*right: 5px;*/
}


.grounds_box > p {
    font-size: 18px;
    /*color: #fff;*/
    line-height: 1.4em;
    background-color: #723f77;
    padding: 20px 10px 20px 10px;
}
.grounds_flex {
    display: block;
    padding: 20px 20px 20px;
}
.grounds_flex div:nth-of-type(1) {
    width: 100%;
}
.grounds_flex div:nth-of-type(2) {
    width: 60%;
    margin: 10px auto 0;
}
.grounds_flex div:nth-of-type(1) p:nth-of-type(1) {
    font-size: 16px;
    line-height: 1.4em;
    margin: 0 0 20px;
}


.service7_ttl{
	font-size: 18px;
	letter-spacing: 0.1em;
	text-align: center;
	margin: 0 0 30px;
}
.service7_ttl span{
	font-size: 20px;
	color: #744370;
}
.service7_box{
	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
  	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.service7_box a{
	width: 48%;
	margin: 0 0.5% 2%;
	/*position: relative;*/
}
.service7_box a img{
	width: 100%;
}
.service7_box a div{
	width: 100%;
	padding: 2px 0 2px;
	background-color: rgba(116, 67, 112, .75);
	position: absolute;
	bottom: 0;
	left: 0;
}
.service7_box a div::before{
	content: ">";
	color: #fff;
	font-size: 14px;
	line-height: 1em;
	position: absolute;
	top: 6px;
    right: 8px;
}
.service7_box a div span{
	display: inline-block;
	color: #fff;
	font-size: 10px;
	line-height: 1em;
	background: #000;
	padding: 5px 8px 4px 8px;
    margin: 0 4px 0 2px;
}
.service7_box a div p{
	display: inline-block;
	color: #fff;
	font-size: 10px;
	line-height: 1em;
	letter-spacing: 0.1em;
}
	a p.link_hover{
		display: none;
	}

.network_wrap {
    display: block;
    margin: 0 0 30px;
}
.network_box {
    width: 100%;
}
.network_box:nth-of-type(1) {
	 margin: 0 0 40px;
}
.network_box p:nth-of-type(1) {
    font-size: 16px;
    margin: 0 0 20px;
}


.popup-inner {
    /*position: absolute;*/
    /*left: 50%;*/
    /*top: 50%;*/
    /*transform: translate(-50%,-50%);*/
    width: 96%;
    /*max-width: 930px;*/
    height: 70vh;
    padding: 30px 10px;
    /*background-color: #fff;*/
    /*z-index: 99999;*/
    /*overflow: scroll;*/
}

.close-btn {
  position: fixed;
  right: 0;
  top: 0px;
  /*width: 50px;*/
  /*height: 50px;*/
  /*line-height: 50px;*/
  /*text-align: center;*/
  /*cursor: pointer;*/
  /*font-size: 20px;*/
  /*color: #fff;*/
}



#modal1 .aboutDecorate .imageBox p {
    font-size: 12px;
}
#modal1 .aboutDecorate .imageBox .image {
    padding-left: 1em;
    width: 90px;
}

#modal1 .p01 {
    font-size: 16px;
    font-weight: 600;
    text-align: center;
    margin: 1em 0;
}

#modal1 .flex{
	display: block;
}
#modal1 .flex > div {
    width: 100%;
}

#modal7 .aboutDecorate .imageBox p {
    font-size: 12px;
}
#modal7 .aboutDecorate .imageBox p span {
    font-size: 14px;
}
#modal7 .aboutDecorate .imageBox .image {
    padding-right: 1em;
    width: 100px;
}

#modal7 .d02 p {
    display: block;
    margin: 10px 0;
}
#modal7 .d02 p span {
    font-size: 12px;
    display: block;

}





}




/*specialist
*****************************************/
.specialist_lead .contents{
	display: flex;
	flex-wrap: nowrap;
}
.specialist_lead img{
	width: 100%;
	height: auto;
	box-shadow: 0 0 5px 0 rgba(0,0,0,0.3);
}
.specialist_lead_img{
	width: 50%;
}
.specialist_lead_txtbox{
	width: 50%;
	padding-left: 5%;
	box-sizing: border-box;
}
.specialist_lead_txtbox_name{
	width: 130%;
	transform: translateX(-23%);
	background: rgba(0,0,0,0.7);
	color: #fff;
	box-sizing: border-box;
	padding: 40px;
	margin: 30px 0;
}
.specialist_lead_txtbox_name p:nth-of-type(1){
	font-size: 30px;
	border-bottom: 2px solid #744370;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.specialist_lead_txtbox_name p:nth-of-type(2){
	font-size: 18px;

}
.specialist_lead_txtbox_name p:nth-of-type(3){
	font-size: 40px;
}


@media screen and (max-width: 768px){
	.specialist_lead .contents{
		flex-wrap: wrap;
	}
	.specialist_lead_img{
		width: 80%;
	}
	.specialist_lead_txtbox{
		width: 100%;
		padding-left: 0%;
		margin-top: -10%;
	}
	.specialist_lead_txtbox_name{
		width: 80%;
		transform: translateX(20%) translateY(-15%);
		padding: 20px;
		margin: 0;
	}
	.specialist_lead_txtbox_name p:nth-of-type(1){
		font-size: 22px;
		margin-bottom: 10px;
		padding-bottom: 10px;
	}
	.specialist_lead_txtbox_name p:nth-of-type(2){
		font-size: 14px;

	}
	.specialist_lead_txtbox_name p:nth-of-type(3){
		font-size: 24px;
	}
}

/*___*/

.specialist_t-lead{
	color: #744370;
	font-size: 24px;
	margin-bottom: 20px;
}
.specialist_t-tit{
	border-bottom: 2px solid #000;
	font-size: 18px;
	margin-bottom: 20px;
	padding-bottom: 20px;
}
.specialist_t-txt{
	font-size: 14px;
	line-height: 1.8;
	margin-bottom: 60px;
}
@media screen and (max-width: 768px){
	.specialist_t-lead{
		font-size: 20px;
		margin-bottom: 15px;
	}
	.specialist_t-tit{
		border-bottom: 2px solid #000;
		font-size: 16px;
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
	.specialist_t-txt{
		font-size: 12px;
		line-height: 1.8;
		margin-bottom: 30px;
	}
}

/*___*/
.specialist_cont .contents{
	padding: 0px 0 50px;
}
.specialist_cont-3,
.specialist_cont-2,
.specialist_cont-1{
	display: flex;
	flex-wrap: nowrap;
}
.specialist_cont img{
	width: 100%;
	height: auto;
}
.specialist_cont-1 .specialist_cont_img{
	width: 35%;
}
.specialist_cont-1 .specialist_cont_txtbox{
	width: 65%;
	padding-right: 5%;
	box-sizing: border-box;
}
.specialist_cont-2 .specialist_cont_img{
	width: 35%;
}
.specialist_cont-2{
	 flex-flow: row-reverse;
}
.specialist_cont-2 .specialist_cont_txtbox{
	width: 65%;
	padding-left: 5%;
	box-sizing: border-box;
}
.specialist_cont-3 .specialist_cont_img{
	width: 45%;
}
.specialist_cont-3 .specialist_cont_txtbox{
	width: 55%;
	padding-right: 5%;
	box-sizing: border-box;
}
@media screen and (max-width: 768px){
	.specialist_cont-3,
	.specialist_cont-2,
	.specialist_cont-1{
		flex-wrap: wrap;
	}
	.specialist_cont-2{
		 flex-flow: reverse;
	}
	.specialist_cont-3 .specialist_cont_txtbox,
	.specialist_cont-1 .specialist_cont_txtbox{
		width: 100%;
		padding-right: 0%;
	}
	.specialist_cont-2 .specialist_cont_txtbox{
		width: 100%;
		padding-left: 0%;
	}
	.specialist_cont-3 .specialist_cont_img,
	.specialist_cont-2 .specialist_cont_img,
	.specialist_cont-1 .specialist_cont_img{
		width: 100%;
	}

}

/*___*/
.specialist-3 .specialist_lead .contents{
	flex-flow: row-reverse;
}
.specialist-3 .specialist_lead_txtbox{
	padding-left: 0;
	padding-right: 5%;
}
.specialist-3 .specialist_lead_txtbox_name{
	width: 130%;
	transform: translateX(0);
}
.specialist-3 .specialist_cont-3,
.specialist-3 .specialist_cont-1{
	 flex-flow: row-reverse;
}
.specialist-3 .specialist_cont-2{
	 flex-flow: row;
}
.specialist-3 .specialist_cont-2 .specialist_cont_txtbox{
	padding-left: 0;
	padding-right: 5%;
}
.specialist-3 .specialist_cont-1 .specialist_cont_txtbox,
.specialist-3 .specialist_cont-3 .specialist_cont_txtbox{
	padding-left:  5%;
	padding-right: 0;
}

#movie_modal{
    display: block;
    position: fixed;
    transition: all .2s linear;
    opacity: 0;
    pointer-events: none;
    z-index: 10001;
}
#movie_modal.active{
    opacity: 1;
    pointer-events: auto;
}
#movie_modal .overlay{
    display: block;
    position: fixed;
    z-index: 10001;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0,0,0,0.7);
    cursor: pointer;
}
#movie_modal .modal_contents{
    width: 80%;
    max-width: 100rem;
    background: #fff;
    z-index: 10002;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}
#movie_modal .modal_close{
    position: absolute;
    top: -7rem;
    right: 0;
    width: 5rem;
    height: 5rem;
    cursor: pointer;
    background: url(/grantact/img/common/icon_slash_white.svg) center / contain no-repeat;
}
#movie_modal .movie_wrap{
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
#movie_modal .movie_wrap iframe{
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1366px){
    .pc{display: none;}
    .pc.tablet{display: block !important;}
    .tablet{display: block;}
    .sp{display: none;}
    .sec_lead .feature .featureList .txt{
        padding: 1rem 3rem;
        font-size: 1.6rem;
    }
    .sec_expert .ttl{
        max-width: unset;
        margin-bottom: 2rem;
        width: 100%;
    }
    .sec_expert .txt{
        width: 49%;
    }
    .sec_expert .img{
        width: 49%;
    }
    body.EN .sec_lead .feature .featureList .txt{
        font-size: 1rem;
        padding: 1rem 3rem 1rem 1rem;
    }
    .sec_analysis .marketImg img{
        max-height: 16.5rem;
        width: auto;
        max-width: auto;
    }
    .sec_tokyu .feature .left,
    .sec_tokyu .feature .right{
        width: 100%;
    }
    .sec_tokyu .feature .right .txt_blc{
        width: 51%;
        float: left;
    }
    .sec_tokyu .feature .right .img{
        width: 44%;
        margin-left: 2rem;
        float: right;
    }
    .sec_tokyu .feature .tokyuList > li:first-child{
        width: 100%;
        margin-bottom: 3rem;
    }
    .sec_tokyu .feature .tokyuList > li:last-child{
        width: 100%;
        max-width: 100%;
    }
    .sec_tokyu .feature .bottom .troubleList > *{
        font-size: 1.3rem;
    }
    .sec_analysis .analysisBlc02 .ttl{
        width: 100%;
        margin-bottom: 5rem;
    }
    .sec_analysis .analysisBlc02{
        display: grid;
        width: 90%;
        gap: 2rem;
        grid-template-columns: 49% auto;
        grid-template-rows: 5rem auto auto;
    }
    .sec_analysis .analysisBlc02 .ttl{
        grid-column: 1 /3;
        grid-row: 1 /2;
    }
    .sec_analysis .analysisBlc02 .txt{
        grid-column: 1 /3;
        grid-row: 2 /3;
    }
    .sec_analysis .analysisBlc02 .data{
        grid-column: 1 /2;
        grid-row: 3 / 4;
    }
    .sec_analysis .analysisBlc02 .img{
        grid-column: 2 / 3;
        grid-row: 3 /4;
    }
    .sec_analysis .analysisBlc02 .structure .slash {
        margin: 4rem 0;
        height: 5rem;
    }
    .sec_analysis .analysisBlc02 .structure .slash span {
        width: 5rem;
        height: 5rem;
    }
}

@media screen and (max-width: 1010px){
    body.EN .sec_lead .feature .featureList .txt{
        font-size: 1.5rem;
        padding: 1rem 3rem 1rem 1rem;
    }
}
@media screen and (max-width: 820px){
    .pc{display: none;}
    .pc.tablet{display: none !important;}
    .tablet{display: none;}
    .sp{display: block;}
    .sec_tokyu{
        padding: 0 0 0rem;
    }
    .sec_analysis.bg{
        padding: 6rem 0 1rem;
    }
    section.bg{
        padding: 6rem 0;
    }
    .sec_grantact{
        padding: 6rem 0 4rem;
    }
	.specialist-3 .specialist_lead .contents{
		flex-flow: row;
		flex-wrap: wrap;
	}
	.specialist-3 .specialist_lead_txtbox_name{
		width: 80%;
		transform: translateX(0) translateY(-15%);
	}
	.specialist-3 .specialist_cont-3,
	.specialist-3 .specialist_cont-2,
	.specialist-3 .specialist_cont-1{
		flex-flow: row ;
		flex-wrap: wrap;
	}
	.specialist-3 .specialist_cont-1 .specialist_cont_txtbox,
	.specialist-3 .specialist_cont-2 .specialist_cont_txtbox,
	.specialist-3 .specialist_cont-3 .specialist_cont_txtbox{
		padding-left: 0;
		padding-right: 0;
	}
    .sec_lead{
        padding: 4rem 0 6rem;
        background: linear-gradient(#1e111e, #29182A);
	}
    .sec_lead .feature h4{
        font-size: 2.4rem;
        margin-bottom: 2.2rem;
    }
    .sec_lead .contents{
        width: calc(100% - 60px);
	}
    .sec_lead h3{
        font-size: 2.4rem;
        font-weight: 500;
        padding: 0;
        margin-bottom: 8.24rem;
        line-height: 1.25;
	}
    .sec_lead .leadBox .logo{
        margin-bottom: 5rem;
    }
    .sec_lead .feature .featureList{
        gap: 2.5rem;
    }
    .sec_lead .feature .featureList > li{
        width: 100%;
    }
    .sec_lead .feature .featureList .txt{
        font-size: 1.6rem;
        text-align: left;
        padding: 1.1rem 1.5rem 1.3rem;
        font-weight: 400;
        line-height: 1.5;
    }
    .aboutBlc .linkBtn{
        margin: 5rem -15px 5rem 0;
    }
    .aboutBlc .linkBtn a{
        width: calc(100vw - 30px);
        max-width: unset;
        text-align: left;
        padding: 2rem;
        border-right: none;
    }
    .sec_analysis .linkBtn a{
        font-size: 1.7rem;
        padding: 1.85rem 2rem;
        letter-spacing: .05em;
    }
    .sec_lead .leadBox{
        margin: 0 0 3rem;
        width: 100%;
    }
    .sec_lead .leadBox > *{
        width: 100%;
    }
    .sec_lead .txt{
        font-size: 1.6rem;
        font-weight: 500;
        line-height: 1.875;
    }
    .sec_lead .txt p + p{
        margin-top: 1.875em;
    }
    .sec_lead .txt p.note{
        margin-top: 1.5rem;
        font-size: 1.2rem;
    }
    body.EN .sec_lead .feature .featureList .txt{
        font-size: 1.3rem;
    }
    .aboutBlc h3{
        font-size: 4.7rem;
        letter-spacing: 0;
        margin-bottom: 4rem;
    }
    .aboutBlc.sec_network h3{
        line-height: 1.42;
	}
    .sec_tokyu .contents,
    .sec_analysis .contents{
        padding-bottom: 1rem;
    }
    .sec_tokyu .contents,
    .sec_analysis .contents,
    .sec_network .contents,
    .sec_expert .contents,
    .aboutBlc .blc, .sec_expert .expertBlc01, .sec_expert .expertBlc02, .sec_expert .expertBlc03, .sec_expert .structure{
        width: calc( 100% - 30px);
	}
    .aboutBlc .mainimg{
        width: 100%;
    }
    .aboutBlc .ttl h4{
        font-size: 2.8rem;
        padding-left: 1.5rem;
        letter-spacing: .1em;
        font-weight: 500;
    }
    .aboutBlc .analysisBlc03 .ttl h4{
        letter-spacing: .19em;
    }
    .aboutBlc.sec_network .ttl h4{
        letter-spacing: .1em;
    }
    .sec_expert .ex{
        font-size: 1.6rem;
        letter-spacing: -0.015em;
        line-height: 1.875;
	}
    .aboutBlc .mainimg{
        margin: 4rem 0 6.5rem;
    }
    .sec_expert .ttl{
        float: none;
        margin-bottom: 6rem;
	}
    .sec_expert .ttl h4{
        font-size: 2.8rem;
        letter-spacing: 0.1em; 
        margin-bottom: 0;
	}
    .sec_expert .expertBlc03 .ttl h4{
        border-left: none;
        padding-left: 0;
	}
    .sec_expert .expertBlc03 .ttl h4 span{
        display: block;
        border-left: 3px solid #ded4bd;
        padding-left: 1.5rem;
        letter-spacing: 0.1em; 
	}
    .sec_expert .expertBlc03 .ttl p{
        margin-top: 6rem;
        font-size: 1.6rem;
        letter-spacing: 0; 
        line-height: 1.875;
	}
    .sec_expert .txt{
        width: 100%;
        max-width: unset;
        margin-top: 6rem;
        float: none;
        line-height: 1.875;
	}
    .sec_expert .txt p{
        font-size: 1.6rem;
    }
    .sec_expert .txt p + p{
        font-size: 1.2rem;
        line-height: 2.25;
    }
    .sec_expert .img{
        width: 100%;
        max-width: unset;
    }
    .sec_expert .expertBlc02{
        margin-top: 8rem;
    }
    .sec_expert .expertBlc03{
        margin-top: 11rem;
    }
    .sec_expert .expertBlc01 .img,
    .sec_expert .expertBlc02 .img,
    .sec_expert .expertBlc03 .img{
        float: none;
    }
    .sec_expert .expertBlc03 .ttl{
        width: 100%;
        margin-bottom: 0;
    }
    .sec_expert .structure{
        margin-top: 5rem;
    }
    .sec_analysis .ex{
        font-size: 1.6rem;
        line-height: 1.875;
    }
    .sec_analysis .ttl h4{
        margin-bottom: 4rem;
    }
    .sec_analysis .mainimg{
        margin: 7rem 0 8rem;
    }
    .sec_analysis .marketImg > li{
        width: 100%;
    }
    .sec_analysis .marketImg img{
        max-height: unset;
        width: 100%;
        max-width: unset;
    }
    .sec_analysis .analysisBlc .txt{
        margin-top: 4rem;
        line-height: 1.875;
    }
    .sec_analysis .analysisBlc + .linkBtn{
        margin: 6.5rem -15px 9rem 0;
    }
    .sec_analysis .analysisBlc02{
        display: block;
    }
    .sec_analysis .analysisBlc02 .structure .slash{
        margin: 1rem 0;
    }
    .sec_analysis .analysisBlc02 .ttl,
    .sec_analysis .analysisBlc02 .txt{
        float: none;
        width: 100%;
    }
    .sec_analysis .analysisBlc02 .txt{
        margin: 4rem 0;
    }
    .sec_analysis .analysisBlc02 .txt p{
        font-size: 1.2rem;
        line-height: 2.25;
    }
    .sec_analysis .analysisBlc02 .img{
        float: none;
        width: 100%;
    }
    .sec_analysis .analysisBlc02 .structure .content{
        border: 2px solid #fff;
    }
    .sec_analysis .analysisBlc02 .structure .content:first-child{
        padding: 1.85rem;
    }
    .sec_analysis .analysisBlc02 .structure .content:last-child{
        padding: 0.5rem;
    }
     .sec_analysis .analysisBlc03 {
         margin-top: 8rem;
    }
    .sec_analysis .analysisBlc03 .txt {
        font-size: 1.2rem;
        line-height: 2.2;
    }
    .sec_analysis .analysisBlc03 + .linkBtn{
        margin: 5rem -15px 8rem 0;
    }
    .sec_analysis .analysisBlc03 + .linkBtn a{
        font-size: 1.7rem;
        letter-spacing: 0;
        padding: 1.875rem 4rem 1.875rem 2rem;
    }

    section.sec_network{
        padding: 4rem 0 6rem;
    }
    .sec_network .ex{
        font-size: 1.6rem;
        line-height: 1.875;
    }
    .sec_network .mainimg{
        margin: 4rem 0 8rem;
    }
    .aboutBlc.sec_network .ttl h4{
        margin-bottom: 4rem;
    }
    .sec_network .overseaImg figure{
        padding-bottom: 4.2rem;
    }
    .sec_network .overseaImg figcaption{
        right: 0rem;
        bottom: 1.2rem;
        color: #AD99B4;
        font-size: 1.2rem;
    }
    .sec_network .overseaList{
        padding: 3rem 0;
    }
    .sec_network .overseaList > *{
        width: 100%;
    }
    .sec_network .overseaList > * .txt{
        padding: 0 1rem;
        font-size: 1.4rem;
        font-weight: 300;
        margin-top: 3rem;
        line-height: 1.7;
    }
    .sec_network .networkBlc + .networkBlc{
        margin-top: 8rem;
    }
    .sec_network .ex + .img{
        margin-top: 4rem !important;
    }
    .sec_tokyu h3{
        font-size: 2.4rem;
        width: 26rem;
        margin-bottom: 6rem;
    }
    .sec_tokyu .feature{
        gap: 4rem;
    }
    .sec_tokyu .feature h4{
        height: unset;
        margin-bottom: 2.85rem;
    }
    .sec_tokyu .feature .bottom + .bottom h4,
    .sec_tokyu .feature .right h4{
        margin-bottom: 4rem;
    }
    .sec_tokyu .feature .bottom + .bottom .ex{
        margin-bottom: 6rem;
    }
    .sec_tokyu .feature h4 p{
        position: static;
        transform: unset;
        font-size: 1.6rem;
        letter-spacing: .065em;
    }
    .sec_tokyu .feature .ex{
        font-size: 1.4rem;
        margin-bottom: 3.93rem;
        line-height: 1.7;
    }
    .sec_tokyu .feature > .left,
    .sec_tokyu .feature > .right{
        width: 100%;
    }
    .sec_tokyu .feature .right .txt_blc{
        width: 100%;
        float: none;
    }
    .sec_tokyu .feature .right .img{
        float: none;
        width: 20.6rem;
        margin: 0 auto 2rem;
    }
    .sec_tokyu .feature .tokyuList > li:first-child{
        width: 100%;
        max-width: 23.5rem;
        margin: 0 auto;
    }
    .sec_tokyu .feature .tokyuList > li:last-child{
        width: 100%;
        max-width: 65rem;
        margin-top: 2.5rem;
    }
    .sec_tokyu .linkBtn .btn.btn_white{
        background: #fff url(/grantact/img/common/icon_exlink_color.svg) right 1.6em center / auto 1.4rem no-repeat;
        width: calc(100vw - 30px);
        max-width: unset;
        padding: 0.5rem 6rem 0.5rem 1.75rem;
        border: 0.125rem solid #6c4b6d;
        border-right: none;
        height: 64px;
        display: flex;
        align-items:center;
    }
    .sec_tokyu .feature .bottom .troubleList > *{
        font-size: 1.6rem;
        line-height: 1.4875;
        width: 100%;
        padding: 0.785rem 1rem;
    }
    .sec_tokyu .feature .bottom + .bottom{
        margin-top: 2rem;
    }
    .sec_tokyu .feature .bottom h5{
        margin-bottom: 4.2rem;
        font-weight: 600;
    }
    .sec_tokyu .feature .bottom .troubleList{
        gap: 2rem;
    }
    .sec_network .overseaList h5{
        font-size: 1.8rem;
        font-weight: 600;
        margin-bottom: 3rem;
    }
    .sec_network .overseaList .right h5{
        margin-bottom: 2.1rem;
    }
    .sec_movie .img_wrap span {
        width: 20vw;
        height: 20vw;
    }
    .sec_grantact .flex{
        flex-wrap: wrap;
        gap: 2rem;
    }
    .sec_grantact .flex > *{
        width: 100%;
    }
    .sec_movie .img_wrap .video span {
        width: 13.3rem;
        height: 13.3rem;
    }
    .sec_movie.aboutBlc .linkBtn a{
        padding: 1.775rem 3rem 1.775rem 2rem;
        font-size: 1.8rem;
        letter-spacing: 0.075em;
        border-right: none;
        background: #F7F7F7 url(/grantact/img/common/icon_link_white.svg) right 3rem center / auto 1.2rem no-repeat;
        border-width: .125rem;
    }
    .sec_movie.aboutBlc .linkBtn a:after{
        right: 3rem;
    }
    .sec_movie .title .flex{
        flex-wrap: wrap;
        gap: 6rem;
        width: 100%;
        padding: 6rem 0 0;
    }
    .sec_movie .title .flex h3{
        letter-spacing: .25em;
        font-weight: 600;
        position: static;
        transform: unset;
        width: 94%;
        margin: 0 auto;
    }
    .sec_movie .title .flex > *{
        width: 100%;
    }
    .sec_lead .feature .featureList > li img{
        height: 140px;
        object-fit: cover;
        width: 100%;
    }
    .sec_grantact h4{
        letter-spacing: 0.02em;
        line-height: 1.7;
    }
}

/*___*/


html.overflow{
	overflow: hidden;
}
