@charset "utf-8";

/*
Theme Name: RANKUP
Version: 1.0
*/

html {
	-webkit-text-size-adjust: none;
	font-size: 62.5%;
	overflow-x: hidden;
}

body {
	color: #000;
	background-color: #fff;
	margin: 0px;
	padding: 0px;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Osaka, sans-serif;
	font-weight: 400;
	font-size: 1.0rem;
	line-height: 1.5;
	text-align: center;
	letter-spacing: 0.05em;
}

article, aside, dialog, figure, footer, header, hgroup, nav, section, main {
	display: block;
}

body, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
	margin: 0px;
	padding: 0px;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

address, caption, cite, code, dfn, em, strong, th, var {
	font-weight: normal;
	font-style: normal;
}

ul, ol, li {
	list-style: none;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

input, select {
	vertical-align: middle;
}

img {
	border-style: none;
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}

img {
	width: 100%;
	height: auto;
	vertical-align: top;
}


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

.en,
.enB {
	font-family: 'Montserrat', sans-serif;
}

.en {
	font-weight: 400;
}

.enB {
	font-weight: 700;
}

.poppins,
.poppinsSB,
.poppinsB {
	font-family: 'Poppins', sans-serif;
}

.poppins {
	font-weight: 400;
}

.poppinsSB {
	font-weight: 600;
}

.poppinsB {
	font-weight: 700;
}

.contentG {
	background-color: #bebebe;
}

.contentW {
	background-color: #fff;
}

#popMovieSec {
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.75);
	text-align: center;
	box-sizing: border-box;
	left: 0px;
	top: 0px;
	z-index: 99999;
	position: fixed;
	display: none;
	overflow: hidden;
}

#popMovieSec>div {
	padding: 50px 10px 10px;
	position: relative;
}

#popMovieSec>div #closeMovie {
	font-size: 0px;
	line-height: 0;
	right: 20px;
	top: 10px;
	position: absolute;
}

#popMovieSec>div #closeMovie a {
	width: 33px;
	height: 33px;
	background: url(img/bt_close.png) no-repeat center center;
	background-size: 33px auto;
	color: #fff;
	text-decoration: none;
	display: block;
}

#popMovieSec>div>div {
	width: 100%;
	position: relative;
}

#popMovieSec>div>div iframe {
	width: 100%;
	height: calc(100vh - 60px);
}

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

	header {
		width: 100%;
		background-color: #1c1c1c;
		left: 0px;
		top: 0px;
		position: fixed;
		z-index: 100;
	}

	#wrap {
		background-color: #fff;
		position: relative;
		z-index: 5;
	}

	#wrapDm {
		position: relative;
		z-index: 500;
	}

	#wrapDm header {
		z-index: 505;
		display: none;
	}

	header>div {
		height: 55px;
		position: relative;
	}

	header>div h1 {
		width: 70px;
		font-size: 0px;
		line-height: 0;
		left: 12px;
		top: 16px;
		position: absolute;
		z-index: 110;
	}

	header>div h1 a {
		display: block;
	}

	header>div .btEntryH {
		width: 85px;
		font-size: 1.0rem;
		line-height: 1.5rem;
		right: 48px;
		top: 0px;
		position: absolute;
		z-index: 105;
	}

	header>div .btEntryH a {
		padding: 18px 23px 18px 8px;
		background-color: #fff100;
		background-image: url(img/icon_entry.png);
		background-size: 11px auto;
		background-repeat: no-repeat;
		background-position: right 14px top 22px;
		border: 2px #fff100 solid;
		color: #000;
		display: block;
	}

	header>div .btMenuH {
		width: 48px;
		font-size: 0px;
		line-height: 0;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	header>div .btMenuH a {
		height: 55px;
		background-color: #000;
		background-repeat: no-repeat;
		background-position: center center;
		display: block;
	}

	header>div .btMenuH a {
		background-image: url(img/menu.png);
		background-size: 18px auto;
	}

	header>div .btMenuH.open a {
		background-image: url(img/close.png);
		background-size: 18px auto;
	}

	header>div .gNavi {
		width: 100%;
		height: calc(100vh - 55px);
		background-color: #1c1c1c;
		left: 0px;
		top: 55px;
		position: absolute;
		overflow-y: auto;
		display: none;
	}

	header>div .gNavi>ul {
		padding: 45px 30px 0px;
	}

	header>div .gNavi>ul>li {
		margin: 0px 0px 20px;
		font-size: 1.1rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
		text-align: left;
	}

	header>div .gNavi>ul>li>a {
		color: #b9b9b9;
	}

	header>div .gNavi>ul>li>a span {
		color: #fff;
		font-family: 'Montserrat', sans-serif;
		font-weight: 700;
		font-size: 2.1rem;
		line-height: 3.0rem;
		display: block;
	}

	header>div .gNavi>ul>li ul {
		padding: 15px 0px 0px 25px;
	}

	header>div .gNavi>ul>li ul>li {
		padding: 0px 0px 10px;
		font-size: 0.9rem;
		line-height: 1.5rem;
		text-align: left;
	}

	header>div .gNavi>ul>li ul>li a {
		color: #939393;
	}

	header>div .gNavi>ul>li ul>li a span {
		color: #fff;
		font-family: 'Montserrat', sans-serif;
		font-size: 1.2rem;
		line-height: 2.0rem;
		font-weight: 700;
		display: block;
	}

	header>div .snsH {
		padding: 15px 24px 36px;
		align-items: center;
		display: flex;
	}

	header>div .snsH dt {
		margin: 0px 14px 0px 0px;
		color: #c3c3c3;
		font-size: 1.1rem;
		line-height: 2.4rem;
	}

	header>div .snsH dd {
		margin: 0px 6px;
		width: 17px;
		font-size: 0px;
		line-height: 0;
	}

	#pageTop {
		width: 53px;
		font-size: 0px;
		line-height: 0;
		right: 10px;
		bottom: 10px;
		position: fixed;
		z-index: 90;
	}

	#pageTop a {
		width: 53px;
		height: 53px;
		background-color: #3f3f3f;
		background-image: url(img/totop.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
		box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
		text-indent: -9999px;
		display: block;
	}

	.top #pageTop a {
		display: none;
	}

	#bnFoot {
		width: 100%;
		height: 60px;
	}

	#bnFoot>div {
		margin: 0px auto;
		padding: 20px 30px 0px;
		position: relative;
	}

	#bnFoot>div p {
		width: calc(100% - 60px);
		background-color: #fff;
		left: 50%;
		top: 60px;
		position: absolute;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		z-index: 30;
	}

	#bnFoot>div p a {
		display: block;
	}

	#bnFoot>div p img {
		width: 100%;
		height: auto;
	}

	footer {
		padding: 100px 0px 38px;
		width: 100%;
		background-color: #1c1c1c;
	}

	#footMain {
		padding: 0px 30px;
		text-align: left;
		z-index: 20;
		align-items: stretch;
		justify-content: space-between;
		display: flex;
	}

	#footMain>div {
		width: 106px;
		position: relative;
	}

	#footMain>div h1 {
		margin: 0px 0px 30px;
		width: 106px;
		font-size: 0px;
		line-height: 0;
	}

	#footMain>div h1 a {
		display: block;
	}

	/*
	#footMain > div ul li {
		font-size: 0px;
		line-height: 0;
		bottom: 45px;
		position: absolute;
	}
	
	#footMain > div ul .is {
		left: 0px;
	}
	
	#footMain > div ul .fb {
		left: 57px;
	}
	
	#footMain > div ul li a {
		width: 35px;
		height: 35px;
		background-repeat: no-repeat;
		background-position: center center;
		border: 2px #fff solid;
		border-radius: 50%;
		display: block;
	}
	
	#footMain > div ul li.is a {
		background-image: url(img/icon_is.png);
		background-size: 19px auto;
	}
	
	#footMain > div ul li.fb a {
		background-image: url(img/icon_fb.png);
		background-size: 19px auto;
	}
	*/
	/*add 20200930*/
	#footMain>div ul li {
		font-size: 0px;
		line-height: 0;
	}

	/******************/
	#footMain>nav>ul>li {
		margin: 0px 0px 10px;
		font-size: 0.9rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.075em;
		text-align: right;
	}

	#footMain>nav>ul>li>a span {
		font-size: 1.6rem;
		line-height: 2.0rem;
		text-align: right;
		letter-spacing: 0.05em;
	}

	#footMain>nav>ul>li ul {
		padding: 12px 0px 0px;
	}

	#footMain>nav>ul>li ul>li {
		padding: 0px 0px 10px;
		font-size: 0.9rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.075em;
		text-align: right;
	}

	#footMain>nav>ul>li ul>li a span {
		font-size: 1.2rem;
		line-height: 2.0rem;
		text-align: right;
		letter-spacing: 0.05em;
	}

	#footMain>nav>ul>li a {
		color: #b9b9b9;
	}

	#footMain>nav>ul>li a:hover {
		color: #b9b9b9;
	}

	#footMain>nav>ul>li a span {
		color: #fff;
		font-family: 'Montserrat', sans-serif;
		font-weight: 700;
		display: block;
	}

	#footMain>nav>ul>li a:hover span {
		color: #fff100;
	}

	#footCopy {
		padding: 20px 10px 0px;
		text-align: center;
	}

	#footCopy>p {
		color: #fff;
		font-size: 0.9rem;
		line-height: 1.2rem;
	}

	#footCopy>p small {
		font-size: 1.0em;
	}

	#contentHead {
		padding-top: 55px;
	}

	#contentHead>div {
		width: 100%;
		height: 175px;
		background-repeat: no-repeat;
		background-position: center top;
	}

	#contentHead h1 {
		padding: 60px 0px 20px;
		color: #fff;
		font-size: 3.0rem;
		line-height: 3.6rem;
		position: relative;
	}

	#contentHead h1::after {
		content: "";
		width: 70px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#contentHead>div {
		width: 100%;
		height: 175px;
		background-repeat: no-repeat;
		background-position: center top;
	}

	.topicPath {
		margin: 0px 10px;
		padding: 15px 0px;
		border-bottom: 1px #a5a5a5 solid;
		align-items: center;
		display: flex;
	}

	.topicPath dt,
	.topicPath dd ul li,
	.topicPath dd ul li::after {
		font-family: 'Montserrat', sans-serif;
	}

	.contentG>.topicPath dt,
	.contentG>.topicPath dd ul li,
	.contentG>.topicPath dd ul li::after {
		color: #fff;
	}

	.contentW>.topicPath dt,
	.contentW>.topicPath dd ul li,
	.contentW>.topicPath dd ul li::after {
		color: #7e7e7e;
	}

	.topicPath dt {
		padding: 0px 15px 0px 0px;
		border-right: 1px #a5a5a5 solid;
		font-weight: 700;
		font-size: 1.0rem;
		line-height: 1.5rem;
	}

	.topicPath dd {
		padding-left: 15px;
	}

	.topicPath dd ul {
		align-items: center;
		display: flex;
	}

	.topicPath dd ul li {
		padding-right: 5px;
		font-weight: 400;
		font-size: 0.9rem;
		line-height: 1.5rem;
		text-align: left;
	}

	.topicPath dd ul li::after {
		content: ">";
		margin-left: 5px;
		font-weight: 400;
		font-size: 0.9rem;
		line-height: 1.5rem;
		display: inline-block;
	}

	.topicPath dd ul li:last-of-type::after {
		display: none;
	}

	.topicPath a {
		color: #fff100;
	}

	.contentG>.topicPath dd ul li:last-of-type a {
		color: #fff;
	}

	.contentW>.topicPath dd ul li:last-of-type a {
		color: #7e7e7e;
	}

	/***** TOP *****/

	#bgYt::after {
		content: "";
		width: 100vw;
		height: 100vh;
		background: url(img/bg_top2.gif) no-repeat center center;
		background-size: cover;
		font-size: 0px;
		line-height: 0;
		display: block;
		position: fixed;
		z-index: -1;
	}

	#ytI {
		display: none;
	}

	#topIntro {
		width: 100%;
	}

	#topIntro header {
		width: 100%;
		background: none;
		z-index: 4;
	}

	#topIntro header>div {
		padding: 0px;
		height: auto;
	}

	#topIntro header>div .btEntryH {
		top: 14px;
	}

	#topIntro header>div .btEntryH a {
		padding: 7px 23px 7px 8px;
		background: none;
		background-image: url(img/icon_entry_w.png);
		background-size: 11px auto;
		background-repeat: no-repeat;
		background-position: right 14px center;
		border: 2px #fff solid;
		color: #fff;
	}

	#topIntro header>div .btMenuHTop {
		width: 48px;
		font-size: 0px;
		line-height: 0;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	#topIntro header>div .btMenuHTop a {
		height: 55px;
		background-image: url(img/menu.png);
		background-size: 18px auto;
		background-repeat: no-repeat;
		background-position: center center;
		display: block;
	}

	#topIntro header>div .btMenuHTop.open a {
		background-image: url(img/close.png);
		background-size: 18px auto;
	}

	#topIntroHd {
		height: 100vh;
		position: relative;
	}

	#topIntroHd #sclDwn {
		padding: 0px 0px 25px;
		width: 100%;
		background: url(img/arr_dwn.png) no-repeat center bottom;
		background-size: 5px auto;
		color: #fff;
		font-size: 1.1rem;
		line-height: 1.6rem;
		text-align: center;
		left: 0px;
		bottom: 100px;
		position: absolute;
	}

	#topIntroHd>.snsH {
		display: none;
	}

	#topIntroHd>h2 {
		padding: 0px 0px 56px;
		width: 100%;
		font-size: 0.9rem;
		line-height: 1.6rem;
		left: 0px;
		top: 50%;
		position: absolute;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	#topIntroHd>h2 img {
		margin: 0px auto 22px;
		width: 247px;
	}

	#topIntroHd>h2 a {
		margin: 0px auto;
		padding: 15px 62px 15px 32px;
		width: 115px;
		background-image: url(img/bt_arr_w.png);
		background-size: 15px auto;
		background-repeat: no-repeat;
		background-position: right 46px center;
		border: 2px #fff solid;
		color: #fff;
		display: block;
	}

	#topIntroMain {
		padding: 50px 10px;
		text-align: center;
	}

	#topIntroMain p {
		padding: 0px 0px 30px;
		color: #fff;
		font-size: 1.4rem;
		font-weight: 700;
		line-height: 3.0rem;
		text-align: center;
	}

	#topCompany {
		width: 100%;
		background: #000 url(img/img_top_company_sp.jpg) no-repeat center top;
		background-size: 600px auto;
	}

	#topCompany>div {
		margin: 0px auto;
		padding: 325px 10px 55px;
		text-align: left;
	}

	#topCompany h1 {
		margin: 0px 0px 42px;
		padding: 0px 0px 25px;
		color: #fff;
		font-size: 4.0rem;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topCompany h1::after {
		content: "";
		width: 112px;
		height: 4px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#topCompany h2 {
		margin: 0px 0px 30px;
		color: #fff;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.2rem;
		text-align: center;
	}

	.btVm {
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.6rem;
	}

	.btVm a {
		border: 1px #fff solid;
		text-align: center;
		display: block;
	}

	.btVm a:hover {
		border: 1px #fff100 solid;
	}

	.btVm a span {
		margin: 0px auto;
		padding: 12px 21px 12px 0px;
		background-image: url(img/arr_vm.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 17px auto;
		color: #fff;
		display: inline-block;
		transition-duration: 0.5s;
	}

	.btVm>span {
		border: 1px #ebebeb solid;
		text-align: center;
		display: block;
	}

	.btVm>span>span {
		margin: 0px auto;
		padding: 12px 0px 12px 0px;
		color: #ebebeb;
		display: inline-block;
	}

	#topCompany .btVm {
		margin: 0px auto;
		width: 190px;
		font-size: 1.1rem;
		font-weight: bold;
	}

	#topCompany .btVm a {
		background-color: #fff100;
		border: none;
	}

	#topCompany .btVm a span {
		padding-right: 24px;
		background-image: url(img/arr_r.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 11px auto;
		color: #000;
	}

	#topPeople {
		width: 100%;
		background-color: #bebebe;
	}

	#topPeople>div {
		padding: 50px 10px 40px;
		text-align: left;
	}

	#topPeople h1 {
		margin: 0px 0px 40px;
		padding: 0px 0px 24px;
		color: #000;
		font-size: 3.4rem;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topPeople h1::after {
		content: "";
		width: 72px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#topPeople>div .secPeople {
		margin: 0px 0px 30px;
	}

	#topPeople>div .secPeople figure {
		width: 100%;
	}

	#topPeople>div .secPeople figure img {
		width: 100%;
		height: auto;
	}

	#topPeople>div .secPeople .secBox {
		width: 100%;
		background-color: #fff;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>h2 {
		color: #3f3f3f;
		font-family: 'Oswald', sans-serif;
		font-size: 7.6rem;
		font-weight: 400;
		line-height: 8.0rem;
		letter-spacing: 0.1em;
		text-align: right;
		right: 20px;
		top: -45px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox.soon>h2 {
		color: #adadad;
	}

	#topPeople>div .secPeople .secBox>p {
		width: 100%;
		font-size: 1.1rem;
		line-height: 2.0rem;
		text-align: center;
		left: 0px;
		bottom: 0px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox>p a,
	#topPeople>div .secPeople .secBox>p span {
		padding: 20px 0px;
		display: block;
	}

	#topPeople>div .secPeople .secBox>p a {
		padding-right: 20px;
		background: #000 url(img/arr_vm.png) no-repeat left 62% center;
		background-size: 11px auto;
		color: #fff;
	}

	#topPeople>div .secPeople .secBox>p span {
		color: #adadad;
		background-color: #ebebeb;
	}

	#topPeople>div .secPeople .secBox>div {
		padding: 30px 20px 105px;
	}

	#topPeople>div .secPeople .secBox.soon>div {
		opacity: 0.2;
	}

	#topPeople>div .secPeople .secBox>div h3 {
		margin: 0px 0px 45px;
		padding: 0px 0px 22px 45px;
		background: url(img/icon_itv.png) no-repeat left top;
		background-size: 31px auto;
		border-bottom: 2px #8d8d8d solid;
		font-size: 1.3rem;
		line-height: 1.7rem;
		text-align: left;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>div h3 span {
		font-size: 0.9rem;
		display: block;
	}

	#topPeople>div .secPeople .secBox>div h3::after {
		content: "";
		width: 85px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: -2px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox>div h4 {
		margin: 0px 0px 25px;
		font-size: 1.8rem;
		font-weight: bold;
		line-height: 2.8rem;
		text-align: left;
		letter-spacing: 0.075em;
	}

	#topPeople>div .secPeople .secBox>div h5,
	#topPeople>div .secPeople .secBox>div h6 {
		color: #aeaeae;
		line-height: 1.8rem;
		text-align: left;
	}

	#topPeople>div .secPeople .secBox>div h5 {
		font-size: 1.1rem;
		font-weight: normal;
	}

	#topPeople>div .secPeople .secBox>div h6 {
		font-size: 1.3rem;
		font-weight: bold;
	}

	#topCulture {
		width: 100%;
		height: 343px;
		/* background:  url(img/img_top_culture_sp.jpg) no-repeat center top; */
		background: url(img/bg_culture3_sp.png) no-repeat center top;
		background-size: cover;
	}

	#topCulture>div {
		padding: 65px 10px 0px;
		text-align: center;
	}

	#topCulture h1 {
		margin: 0px 0px 40px;
		padding: 0px 0px 22px;
		color: #fff;
		font-size: 2.5rem;
		line-height: 1.2;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topCulture h1::after {
		content: "";
		width: 70px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#topCulture h2 {
		margin: 0px 0px 25px;
		color: #fff;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.2rem;
	}

	#topCulture .btVm {
		margin: 0px auto;
		width: 190px;
		font-size: 1.1rem;
		font-weight: bold;
	}

	#topCulture .btVm a {
		background-color: #fff100;
		border: none;
	}

	#topCulture .btVm a span {
		padding-right: 24px;
		background-image: url(img/arr_r.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 11px auto;
		color: #000;
	}

	#topNews {
		width: 100%;
		background-color: #333;
	}

	#topNews>div {
		margin: 0px auto;
		padding: 50px 0px 50px;
	}

	#topNews h1 {
		margin: 0px 0px 50px;
		padding: 0px 0px 24px;
		font-size: 3.4rem;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.4rem;
		position: relative;
		color: white;
	}

	#topNews h1::after {
		content: "";
		width: 72px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#topNews .newsMain {
		margin: 0px 0px 50px;
		width: 100%;
		overflow: hidden;
	}

	#topNews .newsUl {
		width: 145vw !important;
	}

	#topNews .newsUl ul {
		display: flex;
		text-align: left;
	}

	#topNews .newsUl ul .slick-slide {
		opacity: 0.3;
	}

	#topNews .newsUl ul .slick-current {
		opacity: 1.0;
	}

	#topNews .newsUl ul .slick-slide>div {
		margin: 0px 5px 0px 10px !important;
	}


	#topNews .newsUl ul li {
		padding-top: 40px;
		position: relative;
		text-align: center;
	}

	#topNews .newsUl ul li.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 90px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 2.0rem;
		text-align: center;
		display: block;
		left: 50%;
		top: 10px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#topNews .newsUl ul li a {
		display: block;
	}

	#topNews .newsUl ul li h2 {
		margin: 0px 0px 15px;
		height: 7.2rem;
		color: #000;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
		overflow: hidden;
	}

	#topNews .newsUl ul li .date {
		margin: 0px 0px 15px;
		color: #c5c5c5;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.6rem;
		text-align: center;
	}

	#topNews .newsUl ul li .ebody {
		padding-right: 3em;
		margin: 15px auto;
		height: 2.0rem;
		color: #000;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: center;
		overflow: hidden;
		display: inline-block;
		position: relative;
	}

	#topNews .newsUl ul li .ebody::after {
		content: "\30fb\30fb\30fb";
		color: #000;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.0rem;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	#topNews .newsUl ul li .link {
		color: #000;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}

	#topNews .newsUl ul li figure {
		width: 100%;
	}

	#topNews .newsUl ul li figure img {
		width: 100%;
		height: auto;
	}

	#topNews .btVm {
		margin: 0px auto;
		width: 190px;
	}

	#topNews .btVm {
		font-size: 1.1rem;
		line-height: 1.5rem;
	}

	#topNews .btVm a {
		background-color: #000;
		border: none;
		color: #fff;
	}

	#topNews .btVm a span {
		padding: 14px 32px 14px 0px;
		font-weight: 700;
		background-position: right center;
		color: #fff;
	}

	#footSNS {
		padding: 32px 10px 70px;
		text-align: center;
	}

	#footSNS>div {
		margin: 0px 0px 30px;
		padding: 40px 40px;
		border: 4px #aaa solid;
	}

	#footSNS>div h1 {
		margin: 0px 0px 35px;
		padding: 0px 0px 24px;
		color: #000;
		font-size: 2.8rem;
		line-height: 1.2;
		letter-spacing: 0.05rem;
		position: relative;
	}

	#footSNS>div h1::after {
		content: "";
		width: 70px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#footSNS .boxSnsI .isBox,
	#footSNS .boxSnsF .fbBox {
		margin: 0px auto;
		max-width: 500px;
	}

	#footSNS .boxSnsI .isBox {
		background-color: #fff;
	}

	/***** COMPANY *****/

	main.company #contentHead>div {
		background-image: url(img/bg_company3_sp.png);
		background-size: cover;
	}

	#companyMain {
		padding: 0px 10px 0px;
		text-align: left;
	}

	#companyMain section {
		text-align: center;
	}

	#companyMain .companySec01 {
		padding: 70px 0px 40px;
		border-bottom: 1px #b1b1b1 solid;
	}

	#companyMain .companySec01 h2 {
		margin: 0px auto 34px;
		font-size: 1.5rem;
		line-height: 1.8rem;
		text-align: center;
	}

	#companyMain .companySec02 h2,
	#companyMain .companySec01 h3 {
		margin: 0px auto 30px;
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 3.2rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#companyMain .companySec02 h2 span,
	#companyMain .companySec01 h3 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 12px 12px;
	}

	#companyMain .companySec01 p {
		margin: 0px auto 27px;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.7rem;
		text-align: center;
		letter-spacing: 0.12em;
	}

	#companyMain .companySec02 {
		padding: 80px 0px 120px;
	}

	#companyMain .companySec02 h3 {
		margin-top: 30px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.7rem;
		text-align: left;
		text-decoration: underline;
		letter-spacing: 0.12em;
	}

	#companyMain .companySec02 .figSec {
		margin: 45px auto 45px;
		width: 100%;
	}

	#companyMain .companySec02 figure {
		padding-top: 57.34%;
		width: 100%;
		position: relative;
	}

	#companyMain .companySec02 figure img {
		width: 100%;
		height: 100%;
		left: 0px;
		top: 0px;
		position: absolute;
	}

	#companyMain .companySec02 p {
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.7rem;
		text-align: left;
		letter-spacing: 0.04em;
	}

	#companyNavi {
		padding: 3px 0px 100px;
		text-align: center;
	}

	#companyNavi ul li {
		padding: 30px 0px 0px;
		width: 100%;
		position: relative;
	}

	#companyNavi ul li::after {
		content: "";
		width: 4px;
		height: 30px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		top: 95px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
		z-index: 4;
	}

	#companyNavi ul li h2 {
		margin: 0px auto 28px;
		color: #919191;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 1.4rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#companyNavi ul li h2 span {
		margin: 0px auto 6px;
		color: #000;
		font-size: 2.4rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
		display: block;
	}

	#companyNavi ul li div {
		padding-top: 56.25%;
		width: 100%;
		position: relative;
	}

	#companyNavi ul li div a {
		width: 100%;
		height: 100%;
		background-repeat: no-repeat;
		background-position: center center;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: 0px;
		position: absolute;
		box-sizing: border-box;
	}

	#companyNavi ul li.company01 a {
		background-image: url(img/img_tmb_company01.jpg);
		background-size: cover;
	}

	#companyNavi ul li.company02 a {
		background-image: url(img/img_tmb_company02.jpg);
		background-size: cover;
	}

	#companyNavi ul li.company03 a {
		background-image: url(img/img_tmb_company03.jpg);
		background-size: cover;
	}

	/***** MESSAGE *****/

	main.message #contentHead>div {
		background-image: url(img/bg_message_sp.jpg);
		background-size: cover;
	}

	#messageH {
		/* background: url(img/img_message01_sp.jpg) no-repeat center top; */
		background: url(img/img_message01_sp.jpg) no-repeat center top;
		background-size: 600px auto;
		padding: 450px 10px 50px;
		text-align: left;
	}

	#messageH h2 {
		margin: 0px 0px 28px;
		padding: 0px 0px 36px;
		border-bottom: 2px #b1b1b1 solid;
		font-size: 2.6rem;
		font-weight: bold;
		line-height: 4.0rem;
		text-align: center;
		letter-spacing: 0.115em;
		position: relative;
	}

	#messageH h2::after {
		content: "";
		width: 140px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: -2px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#messageH h3 {
		margin: 0px 0px 20px;
		color: #868686;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.3rem;
		letter-spacing: 0.115em;
	}

	#messageH h3 span {
		margin: 0px 15px 0px 0px;
		color: #515151;
		font-size: 1.9rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
	}

	#messageH p {
		color: #3f3f3f;
		font-size: 1.2rem;
		line-height: 1.8rem;
		letter-spacing: 0.115em;
	}

	#messageH .post {
		margin: 0px 0px 15px;
		color: #515151;
		font-size: 1.4rem;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
	}

	#messageHR {
		/* background: url(img/img_message01_sp.jpg) no-repeat center top; */
		background: url(https://rankuphd.jp/recruit/wp-content/uploads/2024/09/IMG_22842-scaled.jpg) no-repeat 60% top;
		background-size: 600px auto;
		padding: 450px 10px 50px;
		text-align: left;
	}

	#messageHR h2 {
		margin: 0px 0px 28px;
		padding: 0px 0px 36px;
		border-bottom: 2px #b1b1b1 solid;
		font-size: 24px;
        font-weight: bold;
        line-height: 4.0rem;
        text-align: left;
		letter-spacing: 0.115em;
		position: relative;
	}

	#messageHR h2::after {
		content: "";
		width: 140px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: -2px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#messageHR h3 {
		margin: 0px 0px 20px;
		color: #868686;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.3rem;
		letter-spacing: 0.115em;
	}

	#messageHR h3 span {
		margin: 0px 15px 0px 0px;
		color: #515151;
		font-size: 1.9rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
	}

	#messageHR p {
		color: #3f3f3f;
		font-size: 1.2rem;
		line-height: 1.8rem;
		letter-spacing: 0.115em;
	}

	#messageHR .post {
		margin: 0px 0px 15px;
		color: #515151;
		font-size: 1.4rem;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
	}

	#messageMain {
		padding: 60px 10px 0px;
		text-align: left;
	}

	#messageMain h2 {
		margin: 0px 0px 60px;
		color: #868686;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 1.8rem;
		letter-spacing: 0.115em;
		text-align: center;
	}

	#messageMain h2 span {
		margin: 0px 0px 10px;
		color: #dedede;
		font-size: 5.0rem;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: 0.05em;
		display: block;
	}

	#messageMain .messageSec .fig figure {
		width: 100%;
	}

	#messageMain .messageSec .fig figure img {
		width: 100%;
		height: auto;
	}

	#messageMain .messageSec .secBox {
		padding: 36px 5px 60px;
		background-color: #fff;
		border-top: 4px #fff100 solid;
	}

	#messageMain .messageSec .secBox h3 {
		margin: 0px 0px 26px;
		color: #010101;
		font-size: 2.3rem;
		font-weight: bold;
		line-height: 3.2rem;
		letter-spacing: 0.115em;
		text-align: center;
	}

	#messageMain .messageSec .secBox p {
		color: #1e1e1e;
		font-size: 1.2rem;
		line-height: 2.4rem;
		letter-spacing: 0.08em;
	}

	#messageBtm {
		margin: 0px 0px 100px;
		height: 190px;
		background-color: #000;
		font-size: 0px;
		line-height: 0;
	}

	#messageBtm figure {
		margin: 0px auto;
		width: 214px;
	}

	/***** OUTLINE *****/

	main.outline #contentHead>div {
		background-image: url(img/bg_outline_sp.jpg);
		background-size: cover;
	}

	#informationSec,
	#historySec {
		padding: 55px 10px 55px;
		text-align: left;
	}

	#informationSec h2,
	#historySec h2 {
		margin: 0px auto 30px;
		padding: 0px 0px 35px;
		color: #414141;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 1.4rem;
		letter-spacing: 0.115em;
		text-align: center;
		position: relative;
	}

	#informationSec h2 span,
	#historySec h2 span {
		margin: 0px 0px 12px;
		color: #000;
		font-size: 2.4rem;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: 0.05em;
		display: block;
	}

	#informationSec h2::after,
	#historySec h2::after {
		content: "";
		width: 60px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#informationSec #infoTbl {
		margin: 0px 0px 60px;
		width: 100%;
	}

	#informationSec #infoTbl dl {
		padding: 24px 0px;
		width: 100%;
		border-bottom: 1px #9c9c9c solid;
	}

	#informationSec #infoTbl dl dt,
	#informationSec #infoTbl dl dd {
		font-size: 1.2rem;
		line-height: 2.2rem;
		letter-spacing: 0.115em;
	}

	#informationSec #infoTbl dl dt {
		margin: 0px 0px 20px;
		font-weight: bold;
	}

	#informationSec #infoTbl dl dd {
		font-weight: normal;
	}

	#historySec #historyTbl {
		margin: 0px 0px 60px;
		width: 100%;
	}

	#historySec #historyTbl dl {
		padding: 0px 0px 15px;
		width: 100%;
	}

	#historySec #historyTbl dl dt,
	#historySec #historyTbl dl dd {
		font-size: 1.2rem;
		line-height: 1.9rem;
		letter-spacing: 0.115em;
	}

	#historySec #historyTbl dl dt {
		margin: 0px 0px 12px;
		padding-left: 8px;
		font-weight: bold;
		position: relative;
	}

	#historySec #historyTbl dl dt::after {
		content: "";
		width: 4px;
		height: 2px;
		background-color: #000;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: 8px;
		position: absolute;
	}

	#historySec #historyTbl dl dd {
		font-weight: normal;
	}

	#informationSec #gMap {
		width: 100%;
		height: 230px;
	}

	#informationSec #btMap {
		margin: 0px 20px;
		font-size: 1.0rem;
		line-height: 1.2rem;
		position: relative;
	}

	#informationSec #btMap a {
		width: 100%;
		background-color: #fff;
		border: 2px #1c1c1c solid;
		text-align: center;
		display: block;
		left: 0px;
		top: -30px;
		position: absolute;
		box-sizing: border-box;
	}

	#informationSec #btMap a span {
		padding: 20px 22px 20px 0px;
		background: url(img/arr_r.png) no-repeat right center;
		background-size: 14px auto;
		display: inline-block;
	}

	/***** DATA *****/

	main.data #contentHead>div {
		background-image: url(img/bg_data_sp.jpg);
		background-size: cover;
	}

	#dataMain {
		padding: 55px 10px 55px;
		text-align: center;
	}

	#dataMain h2 {
		margin: 0px auto 55px;
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 1.2;
	}

	#dataMain>div {
		padding: 17px 17px 0px;
		background-color: #fff;
		border: 3px #7d7d7d solid;
	}

	#dataMain .dataBox {
		margin: 0px auto 20px;
		background: url(img/bg_box.png) repeat center center;
		background-size: 10px 10px;
		border: 6px #eae6ce solid;
	}

	#dataMain .dataBox h3 {
		margin: 0px auto 31px;
		padding: 26px 0px 12px;
		font-size: 1.4rem;
		line-height: 2.0rem;
		text-align: center;
		letter-spacing: 0.115em;
		position: relative;
	}

	#dataMain .dataBox h3::after {
		content: "";
		width: 100px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#dataMain .dataBox h4 {
		margin: 0px auto 32px;
		padding: 0px 10px;
	}

	#dataMain .dataBox h4 img {
		margin: 0px auto 16px;
		width: 225px;
	}

	#dataMain .dataBox h4 span {
		margin: 0px auto;
		color: #bfbebe;
		font-size: 1.0rem;
		line-height: 1.5rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#dataMain .dataBox>p {
		padding: 0px 0px;
		font-size: 1.6rem;
		line-height: 2.8rem;
		text-align: center;
		letter-spacing: 0.075em;
	}

	/***** PEOPLE *****/

	main.people #contentHead>div {
		background-image: url(img/bg_people3_sp.png);
		background-size: cover;
	}

	#peopleMain {
		margin: 0px auto;
		padding: 55px 10px 75px;
		text-align: left;
	}

	#peopleMain .peopleSecH {
		border-bottom: 1px #b1b1b1 solid;
	}

	#peopleMain .peopleSecH>div {
		padding: 0px 0px 45px;
		text-align: center;
	}

	#peopleMain .peopleSecH h2 {
		margin: 0px auto 30px;
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 3.2rem;
		text-align: center;
		letter-spacing: 0.005em;
	}

	#peopleMain .peopleSecH h2 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 12px 12px;
	}

	#peopleMain .peopleSecH p {
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.7rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#peopleMain #peopleSecItv {
		padding: 55px 0px 0px;
		text-align: center;
	}

	#peopleMain #peopleSecItv .peopleItvT {
		margin: 0px auto 40px;
		text-align: center;
	}

	#peopleMain #peopleSecItv .peopleItvT h2 {
		margin: 0px auto 8px;
		color: #dedede;
		font-size: 4.0rem;
		line-height: 1.1;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#peopleMain #peopleSecItv .peopleItvT h3 {
		color: #414141;
		font-size: 0.9rem;
		font-weight: normal;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#peopleMain #peopleSecItv .secPeopleItv {
		margin: 0px 0px 30px;
		padding-top: 83%;
		width: 100%;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv01 {
		background: #faf319 url(img/img_tmb_people01_sp.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv02 {
		background: #faf319 url(img/img_tmb_people02_sp.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv03 {
		background: #faf319 url(img/img_tmb_people03_sp.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>h3 {
		margin: 0px 20px 45px;
		padding: 0px 0px 20px 45px;
		background: url(img/icon_itv.png) no-repeat 0px 0px;
		background-size: 30px auto;
		border-bottom: 2px #cfc907 solid;
		font-size: 1.3rem;
		line-height: 1.7rem;
		text-align: left;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>h3 span {
		font-size: 0.9rem;
		display: block;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h4 {
		margin: 0px 20px 30px;
		font-size: 2.5rem;
		font-weight: bold;
		line-height: 3.2rem;
		text-align: left;
		letter-spacing: 0.0em;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h5,
	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h6 {
		color: #878700;
		font-weight: bold;
		line-height: 1.8rem;
		text-align: left;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h5 {
		margin: 0px 20px 0px;
		font-size: 1.1rem;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h6 {
		margin: 0px 20px 23px;
		font-size: 1.3rem;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p {
		width: 100%;
		font-size: 1.1rem;
		line-height: 2.0rem;
		text-align: center;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a {
		margin: 0px;
		padding: 20px 0px;
		display: block;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a {
		padding-right: 23px;
		background: #000 url(img/arr_vm.png) no-repeat right 105px center;
		background-size: 11px auto;
		color: #fff;
	}

	/***** INTERVIEW *****/

	main.interview01 #contentHead>div {
		background-image: url(img/bg_interview01_sp.jpg);
		background-size: cover;
	}

	main.interview02 #contentHead>div {
		background-image: url(img/bg_interview02_sp.jpg);
		background-size: cover;
	}

	main.interview03 #contentHead>div {
		background-image: url(img/bg_interview03_sp.jpg);
		background-size: cover;
	}

	.interview #contentHead h1 {
		padding: 40px 0px 12px 36%;
		color: #000;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.6rem;
		text-align: left;
	}

	.interview #contentHead h1::after {
		display: none;
	}

	.interview #contentHead h2,
	.interview #contentHead h3 {
		padding-left: 36%;
		color: #c6c613;
		line-height: 1.8rem;
		text-align: left;
	}

	.interview #contentHead h2 {
		font-size: 0.9rem;
	}

	.interview #contentHead h3 {
		font-size: 1.1rem;
	}

	#interviewMain {
		padding-top: 10px;
	}

	#interviewMain .interviewSec {
		padding: 50px 10px;
	}

	#interviewMain .interviewSec>div>figure {
		width: 100%;
		font-size: 0px;
		line-height: 0;
	}

	#interviewMain .interviewSec>div>figure img {
		width: 100%;
		height: auto;
	}

	#interviewMain .interviewSec>div>div {
		padding: 35px 5px 0px;
		text-align: left;
	}

	#interviewMain .interviewSec>div>div h2 {
		margin: 0px auto 35px;
		padding: 0px 0px 20px;
		font-size: 2.3rem;
		line-height: 3.2rem;
		text-align: center;
		position: relative;
	}

	#interviewMain .interviewSec>div>div h2::after {
		content: "";
		width: 72px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#interviewMain .interviewSec>div>div p {
		color: #3a3a3a;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.4rem;
		letter-spacing: 0.08em;
	}

	#interviewNav {
		padding: 50px 10px 65px;
	}

	#interviewNav ul li {
		margin: 0px 0px 40px;
		width: 100%;
		font-size: 0px;
		line-height: 0;
	}

	/***** CULTURE *****/

	main.culture #contentHead>div {
		background-image: url(img/bg_culture3_sp.png);
		background-size: cover;
	}

	#cultureSec01 {
		padding: 55px 10px 45px;
		text-align: center;
	}

	#cultureSec01 h2 {
		margin: 0px auto 38px;
		font-size: 2.0rem;
		font-weight: bold;
		line-height: 3.3rem;
		text-align: center;
		letter-spacing: 0.005em;
	}

	#cultureSec01 h2 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 12px 12px;
	}

	#cultureSec01 p {
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.7rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec02,
	#cultureSec03,
	#cultureSec04 {
		margin: 0px auto;
		text-align: center;
	}

	#cultureSec02 {
		padding: 50px 15px 5px;
	}

	#cultureSec03 {
		padding: 80px 10px 60px;
	}

	#cultureSec04 {
		padding: 50px 10px 100px;
	}

	#cultureSec02>h2,
	#cultureSec03>h2,
	#cultureSec04>h2 {
		margin: 0px auto 20px;
		color: #dedede;
		font-size: 4.0rem;
		line-height: 1.1;
		text-align: center;
		letter-spacing: 0.005em;
	}

	#cultureSec02>p,
	#cultureSec03>p,
	#cultureSec04>p {
		margin: 0px auto 60px;
		font-size: 1.0rem;
		font-weight: normal;
		line-height: 2.2rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec04>p {
		margin: 0px auto 44px;
	}

	#cultureSec04>p.note {
		margin: 0px auto 60px;
		text-decoration: underline;
	}

	.culturePSN {
		padding: 10px 0px 0px;
	}

	.culturePSN>div {
		margin-bottom: 65px;
		width: 100%;
	}

	.culturePSN>div h3 {
		margin: 0px auto 47px;
		padding: 3px 0px 0px;
		border-top: 3px #8c8c8c solid;
		border-bottom: 1px #8c8c8c solid;
		color: #fff100;
		font-size: 4.0rem;
		line-height: 6.0rem;
		text-align: center;
		letter-spacing: -0.01em;
		position: relative;
	}

	.culturePSN>div h3 span {
		width: 78px;
		background-color: #bebebe;
		display: block;
		left: 50%;
		top: -30px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	.culturePSN>div>div {
		justify-content: space-between;
		display: flex;
	}

	.culturePSN>div>div dl {
		width: calc(50% - 7px);
		position: relative;
	}

	.culturePSN>div>div dl.pra {
		background-color: #fff;
	}

	.culturePSN>div>div dl.prb {
		background-color: #d9d9d9;
	}

	.culturePSN>div>div dl::after {
		content: "";
		width: 40px;
		height: 40px;
		border-radius: 50%;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: -7px;
		top: -15px;
		position: absolute;
	}

	.culturePSN>div>div dl.pra::after {
		background: #fff url(img/icon_mb_a.png) no-repeat center center;
		background-size: cover;
	}

	.culturePSN>div>div dl.prb::after {
		background: #d9d9d9 url(img/icon_mb_b.png) no-repeat center center;
		background-size: cover;
	}

	.culturePSN>div>div dl dt {
		font-size: 0px;
		line-height: 0;
	}

	.culturePSN>div>div dl dd {
		padding: 8px 15px;
		height: 2.8rem;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.4rem;
		text-align: center;
		position: relative;
	}

	.culturePSN>div>div dl dd p {
		width: 90%;
		left: 50%;
		top: 50%;
		position: absolute;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}

	.cultureSTY {
		margin: 0px auto;
	}

	.cultureSTY>section {
		margin: 0px auto 10px;
		background-color: #d8d8d8;
	}

	.cultureSTY>section>figure {
		width: 100%;
		background: none !important;
	}

	.cultureSTY>section>div {
		padding: 32px 20px 25px;
		text-align: left;
	}

	.cultureSTY>section>div dl {
		margin: 0px 0px 20px;
		align-items: center;
		display: flex;
	}

	.cultureSTY>section>div dl dt {
		margin: 0px 20px 0px 0px;
		padding: 10px 0px;
		width: 46px;
		background-color: #fff100;
		color: #000;
		font-size: 2.3rem;
		line-height: 2.6rem;
		text-align: center;
		letter-spacing: -0.01em;
		display: block;
	}

	.cultureSTY>section>div dl dd {
		font-size: 1.7rem;
		font-weight: bold;
		line-height: 2.4rem;
		letter-spacing: 0.00em;
	}

	.cultureSTY>section>div dl dd span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 9px 9px;
	}

	.cultureSTY>section>div p {
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.4rem;
		letter-spacing: 0.00em;
	}

	.cultureSTYB {
		padding: 160px 0px 0px;
		background: url(img/new_officeimage.jpg) no-repeat left top;
		background-size: 285px auto;
		overflow: hidden;
	}

	.cultureSTYB>section {
		margin: 0px 0px 0px 20px;
		background-color: #d8d8d8;
		position: relative;
	}

	.cultureSTYB>section::before {
		content: "";
		width: 240px;
		height: 52px;
		background: url(img/txt_culture_style_last.png) no-repeat center center;
		background-size: cover;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 10px;
		top: -30px;
		position: absolute;
	}

	.cultureSTYB>section>div {
		padding: 38px 20px 25px;
		text-align: left;
	}

	.cultureSTYB>section>div h3 {
		margin: 0px 0px 20px;
		font-size: 1.7rem;
		font-weight: bold;
		line-height: 2.5rem;
		letter-spacing: 0.00em;
	}

	.cultureSTYB>section>div h3 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 14px 14px;
	}

	.cultureSTYB>section>div p {
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.4rem;
		letter-spacing: 0.00em;
	}

	#galleryList {
		margin: 0px auto;
		width: 100%;
	}

	#galleryList::after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: " ";
		clear: both;
		height: 0;
	}

	#galleryList figure {
		margin: 0px 1% 5px 1%;
		font-size: 0px;
		line-height: 0;
		float: left;
	}

	#galleryList figure a {
		display: block;
		position: relative;
	}

	#galleryList .item {
		width: 31%;
	}


	/***** NEWS *****/

	main.news #contentHead>div {
		/* background-image: url(img/bg_news_sp.jpg); */
		background-size: cover;
	}

	#newsMain {
		padding: 0px 10px 0px;
		text-align: left;
	}

	#newsMain .newsUl ul {
		padding: 0px 0px 35px;
		flex-wrap: wrap;
		display: flex;
		text-align: left;
	}

	#newsMain .newsUl ul li {
		margin: 50px 0px 0px;
		padding: 25px 0px 15px;
		width: 100%;
		position: relative;
		text-align: center;
	}

	#newsMain .newsUl ul li.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 90px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 2.0rem;
		text-align: center;
		display: block;
		left: 50%;
		top: 0px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#newsMain .newsUl ul li a {
		display: block;
	}

	#newsMain .newsUl ul li h2 {
		margin: 0px 0px 12px;
		color: #000;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.2rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#newsMain .newsUl ul li .date {
		margin: 0px 0px 20px;
		color: #e5e5e5;
		font-size: 1.0rem;
		line-height: 1.4rem;
		text-align: center;
	}

	#newsMain .newsUl ul li .ebody {
		padding-right: 3em;
		margin: 15px auto;
		height: 2.0rem;
		color: #000;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: center;
		overflow: hidden;
		display: inline-block;
		position: relative;
	}

	#newsMain .newsUl ul li .ebody::after {
		content: "\30fb\30fb\30fb";
		color: #000;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.0rem;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	#newsMain .newsUl ul li .link {
		color: #000;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}

	#newsMain .newsUl ul li figure {
		width: 100%;
	}

	#newsMain .newsUl ul li figure img {
		width: 100%;
		height: auto;
	}

	main.entry>.content {
		padding-top: 55px;
	}

	#entryMain {
		padding: 75px 10px 105px;
		text-align: left;
		position: relative;
	}

	#entryMain.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 90px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 2.0rem;
		text-align: center;
		display: block;
		left: 50%;
		top: 45px;
		position: absolute;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}

	#entryMain>.date {
		margin: 0px auto 20px;
		color: #e5e5e5;
		font-size: 1.0rem;
		line-height: 1.6rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#entryMain>h1 {
		margin: 0px 0px 30px;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#entryMain>figure {
		margin: 0px auto;
		width: 100%;
		font-size: 0px;
		line-height: 0;
	}

	#entryMain .entryBody {
		margin: 0px 0px 20px;
		padding: 34px 5px 24px;
		border-bottom: 2px #666 solid;
		font-size: 1.0rem;
		line-height: 2.0rem;
		letter-spacing: 0.04em;
	}

	#entryMain .entryBody p {
		margin: 0px 0px 4.0rem;
	}

	#entryMain #toList {
		margin: 0px auto;
		padding: 40px 0px 0px;
		max-width: 190px;
		font-size: 0.9rem;
		line-height: 1.9rem;
		letter-spacing: 0.05em;
		text-align: center;
	}

	#entryMain #toList a {
		padding: 10px 0px;
		color: #000;
		background-color: #fff;
		border: 2px #1c1c1c solid;
		display: block;
	}

	.paging ul.page-numbers {
		padding: 0px 0px 90px;
		flex-wrap: wrap;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.paging ul.page-numbers li {
		margin: 0px 5px 10px;
		font-size: 1.4rem;
		line-height: 2.0rem;
		text-align: center;
		letter-spacing: 0.08em;
	}

	.paging ul.page-numbers li span,
	.paging ul.page-numbers li a {
		padding: 9px 0px;
		width: 40px;
		text-decoration: none;
		display: block;
	}

	.paging ul.page-numbers li span {
		color: #000;
		background-color: #fff;
	}

	.paging ul.page-numbers li a {
		color: #fff;
		background-color: #000;
	}

	.paging ul.page-numbers li a.prev,
	.paging ul.page-numbers li a.next {
		color: #000;
		background: none;
	}

	.paging ul.page-numbers li span.dots {
		width: 22px;
		color: #5d5d5d;
		background: none;
	}

	.paging .pagePN {
		justify-content: space-between;
		display: flex;
		position: relative;
	}

	.paging .pagePN::after {
		content: "";
		width: 2px;
		height: 100%;
		background: rgba(0, 0, 0, 0.3);
		font-size: 0px;
		line-height: 0;
		display: block;
		left: calc(50% - 1px);
		top: 0px;
		position: absolute;
	}

	.paging .pagePN>div {
		width: 50%;
		box-sizing: border-box;
	}

	.paging .pagePN>div a {
		display: block;
	}

	.paging .pagePN>.pnP a {
		padding: 0px 16px 0px 5px;
	}

	.paging .pagePN>.pnN a {
		padding: 0px 5px 0px 16px;
	}

	.paging .pagePN>div figure {
		margin: 0px 0px 10px;
		width: 100%;
		font-size: 0px;
		line-height: 0;
	}

	.paging .pagePN>.pnP p,
	.paging .pagePN>.pnP h2 {
		text-align: left;
	}

	.paging .pagePN>.pnN p,
	.paging .pagePN>.pnN h2 {
		text-align: right;
	}

	.paging .pagePN>div .txtPN {
		margin: 0px 0px 4px;
		color: #000;
		font-size: 1.1rem;
		line-height: 1.2;
		letter-spacing: 0.08em;
	}

	.paging .pagePN>div .date {
		margin: 0px 0px 6px;
		color: #e5e5e5;
		font-size: 0.9rem;
		line-height: 1.2;
		letter-spacing: 0.05em;
	}

	.paging .pagePN>div h2 {
		color: #000;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.5rem;
		letter-spacing: 0.05em;
	}

	.flgP {
		display: none !important;
	}

	.flgS {
		display: block !important;
	}

}

/*--------------------------------------------------------------------------*/

@media screen and (min-width: 768px), print and (min-width: 0px) {

	a {
		transition-duration: 0.5s;
	}

	header {
		width: 100%;
		background-color: #1c1c1c;
		left: 0px;
		top: 0px;
		position: fixed;
		z-index: 100;
	}

	#wrap {
		background-color: #fff;
		position: relative;
		z-index: 5;
	}

	#wrapDm {
		display: none !important;
	}

	header>div {
		padding: 0px 220px;
		height: 90px;
		position: relative;
	}

	header>div h1 {
		width: 106px;
		font-size: 0px;
		line-height: 0;
		left: 100px;
		top: 27px;
		position: absolute;
	}

	header>div h1 a {
		display: block;
	}

	header>div .btEntryH {
		width: 205px;
		font-size: 1.3rem;
		line-height: 1.6rem;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	header>div .btEntryH a {
		padding: 35px 77px 35px 50px;
		background-color: #fff100;
		background-image: url(img/icon_entry.png);
		background-size: 18px auto;
		background-repeat: no-repeat;
		background-position: right 58px top 32px;
		border: 2px #fff100 solid;
		color: #000;
		display: block;
	}

	header>div .btEntryH a::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}

	header>div .btEntryH a::after,
	header>div .btEntryH a:hover {
		background-color: #1c1c1c;
		background-image: url(img/icon_entry_y.png);
		background-size: 18px auto;
		color: #fff100;
	}

	header>div .btMenuH,
	header>div .snsH {
		display: none;
	}

	header>div .gNavi {
		display: block !important;
	}

	header>div .gNavi>ul {
		padding: 6px 0px 0px;
		justify-content: center;
		display: flex;
	}

	header>div .gNavi>ul>li {
		margin: 0px 0px 0px 10px;
		font-size: 1.1rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
		position: relative;
	}

	header>div .gNavi>ul>li>a {
		/* max-height: 44px; */
		padding: 20px;
		color: #b9b9b9;
		display: block;
		/* overflow: hidden; */
		transition-duration: 0s;
	}

	header>div .gNavi>ul>li>a:hover {
		color: #b9b9b9;
	}

	header>div .gNavi>ul>li:nth-of-type(3)>a {
		padding-left: 0px;
		padding-right: 0px;
	}

	header>div .gNavi>ul>li>a::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}

	header>div .gNavi>ul>li>a::after,
	header>div .gNavi>ul>li:hover>a {
		background: url(img/bg_gnav.png) no-repeat center bottom;
	}

	header>div .gNavi>ul>li>a>span {
		margin: 0px auto 4px;
		color: #fff;
		font-family: 'Montserrat', sans-serif;
		font-weight: 700;
		font-size: 1.5rem;
		line-height: 2.0rem;
		display: block;
		transition-duration: 0.5s;
	}

	header>div .gNavi>ul>li>a:hover>span {
		color: #fff100;
	}

	header>div .gNavi>ul>li ul {
		padding: 24px 0px 20px;
		width: 280px;
		background-color: #262626;
		box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.5);
		left: 50%;
		top: 84px;
		position: absolute;
		transform: translateX(-50%);
		display: none;
	}

	header>div .gNavi>ul>li:hover ul {
		display: block;
	}

	header>div .gNavi>ul>li ul>li {
		font-size: 1.1rem;
		line-height: 2.0rem;
		text-align: center;
	}

	header>div .gNavi>ul>li ul>li a {
		padding: 13px 0px;
		color: #797979;
		display: block;
	}

	header>div .gNavi>ul>li ul>li a span {
		color: #adadad;
		font-family: 'Montserrat', sans-serif;
		font-weight: 700;
		font-size: 1.6rem;
		line-height: 2.4rem;
		display: block;
		transition-duration: 0.5s;
	}

	header>div .gNavi>ul>li ul>li a:hover,
	header>div .gNavi>ul>li ul>li a:hover span {
		color: #fff100;
		display: block;
	}

	#pageTop {
		width: 75px;
		font-size: 0px;
		line-height: 0;
		right: 35px;
		bottom: 35px;
		position: fixed;
		z-index: 90;
	}

	#pageTop a {
		width: 75px;
		height: 75px;
		background-color: #3f3f3f;
		background-image: url(img/totop.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center center;
		box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.3);
		text-indent: -9999px;
		display: block;
	}

	#pageTop a:hover {
		background-color: #7d7d7d;
	}

	.top #pageTop a {
		display: none;
	}

	#bnFoot {
		width: 100%;
		height: 140px;
	}

	#bnFoot>div {
		margin: 0px auto;
		padding: 70px 100px 0px;
		max-width: 1000px;
		position: relative;
	}

	#bnFoot>div p {
		width: calc(100% - 200px);
		/* background-color: #fff; */
		left: 50%;
		top: 140px;
		position: absolute;
		transform: translate(-50%, -50%);
		z-index: 1;
	}

	#bnFoot>div p a {
		/* display: block; */
	}

	#bnFoot>div p a:hover {
		opacity: 1;
	}

	#bnFoot>div p img {
		/* width: 100%; */
		height: auto;
		object-fit: contain;
		background: #fff;
	}

	footer {
		padding: 150px 0px 50px;
		width: 100%;
		background-color: #040404;
	}

	#footMain {
		margin: 0px auto;
		padding: 0px 100px;
		max-width: 1240px;
		text-align: left;
		z-index: 20;
		align-items: stretch;
		justify-content: space-between;
		display: flex;
	}

	#footMain>div {
		position: relative;
	}

	#footMain>div h1 {
		margin: 0px 0px 30px;
		width: 222px;
		font-size: 0px;
		line-height: 0;
	}

	#footMain>div h1 a {
		display: block;
	}

	/*#footMain > div ul li {
		font-size: 0px;
		line-height: 0;
		bottom: 58px;
		position: absolute;
	}
	
	#footMain > div ul .is {
		left: 0px;
	}
	
	#footMain > div ul .fb {
		left: 55px;
	}
	
	#footMain > div ul li a {
		width: 41px;
		height: 41px;
		background-repeat: no-repeat;
		background-position: center center;
		border: 2px #fff solid;
		border-radius: 50%;
		display: block;
	}
	
	#footMain > div ul li a:hover {
		border-color: #fff100;
	}
	
	#footMain > div ul .is a {
		background-image: url(img/icon_is.png);
		background-size: 19px auto;
	}
	
	#footMain > div ul .fb a {
		background-image: url(img/icon_fb.png);
		background-size: 19px auto;
	}
	
	#footMain > div ul .is a::after,
	#footMain > div ul .fb a::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}
	
	#footMain > div ul .is a::after,
	#footMain > div ul .is a:hover {
		background-image: url(img/icon_is_y.png);
		background-size: 19px auto;
	}
	
	#footMain > div ul .fb a::after,
	#footMain > div ul .fb a:hover {
		background-image: url(img/icon_fb_y.png);
		background-size: 19px auto;
	}
	*/
	/*add 20200930*/

	#footMain>div ul li {
		font-size: 0px;
		line-height: 0;
		width: 200px;
	}

	/*******************/
	#footMain>nav {
		display: flex;
	}

	#footMain>nav>ul {
		margin: 0px 0px 0px 40px;
	}

	#footMain>nav>ul>li {
		margin: 0px 0px 12px;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.075em;
		text-align: right;
	}

	#footMain>nav>ul>li>a span {
		font-size: 1.6rem;
		line-height: 2.0rem;
		text-align: right;
		letter-spacing: 0.05em;
	}

	#footMain>nav>ul>li ul {
		padding: 12px 0px 0px;
	}

	#footMain>nav>ul>li ul>li {
		padding: 0px 0px 12px;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.075em;
		text-align: right;
	}

	#footMain>nav>ul>li ul>li a span {
		font-size: 1.2rem;
		line-height: 2.0rem;
		text-align: right;
		letter-spacing: 0.05em;
	}

	#footMain>nav>ul>li a {
		color: #b9b9b9;
	}

	#footMain>nav>ul>li a:hover {
		color: #b9b9b9;
	}

	#footMain>nav>ul>li a span {
		color: #fff;
		font-family: 'Montserrat', sans-serif;
		font-weight: 700;
		display: block;
	}

	#footMain>nav>ul>li a:hover span {
		color: #fff100;
	}

	#footCopy {
		margin: 0px auto;
		padding: 0px 100px;
		max-width: 1240px;
		text-align: left;
		position: relative;
	}

	#footCopy>p {
		color: #fff;
		font-size: 1.0rem;
		line-height: 1.4rem;
		left: 100px;
		top: -35px;
		position: absolute;
	}

	#footCopy>p small {
		font-size: 1.0em;
	}

	#contentHead {
		padding-top: 90px;
	}

	#contentHead>div {
		width: 100%;
		/* height: 385px; */
		height: 430px;
		background-repeat: no-repeat;
		background-position: center top;
	}

	#contentHead h1 {
		padding: 147px 0px 35px;
		color: #fff;
		font-size: 4.8rem;
		line-height: 5.8rem;
		position: relative;
	}

	#contentHead h1::after {
		content: "";
		width: 125px;
		height: 6px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	.topicPath {
		margin: 0px 50px;
		padding: 25px 0px;
		border-bottom: 1px #a5a5a5 solid;
		align-items: center;
		display: flex;
	}

	.topicPath dt,
	.topicPath dd ul li,
	.topicPath dd ul li::after {
		font-family: 'Montserrat', sans-serif;
	}

	.contentG>.topicPath dt,
	.contentG>.topicPath dd ul li,
	.contentG>.topicPath dd ul li::after {
		color: #fff;
	}

	.contentW>.topicPath dt,
	.contentW>.topicPath dd ul li,
	.contentW>.topicPath dd ul li::after {
		color: #7e7e7e;
	}

	.topicPath dt {
		padding: 5px 30px 5px 0px;
		border-right: 1px #a5a5a5 solid;
		font-weight: 700;
		font-size: 1.2rem;
		line-height: 1.5rem;
	}

	.topicPath dd {
		padding-left: 30px;
	}

	.topicPath dd ul {
		align-items: center;
		display: flex;
	}

	.topicPath dd ul li {
		padding-right: 8px;
		font-weight: 400;
		font-size: 1.1rem;
		line-height: 1.5rem;
		text-align: left;
	}

	.topicPath dd ul li::after {
		content: ">";
		margin-left: 8px;
		font-weight: 400;
		font-size: 1.1rem;
		line-height: 1.5rem;
		display: inline-block;
	}

	.topicPath dd ul li:last-of-type::after {
		display: none;
	}

	.topicPath a {
		color: #fff100;
	}

	.topicPath a:hover {
		opacity: 0.6;
	}

	.contentG>.topicPath dd ul li:last-of-type a {
		color: #fff;
	}

	.contentW>.topicPath dd ul li:last-of-type a {
		color: #7e7e7e;
	}

	.contentG>.topicPath dd ul li:last-of-type a:hover,
	.contentW>.topicPath dd ul li:last-of-type a:hover {
		opacity: 1.0;
	}


	/***** TOP *****/

	#topIntro {
		width: 100%;
	}

	#bgYt iframe {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		position: fixed;
		z-index: -2;
	}

	#topIntro {
		background: url(img/msk_dot.png) repeat center center;
		background-size: 2px auto;
	}

	#topIntro header {
		width: 100%;
		background: none;
		z-index: 4;
	}

	#topIntro header>div {
		padding: 30px 260px 0px;
		height: auto;
	}

	#topIntro header>div h1 {
		top: 60px;
	}

	#topIntro header>div .btEntryH {
		width: 160px;
		font-size: 1.3rem;
		line-height: 1.6rem;
		right: 100px;
		top: 16px;
	}

	#topIntro header>div .btEntryH a {
		padding: 35px 52px 35px 26px;
		background: none;
		background-image: url(img/icon_entry_w.png);
		background-size: 18px auto;
		background-repeat: no-repeat;
		background-position: right 35px top 32px;
		border: 2px #fff solid;
		color: #fff;
		display: block;
	}

	#topIntro header>div .btEntryH a:hover {
		background: none;
		background-image: url(img/icon_entry_y.png);
	}

	#topIntro header>div .btEntryH a:hover {
		background-size: 18px auto;
		background-repeat: no-repeat;
		background-position: right 35px top 32px;
		border: 2px #fff100 solid;
		color: #fff100;
	}

	#topIntro header>div .btMenuHTop {
		display: none;
	}

	#topIntro header>div .gNavi>ul>li>a:hover {
		background: none;
	}

	#topIntroHd {
		height: 100vh;
		position: relative;
	}

	#topIntroHd #sclDwn {
		padding: 0px 0px 25px;
		width: 100%;
		background: url(img/arr_dwn.png) no-repeat center bottom;
		background-size: 5px auto;
		color: #fff;
		font-size: 1.4rem;
		line-height: 1.6rem;
		text-align: center;
		left: 0px;
		bottom: 20px;
		position: absolute;
	}

	#topIntroHd .snsH {
		width: 24px;
		right: 46px;
		top: 50%;
		position: fixed;
		transform: translateY(-50%);
		display: none;
	}

	body.top #topIntroHd .snsH {
		display: block;
	}

	#topIntroHd .snsH dt {
		margin: 0px auto 20px;
		height: 11em;
		color: #fff;
		font-size: 1.1rem;
		line-height: 2.4rem;
	}

	#topIntroHd .snsH dt span {
		transform: rotate(90deg);
		white-space: nowrap;
		display: block;
	}

	#topIntroHd .snsH dd {
		margin: 0px auto 14px;
		width: 17px;
		font-size: 0px;
		line-height: 0;
	}

	#topIntroHd>h2 {
		padding: 30px 0px 0px;
		width: 100%;
		font-size: 1.2rem;
		line-height: 3.6rem;
		left: 0px;
		top: 50%;
		position: absolute;
		transform: translateY(-50%);
	}

	#topIntroHd>h2 img {
		margin: 0px auto 30px;
		width: 550px;
	}

	#topIntroHd>h2 a {
		margin: 0px auto;
		padding: 14px 90px 14px 60px;
		width: 146px;
		background-image: url(img/bt_arr_w.png);
		background-size: 21px auto;
		background-repeat: no-repeat;
		background-position: right 67px center;
		border: 2px #fff solid;
		color: #fff;
		display: block;
	}

	#topIntroHd>h2 a::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}

	#topIntroHd>h2 a::after,
	#topIntroHd>h2 a:hover {
		background-image: url(img/bt_arr_y.png);
	}

	#topIntroHd>h2 a:hover {
		background-size: 21px auto;
		border: 2px #fff100 solid;
		color: #fff100;
	}

	#topIntroMain {
		padding: 70px 0px;
		text-align: center;
	}

	#topIntroMain p {
		padding: 0px 0px 32px;
		color: #fff;
		font-size: 2rem;
		font-weight: 700;
		line-height: 7.2rem;
		text-align: center;
		margin-bottom: 4rem;
	}

	#topCompany {
		width: 100%;
		height: 720px;
		background: #130e0a url(img/img_top_company.jpg) no-repeat right top;
		background-size: 1440px auto;
	}

	#topCompany>div {
		margin: 0px auto;
		padding: 162px 100px 0px;
		max-width: 1240px;
		text-align: left;
	}

	#topCompany h1 {
		margin: 0px 0px 70px;
		padding: 0px 0px 36px;
		color: #fff;
		font-size: 7.7rem;
		line-height: 1.2;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topCompany h1::after {
		content: "";
		width: 185px;
		height: 7px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
	}

	#topCompany h2 {
		margin: 0px 0px 40px;
		color: #fff;
		font-size: 1.8rem;
		font-weight: normal;
		line-height: 3.6rem;
	}

	.btVm {
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 2.8rem;
	}

	.btVm a {
		border: 1px #fff solid;
		text-align: center;
		display: block;
	}

	.btVm a:hover {
		border: 1px #fff100 solid;
	}

	.btVm a span {
		margin: 0px auto;
		padding: 13px 32px 13px 0px;
		background-image: url(img/arr_vm.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 17px auto;
		color: #fff;
		display: inline-block;
		transition-duration: 0.5s;
	}

	.btVm a span::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}

	.btVm a span::after,
	.btVm a:hover span {
		background-image: url(img/arr_vm_y.png);
		color: #fff100;
	}

	.btVm>span {
		border: 1px #adadad solid;
		text-align: center;
		display: block;
	}

	.btVm>span>span {
		margin: 0px auto;
		padding: 13px 0px 13px 0px;
		color: #adadad;
		display: inline-block;
	}

	#topCompany .btVm {
		width: 245px;
		font-size: 1.4rem;
		font-weight: bold;
	}

	#topCompany .btVm a {
		background-color: #fff100;
		border: none;
	}

	#topCompany .btVm a:hover {
		background-color: #fff;
		border: none;
	}

	#topCompany .btVm a span,
	#topCompany .btVm a:hover span {
		padding-right: 36px;
		background-image: url(img/arr_r.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 17px auto;
		color: #000;
	}

	#topPeople {
		width: 100%;
		/* background-color: #777; */
		background-color: #333333;
	}

	#topPeople>div {
		margin: 0px auto;
		padding: 110px 100px 70px;
		max-width: 1240px;
		text-align: left;
	}

	#topPeople h1 {
		margin: 0px 0px 100px;
		padding: 0px 0px 32px;
		color: white;
		font-size: 5.5rem;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topPeople h1::after {
		content: "";
		width: 125px;
		height: 5px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#topPeople>div .secPeople {
		margin: 0px 0px 70px;
		align-items: flex-end;
		display: flex;
	}

	#topPeople>div .secPeople:nth-of-type(even) {
		flex-direction: row-reverse;
	}

	#topPeople>div .secPeople figure {
		width: calc(100% - 414px);
		height: 600px;
		overflow: hidden;
		position: relative;
	}

	#topPeople>div .secPeople figure img {
		height: 600px;
		width: auto;
		left: 50%;
		top: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#topPeople>div .secPeople .secBox {
		width: 414px;
		height: 500px;
		background-color: #fff;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>h2 {
		color: #3f3f3f;
		font-family: 'Oswald', sans-serif;
		font-size: 14.0rem;
		font-weight: 400;
		line-height: 15.0rem;
		letter-spacing: 0.1em;
		text-align: right;
		right: 18px;
		top: -90px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox.soon>h2 {
		color: #adadad;
	}

	#topPeople>div .secPeople .secBox>p {
		width: 100%;
		font-size: 1.4rem;
		line-height: 1.5rem;
		text-align: center;
		left: 0px;
		bottom: 0px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox>p a,
	#topPeople>div .secPeople .secBox>p span {
		margin: 0px;
		padding: 30px 0px;
		display: block;
	}

	#topPeople>div .secPeople .secBox>p a {
		padding-right: 23px;
		background: #000 url(img/arr_vm.png) no-repeat right 145px top 29px;
		background-size: 17px auto;
		color: #fff;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>p a::after {
		content: "";
		width: 0%;
		height: 6px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
		transition-duration: 0.5s;
	}

	#topPeople>div .secPeople .secBox>p a:hover::after {
		width: 100%;
	}

	#topPeople>div .secPeople .secBox>p span {
		color: #adadad;
		background-color: #ebebeb;
	}

	#topPeople>div .secPeople .secBox>div {
		padding: 75px 50px;
	}

	#topPeople>div .secPeople .secBox.soon>div {
		opacity: 0.2;
	}

	#topPeople>div .secPeople .secBox>div h3 {
		margin: 0px 0px 0px;
		padding: 0px 0px 30px 62px;
		background: url(img/icon_itv.png) no-repeat left top;
		background-size: 43px auto;
		border-bottom: 2px #8d8d8d solid;
		font-size: 1.8rem;
		line-height: 2.4rem;
		text-align: left;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>div h3 span {
		font-size: 1.2rem;
		display: block;
	}

	#topPeople>div .secPeople .secBox>div h3::after {
		content: "";
		width: 120px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: -2px;
		position: absolute;
	}

	#topPeople>div .secPeople .secBox>div>div {
		height: 270px;
		position: relative;
	}

	#topPeople>div .secPeople .secBox>div>div>div {
		left: 0px;
		top: 50%;
		position: absolute;
		transform: translateY(-50%);
	}

	#topPeople>div .secPeople .secBox>div h4 {
		margin: 0px 0px 20px;
		font-size: 2.4rem;
		font-weight: bold;
		line-height: 4.0rem;
		text-align: left;
		letter-spacing: 0.0em;
	}

	#topPeople>div .secPeople .secBox>div h5,
	#topPeople>div .secPeople .secBox>div h6 {
		color: #aeaeae;
		font-weight: normal;
		line-height: 2.6rem;
		text-align: left;
	}

	#topPeople>div .secPeople .secBox>div h5 {
		font-size: 1.3rem;
	}

	#topPeople>div .secPeople .secBox>div h6 {
		font-size: 1.5rem;
	}

	#topCulture {
		width: 100%;
		height: 540px;
		background: url(img/bg_culture3.png) no-repeat center top;
		background-size: cover;
	}

	#topCulture>div {
		margin: 0px auto;
		padding: 100px 100px 0px;
		max-width: 1240px;
		text-align: center;
	}

	#topCulture h1 {
		margin: 0px 0px 60px;
		padding: 0px 0px 40px;
		color: #fff;
		font-size: 5.5rem;
		line-height: 1.2;
		letter-spacing: 0.4rem;
		position: relative;
	}

	#topCulture h1::after {
		content: "";
		width: 125px;
		height: 6px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#topCulture h2 {
		margin: 0px 0px 45px;
		color: #fff;
		font-size: 1.5rem;
		font-weight: normal;
		line-height: 3.3rem;
	}

	#topCulture .btVm {
		margin: 0px auto;
		width: 245px;
		font-size: 1.4rem;
		font-weight: bold;
	}

	#topCulture .btVm a {
		background-color: #fff100;
		border: none;
	}

	#topCulture .btVm a:hover {
		background-color: #fff;
		border: none;
	}

	#topCulture .btVm a span,
	#topCulture .btVm a:hover span {
		background-image: url(img/arr_r.png);
		background-repeat: no-repeat;
		background-position: right center;
		background-size: 17px auto;
		color: #000;
	}

	#topNews {
		width: 100%;
		background-color: #333;
	}

	#topNews>div {
		margin: 0px auto;
		padding: 110px 100px 105px;
		max-width: 1240px;
		text-align: center;
	}

	#topNews h1 {
		margin: 0px 0px 90px;
		padding: 0px 0px 40px;
		font-size: 5.5rem;
		line-height: 1.2;
		letter-spacing: 0.4rem;
		position: relative;
		color: white;
	}

	#topNews h1::after {
		content: "";
		width: 120px;
		height: 5px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#topNews .newsUl ul {
		flex-wrap: wrap;
		display: flex;
		text-align: left;
	}

	#topNews .newsUl ul li {
		margin: 12px 30px 110px;
		padding-top: 60px;
		width: calc(33.33% - 60px);
		position: relative;
		text-align: center;
	}

	#topNews .newsUl ul li.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 150px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 2.1rem;
		font-weight: 700;
		line-height: 2.4rem;
		text-align: center;
		display: block;
		left: 50%;
		top: 20px;
		position: absolute;
		transform: translateX(-50%);
	}

	#topNews .newsUl ul li a {
		display: block;
	}

	#topNews .newsUl ul li a:hover {
		opacity: 0.7;
	}

	#topNews .newsUl ul li h2 {
		margin: 0px 0px 15px;
		height: 4.8rem;
		color: #000;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
		overflow: hidden;
	}

	#topNews .newsUl ul li .date {
		margin: 0px 0px 15px;
		color: #c5c5c5;
		font-size: 1.2rem;
		font-weight: normal;
		line-height: 1.8rem;
		text-align: center;
	}

	#topNews .newsUl ul li .ebody {
		padding-right: 3em;
		margin: 15px auto;
		height: 2.0rem;
		color: #000;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: center;
		overflow: hidden;
		display: inline-block;
		position: relative;
	}

	#topNews .newsUl ul li .ebody::after {
		content: "\30fb\30fb\30fb";
		color: #000;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	#topNews .newsUl ul li .link {
		color: #000;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}

	#topNews .newsUl ul li figure {
		width: 100%;
	}

	#topNews .newsUl ul li figure img {
		width: 100%;
		height: auto;
	}

	#topNews .btVm {
		margin: 0px auto;
		width: 245px;
	}

	#topNews .btVm {
		font-size: 1.4rem;
		line-height: 1.5rem;
	}

	#topNews .btVm a {
		background-color: #000;
		border: none;
		color: #fff;
		position: relative;
	}

	#topNews .btVm a::after {
		content: "";
		width: 0%;
		height: 5px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
		transition-duration: 0.5s;
	}

	#topNews .btVm a:hover {
		border: none;
	}

	#topNews .btVm a:hover::after {
		width: 100%;
	}

	#topNews .btVm a span {
		padding: 20px 32px 20px 0px;
		background-position: right top 19px;
		color: #fff;
	}

	#topNews .btVm a span::after {
		content: "";
		width: 0px;
		height: 0px;
		font-size: 0px;
		line-height: 0;
		opacity: 0;
	}

	#topNews .btVm a span::after,
	#topNews .btVm a:hover span {
		background-image: url(img/arr_vm.png);
		color: #fff;
	}

	#footSNS {
		margin: 0px auto;
		padding: 135px 100px 100px;
		max-width: 1240px;
		text-align: center;
		justify-content: center;
		display: flex;
	}

	#footSNS>div {
		margin: 0px 30px;
		padding: 60px 20px 70px;
		border: 4px #aaa solid;
		text-align: center;
		flex: 1;
	}

	#footSNS>div h1 {
		margin: 0px auto 38px;
		padding: 0px 0px 25px;
		color: #000;
		font-size: 3.6rem;
		line-height: 4.0rem;
		text-align: center;
		letter-spacing: 0.05em;
		position: relative;
	}

	#footSNS>div h1::after {
		content: "";
		width: 78px;
		height: 5px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#footSNS .boxSnsI .isBox,
	#footSNS .boxSnsF .fbBox {
		margin: 0px auto;
		max-width: 392px;
	}

	#footSNS .boxSnsI .isBox {
		background-color: #fff;
	}

	/***** COMPANY *****/

	main.company #contentHead>div {
		background-image: url(img/bg_company3.png);
		background-size: cover;
		/* background-position: 0px -200px; */
	}

	#companyMain {
		margin: 0px auto;
		padding: 30px 100px 80px;
		max-width: 1240px;
		text-align: left;
	}

	#companyMain section>div {
		margin: 0px auto;
		padding: 100px 0px 85px;
		max-width: 900px;
		text-align: center;
	}

	#companyMain .companySec01 {
		border-bottom: 1px #b1b1b1 solid;
	}

	#companyMain .companySec01 h2 {
		margin: 0px auto 80px;
		font-size: 2.5rem;
		line-height: 3.0rem;
		text-align: center;
	}

	#companyMain .companySec02 h2,
	#companyMain .companySec01 h3 {
		margin: 0px auto 50px;
		font-size: 3.9rem;
		font-weight: bold;
		line-height: 6.5rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#companyMain .companySec02 h2 span,
	#companyMain .companySec01 h3 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 16px 16px;
	}

	#companyMain .companySec01 p {
		margin: 0px auto 36px;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 3.6rem;
		text-align: center;
		letter-spacing: 0.12em;
	}

	#companyMain .companySec02 h3 {
		margin-top: 30px;
		font-size: 2.2rem;
		font-weight: bold;
		line-height: 3.6rem;
		text-align: center;
		text-decoration: underline;
		letter-spacing: 0.12em;
	}

	#companyMain .companySec02 .figSec {
		margin: 90px auto 90px;
		width: 100%;
		max-width: 675px;
	}

	#companyMain .companySec02 figure {
		padding-top: 57.34%;
		width: 100%;
		position: relative;
	}

	#companyMain .companySec02 figure img {
		width: 100%;
		height: 100%;
		left: 0px;
		top: 0px;
		position: absolute;
	}

	#companyMain .companySec02 p {
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 3.6rem;
		text-align: left;
		letter-spacing: 0.04em;
	}

	#companyNavi {
		margin: 0px auto;
		padding: 60px 0px 100px;
		max-width: 1440px;
		text-align: center;
	}

	#companyNavi ul {
		display: flex;
	}

	#companyNavi ul li {
		width: 80%;
		margin: 0 auto;
		position: relative;
	}

	#companyNavi ul li::after {
		content: "";
		width: 4px;
		height: 45px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		top: 75px;
		position: absolute;
		transform: translateX(-50%);
		z-index: 4;
	}

	#companyNavi ul li h2 {
		margin: 0px auto 45px;
		color: #919191;
		font-size: 1.1rem;
		font-weight: normal;
		line-height: 1.4rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#companyNavi ul li h2 span {
		margin: 0px auto 10px;
		color: #000;
		font-size: 3.0rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
		display: block;
	}

	#companyNavi ul li div {
		padding-top: 56.25%;
		width: 100%;
		position: relative;
	}

	#companyNavi ul li div a,
	#companyNavi ul li div::after {
		width: 100%;
		height: 100%;
		background-repeat: no-repeat;
		background-position: center center;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: 0px;
		position: absolute;
		box-sizing: border-box;
	}

	#companyNavi ul li div a {
		background-color: rgba(0, 0, 0, 0.5);
		background-image: url(img/viewmore_y.png);
		background-size: 110px auto;
		border: 5px #fff100 solid;
		z-index: 3;
		opacity: 0;
	}

	#companyNavi ul li div a:hover {
		opacity: 1;
	}

	#companyNavi ul li div::after {
		content: "";
		z-index: 2;
	}

	#companyNavi ul li.company01 div::after {
		background-image: url(img/img_tmb_company01.jpg);
		background-size: cover;
	}

	#companyNavi ul li.company02 div::after {
		background-image: url(img/img_tmb_company02.jpg);
		background-size: cover;
	}

	#companyNavi ul li.company03 div::after {
		background-image: url(img/img_tmb_company03.jpg);
		background-size: cover;
	}

	/***** MESSAGE *****/

	main.message #contentHead>div {
		background-image: url(img/bg_message.jpg);
		background-size: cover;
	}

	/* main.messagehr #contentHead > div {
		background-image: url(img/recruiter-image.jpg);
		background-size: cover;
	} */

	#messageH {
		margin: 0px auto;
		/* background: url(img/img_message01.jpg) no-repeat right center; */
		background: url(img/img_message01.jpg) no-repeat right bottom;
		background-size: 825px auto;
		padding: 115px 100px 100px;
		max-width: 1240px;
		/* height: 560px; */
		text-align: left;
	}

	.messageHR {
		margin: 0px auto;
		/* background: url(img/img_message01.jpg) no-repeat right center; */
		background: url(img/recruiter_image1.jpg) no-repeat right center;
		background-size: 825px auto;
		padding: 115px 100px 0px;
		max-width: 1240px;
		/* height: 560px; */
		text-align: left;
	}

	#messageH>div {
		width: 100%;
		max-width: 485px;
	}

	#messageH h2 {
		margin: 0px 0px 30px;
		padding: 0px 0px 36px;
		border-bottom: 2px #b1b1b1 solid;
		font-size: 4.1rem;
		font-weight: bold;
		line-height: 5.7rem;
		letter-spacing: 0.115em;
		position: relative;
	}

	#messageH h2::after {
		content: "";
		width: 220px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: -2px;
		position: absolute;
	}

	#messageH h3 {
		margin: 0px 0px 19px;
		color: #868686;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.3rem;
		letter-spacing: 0.115em;
	}

	#messageH h3 span {
		margin: 0px 15px 0px 0px;
		color: #515151;
		font-size: 2.2rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
	}

	#messageH p {
		color: #3f3f3f;
		font-size: 1.3rem;
		line-height: 1.9rem;
		letter-spacing: 0.115em;
		font-weight: bold;
	}

	#messageH .post {
		margin: 0px 0px 8px;
		color: #515151;
		font-size: 1.6rem;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
	}

	#messageHR {
		margin: 0px auto;
		/* background: url(img/img_message01.jpg) no-repeat right center; */
		background: url(https://rankuphd.jp/recruit/wp-content/uploads/2024/09/IMG_22842-scaled.jpg) no-repeat right center;
		background-size: 825px auto;
		padding: 115px 100px 100px;
		max-width: 1240px;
		/* height: 560px; */
		text-align: left;
	}

	#messageHR>div {
		width: 100%;
		max-width: 485px;
	}

	#messageHR h2 {
		margin: 0px 0px 30px;
		padding: 0px 0px 36px;
		border-bottom: 2px #b1b1b1 solid;
		/* font-size: 4.1rem; */
		font-size: 28px;
		font-weight: bold;
		line-height: 5.7rem;
		letter-spacing: 0.115em;
		position: relative;
	}

	#messageHR h2::after {
		content: "";
		width: 220px;
		height: 2px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: -2px;
		position: absolute;
	}

	#messageHR h3 {
		margin: 0px 0px 19px;
		color: #868686;
		font-size: 1.0rem;
		font-weight: bold;
		line-height: 1.3rem;
		letter-spacing: 0.115em;
	}

	#messageHR h3 span {
		margin: 0px 15px 0px 0px;
		color: #515151;
		font-size: 2.2rem;
		line-height: 3.6rem;
		letter-spacing: 0.05em;
	}

	#messageHR p {
		color: #3f3f3f;
		font-size: 1.3rem;
		line-height: 1.9rem;
		letter-spacing: 0.115em;
		font-weight: bold;
	}

	#messageHR .post {
		margin: 0px 0px 8px;
		color: #515151;
		font-size: 1.6rem;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
	}

	#messageMain {
		margin: 0px auto;
		padding: 82px 100px 55px;
		max-width: 1240px;
		text-align: left;
	}

	#messageMain h2 {
		margin: 0px 0px 75px;
		color: #868686;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		letter-spacing: 0.115em;
		text-align: center;
	}

	#messageMain h2 span {
		margin: 0px 0px 10px;
		color: #dedede;
		font-size: 10.7rem;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: 0.05em;
		display: block;
	}

	#messageMain .messageSec {
		margin: 0px 0px 50px;
		padding: 100px 0px 0px;
		position: relative;
	}

	#messageMain .messageSec::after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: " ";
		clear: both;
		height: 0;
	}

	#messageMain .messageSec .fig {
		width: 66.93%;
		top: 0px;
		position: absolute;
		z-index: 1;
	}

	#messageMain .messageSec:nth-of-type(odd) .fig {
		right: 0px;
	}

	#messageMain .messageSec:nth-of-type(even) .fig {
		left: 0px;
	}

	#messageMain .messageSec .fig figure {
		width: 100%;
		height: 477px;
		overflow: hidden;
		position: relative;
	}

	#messageMain .messageSec .fig figure img {
		height: 477px;
		width: auto;
		left: 50%;
		top: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#messageMain .messageSec .secBox {
		padding: 100px 60px 35px;
		max-width: 515px;
		min-height: 350px;
		background-color: #fff;
		border-top: 4px #fff100 solid;
		z-index: 2;
		position: relative;
	}

	#messageMain .messageSec:nth-of-type(odd) .secBox {
		float: left;
	}

	#messageMain .messageSec:nth-of-type(even) .secBox {
		float: right;
	}

	#messageMain .messageSec .secBox h3 {
		margin: 0px 0px 30px;
		color: #010101;
		font-size: 2.9rem;
		font-weight: bold;
		line-height: 3.6rem;
		letter-spacing: 0.115em;
	}

	#messageMain .messageSec .secBox p {
		color: #1e1e1e;
		font-size: 1.4rem;
		line-height: 2.8rem;
		letter-spacing: 0.08em;
	}

	#messageBtm {
		margin: 0px 0px 100px;
		height: 665px;
		background-color: #000;
		font-size: 0px;
		line-height: 0;
	}

	#messageBtm figure {
		margin: 0px auto;
		width: 750px;
	}

	/***** OUTLINE *****/

	main.outline #contentHead>div {
		background-image: url(img/bg_outline.jpg);
		background-size: cover;
	}

	#informationSec,
	#historySec {
		margin: 0px auto;
		padding: 100px 100px 150px;
		max-width: 1240px;
		text-align: left;
	}

	#informationSec>div,
	#historySec>div {
		position: relative;
	}

	#informationSec h2,
	#historySec h2 {
		width: 40%;
		color: #414141;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.115em;
		left: 0px;
		top: 0px;
		position: absolute;
	}

	#informationSec h2 span,
	#historySec h2 span {
		margin: 0px 0px 22px;
		color: #000;
		font-size: 3.7rem;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: 0.05em;
		display: block;
		position: relative;
	}

	#informationSec h2 span::after,
	#historySec h2 span::after {
		content: "";
		width: 65px;
		height: 4px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: 115px;
		position: absolute;
	}

	#informationSec #infoTbl {
		margin: 0px 0px 120px 42%;
		width: 58%;
	}

	#informationSec #infoTbl dl {
		padding: 25px 0px;
		width: 100%;
		border-bottom: 1px #9c9c9c solid;
		display: flex;
	}

	#informationSec #infoTbl dl dt,
	#informationSec #infoTbl dl dd {
		font-size: 1.3rem;
		line-height: 2.3rem;
		letter-spacing: 0.115em;
	}

	#informationSec #infoTbl dl dt {
		width: 165px;
		font-weight: bold;
	}

	#informationSec #infoTbl dl dd {
		padding: 0px 20px;
		border-left: 1px #9c9c9c solid;
		font-weight: normal;
		flex: 1;
	}

	#historySec #historyTbl {
		margin: 0px 0px 0px 42%;
		width: 58%;
	}

	#historySec #historyTbl dl {
		padding: 11px 0px;
		width: 100%;
		display: flex;
	}

	#historySec #historyTbl dl dt,
	#historySec #historyTbl dl dd {
		font-size: 1.2rem;
		line-height: 1.7rem;
		letter-spacing: 0.115em;
	}

	#historySec #historyTbl dl dt {
		padding-left: 8px;
		width: 127px;
		font-weight: bold;
		position: relative;
	}

	#historySec #historyTbl dl dt::after {
		content: "";
		width: 4px;
		height: 2px;
		background-color: #000;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: 8px;
		position: absolute;
	}

	#historySec #historyTbl dl dd {
		font-weight: normal;
		flex: 1;
	}

	#informationSec #gMap {
		width: 100%;
		height: 455px;
	}

	#informationSec #btMap {
		margin: 0px auto;
		width: 80%;
		font-size: 1.6rem;
		line-height: 1.9rem;
		position: relative;
	}

	#informationSec #btMap a {
		width: 100%;
		background-color: #fff;
		border: 3px #1c1c1c solid;
		text-align: center;
		display: block;
		left: 0px;
		top: -35px;
		position: absolute;
		box-sizing: border-box;
	}

	#informationSec #btMap a span {
		padding: 25px 35px 25px 0px;
		background: url(img/arr_r.png) no-repeat right center;
		background-size: 24px auto;
		display: inline-block;
		transition-duration: 0.5s;
	}

	#informationSec #btMap a span {
		opacity: 0.6;
	}

	/***** DATA *****/

	main.data #contentHead>div {
		background-image: url(img/bg_data.jpg);
		background-size: cover;
	}

	#dataMain {
		margin: 0px auto;
		padding: 105px 100px 90px;
		max-width: 1240px;
		text-align: center;
	}

	#dataMain h2 {
		margin: 0px auto 95px;
		font-size: 3.4rem;
		font-weight: bold;
		line-height: 1.2;
	}

	#dataMain>div {
		padding: 55px 55px 15px;
		background-color: #fff;
		border: 5px #7d7d7d solid;
	}

	#dataMain .dataBox {
		margin: 0px auto 40px;
		background: url(img/bg_box.png) repeat center center;
		background-size: 10px 10px;
		border: 10px #eae6ce solid;
	}

	#dataMain .dataBox h3 {
		margin: 0px auto 35px;
		padding: 35px 0px 12px;
		font-size: 1.7rem;
		line-height: 2.0rem;
		text-align: center;
		letter-spacing: 0.115em;
		position: relative;
	}

	#dataMain .dataBox h3::after {
		content: "";
		width: 130px;
		height: 3px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 50%;
		bottom: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#dataMain .dataBox h4 {
		margin: 0px auto 32px;
		padding: 0px 20px;
	}

	#dataMain .dataBox h4 img {
		margin: 0px auto 22px;
		width: auto;
		max-width: 100%;
		max-height: 44px;
	}

	#dataMain .dataBox h4 span {
		margin: 0px auto;
		color: #bfbebe;
		font-size: 1.3rem;
		line-height: 1.8rem;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#dataMain .dataBox>p {
		padding: 0px 20px;
		font-size: 2.1rem;
		line-height: 2.4rem;
		text-align: center;
		letter-spacing: 0.075em;
	}

	/***** PEOPLE *****/

	main.people #contentHead>div {
		background-image: url(img/bg_people3.png);
		background-size: cover;
		/* background-position: 0px -180px; */
	}


	#peopleMain {
		margin: 0px auto;
		padding: 135px 100px 30px;
		max-width: 1240px;
		text-align: left;
	}

	#peopleMain .peopleSecH {
		border-bottom: 1px #b1b1b1 solid;
	}

	#peopleMain .peopleSecH>div {
		margin: 0px auto;
		padding: 0px 0px 85px;
		max-width: 900px;
		text-align: center;
	}

	#peopleMain .peopleSecH h2 {
		margin: 0px auto 60px;
		font-size: 3.9rem;
		font-weight: bold;
		line-height: 6.5rem;
		text-align: center;
		letter-spacing: 0.005em;
	}

	#peopleMain .peopleSecH h2 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 16px 16px;
	}

	#peopleMain .peopleSecH p {
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 3.6rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#peopleMain #peopleSecItv {
		margin: 0px auto;
		padding: 95px 0px 0px;
		max-width: 1200px;
		text-align: center;
	}

	#peopleMain #peopleSecItv .peopleItvT {
		margin: 0px auto 80px;
		text-align: center;
	}

	#peopleMain #peopleSecItv .peopleItvT h2 {
		margin: 0px auto 20px;
		color: #dedede;
		font-size: 10.7rem;
		line-height: 1.1;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#peopleMain #peopleSecItv .peopleItvT h3 {
		color: #414141;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 1.2;
		text-align: center;
		letter-spacing: 0.115em;
	}

	#peopleMain #peopleSecItv .secPeopleItv {
		margin: 0px auto 127px;
		max-width: 1200px;
		height: 490px;
		position: relative;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv01 {
		background: url(img/img_tmb_people01.jpg) no-repeat left center;
		background-size: 1200px auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv02 {
		background: url(img/img_tmb_people02.jpg) no-repeat right center;
		background-size: 1200px auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv03 {
		background: url(img/img_tmb_people03.jpg) no-repeat left center;
		background-size: 1200px auto;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox {
		width: 415px;
		top: 0px;
		position: absolute;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv01 .itvBox,
	#peopleMain #peopleSecItv .secPeopleItv#itv03 .itvBox {
		width: 51.6%;
		min-width: 415px;
		right: 0%;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv02 .itvBox {
		left: 14%;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div {
		height: 527px;
		position: relative;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>h3 {
		margin: 0px 0px 0px;
		padding: 60px 0px 25px 64px;
		width: 78%;
		max-width: 351px;
		background: url(img/icon_itv.png) no-repeat 0px 60px;
		background-size: 43px auto;
		border-bottom: 2px #cfc907 solid;
		font-size: 1.8rem;
		line-height: 2.4rem;
		text-align: left;
		box-sizing: border-box;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>h3 span {
		font-size: 1.2rem;
		display: block;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div {
		height: 320px;
		position: relative;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div {
		left: 0px;
		top: 50%;
		position: absolute;
		transform: translateY(-50%);
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h4 {
		margin: 0px 0px 40px;
		font-size: 4.3rem;
		font-weight: bold;
		line-height: 5.7rem;
		text-align: left;
		letter-spacing: 0.05em;
	}

	#peopleMain #peopleSecItv .secPeopleItv#itv01 .itvBox>div>div>div>h4 {
		font-size: 3.7rem;
		line-height: 5.2rem;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h5,
	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h6 {
		color: #878700;
		font-weight: bold;
		line-height: 3.1rem;
		text-align: left;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h5 {
		font-size: 1.5rem;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>div>div>h6 {
		font-size: 1.7rem;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p {
		width: 415px;
		font-size: 1.4rem;
		line-height: 1.5rem;
		text-align: center;
		left: 0px;
		bottom: 0px;
		position: absolute;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a {
		margin: 0px;
		padding: 30px 0px;
		display: block;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a {
		padding-right: 23px;
		background: #000 url(img/arr_vm.png) no-repeat right 145px top 29px;
		background-size: 17px auto;
		color: #fff;
		position: relative;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a::after {
		content: "";
		width: 0%;
		height: 6px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
		transition-duration: 0.5s;
	}

	#peopleMain #peopleSecItv .secPeopleItv .itvBox>div>p a:hover::after {
		width: 100%;
	}

	/***** INTERVIEW *****/

	.interview #contentHead {
		position: relative;
	}

	main.interview01 #contentHead>div {
		background-image: url(img/bg_interview01.jpg);
		background-size: cover;
	}

	main.interview02 #contentHead>div {
		background-image: url(img/bg_interview02.jpg);
		background-size: cover;
	}

	main.interview03 #contentHead>div {
		background-image: url(img/bg_interview03.jpg);
		background-size: cover;
	}

	.interview #contentHead h1 {
		padding: 95px 0px 0px 47%;
		color: #000;
		font-size: 4.3rem;
		font-weight: bold;
		line-height: 6.2rem;
		text-align: left;
	}

	.interview #contentHead h1::after {
		display: none;
	}

	.interview #contentHead h2,
	.interview #contentHead h3 {
		color: #878700;
		line-height: 3.1rem;
		text-align: left;
		left: 47%;
		position: absolute;
	}

	.interview #contentHead h2 {
		font-size: 1.5rem;
		bottom: 84px;
	}

	.interview #contentHead h3 {
		font-size: 1.7rem;
		bottom: 50px;
	}

	#interviewMain .interviewSec {
		padding: 120px 0px;
	}

	#interviewMain .interviewSec>div {
		margin: 0px auto;
		max-width: 1440px;
		align-items: flex-start;
		display: flex;
	}

	#interviewMain .interviewSec.contentG>div {
		flex-direction: row-reverse;
	}

	#interviewMain .interviewSec>div>figure {
		height: 529px;
		font-size: 0px;
		line-height: 0;
		overflow: hidden;
		position: relative;
		flex: 1;
	}

	#interviewMain .interviewSec>div>figure img {
		height: 529px;
		width: auto;
		left: 50%;
		top: 0px;
		position: absolute;
		transform: translateX(-50%);
	}

	#interviewMain .interviewSec>div>div {
		width: 30%;
		text-align: left;
	}

	#interviewMain .interviewSec.contentG>div>div {
		padding: 10px 50px 10px 100px;
	}

	#interviewMain .interviewSec.contentW>div>div {
		padding: 10px 100px 10px 50px;
	}

	#interviewMain .interviewSec>div>div h2 {
		margin: 0px 0px 36px;
		padding: 0px 0px 45px;
		font-size: 2.9rem;
		line-height: 4.2rem;
		position: relative;
	}

	#interviewMain .interviewSec>div>div h2::after {
		content: "";
		width: 120px;
		height: 4px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
	}

	#interviewMain .interviewSec>div>div p {
		color: #3a3a3a;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 2.8rem;
		letter-spacing: 0.08em;
	}

	#interviewNav {
		padding: 105px 0px 90px;
	}

	#interviewNav ul {
		justify-content: center;
		flex-wrap: wrap;
		display: flex;
	}

	#interviewNav ul li {
		margin: 0px 18px 15px;
		width: 483px;
		font-size: 0px;
		line-height: 0;
	}

	/***** CULTURE *****/

	main.culture #contentHead>div {
		background-image: url(img/bg_culture3.png);
		background-size: cover;
		/* background-position: 0px -80px; */
	}

	main.culture #contentHead>div::before {
		/* 透過した黒を上から重ねるイメージ */
		/* background-color: rgba(0,0,0,0.4); */
		/* 自由に位置指定 */
		/* position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		content: ' '; */
	}

	#cultureSec01 {
		margin: 0px auto;
		padding: 130px 120px 120px;
		max-width: 1200px;
		text-align: center;
	}

	#cultureSec01 h2 {
		margin: 0px auto 60px;
		font-size: 3.9rem;
		font-weight: bold;
		line-height: 6.5rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec01 h2 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 16px 16px;
	}

	#cultureSec01 p {
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 3.6rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec02,
	#cultureSec03,
	#cultureSec04 {
		margin: 0px auto;
		text-align: center;
	}

	#cultureSec02 {
		padding: 115px 10px 65px;
		max-width: 1200px;
	}

	#cultureSec03 {
		padding: 70px 10px 90px;
		max-width: 1200px;
	}

	#cultureSec04 {
		padding: 80px 5px 95px;
		max-width: 1210px;
	}

	#cultureSec02>h2,
	#cultureSec03>h2,
	#cultureSec04>h2 {
		margin: 0px auto 20px;
		color: #dedede;
		font-size: 10.7rem;
		line-height: 1.1;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec02>p,
	#cultureSec03>p,
	#cultureSec04>p {
		margin: 0px auto 60px;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.6rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#cultureSec04>p {
		margin: 0px auto 52px;
	}

	#cultureSec04>p.note {
		margin: 0px auto 60px;
		text-decoration: underline;
	}

	.culturePSN {
		padding: 30px 0px 0px;
		flex-wrap: wrap;
		display: flex;
	}

	.culturePSN>div {
		margin-bottom: 89px;
		width: calc(50% - 25px);
	}

	.culturePSN>div:nth-of-type(odd) {
		margin-right: 50px;
	}

	.culturePSN>div h3 {
		margin: 0px auto 64px;
		padding: 3px 0px 0px;
		border-top: 3px #8c8c8c solid;
		border-bottom: 1px #8c8c8c solid;
		color: #fff100;
		font-size: 5.2rem;
		line-height: 6.0rem;
		text-align: center;
		letter-spacing: -0.01em;
		position: relative;
	}

	.culturePSN>div h3 span {
		width: 102px;
		background-color: #bebebe;
		display: block;
		left: 50%;
		top: -30px;
		position: absolute;
		transform: translateX(-50%);
	}

	.culturePSN>div>div {
		justify-content: space-between;
		display: flex;
	}

	.culturePSN>div>div dl {
		width: calc(50% - 10px);
		position: relative;
	}

	.culturePSN>div>div dl.pra {
		background-color: #fff;
	}

	.culturePSN>div>div dl.prb {
		background-color: #d9d9d9;
	}

	.culturePSN>div>div dl::after {
		content: "";
		width: 68px;
		height: 68px;
		border-radius: 50%;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: -15px;
		top: -18px;
		position: absolute;
	}

	.culturePSN>div>div dl.pra::after {
		background: #fff url(img/icon_mb_a.png) no-repeat center center;
		background-size: cover;
	}

	.culturePSN>div>div dl.prb::after {
		background: #d9d9d9 url(img/icon_mb_b.png) no-repeat center center;
		background-size: cover;
	}

	.culturePSN>div>div dl dt {
		font-size: 0px;
		line-height: 0;
	}

	.culturePSN>div>div dl dd {
		padding: 11px 30px;
		height: 4.6rem;
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 2.3rem;
		text-align: center;
		position: relative;
	}

	.culturePSN>div>div dl dd p {
		width: 80%;
		left: 50%;
		top: 50%;
		position: absolute;
		transform: translate(-50%, -50%);
	}

	.cultureSTY {
		margin: 0px auto 90px;
	}

	.cultureSTY>section {
		background-color: #d8d8d8;
		align-items: center;
		display: flex;
	}

	.cultureSTY>section:nth-of-type(even) {
		flex-direction: row-reverse;
	}

	.cultureSTY>section>figure,
	.cultureSTY>section>div {
		width: 50%;
		flex: 1;
	}

	.cultureSTY>section>figure {
		min-height: 400px;
		background-repeat: no-repeat;
		background-position: center center;
	}

	.cultureSTY>section>figure img {
		display: none !important;
	}

	.cultureSTY>section>div {
		text-align: left;
		box-sizing: border-box;
	}

	.cultureSTY>section>div dl {
		padding: 20px 55px 30px;
		align-items: center;
		display: flex;
	}

	.cultureSTY>section>div dl dt {
		margin: 0px 32px 0px 0px;
		padding: 15px 0px;
		width: 72px;
		background-color: #fff100;
		color: #000;
		font-size: 3.7rem;
		line-height: 4.2rem;
		text-align: center;
		letter-spacing: -0.01em;
		display: block;
	}

	.cultureSTY>section>div dl dd {
		font-size: 2.7rem;
		font-weight: bold;
		line-height: 3.8rem;
		letter-spacing: 0.00em;
	}

	.cultureSTY>section>div dl dd span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 14px 14px;
	}

	.cultureSTY>section>div p {
		padding: 0px 55px 20px;
		font-size: 1.6rem;
		font-weight: normal;
		line-height: 2.5rem;
		letter-spacing: 0.00em;
	}

	.cultureSTYB {
		padding: 120px 0px 0px;
		background: url(img/new_officeimage.jpg) no-repeat left top;
		background-size: 800px auto;
		overflow: hidden;
	}

	.cultureSTYB>section {
		margin: 0px 0px 0px auto;
		width: 100%;
		max-width: 600px;
		background-color: #d8d8d8;
		position: relative;
	}

	.cultureSTYB>section::before {
		content: "";
		width: 477px;
		height: 103px;
		background: url(img/txt_culture_style_last.png) no-repeat center center;
		background-size: cover;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		top: -64px;
		position: absolute;
	}

	.cultureSTYB>section>div {
		padding: 75px 53px;
		text-align: left;
	}

	.cultureSTYB>section>div h3 {
		margin: 0px 0px 40px;
		font-size: 2.7rem;
		font-weight: bold;
		line-height: 3.8rem;
		letter-spacing: 0.00em;
	}

	.cultureSTYB>section>div h3 span {
		background: url(img/bar_y.png) repeat-x center bottom;
		background-size: 14px 14px;
	}

	.cultureSTYB>section>div p {
		font-size: 1.6rem;
		font-weight: normal;
		line-height: 2.5rem;
		letter-spacing: 0.00em;
	}

	#galleryList {
		margin: 0px auto;
		width: 100%;
		max-width: 1210px;
	}

	#galleryList figure {
		margin: 0px 5px 9px 4px;
		font-size: 0px;
		line-height: 0;
	}

	#galleryList figure a {
		display: block;
		position: relative;
	}

	#galleryList figure a::after {
		content: "";
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.7) url(img/icon_plus.png) no-repeat center center;
		background-size: 81px auto;
		border: 5px #fff100 solid;
		font-size: 0px;
		line-height: 0;
		box-sizing: border-box;
		display: block;
		opacity: 0;
		left: 0px;
		top: 0px;
		position: absolute;
		transition-property: opacity;
		transition-duration: 0.5s;
	}

	#galleryList figure a:hover::after {
		opacity: 1;
	}

	#galleryList .item {
		width: 394px;
	}

	/***** NEWS *****/

	main.news #contentHead>div {
		/* background-image: url(img/bg_news.jpg); */
		background-size: cover;
	}

	#newsMain {
		margin: 0px auto;
		padding: 70px 100px 80px;
		max-width: 1240px;
		text-align: left;
	}

	#newsMain .newsUl ul {
		padding: 0px 0px 85px;
		flex-wrap: wrap;
		display: flex;
		text-align: left;
	}

	#newsMain .newsUl ul li {
		margin: 100px 30px 0px;
		padding: 0px 0px 20px;
		width: calc(33.33% - 60px);
		position: relative;
		text-align: center;
	}

	#newsMain .newsUl ul li.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 150px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 2.1rem;
		font-weight: 700;
		line-height: 2.4rem;
		text-align: center;
		display: block;
		left: 50%;
		top: -40px;
		position: absolute;
		transform: translateX(-50%);
	}

	#newsMain .newsUl ul li a {
		display: block;
	}

	#newsMain .newsUl ul li a:hover {
		opacity: 0.7;
	}

	#newsMain .newsUl ul li h2 {
		margin: 0px 0px 15px;
		height: 4.8rem;
		color: #000;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
		overflow: hidden;
		letter-spacing: 0.05em;
	}

	#newsMain .newsUl ul li .date {
		margin: 0px 0px 15px;
		color: #e5e5e5;
		font-size: 1.2rem;
		line-height: 1.8rem;
		text-align: center;
	}

	#newsMain .newsUl ul li .ebody {
		padding-right: 3em;
		margin: 15px auto;
		height: 2.0rem;
		color: #000;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		text-align: center;
		overflow: hidden;
		display: inline-block;
		position: relative;
	}

	#newsMain .newsUl ul li .ebody::after {
		content: "\30fb\30fb\30fb";
		color: #000;
		font-size: 1.4rem;
		font-weight: normal;
		line-height: 2.0rem;
		right: 0px;
		top: 0px;
		position: absolute;
	}

	#newsMain .newsUl ul li .link {
		color: #000;
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.4rem;
		text-align: center;
	}

	#newsMain .newsUl ul li figure {
		width: 100%;
	}

	#newsMain .newsUl ul li figure img {
		width: 100%;
		height: auto;
	}

	main.entry>.content {
		padding-top: 90px;
	}

	#entryMain {
		margin: 0px auto;
		padding: 160px 100px 105px;
		max-width: 1000px;
		text-align: left;
		position: relative;
	}

	#entryMain.new::before {
		content: "\02d\020\04e\045\057\020\02d";
		width: 150px;
		color: #e70808;
		font-family: 'Montserrat', sans-serif;
		font-size: 2.4rem;
		font-weight: 700;
		line-height: 2.6rem;
		text-align: center;
		display: block;
		left: 50%;
		top: 120px;
		position: absolute;
		transform: translateX(-50%);
	}

	#entryMain>.date {
		margin: 0px auto 40px;
		color: #e5e5e5;
		font-size: 1.5rem;
		line-height: 1.8rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#entryMain>h1 {
		margin: 0px 0px 45px;
		font-size: 2.8rem;
		font-weight: bold;
		line-height: 3.8rem;
		text-align: center;
		letter-spacing: 0.05em;
	}

	#entryMain>figure {
		margin: 0px auto;
		width: 100%;
		font-size: 0px;
		line-height: 0;
	}

	#entryMain .entryBody {
		margin: 0px 0px 37px;
		padding: 65px 0px;
		border-bottom: 2px #666 solid;
		font-size: 1.4rem;
		line-height: 2.2rem;
		letter-spacing: 0.04em;
	}

	#entryMain .entryBody p {
		margin: 0px 0px 4.4rem;
	}

	#entryMain #toList {
		margin: 0px auto;
		padding: 110px 100px 0px;
		max-width: 584px;
		font-size: 1.6rem;
		line-height: 2.4rem;
		letter-spacing: 0.05em;
		text-align: center;
	}

	#entryMain #toList a {
		padding: 23px 0px 22px;
		color: #000;
		background-color: #fff;
		border: 3px #1c1c1c solid;
		display: block;
	}

	#entryMain #toList a:hover {
		background-color: #fff100;
	}

	.paging ul.page-numbers {
		padding: 0px 0px 25px;
		flex-wrap: wrap;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.paging ul.page-numbers li {
		margin: 0px 5px;
		font-size: 1.4rem;
		line-height: 2.1rem;
		text-align: center;
		letter-spacing: 0.08em;
	}

	.paging ul.page-numbers li span,
	.paging ul.page-numbers li a {
		padding: 10px 0px;
		width: 43px;
		text-decoration: none;
		display: block;
	}

	.paging ul.page-numbers li span {
		color: #000;
		background-color: #fff;
	}

	.paging ul.page-numbers li a {
		color: #fff;
		background-color: #000;
	}

	.paging ul.page-numbers li a:hover {
		background-color: #fff100;
	}

	.paging ul.page-numbers li a.prev,
	.paging ul.page-numbers li a.next {
		color: #000;
		background: none;
	}

	.paging ul.page-numbers li a.prev:hover,
	.paging ul.page-numbers li a.next:hover {
		color: #fff100;
	}

	.paging ul.page-numbers li span.dots {
		width: 28px;
		color: #5d5d5d;
		background: none;
	}

	.paging .pagePN {
		justify-content: space-between;
		display: flex;
		position: relative;
	}

	.paging .pagePN::after {
		content: "";
		width: 2px;
		height: 100%;
		background: rgba(0, 0, 0, 0.3);
		font-size: 0px;
		line-height: 0;
		display: block;
		left: calc(50% - 1px);
		top: 0px;
		position: absolute;
	}

	.paging .pagePN>div {
		width: 50%;
		max-width: 340px;
		min-height: 98px;
		position: relative;
		box-sizing: border-box;
	}

	.paging .pagePN>div a {
		display: block;
	}

	.paging .pagePN>.pnP a {
		padding-left: 156px;
	}

	.paging .pagePN>.pnN a {
		padding-right: 156px;
	}

	.paging .pagePN>div a:hover {
		opacity: 0.7;
	}

	.paging .pagePN>div figure {
		width: 137px;
		font-size: 0px;
		line-height: 0;
		top: 0px;
		position: absolute;
	}

	.paging .pagePN>.pnP figure {
		left: 0px;
	}

	.paging .pagePN>.pnN figure {
		right: 0px;
	}

	.paging .pagePN>.pnP p,
	.paging .pagePN>.pnP h2 {
		text-align: left;
	}

	.paging .pagePN>.pnN p,
	.paging .pagePN>.pnN h2 {
		text-align: right;
	}

	.paging .pagePN>div .txtPN {
		margin: 0px 0px 4px;
		color: #000;
		font-size: 1.4rem;
		line-height: 1.2;
		letter-spacing: 0.08em;
	}

	.paging .pagePN>div .date {
		margin: 0px 0px 6px;
		color: #e5e5e5;
		font-size: 1.1rem;
		line-height: 1.2;
		letter-spacing: 0.05em;
	}

	.paging .pagePN>div h2 {
		color: #000;
		font-size: 1.2rem;
		font-weight: bold;
		line-height: 2.0rem;
		letter-spacing: 0.05em;
	}

	.flgP {
		display: block !important;
	}

	.flgS {
		display: none !important;
	}

}

#loading {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 9999;
	visibility: hidden;
	opacity: 0;
	transition-property: opacity, visibility;
	transition-duration: .6s, 0s;
	transition-delay: .0s, .6s;
	transition-timing-function: ease-out
}

@media screen and (max-width: 1438px) {
	#topNews .newsUl ul li {
		width: calc(33.3% - 40px);
	}

	#topNews .newsUl ul li:nth-of-type(3n+2) {
		margin-left: 0px;
		margin-right: 0px;
	}
}

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

	.culturePSN {
		margin: 0px auto;
		max-width: 575px;
		display: block;
	}

	.culturePSN>div {
		width: 100%;
	}

	.culturePSN>div:nth-of-type(odd) {
		margin-right: 0px;
	}

}

@media screen and (min-width: 768px) and (max-width: 1026px) {
	#topNews .newsUl ul li {
		width: calc(50% - 60px);
	}

	#topNews .newsUl ul li:nth-of-type(3n+2) {
		margin-left: 30px;
		margin-right: 30px;
	}
}

#footSNS .fbBox>.fb-page {
	width: 100%;
}

#footSNS .fbBox>.fb-page>span,
#footSNS .fbBox iframe {
	width: 100% !important;
}

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

	#footSNS {
		display: block;
	}

	#footSNS>div {
		margin-bottom: 30px;
	}

	#footSNS .boxSnsF .fbBox {
		margin: 0px auto;
		max-width: 500px;
	}

}

#loading.show {
	visibility: visible;
	opacity: 1;
	transition-delay: .01s, 0s;
}

#loading.end {
	display: none;
}

#loading .va-wrap {
	position: relative;
	z-index: 2
}

#loading:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #c6c6c6;
	z-index: 1
}

#loading #progress,
#loading #progressNum {
	margin: 0px auto;
	overflow: hidden;
	position: relative;
}

#loading #progress>div,
#loading #progressNum>div {
	top: 0px;
	left: 0px;
	position: absolute;
}

#loading #progress>div {
	background: url(img/loading_copy.png) no-repeat center center;
	background-size: cover;
}

#loading #progressNum {
	font-family: 'Oswald', sans-serif;
	font-size: 1.0rem;
	line-height: 2.4rem;
	font-weight: 300;
	text-align: right;
	color: #000;
}

#loading #progressNum,
#loading #progressNum>div {
	width: 40px;
	height: 2.4rem;
}

#loading #progressNum>div>span {
	margin-right: 3px;
	font-size: 1.6rem;
	line-height: 2.4rem;
}

#loading #progressNum>div>span>span {
	display: inline-block;
	width: 9px
}

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

	#loading #progress,
	#loading #progress>div {
		width: 144px;
		height: 97px;
	}

	#loading #progressNum {
		margin: 9px auto 0px;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {

	#loading #progress,
	#loading #progress>div {
		width: 291px;
		height: 197px;
	}

	#loading #progressNum {
		margin: 18px auto 0px;
	}
}

.va-wrap {
	display: table;
	width: 100%;
	height: 100%
}

.va-wrap .va-mid {
	display: table-cell;
	vertical-align: middle
}

#loading #progress>div,
#loading #progressNum>div,
#loading.show #progress>div,
#loading.show #progressNum>div {
	transition: all 1.0s cubic-bezier(0.215, 0.61, 0.355, 1);
	transform: translateY(100%);
}

#loading.start #progress>div,
#loading.end #progress>div,
#loading.start #progressNum>div,
#loading.end #progressNum>div {
	transform: translateY(0%);
}


#opening {
	width: 100%;
	background: #c6c6c6 url(img/flag_bg.png) no-repeat center bottom;
	background-size: contain;
	left: 0px;
	top: 0px;
	position: fixed;
	z-index: 5000;
	transition: all 1.0s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#opening.bigO {
	background-size: cover;
}

.opening-end {
	margin-top: -100vh;
	opacity: 0;
	transition: all 1.0s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#opening>div,
#opening>div #openImg,
#opening>div #openImgS {
	height: 100vh;
	overflow: hidden;
	position: relative;
}

#opening>div {
	width: 100vw;
}

#opening>div #openImg {
	width: 100%;
}

#opening>div #openImg img {
	display: none;
}

#opening>div #openImg canvas {
	left: 50%;
	top: 50%;
	position: absolute;
	transform: translate(-50%, -50%);
}

#opening .scroll {
	width: 100%;
	font-size: 1.1rem;
	line-height: 1.5rem;
	text-align: center;
	left: 0px;
	bottom: 0px;
	position: absolute;
}

@media screen and (max-width: 767px) {
	#opening .scroll {
		padding-bottom: 22vh;
		background: url(img/bar.png) no-repeat center bottom;
		background-size: 2px 15vh;
	}

	#opening.jpg {
		background-image: url(img/flag_img_sq_sp.jpg);
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#opening .scroll {
		padding-bottom: 46px;
		background: url(img/bar.png) no-repeat center bottom;
		background-size: 4px 30px;
	}

	#opening.jpg {
		background-image: url(img/flag_img_sq.jpg);
	}
}

#topIntro header {
	display: none;
}

body.top #topIntro header {
	display: block;
}

#wrap {
	overflow: hidden;
}

.cultureSTY section,
.secPeopleItv,
#interviewMain .interviewSec,
#messageMain .messageSec,
#topPeople>div .secPeople {
	transition: all 1.0s cubic-bezier(.075, .82, .165, 1);
}

.cultureSTY section:nth-of-type(odd),
.secPeopleItv#itv01,
.secPeopleItv#itv03,
#interviewMain .interviewSec:nth-of-type(odd),
#messageMain .messageSec:nth-of-type(odd),
#topPeople>div .secPeople:nth-of-type(odd) {
	transform: translateX(100%);
	opacity: 0;
}

.cultureSTY section:nth-of-type(even),
.secPeopleItv#itv02,
#interviewMain .interviewSec:nth-of-type(even),
#messageMain .messageSec:nth-of-type(even),
#topPeople>div .secPeople:nth-of-type(even) {
	transform: translateX(-100%);
	opacity: 0;
}

#newsMain,
#entryMain,
#cultureSec01,
#cultureSec02,
.cultureSTYB section,
#cultureSec04,
#peopleMain .peopleSecH,
#peopleSecItv .peopleItvT,
#interviewNav,
#informationSec>div,
#historySec>div,
#messageH>div,
#messageBtm,
.companySec01,
.companySec02,
#companyNavi,
#topCompany>div,
#topCulture>div,
#topNews>div {
	transform: translateY(100px);
	transition: all 1.0s cubic-bezier(.075, .82, .165, 1);
	opacity: 0;
}

.cultureSTY section.fadeSec:nth-of-type(odd),
.cultureSTY section.fadeSec:nth-of-type(even),
.secPeopleItv#itv01.fadeSec,
.secPeopleItv#itv02.fadeSec,
.secPeopleItv#itv03.fadeSec,
#interviewMain .interviewSec.fadeSec:nth-of-type(odd),
#interviewMain .interviewSec.fadeSec:nth-of-type(even),
#messageMain .messageSec.fadeSec:nth-of-type(odd),
#messageMain .messageSec.fadeSec:nth-of-type(even),
#topPeople>div .secPeople.fadeSec:nth-of-type(odd),
#topPeople>div .secPeople.fadeSec:nth-of-type(even) {
	transform: translateX(0px);
	opacity: 1;
}

#newsMain.fadeSec,
#entryMain.fadeSec,
#cultureSec01.fadeSec,
#cultureSec02.fadeSec,
.cultureSTYB section.fadeSec,
#cultureSec04.fadeSec,
#peopleMain .peopleSecH.fadeSec,
#peopleSecItv .peopleItvT.fadeSec,
#interviewNav.fadeSec,
#informationSec.fadeSec>div,
#historySec.fadeSec>div,
#messageH.fadeSec>div,
#messageBtm.fadeSec,
.companySec01.fadeSec,
.companySec02.fadeSec,
#companyNavi.fadeSec,
#topCompany.fadeSec>div,
#topCulture.fadeSec>div,
#topNews.fadeSec>div {
	transform: translateY(0px);
	opacity: 1;
}

.companySec02 .figSec img {
	opacity: 0;
	transition: all 1.0s;
}

.companySec02 .figSec .imgB {
	transition-delay: 0.5s;
}

.companySec02 .figSec .imgC {
	transition-delay: 1s;
}

.companySec02 .figSec.fadeSec img {
	opacity: 1;
}

/***** MODAL *****/

#popMdlSec {
	width: 100%;
	height: 100vh;
	margin: 0;
	padding: 0;
	background: rgba(0, 0, 0, 0.8);
	left: 0px;
	top: 0px;
	position: fixed;
	z-index: 999;
	display: none;
}

#popMdlSec>div {
	width: 100%;
	height: 100%;
	position: relative;
}

#popMdlSec #closeMdl {
	font-size: 0px;
	line-height: 0;
	right: 0px;
	top: 0px;
	position: absolute;
}

#popMdlSec #closeMdl a {
	background: #fff100 url(img/icon_mb_b.png) no-repeat center center;
	background-size: cover;
	text-indent: -9999px;
	display: block;
}

#popMdlSec #mainMdl ul li {
	left: 50%;
	top: 50%;
	position: absolute;
	transform: translate(-50%, -50%);
	opacity: 0;
	transition-property: opacity;
	transition-duration: 0.5s;
}

#popMdlSec #mainMdl ul li.set {
	opacity: 1;
}

#popMdlSec #mainMdl ul li img {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	vertical-align: top;
}

#popMdlSec #mainMdl ul li p {
	padding: 10px 0px;
	color: #fff;
	font-size: 1.4rem;
	line-height: 1.2;
	text-align: left;
}

#popMdlSec #mainMdl>div>p {
	font-size: 1.4rem;
	line-height: 1.6rem;
	top: 50%;
	position: absolute;
	transform: translateY(-50%);
}

#popMdlSec #mainMdl>div>p#leftMdl {
	text-align: left;
}

#popMdlSec #mainMdl>div>p#rightMdl {
	text-align: right;
}

#popMdlSec #mainMdl>div>p a {
	color: #fff;
	text-decoration: none;
	display: block;
}

#popMdlSec #mainMdl>div>p#leftMdl a {
	background: url(img/arr_md_l.png) no-repeat left center;
	background-size: contain;
}

#popMdlSec #mainMdl>div>p#rightMdl a {
	background: url(img/arr_md_r.png) no-repeat right center;
	background-size: contain;
}


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

	#popMdlSec #closeMdl a {
		width: 30px;
		height: 30px;
	}

	#popMdlSec #mainMdl ul li {
		width: calc(100% - 70px);
	}

	#popMdlSec #mainMdl>div>p {
		font-size: 1.0rem;
		line-height: 1.2rem;
	}

	#popMdlSec #mainMdl>div>#leftMdl {
		left: 0px;
	}

	#popMdlSec #mainMdl>div>#rightMdl {
		right: 0px;
	}

	#popMdlSec #mainMdl>div>p a {
		padding: 0px 0px 35px;
		width: 35px;
		background-position: center bottom;
		text-align: center;
	}

}

@media screen and (min-width: 768px), print and (min-width: 0px) {

	#popMdlSec #closeMdl a {
		width: 60px;
		height: 60px;
	}

	#popMdlSec #mainMdl ul li {
		width: 50vw;
		max-width: 1000px;
	}

	#popMdlSec #mainMdl>div>#leftMdl {
		left: 10vw;
	}

	#popMdlSec #mainMdl>div>#rightMdl {
		right: 10vw;
	}

	#popMdlSec #mainMdl>div>#leftMdl a {
		padding: 17px 0px 17px 50px;
	}

	#popMdlSec #mainMdl>div>#rightMdl a {
		padding: 17px 50px 17px 0px;
	}
}

/***** DATA.01 *****/

#dataMain #data01 section {}

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

	#dataMain #data01 section>div>div {
		padding: 32px 0px 27px;
	}

	#dataMain #data01 section>div>div .tb {
		margin: 0px auto;
		width: 216px;
		height: 158px;
		background: url(img/bg_tb.png) repeat center bottom;
		background-size: 25px auto;
		border-bottom: 2px #000 solid;
		font-size: 0px;
		line-height: 0;
		overflow: hidden;
		position: relative;
	}

	#dataMain #data01 section>div>div .tb figure {
		width: 128px;
		left: 0px;
		top: 0px;
		position: absolute;
		transition-delay: 1.0s;
	}

	#dataMain #data01 section>div>div .tb ul li {
		width: 22px;
		height: 113px;
		background: #000;
		position: absolute;
	}

	#dataMain #data01 section>div>div .tb ul li.li01 {
		left: 17px;
	}

	#dataMain #data01 section>div>div .tb ul li.li02 {
		left: 49px;
	}

	#dataMain #data01 section>div>div .tb ul li.li03 {
		left: 81px;
	}

	#dataMain #data01 section>div>div .tb ul li.li04 {
		left: 113px;
	}

	#dataMain #data01 section>div>div .tb ul li.li05 {
		left: 145px;
	}

	#dataMain #data01 section>div>div .tb ul li.li06 {
		width: 42px;
		height: 158px;
		background: url(img/fig_data01_p01.png) no-repeat center bottom;
		background-size: cover;
		left: 167px;
	}

	#dataMain #data01 section>div>div .num {
		padding: 30px 0px 0px;
		text-align: center;
	}

	#dataMain #data01 section>div>div .num p.p01 {
		margin: 0px auto;
		padding-right: 50px;
		width: 180px;
		background: url(img/img_bil.png) no-repeat right bottom 10px;
		background-size: 46px auto;
		font-size: 0px;
		line-height: 0;
		text-align: right;
		display: block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB {
		color: #fff100;
		text-shadow: 2px 2px 0 #000,
			-2px 2px 0 #000,
			2px -2px 0 #000,
			-2px -2px 0 #000;
		font-size: 9.2rem;
		line-height: 1.0;
		vertical-align: bottom;
		letter-spacing: -0.045em;
		display: block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span {
		width: 70px;
		display: inline-block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span:nth-last-of-type(3) {
		width: 40px;
	}

	#dataMain #data01 section>div>div .num p.note {
		margin: 0px auto;
		padding-top: 10px;
		color: #000;
		font-size: 1.0rem;
		text-align: center;
		letter-spacing: 0.075em;
		display: block;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data01 section>div>div {
		margin: 0px 10px;
		padding: 36px 0px 33px;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		display: flex;
	}

	#dataMain #data01 section>div>div .tb {
		width: 432px;
		height: 316px;
		background: url(img/bg_tb.png) repeat center bottom;
		background-size: 50px auto;
		border-bottom: 4px #000 solid;
		font-size: 0px;
		line-height: 0;
		overflow: hidden;
		position: relative;
	}

	#dataMain #data01 section>div>div .tb figure {
		width: 256px;
		left: 0px;
		top: 0px;
		position: absolute;
		transition-delay: 1.0s;
	}

	#dataMain #data01 section>div>div .tb ul li {
		width: 44px;
		height: 226px;
		background: #000;
		position: absolute;
	}

	#dataMain #data01 section>div>div .tb ul li.li01 {
		left: 34px;
	}

	#dataMain #data01 section>div>div .tb ul li.li02 {
		left: 98px;
	}

	#dataMain #data01 section>div>div .tb ul li.li03 {
		left: 162px;
	}

	#dataMain #data01 section>div>div .tb ul li.li04 {
		left: 226px;
	}

	#dataMain #data01 section>div>div .tb ul li.li05 {
		left: 290px;
	}

	#dataMain #data01 section>div>div .tb ul li.li06 {
		width: 84px;
		height: 316px;
		background: url(img/fig_data01_p01.png) no-repeat center bottom;
		background-size: cover;
		left: 334px;
		transition-delay: 1.0s;
	}

	#dataMain #data01 section>div>div .num {
		padding: 50px 0px;
		width: 50%;
	}

	#dataMain #data01 section>div>div .num p.p01 {
		margin: 0px auto;
		padding-right: 100px;
		width: 300px;
		background: url(img/img_bil.png) no-repeat right bottom 20px;
		background-size: 92px auto;
		font-size: 0px;
		line-height: 0;
		text-align: right;
		display: block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB {
		color: #fff100;
		text-shadow: 2px 2px 0 #000,
			-2px 2px 0 #000,
			2px -2px 0 #000,
			-2px -2px 0 #000;
		font-size: 17.4rem;
		line-height: 1.0;
		vertical-align: bottom;
		letter-spacing: -0.045em;
		display: block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span {
		width: 115px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span:nth-last-of-type(3) {
		width: 70px;
	}

	#dataMain #data01 section>div>div .num p.note {
		margin: 0px auto;
		padding-top: 10px;
		width: 400px;
		color: #000;
		font-size: 1.2rem;
		text-align: right;
		letter-spacing: 0.075em;
		display: block;
	}
}

@media screen and (min-width: 768px) and (max-width: 1120px) {
	#dataMain #data01 section>div>div .num p.p01 {
		padding-right: 50px;
		width: 180px;
		background-position: right bottom 10px;
		background-size: 46px auto;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB {
		font-size: 9.0rem;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span {
		width: 70px;
	}

	#dataMain #data01 section>div>div .num p.p01 span.enB>span:nth-last-of-type(3) {
		width: 40px;
	}

	#dataMain #data01 section>div>div .num p.note {
		width: 230px;
	}
}

@media screen and (min-width: 768px) and (max-width: 793px) {
	#dataMain #data01 section>div>div {
		overflow: hidden;
	}

	#dataMain #data01 section>div>div .tb {
		margin-left: -20px;
	}
}

#dataMain #data01 section .tb figure,
#dataMain #data01 section .tb ul li {
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

#dataMain #data01 section .tb figure {
	transform: rotate(30deg) scale(0.5);
	opacity: 0;
}

#dataMain #data01 section.fadeSec .tb figure {
	transform: rotate(0deg) scale(1);
	opacity: 1;
}

#dataMain #data01 section .tb ul li {
	bottom: -100%;
}

#dataMain #data01 section .tb ul li.li02 {
	transition-delay: 0.2s;
}

#dataMain #data01 section .tb ul li.li03 {
	transition-delay: 0.4s;
}

#dataMain #data01 section .tb ul li.li04 {
	transition-delay: 0.6s;
}

#dataMain #data01 section .tb ul li.li05 {
	transition-delay: 0.8s;
}

#dataMain #data01 section .tb ul li.li06 {
	transition-delay: 1.0s;
}

#dataMain #data01 section.fadeSec .tb ul li.li01 {
	bottom: -63.94%;
}

#dataMain #data01 section.fadeSec .tb ul li.li02 {
	bottom: -51.32%;
}

#dataMain #data01 section.fadeSec .tb ul li.li03 {
	bottom: -27.31%;
}

#dataMain #data01 section.fadeSec .tb ul li.li04 {
	bottom: -15.2%;
}

#dataMain #data01 section.fadeSec .tb ul li.li05 {
	bottom: 0%;
}

#dataMain #data01 section.fadeSec .tb ul li.li06 {
	bottom: 0%;
}

/***** DATA.02 *****/

#dataMain #data02 section {
	position: relative;
}

#dataMain #data02 section p {
	position: absolute;
}

@media screen and (max-width: 767px) {
	#dataMain #data02 section p {
		letter-spacing: 0.015em;
		display: inline-block;
		width: 100%;
	}

	#dataMain #data02 section p.p01 {
		color: #000;
		text-shadow: 3px 3px 0 #fff,
			-3px 3px 0 #fff,
			3px -3px 0 #fff,
			-3px -3px 0 #fff;
		font-size: 3.0rem;
		line-height: 1.1;
		text-align: right;
		left: 0px;
		top: 12.96%;
	}

	#dataMain #data02 section p.p02 {
		color: #fff100;
		text-shadow: 2px 2px 0 #fff,
			-2px 2px 0 #fff,
			2px -2px 0 #fff,
			-2px -2px 0 #fff;
		font-size: 3.3rem;
		line-height: 1.1;
		text-align: right;
		left: 0px;
		bottom: 33.13%;
	}

	#dataMain #data02 section p.p01>span {
		margin: 0px auto;
		width: 218px;
		text-align: right;
		display: block;
	}

	#dataMain #data02 section p.p01>span>span {
		width: 22px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data02 section p.p01>span>span:nth-last-of-type(4n+4) {
		width: 10px;
	}

	#dataMain #data02 section p.p02>span {
		margin: 0px auto;
		width: 238px;
		text-align: right;
		display: block;
	}

	#dataMain #data02 section p.p02>span>span {
		width: 24px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data02 section p.p02>span>span:nth-last-of-type(4n+4) {
		width: 11px;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data02 section p {
		bottom: 60%;
		letter-spacing: 0.015em;
		display: inline-block;
	}

	#dataMain #data02 section p.p01 {
		width: 46%;
		color: #000;
		text-shadow: 5px 5px 0 #fff,
			-5px 5px 0 #fff,
			5px -5px 0 #fff,
			-5px -5px 0 #fff;
		font-size: 5.0rem;
		line-height: 1.1;
		text-align: center;
		left: 0px;
	}

	#dataMain #data02 section p.p02 {
		width: 52%;
		color: #fff100;
		text-shadow: 4px 4px 0 #fff,
			-4px 4px 0 #fff,
			4px -4px 0 #fff,
			-4px -4px 0 #fff;
		font-size: 7.5rem;
		line-height: 1.1;
		text-align: center;
		right: 0px;
	}

	#dataMain #data02 section p.p01>span {
		margin: 0px auto;
		width: 352px;
		text-align: right;
		display: block;
	}

	#dataMain #data02 section p.p01>span>span {
		width: 36px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data02 section p.p01>span>span:nth-last-of-type(4n+4) {
		width: 14px;
	}

	#dataMain #data02 section p.p02>span {
		margin: 0px auto;
		width: 519px;
		text-align: right;
		display: block;
	}

	#dataMain #data02 section p.p02>span>span {
		width: 53px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data02 section p.p02>span>span:nth-last-of-type(4n+4) {
		width: 21px;
	}
}

#dataMain #data02 section .i01 {
	transform: scale(0);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data02 section.fadeSec .i01 {
	transform: scale(1);
	opacity: 1;
}

@media screen and (min-width: 768px) and (max-width: 1365px) {
	#dataMain #data02 section p.p01 {
		font-size: 3.0rem;
		text-shadow: 1px 1px 0 #fff,
			-1px 1px 0 #fff,
			1px -1px 0 #fff,
			-1px -1px 0 #fff;
	}

	#dataMain #data02 section p.p02 {
		font-size: 4.8rem;
		text-shadow: 1px 1px 0 #fff,
			-1px 1px 0 #fff,
			1px -1px 0 #fff,
			-1px -1px 0 #fff;
	}

	#dataMain #data02 section p.p01>span {
		width: 218px;
	}

	#dataMain #data02 section p.p01>span>span {
		width: 22px;
	}

	#dataMain #data02 section p.p01>span>span:nth-last-of-type(4n+4) {
		width: 10px;
	}

	#dataMain #data02 section p.p02>span {
		width: 341px;
	}

	#dataMain #data02 section p.p02>span>span {
		width: 35px;
	}

	#dataMain #data02 section p.p02>span>span:nth-last-of-type(4n+4) {
		width: 13px;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	#dataMain #data02 section p.p01 {
		font-size: 1.8rem;
	}

	#dataMain #data02 section p.p02 {
		font-size: 2.5rem;
	}

	#dataMain #data02 section p.p01>span {
		width: 129px;
	}

	#dataMain #data02 section p.p01>span>span {
		width: 13px;
	}

	#dataMain #data02 section p.p01>span>span:nth-last-of-type(4n+4) {
		width: 6px;
	}

	#dataMain #data02 section p.p02>span {
		width: 176px;
	}

	#dataMain #data02 section p.p02>span>span {
		width: 18px;
	}

	#dataMain #data02 section p.p02>span>span:nth-last-of-type(4n+4) {
		width: 7px;
	}
}

/***** DATA.03 *****/

@media screen and (max-width: 767px) {
	#dataMain #data03 section>div>div {
		padding: 0px 10px;
	}

	#dataMain #data03 section>div>div .i01 {
		margin: 0px auto;
		width: 100%;
		max-width: 248px;
	}

	#dataMain #data03 section>div>div .num p.p01 {
		margin: 0px auto;
		color: #fff100;
		text-shadow: 2px 2px 0 #000,
			-2px 2px 0 #000,
			2px -2px 0 #000,
			-2px -2px 0 #000;
		font-size: 5.0rem;
		line-height: 1.1;
		text-align: right;
		vertical-align: bottom;
		display: inline-block;
		white-space: nowrap;
	}

	#dataMain #data03 section>div>div .num p.p01>span {
		margin-right: 10px;
		width: 180px;
		font-size: 10.0rem;
		letter-spacing: -0.045em;
		display: inline-block;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span {
		width: 70px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span:nth-last-of-type(3) {
		width: 40px;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data03 section>div>div {
		padding: 36px 10px 0px;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		flex-direction: row-reverse;
		display: flex;
	}

	#dataMain #data03 section>div>div .i01 {
		margin: 0px auto;
		width: 100%;
		max-width: 589px;
	}

	#dataMain #data03 section>div>div .num {
		padding: 50px 10px;
		flex: 1;
	}

	#dataMain #data03 section>div>div .num p.p01 {
		margin: 0px auto;
		color: #fff100;
		text-shadow: 2px 2px 0 #000,
			-2px 2px 0 #000,
			2px -2px 0 #000,
			-2px -2px 0 #000;
		font-size: 9.0rem;
		line-height: 1.1;
		text-align: right;
		vertical-align: bottom;
		display: inline-block;
		white-space: nowrap;
	}

	#dataMain #data03 section>div>div .num p.p01>span {
		margin-right: 10px;
		width: 310px;
		font-size: 17.4rem;
		letter-spacing: -0.045em;
		display: inline-block;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span {
		width: 120px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span:nth-last-of-type(3) {
		width: 70px;
	}
}

@media screen and (min-width: 768px) and (max-width: 860px) {
	#dataMain #data03 section>div>div .num p.p01 {
		font-size: 5.0rem;
	}

	#dataMain #data03 section>div>div .num p.p01>span {
		width: 180px;
		font-size: 9.0rem;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span {
		width: 70px;
	}

	#dataMain #data03 section>div>div .num p.p01>span>span:nth-last-of-type(3) {
		width: 40px;
	}
}

#dataMain #data03 section .i01 {
	transform: scale(0);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition-delay: 0.5s;
	opacity: 0;
}

#dataMain #data03 section.fadeSec .i01 {
	transform: scale(1);
	opacity: 1;
}


/***** DATA.04 *****/

#dataMain #data04 section {
	position: relative;
	overflow: hidden;
}

#dataMain #data04 section li {
	position: absolute;
}

@media screen and (max-width: 767px) {
	#dataMain #data04 section .i01a {
		left: 59.3%;
		top: 69.8%;
	}

	#dataMain #data04 section .i02a {
		left: 82.7%;
		top: 37.8%;
	}

	#dataMain #data04 section .i03a {
		left: 69.2%;
		top: 55.9%;
	}

	#dataMain #data04 section .i04a {
		left: 47.0%;
		top: 71.0%;
	}

	#dataMain #data04 section .i05a {
		left: 36.7%;
		top: 75.3%;
	}

	#dataMain #data04 section .i06a {
		left: 11.7%;
		top: 78.1%;
	}

	#dataMain #data04 section .i01t,
	#dataMain #data04 section .i02t,
	#dataMain #data04 section .i03t,
	#dataMain #data04 section .i04t,
	#dataMain #data04 section .i05t,
	#dataMain #data04 section .i06t {
		left: 0px;
		top: 0px;
	}

	#dataMain #data04 section .i01a img {
		width: 30px;
		height: auto;
	}

	#dataMain #data04 section .i02a img,
	#dataMain #data04 section .i03a img,
	#dataMain #data04 section .i04a img,
	#dataMain #data04 section .i05a img,
	#dataMain #data04 section .i06a img {
		width: 12px;
		height: auto;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data04 section {
		margin-top: -180px;
	}

	#dataMain #data04 section .i01a {
		left: 57.7%;
		top: 66.9%;
	}

	#dataMain #data04 section .i01b {
		left: 80.7%;
		top: 72.8%;
	}

	#dataMain #data04 section .i02a {
		left: 72.6%;
		top: 27.0%;
	}

	#dataMain #data04 section .i02b {
		left: 72.6%;
		top: 12.2%;
	}

	#dataMain #data04 section .i03a {
		left: 64.0%;
		top: 50%;
	}

	#dataMain #data04 section .i03b {
		left: 64.0%;
		top: 34.4%;
	}

	#dataMain #data04 section .i04a {
		left: 50.3%;
		top: 68.0%;
	}

	#dataMain #data04 section .i04b {
		left: 50.3%;
		top: 84.2%;
	}

	#dataMain #data04 section .i05a {
		left: 43.5%;
		top: 73.5%;
	}

	#dataMain #data04 section .i05b {
		left: 43.5%;
		top: 57.8%;
	}

	#dataMain #data04 section .i06a {
		left: 28.1%;
		top: 76.9%;
	}

	#dataMain #data04 section .i06b {
		left: 28.1%;
		top: 60.6%;
	}

	#dataMain #data04 section .i01a img {
		width: 85px;
		height: auto;
	}

	#dataMain #data04 section .i01b img {
		width: 256px;
		height: auto;
	}

	#dataMain #data04 section .i02a img,
	#dataMain #data04 section .i03a img,
	#dataMain #data04 section .i04a img,
	#dataMain #data04 section .i05a img,
	#dataMain #data04 section .i06a img {
		width: 31px;
		height: auto;
	}

	#dataMain #data04 section .i02b img,
	#dataMain #data04 section .i03b img,
	#dataMain #data04 section .i04b img,
	#dataMain #data04 section .i05b img,
	#dataMain #data04 section .i06b img {
		width: 94px;
		height: auto;
	}
}

#dataMain #data04 section .i01a,
#dataMain #data04 section .i02a,
#dataMain #data04 section .i03a,
#dataMain #data04 section .i04a,
#dataMain #data04 section .i05a,
#dataMain #data04 section .i06a {
	transform: translate(-50%, -50%) scale(0);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data04 section .i01b,
#dataMain #data04 section .i02b,
#dataMain #data04 section .i03b,
#dataMain #data04 section .i04b,
#dataMain #data04 section .i05b,
#dataMain #data04 section .i06b {
	transform: translate(-50%, -50%) scale(0);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data04 section .i01t,
#dataMain #data04 section .i02t,
#dataMain #data04 section .i03t,
#dataMain #data04 section .i04t,
#dataMain #data04 section .i05t,
#dataMain #data04 section .i06t {
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data04 section .i02t,
#dataMain #data04 section .i02b {
	transition-delay: 0.2s;
}

#dataMain #data04 section .i03a,
#dataMain #data04 section .i06a {
	transition-delay: 0.5s;
}

#dataMain #data04 section .i03t,
#dataMain #data04 section .i06t,
#dataMain #data04 section .i03b,
#dataMain #data04 section .i06b {
	transition-delay: 0.7s;
}

#dataMain #data04 section .i04a {
	transition-delay: 1.0s;
}

#dataMain #data04 section .i04t,
#dataMain #data04 section .i04b {
	transition-delay: 1.2s;
}

#dataMain #data04 section .i05a {
	transition-delay: 1.5s;
}

#dataMain #data04 section .i05t,
#dataMain #data04 section .i05b {
	transition-delay: 1.7s;
}

#dataMain #data04 section .i01a {
	transition-delay: 2.0s;
}

#dataMain #data04 section .i01t,
#dataMain #data04 section .i01b {
	transition-delay: 2.2s;
}

#dataMain #data04 section.fadeSec .i01a,
#dataMain #data04 section.fadeSec .i02a,
#dataMain #data04 section.fadeSec .i03a,
#dataMain #data04 section.fadeSec .i04a,
#dataMain #data04 section.fadeSec .i05a,
#dataMain #data04 section.fadeSec .i06a {
	transform: translate(-50%, -50%) scale(1);
	opacity: 1;
}

#dataMain #data04 section.fadeSec .i01b,
#dataMain #data04 section.fadeSec .i02b,
#dataMain #data04 section.fadeSec .i03b,
#dataMain #data04 section.fadeSec .i04b,
#dataMain #data04 section.fadeSec .i05b,
#dataMain #data04 section.fadeSec .i06b {
	transform: translate(-50%, -50%) scale(1);
	opacity: 1;
}

#dataMain #data04 section.fadeSec .i01t,
#dataMain #data04 section.fadeSec .i02t,
#dataMain #data04 section.fadeSec .i03t,
#dataMain #data04 section.fadeSec .i04t,
#dataMain #data04 section.fadeSec .i05t,
#dataMain #data04 section.fadeSec .i06t {
	opacity: 1;
}

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

	#dataMain #data04 section.fadeSec .i01a,
	#dataMain #data04 section.fadeSec .i02a,
	#dataMain #data04 section.fadeSec .i03a,
	#dataMain #data04 section.fadeSec .i04a,
	#dataMain #data04 section.fadeSec .i05a,
	#dataMain #data04 section.fadeSec .i06a,
	#dataMain #data04 section.fadeSec .i01b,
	#dataMain #data04 section.fadeSec .i02b,
	#dataMain #data04 section.fadeSec .i03b,
	#dataMain #data04 section.fadeSec .i04b,
	#dataMain #data04 section.fadeSec .i05b,
	#dataMain #data04 section.fadeSec .i06b {
		transform: translate(-50%, -50%) scale(0.5);
	}
}


/***** DATA.05 *****/

#dataMain #data05 section ul {
	align-items: flex-end;
	justify-content: center;
	flex-wrap: wrap;
	display: flex;
}

@media screen and (max-width: 767px) {
	#dataMain #data05 section ul:first-of-type {
		padding: 0px 10px 35px;
	}

	#dataMain #data05 section ul:first-of-type li {
		margin: 0px 4px;
	}

	#dataMain #data05 section ul:first-of-type li img {
		height: 200px;
		width: auto;
	}

	#dataMain #data05 section ul:last-of-type {
		padding: 0px 10px 40px;
	}

	#dataMain #data05 section ul:last-of-type li {
		margin: 0px 4px;
	}

	#dataMain #data05 section ul:last-of-type li img {
		height: 156px;
		width: auto;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data05 section ul {
		padding: 0px 20px 30px;
	}

	#dataMain #data05 section li {
		margin: 0px 31px;
	}

	#dataMain #data05 section li img {
		height: 357px;
		width: auto;
	}
}

#dataMain #data05 section .i01,
#dataMain #data05 section .i02,
#dataMain #data05 section .i03,
#dataMain #data05 section .i04 {
	transform: scale(0);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data05 section .i02 {
	transition-delay: 0.5s;
}

#dataMain #data05 section .i03 {
	transition-delay: 1s;
}

#dataMain #data05 section .i04 {
	transition-delay: 1.5s;
}

#dataMain #data05 section.fadeSec .i01,
#dataMain #data05 section.fadeSec .i02,
#dataMain #data05 section.fadeSec .i03,
#dataMain #data05 section.fadeSec .i04 {
	transform: scale(1);
	opacity: 1;
}

/***** DATA.06 *****/

#dataMain #data06 section>div {
	position: relative;
}

#dataMain #data06 .crc .left,
#dataMain #data06 .crc .right {
	width: 50%;
	height: 100%;
	overflow: hidden;
	top: 0px;
	position: absolute;
}

#dataMain #data06 .crc .left {
	left: 0px;
}

#dataMain #data06 .crc .right {
	right: 0px;
}

#dataMain #data06 .crc .left .cover,
#dataMain #data06 .crc .right .cover {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

#dataMain #data06 .crc .left .cover .scrc,
#dataMain #data06 .crc .right .cover .scrc {
	width: 200%;
	height: 100%;
	background-color: #fff;
	border-radius: 50%;
	top: 0px;
	position: absolute;
}

#dataMain #data06 .crc .left .cover .scrc {
	left: 0px;
}

#dataMain #data06 .crc .right .cover .scrc {
	right: 0px;
}

@media screen and (max-width: 767px) {
	#dataMain #data06 section {
		padding: 0px 10px 30px;
	}
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	#dataMain #data06 section {
		padding: 10px 0px 40px;
	}

	#dataMain #data06 .grf {
		position: relative;
	}

	#dataMain #data06 .grfbar {
		width: 100%;
		height: 500px;
		left: 0px;
		top: 0px;
		position: absolute;
	}

	#dataMain #data06 .p01,
	#dataMain #data06 .p02,
	#dataMain #data06 .p03 {
		text-align: right;
		position: absolute;
	}

	#dataMain #data06 .p01 {
		font-size: 5.7rem;
		line-height: 1.1;
		right: 3.6%;
		top: 13.5%;
	}

	#dataMain #data06 .p01>span {
		font-size: 9.6rem;
	}

	#dataMain #data06 .p01>span>span {
		width: 70px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data06 .p02,
	#dataMain #data06 .p03 {
		font-size: 3.6rem;
		line-height: 1.1;
	}

	#dataMain #data06 .p02>span,
	#dataMain #data06 .p03>span {
		font-size: 6.0rem;
	}

	#dataMain #data06 .p02>span>span,
	#dataMain #data06 .p03>span>span {
		width: 40px;
		text-align: center;
		display: inline-block;
	}

	#dataMain #data06 .p02 {
		left: 9%;
		top: 5.4%;
	}

	#dataMain #data06 .p03 {
		left: 6%;
		bottom: 24.0%;
	}

	#dataMain #data06 .crc {
		margin: 0px auto;
		width: 510px;
		height: 500px;
		position: relative;
	}
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
	#dataMain #data06 .grfbar {
		height: 240px;
	}

	#dataMain #data06 .crc {
		width: 245px;
		height: 240px;
	}

	#dataMain #data06 .p01 {
		font-size: 2.9rem;
	}

	#dataMain #data06 .p01>span {
		font-size: 4.8rem;
	}

	#dataMain #data06 .p01>span>span {
		width: 35px;
	}

	#dataMain #data06 .p02,
	#dataMain #data06 .p03 {
		font-size: 1.8rem;
	}

	#dataMain #data06 .p02>span,
	#dataMain #data06 .p03>span {
		font-size: 3.0rem;
	}

	#dataMain #data06 .p02>span>span,
	#dataMain #data06 .p03>span>span {
		width: 20px;
	}
}

#dataMain #data06 section.fadeSec .crc .left,
#dataMain #data06 section.fadeSec .crc .right {
	animation: opLR 1.01s linear forwards;
}

#dataMain #data06 section.fadeSec .crc .left .cover {
	animation: rotateLeft 1s linear forwards;
	transform-origin: right;
}

#dataMain #data06 section.fadeSec .crc .right .cover {
	animation: rotateRight 1s linear forwards;
	transform-origin: left;
}

@keyframes opLR {
	0% {
		opacity: 1;
	}

	99% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

@keyframes rotateLeft {
	0% {
		transform: rotate(0deg);
	}

	50% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(180deg);
		display: none;
	}
}

@keyframes rotateRight {
	0% {
		transform: rotate(0deg);
	}

	50% {
		transform: rotate(180deg);
	}

	100% {
		transform: rotate(180deg);
		display: none;
	}
}

/***** DATA.07 *****/

@media screen and (max-width: 767px) {
	#dataMain #data07 section {
		padding: 0px 0px 22px;
	}
}

#dataMain #data07 section figure {
	position: relative;
}

#dataMain #data07 section figure .i01,
#dataMain #data07 section figure .i02,
#dataMain #data07 section figure .i03 {
	left: 0px;
	top: 0px;
	position: absolute;
}


#dataMain #data07 section .i01,
#dataMain #data07 section .i02,
#dataMain #data07 section .i03 {
	transform: translateY(-100px);
	transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
}

#dataMain #data07 section .i02 {
	transition-delay: 0.2s;
}

#dataMain #data07 section .i01 {
	transition-delay: 0.4s;
}

#dataMain #data07 section.fadeSec .i01,
#dataMain #data07 section.fadeSec .i02,
#dataMain #data07 section.fadeSec .i03 {
	transform: translateY(0px);
	opacity: 1;
}


/*------------------------------ 改修 ----------------------------------------- */
/* 共通 */
.new-line {
	display: inline-block;
}

/* トップページ */
/* 背景動画 */
#bgYt::after {
	content: "";
	width: 100vw;
	height: 100vh;
	/* background: url(img/bg_top.gif) no-repeat center center; */
	background-size: cover;
	font-size: 0px;
	line-height: 0;
	display: block;
	position: fixed;
	z-index: -1;
}

/* ヘッダー背景を暗くする */
div#topIntro {
	background: rgba(0, 0, 0, 0.7);
}

/* YOUTUBEスライド装飾 */
.topmoviebox iframe {
	width: 95% !important;
}

.topmoviebox .slick-next:before {
	color: #bebebe;
}

.topmoviebox .slick-prev:before {
	color: #bebebe;
}

.single-youtube {
	display: block;
	margin: 0 auto;
	max-width: 100%;
}

iframe.yt-playlist {
    width: 100%;
    aspect-ratio: 1920 / 1080;
    object-fit: cover;
}

/* 滝川修正記述（CULTURE） */
.accent {
	color: #333;
}

.content.contentW.culture_content1 {
	background-color: #bebebe;
}

/* PEOPLEスライド装飾 */
.top-peopleslider .peoplecard {
	width: 95% !important;
}

/* 滝川修正記述（PEOPLE） */
.peoplerow {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.peoplerow::after {
	display: block;
	content: "";
	width: 30%;
}

.peoplecard {
	width: 30%;
	background-color: #fff;
	margin-bottom: 2.5rem;
}

h2.comment {
	min-height: 55px;
}

button.viewmorebutton.js-open.button-open {
	width: 100%;
	border-style: unset;
}

/* モーダルウインドウ用 */
/* モーダルウィンドウ */
.modal-window, .modal-window1, .modal-window2, .modal-window3, .modal-window4, .modal-window5, .modal-window6, .modal-window7, .modal-window8, .modal-window9, .modal-window10, .modal-window11, .modal-window12 {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 90%;
	height: 92vh;
	background-color: #dfdddd;
	border-radius: 5px;
	z-index: 100;
	padding: 2rem;
	overflow: scroll;
}

/* 閉じるボタン */
.button-close {
	/* position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); */
	width: 200px;
	/* border-radius: 20rem; */
	cursor: pointer;
	text-align: center;
	display: block;
	background-color: #333;
	color: white;
	padding: 10px 20px;
	/* margin-top: 36px; */
	border-style: unset;
}

/* オーバーレイ */
.overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.1);
	width: 100%;
	height: 100%;
	z-index: 90;
}

/* モーダル内コンテンツをスクロール */
.modal-window, .modal-window1, .modal-window2, .modal-window3, .modal-window4, .modal-window5, .modal-window6, .modal-window7, .modal-window8, .modal-window9, .modal-window10, .modal-window11, .modal-window12, .modal-window13, .modal-window14, .modal-window15, .modal-window16, .modal-window17 {
	overflow: auto;
	overflow: scroll;
}

/* インタビュー内容装飾 */
.interview-content-box {
	display: flex;
	justify-content: space-between;
}

.interview-content {
	width: 60%;
	text-align: left;
}

.interview-content h2 {
	font-size: 2.9rem;
}

.interview-title::after {
	content: "";
	width: 120px;
	height: 4px;
	background-color: #fff100;
	font-size: 0px;
	line-height: 0;
	display: block;
	position: relative;
	top: 18px;
	margin-bottom: 18px;
}

.question {
	font-size: 2rem;
	margin-top: 36px;
	margin-bottom: 2rem;
}

.answer-sbutitle {
	font-size: 1.8rem;
	margin-bottom: 2rem;
}

.interview-content p {
	font-size: 1.4rem;
	line-height: 3rem;
	color: #3a3a3a;
	font-weight: bold;
	letter-spacing: 0.08em;
	margin-bottom: 2rem;
}

.person-picture {
	width: 38%;
	height: auto;
}

.person-picture img {
	position: sticky;
	top: 2rem;
}


/* 滝川修正記述（COMPANY） */
.message-box {
	margin-top: 4rem;
}

.message-button {
	background-color: #FBF102;
	color: #000;
	padding: 30px 5rem;
	/* width: 415px; */
	font-weight: 900;
	font-size: 1.2rem;
}

#messageH>div:nth-child(1) {
	background: rgba(255, 255, 255, 0.9);
	padding: 20px;
}

#messageHR>div:nth-child(1) {
	background: rgba(255, 255, 255, 0.9);
	padding: 20px;
}

.ceo_message_box p, .recruiter_message_box p {
	font-weight: bold;
}

/* 修正記述（YOUTUBE） */

.header_sp, .dp_sp {
	display: none;
}

.subscribe-box {
	margin-top: 2rem;
}

.subscribe-button {
	width: 200px;
	display: block;
	margin: 0 auto;
	padding: 20px;
	background-color: #FBF102;
	color: #1C1C1C;
	font-weight: bold;
	font-size: 2rem;
}

.yt-moviebox {
	display: flex;
	justify-content: center;
	align-items: center;
}

.yt-moviebox iframe {
	width: 80%;
	height: 600px;
}

.newsUl iframe {
	width: 100%;
}

.personinfo {
	padding: 10px 20px;
}

.comment {
	font-family: ;
	font-size: 1.8rem;
	margin-bottom: 1rem;
	color: #333;
	text-align: left;
}

.joinedyear {
	font-size: 1.5rem;
	margin-bottom: 1rem;
	color: #333;
	text-align: left;
}

.personname {
	font-size: 1rem;
	text-align: left;
}

.viewmorebutton {
	text-align: center;
	display: block;
	background-color: #333;
	color: white;
	padding: 10px 20px;
}

.personnumber {
	color: #fff100;
	/* text-shadow: 1px 1px 10px #666; */
	font-size: 5rem;
	position: relative;
	bottom: 50px;
	margin-bottom: -45px;
	font-family: 'Oswald', sans-serif;
	letter-spacing: 0.1em;
	text-align: left;
}

.peoplecard img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

/* DATA改修 */
p.rank_number+p {
	margin-bottom: 2rem;
}

p.rank_number {
	font-size: 3rem !important;
	margin-bottom: 1.5rem;
}

.google-map {
	display: block;
	width: 90%;
	margin: 0 auto;
}

/* 2021年改修・スマホ */
@media screen and (max-width:639px) {

	/* YOUTUBE */
	.header_pc, .dp_pc {
		display: none;
	}

	.header_sp, .dp_sp {
		display: block;
	}


	/* CULTURE */
	img.style02 {
		height: 246px;
		object-fit: cover;
	}

	.peoplecard {
		width: 100%;
		background-color: #fff;
		margin-bottom: 2.5rem;
		font-weight: bold;
	}

	.yt-moviebox iframe {
		width: 80%;
		height: 300px;
	}

	.subscribe-button {
		padding: 5px;
		font-size: 1rem;
	}

	.message-button {
		padding: 10px;
		font-size: 1rem;
	}

	.person-picture img {
		height: 300px;
		object-fit: cover;
		object-position: top;
	}

	h2.interview-title {
		margin-top: 1rem;
	}

	.interview-content, .person-picture {
		width: 95%;
		margin: 0 auto;
	}

	.interview-content-box {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}

	.modal-window, .modal-window1, .modal-window2, .modal-window3, .modal-window4, .modal-window5, .modal-window6, .modal-window7, .modal-window8, .modal-window9, .modal-window10, .modal-window11 {
		width: 80%;
	}

	.interview-content h2 {
		font-size: 2.4rem;
	}

	/* DATA */
	div#data07 {
		height: 900px;
	}

}

/* CULTURE 20231226 */
.cultureSTYB.tofaq {
	margin-top: 100px;
	/* display: none; */
}

.cultureSTYB.tofaq>section::before {
	display: none;
}

a.to-faq-button {
	padding: 10px 20px;
	background: #FBF101;
	font-weight: 700;
	margin-top: 40px;
	display: inline-block;
}

@media screen and (max-width:639px) {
	.cultureSTYB.tofaq {
		margin-top: 20px;
	}
}

/* Top FAQ 20231226 */
div#topPeople.topFaq {
	background: #777777;
}

div#topPeople.topFaq h1 {
	color: ;
}

.faq-slider-item {
	padding: 20px;
	background: #fff;
	width: 95% !IMPORTANT;
	margin: 0 auto !important;
	border: 7.5px solid #666;
}

p.faq-slider-icon {
	display: flex;
	padding: 10px;
	background: #EADD02;
	font-size: 20px;
	font-weight: bold;
	font-family: 'Montserrat';
	border-radius: 50%;
	width: 35px;
	height: 35px;
	line-height: 1;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}

p.faq-slider-q {
	font-size: 16px;
	font-weight: 700;
	margin-top: 20px;
	height: 50px;
}

p.faq-slider-q:before {
	display: inline;
	content: "Q";
	margin-right: 5px;
	font-family: 'Montserrat';
	color: #777;
}

p.faq-slider-a {
	font-size: 16px;
	font-weight: 400;
	margin-top: 10px;
	width: 100%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

p.faq-slider-a:before {
	display: inline;
	content: "A";
	font-weight: 700;
	margin-right: 5px;
	font-family: 'Montserrat';
	color: #777;
}

.top-faq-list.topslider.slick-initialized.slick-slider.slick-dotted {
	margin-bottom: 60px;
}

.top-faq-list .slick-dots {
	bottom: -40px;
}

div#topPeople.topFaq .btVm a {
	background-color: #000;
	border: none;
	color: #fff;
	position: relative;
}

@media screen and (min-width: 768px), print and (min-width: 0px) {
	div#topPeople.topFaq .btVm {
		font-size: 1.4rem;
		line-height: 1.5rem;
		margin: 0px auto;
		width: 245px;
	}

	div#topPeople.topFaq>div {
		padding: 110px 100px 110px;
	}

	div#topPeople.topFaq .btVm a span {
		padding: 20px 32px 20px 0px;
		background-position: right top 19px;
		color: #fff;
	}

	div#topPeople.topFaq .btVm a::after {
		content: "";
		width: 0%;
		height: 5px;
		background-color: #fff100;
		font-size: 0px;
		line-height: 0;
		display: block;
		left: 0px;
		bottom: 0px;
		position: absolute;
		transition-duration: 0.5s;
	}

	div#topPeople.topFaq .btVm a:hover::after {
		width: 100%;
	}
}


/* FAQ 20231226 */
.faq-accordion .smb-accordion__item__title:before {
	display: inline;
	content: "Q";
	font-family: 'Montserrat';
	font-weight: bold;
	font-size: 18px;
}

.faq-accordion .smb-accordion__item__title {
	font-size: 18px;
	text-align: center;
	font-weight: bold;
	background: #fff;
	padding: 15px;
}

.faq-accordion .smb-accordion__item__body.is-layout-constrained.wp-block-accordion-item-is-layout-constrained p {
	text-align: left !IMPORTANT;
	font-size: 16px !IMPORTANT;
}

.faq-accordion .smb-accordion__item__body.is-layout-constrained.wp-block-accordion-item-is-layout-constrained p:before {
	display: inline;
	content: "A";
	color: #FBF101;
	margin-right: 10px;
	font-family: 'Montserrat';
	font-size: 20px !IMPORTANT;
}


/*ベース*/
section.accordion .toggle {
	display: none;
}

section.accordion .Label {
	padding: 15px;
	display: block;
	color: #333;
	background: #FFFFFF;
	font-size: 18px;
	font-weight: bold;
}

section.accordion .Label::after {
	content: "";
	width: 10px;
	height: 10px;
	border-top: 2px solid #333;
	border-right: 2px solid #333;
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: calc(50% - 3px);
	right: 20px;
	transform: rotate(135deg);
}

section.accordion .Label,
section.accordion .content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}

section.accordion .content {
	/*本文*/
	height: 0;
	margin-bottom: 10px;
	padding: 0 20px;
	overflow: hidden;
}

section.accordion .toggle:checked+.Label+.content {
	/*開閉時*/
	height: auto;
	padding: 20px;
	transition: all .3s;
}

section.accordion .toggle:checked+.Label::after {
	transform: rotate(-45deg) !important;
}

section.accordion p.accordion-answer {
	text-align: left !IMPORTANT;
}

section.accordion label.Label.accordion-question:before {
	display: inline;
	content: "Q";
	font-family: 'Montserrat';
	font-weight: bold;
	font-size: 18px;
	position: absolute;
	left: 20px;
}

section.accordion label.Label:hover {
	cursor: pointer;
}

iframe.g-map {
    width: 100%;
}

@media screen and (max-width: 767px) {
	section.accordion label.Label.accordion-question:before {
		top: 8px;
		left: 50%;
		transform: translateX(-50%);
	}

	section.accordion .Label {
		padding: 35px 35px 15px;
		text-align: left;
	}

	#bnFoot {
		height: auto;
		position: relative;
	}

	#bnFoot>div {

	}

	#bnFoot>div p {
		width: auto;
		background-color: #fff;
		left: auto;
		top: auto;
		position: static;
		-webkit-transform: none;
		transform: none;
		z-index: 30;
	}

	div#bnFoot:before {
		content: "";
		display: block;
		background: #1C1C1C;
		width: 100%;
		height: 50%;
		position: absolute;
		bottom: 0;
	}
}