@charset 'UTF-8';
@import url('https://fonts.googleapis.com/css2?family=Teko:wght@300&display=swap');
#mgka {
	position: relative;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
	letter-spacing: 0.1em;
	font-family: '黎ミン M', 'Reimin Medium', serif;
	color: #000;
	background-color: #fff;
	overflow: hidden;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka {
		letter-spacing: 0.01em;
	}
}
#mgka .fontEn {
	font-family: 'Teko', sans-serif;
	font-weight: 300!important;
}
#mgka img.cover {
	width: 100%;
	height: auto;
}
#mgka .dispWide {
	display: block;
}
#mgka .dispNarrow {
	display: none;
}
@media screen and (max-width: 800px) {
	#mgka .dispWide,
	#mgka .blank {
		display: none;
	}
	#mgka .dispNarrow {
		display: block;
	}
}
::selection {
	color: #fff;
	background-color: #003fc0;
}
#mgka h1,
#mgka h2,
#mgka h3,
#mgka h4,
#mgka h5,
#mgka h6,
#mgka .fontBold {
	font-family: '黎ミン B', 'Reimin Bold', serif;
}
#mgka .fontNormal {
	font-family: '黎ミン M', 'Reimin Medium', serif;
}
#mgka .alignCenter {
	text-align: center;
}
#mgka .alignCenter > .blockText,
#mgka .alignRight > .blockText {
	display: inline-block;
}
#mgka .alignRight {
	text-align: right;
}
#mgka .alignLeft {
	text-align: left;
}
#mgka .textIndent {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
#mgka .lineHeight100 {
	line-height: 1;
}
#mgka .lineHeight133 {
	line-height: 1.33;
}
#mgka .lineHeight150 {
	line-height: 1.5;
}
#mgka .lineHeight166 {
	line-height: 1.66;
}
#mgka .lineHeight175 {
	line-height: 1.75;
}
#mgka .letterSpacing0 {
	letter-spacing: 0;
}
#mgka .marginTop0 {
	margin-top: 0!important;
}
#mgka .marginTopHalf {
	margin-top: 0.5em!important;
}
#mgka .marginTop1 {
	margin-top: 1em!important;
}
#mgka .marginTop1half {
	margin-top: 1.5em!important;
}
#mgka .marginTop2 {
	margin-top: 2em!important;
}
#mgka .marginTop3 {
	margin-top: 3em!important;
}
#mgka .marginTop4 {
	margin-top: 4em!important;
}
#mgka .marginTop5 {
	margin-top: 5em!important;
}
#mgka .marginTopAuto {
	margin-top: auto!important;
}
#mgka .paddingVerticalHalf {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
#mgka .paddingVertical1 {
	padding-top: 1em;
	padding-bottom: 1em;
}
#mgka .paddingVertical2 {
	padding-top: 2em;
	padding-bottom: 2em;
}
#mgka .paddingVertical3 {
	padding-top: 3em;
	padding-bottom: 3em;
}
#mgka .paddingVertical4 {
	padding-top: 4em;
	padding-bottom: 4em;
}
#mgka .paddingHorizontalHalf {
	padding-left: 0.5em;
	padding-right: 0.5em;
	box-sizing: border-box;
}
#mgka .paddingHorizontal1 {
	padding-left: 1em;
	padding-right: 1em;
	box-sizing: border-box;
}
#mgka .paddingHorizontal1half {
	padding-left: 1.5em;
	padding-right: 1.5em;
	box-sizing: border-box;
}
#mgka .paddingHorizontal2 {
	padding-left: 2em;
	padding-right: 2em;
	box-sizing: border-box;
}
#mgka .text72 {
	font-size: 72px;
}
#mgka .text48 {
	font-size: 48px;
}
#mgka .text42 {
	font-size: 42px;
}
#mgka .text36 {
	font-size: 36px;
}
#mgka .text30 {
	font-size: 30px;
}
#mgka .text24 {
	font-size: 24px;
}
#mgka .text21 {
	font-size: 21px;
}
#mgka .text15 {
	font-size: 15px;
}
#mgka .text0 {
	font-size: 0;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka .text72 {
		font-size: 4.8vw;
	}
	#mgka .text48 {
		font-size: 3.2vw;
	}
	#mgka .text42 {
		font-size: 2.8vw;
	}
	#mgka .text36 {
		font-size: 2.4vw;
	}
	#mgka .text30 {
		font-size: 2vw;
	}
	#mgka .text24 {
		font-size: 1.6vw;
	}
	#mgka .text21 {
		font-size: 1.4vw;
	}
	#mgka .text15 {
		font-size: 1vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka .text72 {
		font-size: 10vw;
	}
	#mgka .text48 {
		font-size: 9.6vw;
	}
	#mgka .text42 {
		font-size: 4.5vw;
	}
	#mgka .text36 {
		font-size: 7.2vw;
	}
	#mgka .titleBgGray.text36 {
		font-size: 5.25vw;
		line-height: 133%;
	}
	#mgka .text30 {
		font-size: 4.8vw;
	}
	#mgka .text24 {
		font-size: 4.8vw;
	}
	#mgka .text21 {
		font-size: 4.2vw;
	}
	#mgka .text15 {
		font-size: 3.4vw;
	}
}
/*枠組み*/
#mgka .sectionWrapper,
#mgka .objWrapper {
	position: relative;
}
#mgka .sectionWrapper .obj {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 2;
}
#mgka .sectionWrapper .objAbsolute {
	left: 50%;
	transform: translateX(-50%);
}
#mgka .sectionWrapper .bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-attachment: fixed;
	background-image: url("../../narrative/images/_imagesMiddle/_bgTeaser.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
#mgka .sectionWrapper .bgPattern2 {
	background-image: url("../../narrative/images/02about/bg.jpg");
}
#mgka .sectionWrapper .obj {
	position: absolute;
}
#mgka .photo {
	width: 75%;
	max-width: 890px;
	margin-left: auto;
	margin-right: auto;
}
#mgka .widthWrapper {
	position: relative;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	z-index: 10;
}
#mgka .widthWrapper .insideWrapper {
	position: relative;
	width: 80%;
	margin: 0 auto;
	z-index: 1;
}
@media screen and (max-width: 800px) {
	#mgka .sectionWrapper .bg {
		background-attachment: scroll;
		background-image: url("../../narrative/images/_imagesMiddle/_bgTeaser.jpg");
		background-position: center top -10vw;
		background-repeat: repeat-y;
		background-size: 150% auto;
	}
	#mgka .photo {
		width: 90%;
		max-width: inherit;
	}
	#mgka .widthWrapper .insideWrapper {
		width: 92%;
	}
}
/*flexbox指定*/
#mgka .flexBlock {
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	flex-direction: row;
	flex-shrink: 0;
	list-style: none;
	margin: 0 auto;
}
#mgka .flexColumn {
	flex-direction: column;
}
#mgka .flexStart {
	justify-content: flex-start;
}
#mgka .flexBetween {
	justify-content: space-between;
}
#mgka .flexEnd {
	justify-content: flex-end;
}
#mgka .flexStretch {
	align-items: stretch;
}
#mgka .flexAlignCenter {
	align-items: center;
}
#mgka .flexReverse {
	flex-direction: row-reverse;
}
#mgka .flexSplit > div {
	width: 50%;
}
#mgka .flexList2 > div {
	width: 48.5%;
}
#mgka .flexList2.flexMovie > div {
	width: 45.8%;
}
#mgka .flexList3 > li,
#mgka .flexList3 > div {
	width: 31.166666%;
}
#mgka .flexList3 > div.narrow {
	width: 33.333333%;
}
#mgka .flexList3 > div.wide {
	width: 66.666666%;
	padding-left: 2em;
	box-sizing: border-box;
}
@media screen and (max-width: 800px) {
	#mgka .flexSplit > div {
		width: 100%;
	}
	#mgka .flexList2 > div {
		width: 90%;
		margin-left: 5%;
		margin-right: 5%;
	}
	#mgka .flexSplit > div + div,
	#mgka .flexList2 > div + div {
		margin-top: 2em;
	}
	#mgka .flexList2.flexMovie > div {
		width: 80%;
		margin-left: 5%;
		margin-right: 15%;
	}
	#mgka .flexList2.flexMovie > div.marginTop4 {
		margin-left: 20%;
		margin-right: 0;
	}
	#mgka .flexList2.flexMovie > div {
		margin-top: 2em!important;
	}
	#mgka .flexList3 > li,
	#mgka .flexList3 > div {
		width: 100%;
	}
	#mgka .flexList3 > div.narrow {
		width: 60%;
		margin-left: 20%;
		margin-right: 20%;
	}
	#mgka .flexList3 > div.wide {
		width: 100%;
		padding-left: 0;
	}
}
/*リンク装飾*/
#mgka a {
	display: inline-block;
	position: relative;
	color: #fff;
	text-decoration: none;
	cursor: pointer!important;
	transition: all 0.5s ease;
}
#mgka a.hover {
	color: #fff;
	text-decoration: none;
	transition: all 0.15s ease;
}
#mgka a.hoverOpacity {
	opacity: 1;
	transition: all 0.5s ease;
}
#mgka a.hoverOpacity.hover {
	opacity: 0.75;
	transition: all 0.15s ease;
}
/*デフォルト文字色*/
#mgka .textWhite,
#mgka .textWhite a,
#mgka a .textWhite {
	color: #fff;
}
#mgka .textBlue,
#mgka .textBlue a,
#mgka a .textBlue {
	color: #003fc0;
}
#mgka .textLightBlue,
#mgka .textLightBlue a,
#mgka a .textLightBlue {
	color: #3967b9;
}
#mgka .textRed,
#mgka .textRed a,
#mgka a .textRed {
	color: #cb141b;
}
#mgka .textGray,
#mgka .textGray a,
#mgka a .textGray {
	color: #495365;
}
#mgka .textUnderline > span {
	display: inline;
	padding-bottom: 0.25em;
	border-bottom: 2px solid transparent;
}
#mgka h2.textUnderline > span {
	border-bottom-width: 4px;
}
#mgka .textUnderline.textBlue > span {
	border-bottom-color: #003fc0;
}
#mgka .textUnderline.textGray > span {
	border-bottom-color: #595959;
}
#mgka .borderBlue {
	line-height: 0;
	border: 1px solid #003fc0;
	box-sizing: border-box;
}
/*テキスト装飾*/
#mgka .title {
	position: relative;
	padding-top: 0.25em;
	padding-left: 2.666666%;
	z-index: 90;
}
#mgka .title::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 16vw;
	max-width: 240px;
	height: 2px;
	background: #000;
	background: linear-gradient(90deg, #495365 50%, #919191 50%);
}
#mgka .sectionTitle > span {
	display: inline-block;
	position: relative;
	padding: 0.1em 0.5em;
	background: #3d4655;
	background: linear-gradient(90deg, #3d4655 0%, #5c7997 90%);
	z-index: 20;
}
#mgka .sectionTitle > span::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 8px;
	height: 100%;
	background-image: url("../images/decoTitleGray.png");
	background-position: left top;
	background-repeat: repeat;
}
#mgka .sectionTitle.sectionTitleWide > span {
	display: block;
	position: relative;
	padding: 0.25em 0.5em 0.25em 3.5em;
	background: linear-gradient(90deg, #5c7997 10%, #3d4655 100%);
}
#mgka .sectionTitle.sectionTitleWide > span::before {
	left: inherit;
	right: 0;
	background-image: url("../images/decoTitleGray.png");
}
#mgka .sectionTitle.sectionTitleWide > span > span {
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 0.5em;
	height: 0.75em;
	padding-right: 0.25em;
	line-height: 1;
	transform: translateY(-50%);
}
#mgka .sectionTitle.sectionTitleWide > span > span::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 1px;
	height: 1em;
	background-color: #fff;
	transform: translateY(-50%);
}
#mgka .sectionCatch {
	text-align: center;
}
#mgka .titleBgGray > span {
	display: inline-block;
	position: relative;
	padding: 0.25em 0.5em;
	background-color: #e1e2e8;
	border-right: 1px solid #495a77;
	border-bottom: 1px solid #495a77;
}
@media screen and (max-width: 800px) {
	#mgka .sectionTitle > span {
		padding: 0.25em 0.5em;
	}
	#mgka .sectionTitle > span::before {
		width: 4px;
		background-size: 100% auto;
	}
	#mgka .sectionTitle.sectionTitleWide > span {
		padding: 0.25em 0 0.25em 4.5em;
	}
	#mgka .sectionCatch {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
}

#mgka .textBox {
	position: relative;
	padding: 48px 0;
	background-image: url("../../narrative/images/bgMessagePattern.png");
	background-position: right top 2px;
	background-repeat: no-repeat;
	background-size: 50% auto;
	box-sizing: border-box;
}
#mgka .textBox::before,
#mgka .textBox::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 48px;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
#mgka .textBox::before {
	top: 0;
	background-image: url("../images/bgMessageHeader.png");
	background-position: left top 1px;
}
#mgka .textBox::after {
	bottom: 0;
	background-image: url("../images/bgMessageFooter.png");
	background-position: left bottom 1px;
}
#mgka .textBox > div {
	width: 100%;
	padding: 0.5em 1.5em;
	background-image: url("../images/bgMessage.png");
	background-position: left top;
	background-repeat: repeat-y;
	background-size: 100% auto;
	box-sizing: border-box;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka .textBox {
		padding: 3.2vw 0;
	}
	#mgka .textBox::before,
	#mgka .textBox::after {
		height: 3.2vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka .textBox {
		padding: 3.8vw 0;
		background-size: contain;
	}
	#mgka .textBox::before,
	#mgka .textBox::after {
		height: 3.8vw;
	}
}
#mgka .btn {
	width: 49.2vw;
	max-width: 738px;
	margin-left: auto;
	margin-right: auto;
}
#mgka .btn > a {
	display: block;
	width: 100%;
	height: 100%;
	background-position: right 1em center;
	background-repeat: no-repeat;
	background-size: auto 1em;
}
#mgka .btn.btnGray > a {
	color: #000;
	background-color: #f0f1f4;
	background-image: url("../../narrative/images/_svg/iconArrowBlue.svg");
	border: 2px solid #3da0e8;
}
#mgka .btn > a.hover {
	background-position: right 0.5em center;
}
#mgka .btn > a > span {
	display: block;
	width: 100%;
	height: 100%;
	padding: 1em 0;
	background-position: left -1px top -1px;
	background-repeat: no-repeat;
	background-size: 1.5em auto;
	transition: all 0.5s ease;
}
#mgka .btn.btnGray > a > span {
	background-image: url("../../narrative/images/_svg/iconBtnBlue.svg");
}
@media screen and (max-width: 800px) {
	#mgka .btn {
		width: 90%;
		max-width: inherit;
	}
}
/*背景色*/
#mgka .bgWhite {
	background-color: #fff;
}
#mgka hr {
	width: 100%;
	height: 1px;
	margin: 0;
	padding: 0;
	border: none;
}
/*YouTube*/
#mgka .videoWrapper {
	position: relative;
	width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}
#mgka .videoWrapper video {
	width: 100%;
	height: auto;
}
#mgka .movieWrapper {
	position: relative;
	width: 80%;
	height: 0;
	margin-left: auto;
	margin-right: auto;
	padding-top: 44.82%;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	border: 1px solid #b59b35;
	box-sizing: border-box;
	overflow: hidden;
}
#mgka .movieWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#mgka .movieWrapper span,
#mgka .movieWrapper span img,
#mgka .movieWrapper span span {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#mgka .movieWrapper span {
	background-image: url("../images/btnPlay.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 10% auto;
	transition: all 0.5s ease;
}
#mgka .movieWrapper.hover span {
	background-size: 12% auto;
	transition: all 0.15s ease;
}
@media screen and (max-width: 800px) {
	#mgka .movieEmbedWrapper,
	#mgka .movieWrapper {
		width: 100%;
		padding-top: 56.25%;
	}
	#mgka .movieWrapper span {
		background-size: 25% auto;
	}
}
/*kv*/
#mgka .kv {
	position: relative;
	width: 100%;
	height: 54.335936vw;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}
#mgka #kv {
	background-image: url("../images/_imagesMiddle/kvBg.jpg");
	z-index: 1;
}
#mgka #kv #kvObj {
	background-image: url("../images/_imagesMiddle/kvObj.png");
	z-index: 2;
	animation: kvObj 1.5s linear 0.0001s forwards;
}
@keyframes kvObj {
	0% {
		opacity: 0;
		transform: translateX(30px);
	}
	75% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
#mgka #kv #kvName {
	background-image: url("../images/_imagesMiddle/kvName.png");
	z-index: 6;
	animation: fadeIn 0.5s linear 1s forwards;
}
#mgka #kv .scroll {
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 3.2vw;
	max-width: 48px;
	height: 5.4vw;
	max-height: 81px;
	transform: translateX(-50%);
	z-index: 9;
}
#mgka #kv .scroll a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url("../images/_svg/scrollGray.svg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 10;
}
#mgka #kv p a.hover {
	background-position: center bottom -1vw;
}
@media screen and (max-width: 800px) {
	#mgka .kv {
		height: 200vw;
	}
	#mgka #kv {
		background-image: url("../images/_imagesNarrow/kvBg.jpg");
	}
	#mgka #kv #kvObj {
		background-image: url("../images/_imagesNarrow/kvObj.png");
		animation: kvObjSp 1.5s linear 0.0001s forwards;
	}
	#mgka #kv #kvName {
		background-image: url("../images/_imagesNarrow/kvName.png");
	}
	#mgka #kv .scroll {
		left: 86%;
		width: 10.6%;
		max-width: inherit;
		height: 18vw;
		max-height: inherit;
		transform: translateX(0);
	}
}
@keyframes kvObjSp {
	0% {
		opacity: 0;
		transform: translateY(10vw);
	}
	75% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translateX(0);
	}
}
/*sec02*/
#mgka #sec02 {
	position: relative;
	padding-top: 3em;
}
#mgka #sec02 .obj {
	top: -2em;
	left: -525px;
	width: 89vw;
	max-width: 1335px;
	z-index: 1;
}
#mgka #sec02 .sectionTitle > span {
	width: 100%;
	box-sizing: border-box;
}
#mgka #sec02 .specialWrapper {
	position: relative;
	width: 69.5%;
	height: 124vw;
	max-height: 1860px;
	margin-left: auto;
	z-index: 2;
}
#mgka #sec02 .specialCatch {
	width: 75%;
	margin-left: auto;
}
#mgka #sec02 .pointTitle {
	position: relative;
	width: 56.354916%;
	margin-right: auto;
	z-index: 2;
}
#mgka #sec02 .pointPhoto {
	position: relative;
	width: 59.952038%;
	margin-top: -3em;
	margin-left: auto;
	z-index: 1;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #sec02 .obj {
		left: -35vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka #sec02 .obj {
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		max-width: inherit;
	}
	#mgka #sec02 .specialWrapper {
		width: 100%;
		height: auto;
		max-height: inherit;
		margin-left: auto;
	}
	#mgka #sec02 .specialCatch {
		width: 100%;
	}
	#mgka #sec02 .specialCatch.text42 {
		font-size: 4.5vw;
	}
	#mgka #sec02 .pointTitle {
		width: 68%;
	}
	#mgka #sec02 .pointPhoto {
		width: 72%;
		margin-top: -2em;
	}
}

/*sec04*/
#mgka #sec04 li span {
	display: block;
}
#mgka #sec04 li .thumb {
	position: relative;
	width: 100%;
	padding-top: 179%;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}
#mgka #sec04 li:nth-child(1) .thumb {
	background-image: url("../images/04history/img01.png");
}
#mgka #sec04 li:nth-child(2) .thumb {
	background-image: url("../images/04history/img02.png");
}
#mgka #sec04 li:nth-child(3) .thumb {
	background-image: url("../images/04history/img03.png");
}
#mgka #sec04 li .thumb .titleWithBorderLeft {
	position: absolute;
	top: 0;
	left: 0;
	padding: 0.25em 0.5em;
	line-height: 1.1;
	border-left: 8px solid #3d4655;
}
#mgka #sec04 li .itemName {
	position: relative;
	padding: 0.5em 0 0.5em 35%;
	line-height: 1.1;
}
#mgka #sec04 li .itemName::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 32%;
	height: 100%;
	background-image: url("../../narrative/images/logoMgVerKa.png");
	background-position: left top 0.5em;
	background-repeat: no-repeat;
	background-size: contain;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
}
@media screen and (max-width: 800px) {
	#mgka #sec04 li .thumb {
		padding-top: 130%;
	}
	#mgka #sec04 li:nth-child(1) .thumb {
		background-image: url("../images/04history/img01sp.png");
	}
	#mgka #sec04 li:nth-child(2) .thumb {
		background-image: url("../images/04history/img02sp.png");
	}
	#mgka #sec04 li:nth-child(3) .thumb {
		background-image: url("../images/04history/img03sp.png");
	}
	#mgka #sec04 li .thumb .text42 {
		font-size: 10vw;
		padding-top: 0.25em;
	}
	#mgka #sec04 li .thumb .text30 {
		font-size: 8vw;
	}
}
/*sec05 point01*/
#mgka #sec05 .adjustPoint01obj01 {
	margin-top: -10em;
}
#mgka #sec05 .adjustPoint01obj02 {
	margin-top: -8em;
}
#mgka #sec05 .adjustPoint01obj02 .photo {
	width: 100%;
}
@media screen and (max-width: 800px) {
	#mgka #sec05 #point01 .text30 {
		font-size: 4.5vw;
	}
	#mgka #sec05 .sectionTitleWide.text30 {
		font-size: 4vw!important;
	}
	#mgka #sec05 .adjustPoint01obj01 {
		margin-top: -2em;
	}
	#mgka #sec05 .adjustPoint01obj02 {
		margin-top: -4em;
	}
}
/*sec05 point02*/
#mgka #sec05 .adjustPoint02 {
	margin-top: -3em;
}
@media screen and (max-width: 800px) {
	#mgka #sec05 .adjustPoint02 {
		margin-top: 0;
	}
	#mgka #sec05 #point02 .flexList2 > div {
		width: 48.5%;
		margin-left: 0;
		margin-right: 0;
	}
	#mgka #sec05 #point02 .flexList2 > div + div {
		margin-top: 0;
	}
}
/*sec05 point02 sub01*/
#mgka #sec05 #point02sub01 {
	position: relative;
	padding-top: 1200px;
	background-image: url("../images/05research/point02sub01obj01.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto auto;
}
#mgka #sec05 #point02sub01 .weaponsName {
	padding-top: 5.5em;
	text-align: right;
}
#mgka #sec05 #point02sub01 .detailText {
	width: 66%;
	margin-right: auto;
	padding-top: 7.5em;
}
#mgka #sec05 #point02sub01 .adjustPoint02sub01obj02 {
	position: absolute;
	top: 6em;
	left: 0;
}
#mgka #sec05 #point02sub01 .photo {
	width: 100%;
}
#mgka #sec05 #point02sub01 .adjustPoint02sub01obj03 {
	margin-top: -5em;
}
#mgka #sec05 #point02sub01 .adjustPoint02sub01obj03 + div {
	margin-top: -10em;
}
#mgka #sec05 #point02sub01 .point02sub01obj04 {
	position: relative;
	padding-top: 840px;
	background-image: url("../images/05research/point02sub01obj04.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto auto;
}
#mgka #sec05 #point02sub01 .point02sub01obj04 .insideWrapper {
	margin-top: -2em;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #sec05 #point02sub01 {
		padding-top: 80vw;
		background-size: 120% auto;
	}
	#mgka #sec05 #point02sub01 .point02sub01obj04 {
		padding-top: 56vw;
		background-size: 120% auto;
	}
}
@media screen and (max-width: 800px) {
	#mgka #sec05 #point02sub01 {
		padding-top: 90vw;
		background-size: 135% auto;
	}
	#mgka #sec05 #point02sub01 .adjustPoint02sub01obj03 + div {
		margin-top: -5em;
	}
	#mgka #sec05 #point02sub01 .point02sub01obj04 {
		padding-top: 56vw;
		background-size: 145% auto;
	}
	#mgka #sec05 #point02sub01 .weaponsName {
		padding-top: 7.5em;
		text-align: left;
	}
	#mgka #sec05 #point02sub01 .detailText {
		width: 100%;
		margin-right: auto;
		padding-top: 0.5em;
	}
}
/*sec05 point02 sub02*/
#mgka #sec05 #point02sub02 {
	position: relative;
	padding-top: 99px;
	background-image: url("../images/05research/point02sub02obj01.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto auto;
}
#mgka #sec05 #point02sub02 .photo {
	width: 100%;
	max-width: inherit;
}
#mgka #sec05 #point02sub02 .titleBgGray + .weaponWrapper {
	margin-top: 900px;
}
#mgka #sec05 #point02sub02 .weaponWrapper {
	position: relative;
}
#mgka #sec05 #point02sub02 .weaponsName01 {
	position: absolute;
	bottom: 0;
	left: 0;
}
#mgka #sec05 #point02sub02 .weaponsName02 {
	position: absolute;
	bottom: -0.25em;
	left: 0;
}
#mgka #sec05 #point02sub02 .weaponsName03 {
	position: absolute;
	bottom: 1em;
	left: 0;
}
#mgka #sec05 #point02sub02 .detailText {
	position: absolute;
	top: 57em;
	left: 48%;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #sec05 #point02sub02 {
		padding-top: 6.6vw;
		background-size: 120% auto;
	}
	#mgka #sec05 #point02sub02 .titleBgGray + .weaponWrapper {
		margin-top: 60vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka #sec05 #point02sub02 {
		padding-top: 6.6vw;
		background-size: 150% auto;
	}
	#mgka #sec05 #point02sub02 .titleBgGray + .weaponWrapper {
		margin-top: 60vw;
	}
	#mgka #sec05 #point02sub02 .weaponsName01 {
		position: relative;
	}
	#mgka #sec05 #point02sub02 .weaponsName02 {
		position: relative;
		bottom: 0;
	}
	#mgka #sec05 #point02sub02 .weaponsName03 {
		position: absolute;
		bottom: 0.5em;
		left: 0;
	}
	#mgka #sec05 #point02sub02 .detailText {
		position: relative;
		top: 0;
		left: 0;
	}
}
/*point03*/
#mgka #sec05 #point03 .adjustPoint03obj01 {
	position: relative;
	padding-top: 1140px;
	background-image: url("../images/05research/point03obj01.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: auto auto;
}
#mgka #sec05 #point03 .photo {
	width: 100%;
}
#mgka #sec05 #point03 .flexList2withArrow .photo {
	width: 43.333333%;
}
#mgka #sec05 #point03 .flexList2withArrow .arrow {
	width: 13.333333%;
}
#mgka #sec05 #point03 .adjustPoint03obj02 {
	margin-top: -2em;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #sec05 #point03 .adjustPoint03obj01 {
		padding-top: 76vw;
		background-size: 144% auto;
	}
}
@media screen and (max-width: 800px) {
	#mgka #sec05 #point03 .adjustPoint03obj01 {
		padding-top: 76vw;
		background-size: 144% auto;
	}
}
/*sec05 point03sub01*/
#mgka #sec05 #point03sub01 {
	margin-top: -6em;
}
#mgka #sec05 #point03sub01 .flexBlock > div.wide {
	width: 42%;
}
#mgka #sec05 #point03sub01 .flexBlock > div.narrow {
	width: 56%;
}
@media screen and (max-width: 800px) {
	#mgka #sec05 #point03sub01 .flexBlock > div.wide {
		width: 100%;
	}
	#mgka #sec05 #point03sub01 .flexBlock > div.narrow {
		width: 100%;
	}
}
/* gallery */
#mgka #sec06 .gallerySlider {
	position: relative;
	width: 100%;
	height: 55vw;
	overflow: hidden;
	z-index: 20;
}
#mgka #sec06 .gallerySlider .gallerySlidePhoto {
	width: 55vw;
	opacity: 0.5;
	transition: all 0.5s ease;
}
#mgka #sec06 .gallerySlider .gallerySlidePhoto.slick-active,
#mgka #sec06 .gallerySlider .gallerySlidePhoto.slick-current {
	opacity: 1;
	transition: all 0.5s ease;
}
@media screen and (max-width: 800px) {
	#mgka #sec06 .gallerySlider,
	#mgka #sec06 .gallerySlider,
	#mgka #sec06 .gallerySlider .slick-list .gallerySlidePhoto {
		height: 100vw;
	}
	#mgka #sec06 .gallerySlider .slick-list .gallerySlidePhoto {
		width: 100vw;
	}
}
/*dots*/
#mgka #sec06 .gallerySlider .slick-dots {
	position: absolute;
	top: 0.5em;
	left: 50%;
	display: block;
	width: 58vw;
	height: 4px;
	padding: 0;
	line-height: 0;
	list-style: none;
	text-align: center;
	pointer-events: none;
	transform: translateX(-50%);
}
#mgka #sec06 .gallerySlider .slick-dots li {
	position: relative;
	display: inline-block;
	width: 4vw;
	max-width: 60px;
	height: 4px;
	margin: 0 0.2vw!important;
	padding: 0;
	opacity: 1!important;
	background-color: transparent!important;
	pointer-events: auto;
	cursor: pointer;
}
#mgka #sec06 .gallerySlider .slick-dots li button {
	font-size: 0;
	line-height: 0;
	display: block;
	width: 100%;
	height: 4px;
	padding: 0;
	cursor: pointer;
	color: transparent;
	outline: none;
	background-color: #d7d7d7;
	border: none;
	box-sizing: border-box;
	transition: all 0.4s ease-out;
}
#mgka #sec06 .gallerySlider .slick-dots li button:hover,
#mgka #sec06 .gallerySlider .slick-dots li.slick-active button {
	background-color: #eb0b32;
}
@media screen and (max-width: 800px) {
	#mgka #sec06 .gallerySlider .slick-dots {
		width: 92vw;
	}
	#mgka #sec06 .gallerySlider .slick-dots li {
		width: 6.5vw;
		max-width: inherit;
		margin: 0 0.4vw!important;
	}
}
/* item */
#mgka #sec07 .boxContents,
#mgka #sec07 .boxContents .boxContentsInside {
	position: relative;
	height: 62vw;
	max-height: 920px;
}
#mgka #sec07 .boxContents {
	border: 1px solid #3d4655;
}
#mgka #sec07 .boxContents > .boxContents {
	border: none;
}
#mgka #sec07 .boxContents .boxContentsInside {
	position: relative;
	width: 100%;
	background-color: #e7e8ed;
	background-image: url("../images/07item/bg.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	box-sizing: border-box;
	z-index: 2;
}
#mgka #sec07 .boxContents::before,
#mgka #sec07 .boxContents::after {
	content: "";
	display: block;
	position: absolute;
	width: 6.6vw;
	max-width: 99px;
	height: 6.6vw;
	max-height: 99px;
	background-image: url("../images/decoTitleGray.png");
	background-position: left top;
	background-repeat: repeat;
	background-size: auto auto;
	z-index: 1;
}
#mgka #sec07 .boxContents::before {
	top: -5px;
	left: -5px;
}
#mgka #sec07 .boxContents::after {
	top: -5px;
	right: -5px;
}
#mgka #sec07 .boxContents > .boxContents::before {
	top: inherit;
	bottom: -5px;
	left: -5px;
}
#mgka #sec07 .boxContents > .boxContents::after {
	top: inherit;
	bottom: -5px;
	right: -5px;
}
#mgka #sec07 .boxContents .boxContentsInside .obj {
	left: -150px;
	width: 54vw;
	max-width: 810px;
}
#mgka #sec07 .boxContents .boxContentsInside .contents {
	width: 34vw;
	max-width: 510px;
	height: 62vw;
	max-height: 920px;
	margin-left: 621px;
}
#mgka #sec07 .boxContents .boxContentsInside .contents .logo {
	width: 72%;
	margin-left: auto;
	margin-right: auto;
	padding-top: 144px;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #sec07 .boxContents .boxContentsInside .obj {
		left: -10vw;
	}
	#mgka #sec07 .boxContents .boxContentsInside .contents {
		margin-left: 41.4vw;
	}
	#mgka #sec07 .boxContents .boxContentsInside .contents .logo {
		padding-top: 9.6vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka #sec07 .boxContents,
	#mgka #sec07 .boxContents .boxContentsInside {
		height: auto;
		max-height: inherit;
	}
	#mgka #sec07 .boxContents {
		margin-top: 5em;
	}
	#mgka #sec07 .boxContents > .boxContents {
		margin-top: 0;
	}
	#mgka #sec07 .boxContents .boxContentsInside {
		background-size: cover;
	}
	#mgka #sec07 .boxContents::before,
	#mgka #sec07 .boxContents::after {
		width: 9vw;
		max-width: inherit;
		height: 9vw;
		max-height: inherit;
		background-size: 4px auto;
	}
	#mgka #sec07 .boxContents::before {
		top: -3px;
		left: -3px;
	}
	#mgka #sec07 .boxContents::after {
		top: -3px;
		right: -3px;
	}
	#mgka #sec07 .boxContents > .boxContents::before {
		top: inherit;
		bottom: -3px;
		left: -3px;
	}
	#mgka #sec07 .boxContents > .boxContents::after {
		top: inherit;
		bottom: -3px;
		right: -3px;
	}
	#mgka #sec07 .boxContents .boxContentsInside .obj {
		position: relative;
		top: -10vw;
		left: -10%;
		width: 120%;
		max-width: inherit;
	}
	#mgka #sec07 .boxContents .boxContentsInside .contents {
		width: 90%;
		max-width: inherit;
		height: auto;
		max-height: inherit;
		margin-left: auto;
		margin-right: auto;
		padding-bottom: 2em;
	}
	#mgka #sec07 .boxContents .boxContentsInside .contents .logo {
		width: 72%;
		margin-top: -2em;
		margin-left: auto;
		margin-right: auto;
		padding-top: 0;
	}
	#mgka #sec07 .boxContents .boxContentsInside .contents .fontEn.text42 {
		font-size: 8vw;
	}
}
#mgka #goToTop {
	position: absolute;
	right: 24px;
	bottom: 30px;
	width: 4vw;
	max-width: 60px;
	height: 4vw;
	max-height: 60px;
	z-index: 15;
}
#mgka #goToTop > a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url('../images/_svg/goToTopGray.svg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}
@media screen and (min-width: 801px) and (max-width: 1500px) {
	#mgka #goToTop {
		right: 1.6vw;
		bottom: 2vw;
	}
}
@media screen and (max-width: 800px) {
	#mgka #goToTop {
		right: 4vw;
		bottom: 5vw;
		width: 10vw;
		max-width: inherit;
		height: 10vw;
		max-height: inherit;
	}
}
/* sns */
#mgka .snsBlock {
	position: relative;
	width: 100%;
	height: 1em;
	margin-left: auto;
	margin-right: auto;
	padding: 0.4em 0;
}
#mgka .snsBlock .snsBtn {
	display: block;
	height: 1em;
	margin: 0 0.2em 0 0;
}
/* animation */
#mgka .init {
	opacity: 0;
}
#mgka .action .delay01 {
	animation: fadeIn 0.5s linear 0.2s forwards;
}
#mgka .action .delay02 {
	animation: fadeIn 0.5s linear 0.4s forwards;
}
#mgka .action .delay03 {
	animation: fadeIn 0.5s linear 0.6s forwards;
}
#mgka .action .delay04 {
	animation: fadeIn 0.5s linear 0.8s forwards;
}
#mgka .action .delay05 {
	animation: fadeIn 0.5s linear 1s forwards;
}
#mgka .action .delay06 {
	animation: fadeIn 0.5s linear 1.2s forwards;
}
#mgka .action .delay07 {
	animation: fadeIn 0.5s linear 1.4s forwards;
}
#mgka .action .delay08 {
	animation: fadeIn 0.5s linear 1.6s forwards;
}
#mgka .action .delay09 {
	animation: fadeIn 0.5s linear 1.8s forwards;
}
#mgka .action .delay10 {
	animation: fadeIn 0.5s linear 2s forwards;
}
@keyframes fadeIn {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes fadeOut {
	0% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
#mgka .action .delayMotion01 {
	animation: fadeAndSlideIn 0.5s linear 0.2s forwards;
}
#mgka .action .delayMotion02 {
	animation: fadeAndSlideIn 0.5s linear 0.4s forwards;
}
#mgka .action .delayMotion03 {
	animation: fadeAndSlideIn 0.5s linear 0.6s forwards;
}
#mgka .action .delayMotion04 {
	animation: fadeAndSlideIn 0.5s linear 0.8s forwards;
}
#mgka .action .delayMotion05 {
	animation: fadeAndSlideIn 0.5s linear 1s forwards;
}
#mgka .action .delayMotion06 {
	animation: fadeAndSlideIn 0.5s linear 1.2s forwards;
}
#mgka .action .delayMotion07 {
	animation: fadeAndSlideIn 0.5s linear 1.4s forwards;
}
#mgka .action .delayMotion08 {
	animation: fadeAndSlideIn 0.5s linear 1.6s forwards;
}
#mgka .action .delayMotion09 {
	animation: fadeAndSlideIn 0.5s linear 1.8s forwards;
}
#mgka .action .delayMotion10 {
	animation: fadeAndSlideIn 0.5s linear 2s forwards;
}
@keyframes fadeAndSlideIn {
	0% {
		opacity: 0;
		transform: translateY(30px);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}