@charset "UTF-8";


/*


	Top



 */


/*
	Common

--------------------------------------------------- */
.top_none { display: none; }




/*
	Animation

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

	/* Animation > Fade-In */
	.fadein-init {
	    opacity: 0;
	    position: relative;

	    -webkit-transform: translateY(-10%);
	    -moz-transform: translateY(-10%);
	    transform: translateY(-10%);

	    -webkit-transition-duration: 2s;
	    -moz-transition-duration: 2s;
	    transition-duration: 2s;
		}
	.fadein-init-on {
	    opacity: 1;

	    -webkit-transition-property: opacity, transform;
	    -moz-transition-property: opacity, transform;
	    transition-property: opacity, transform;

	    -webkit-transform: translateY(0);
	    -moz-transform: translateY(0);
	    transform: translateY(0);
		}
		/* Animation > Fade-In > Scheme */
		.fi-sec-1halfs {
		    -webkit-transition-duration: .5s;
		    -moz-transition-duration: .5s;
		    transition-duration: .5s;
			}
		.fi-sec-1s {
		    -webkit-transition-duration: 1s;
		    -moz-transition-duration: 1s;
		    transition-duration: 1s;
			}
		.fi-sec-3s {
		    -webkit-transition-duration: 3s;
		    -moz-transition-duration: 3s;
		    transition-duration: 3s;
			}

	/*
		Animation > Reveal
		// Front
		// Parent : anm-reveal & animation-ltr or animation-rtl & data-delay="1000"
		// Child : anm-rvl-item
	*/
	.anm-reveal { position: relative; }
	.anm-reveal .anm-rvl-item { opacity: 0; }
	.anm-reveal.anm-rvl-in .anm-rvl-item {
		-webkit-animation: textHidden 0.1s 1.1s forwards;
		-moz-animation: textHidden 0.1s 1.1s forwards;
		animation: textHidden 0.1s 1.1s forwards;
		}
	.anm-reveal.anm-rvl-in:before,
	.anm-reveal.anm-rvl-in:after {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
		z-index: 200;
		}
	.anm-reveal.anm-rvl-in:before {
		background-color: rgba(218, 198, 0, 1);
		}
	.anm-reveal.anm-rvl-in:after {
		background-color: rgba(25, 67, 117, 1);
		animation-delay: .5s;
		}
	.anm-reveal.animation-ltr.anm-rvl-in:before {
		-webkit-animation: revealLTR 1s ease;
		-moz-animation: revealLTR 1s ease;
		animation: revealLTR 1s ease;
		}
	.anm-reveal.animation-ltr.anm-rvl-in:after {
		-webkit-animation: revealLTR .6s .6s ease;
		-moz-animation: revealLTR .6s .6s ease;
		animation: revealLTR .6s .6s ease;
		}
	.anm-reveal.animation-rtl.anm-rvl-in:before {
		-webkit-animation: revealRTL 1s ease;
		-moz-animation: revealRTL 1s ease;
		animation: revealRTL 1s ease;
		}
	.anm-reveal.animation-rtl.anm-rvl-in:after {
		-webkit-animation: revealRTL .6s .6s ease;
		-moz-animation: revealRTL .6s .6s ease;
		animation: revealRTL .6s .6s ease;
		}
	@keyframes revealRTL { 0% { width: 0; right: 0; } 65% { width: 100%; right: 0; } 100% { width: 0; right: 100%; } }
	@keyframes revealLTR { 0% { width: 0; left: 0; } 65% { width: 100%; left: 0; } 100% { width: 0; left: 100%; } }
	@keyframes textHidden { 0% { opacity: 0; } 100% { opacity: 1; } }

	/* Animation > scrollInFunc - Slide */
	.anm-gmk {
		opacity: 0;
		overflow: hidden;
		position: relative;
		}
	.anm-gmk:before,
	.anm-gmk:after {
	    bottom: 0;
	    content: '';
	    display: block;
	    left: 0;
	    position: absolute;
	    right: 0;
	    top: 0;
	    z-index: 9999;

	    -webkit-transform: translate(101%, 0);
	    transform: translate(101%, 0);
		}
	.anm-gmk:before {
		background: rgba(25, 67, 117, 1);
		/*background-color: #0093E9;
		background-image: -webkit-linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);
		background-image: -moz-linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);
		background-image: -o-linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);
		background-image: linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);*/
		}
	.anm-gmk:after {
		background: rgba(218, 198, 0, 1);
		/*background-color: #4158D0;
		background-image: -webkit-linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
		background-image: -moz-linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
		background-image: -o-linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
		background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);*/
		}
	.anm-gmk.is-show {
		-webkit-animation: opacityitem 1200ms both;
		animation: opacityitem 1200ms both;
		/*animation: opacityitem 1600ms cubic-bezier(0.77, 0, 0.175, 1);*/
		}
	.anm-gmk.is-show:before {
		-webkit-animation: masking 1800ms cubic-bezier(0.77, 0, 0.175, 1);
		animation: masking 1800ms cubic-bezier(0.77, 0, 0.175, 1);
		}
	.anm-gmk.is-show:after {
		-webkit-animation: masking 1200ms cubic-bezier(0.77, 0, 0.175, 1);
		animation: masking 1200ms cubic-bezier(0.77, 0, 0.175, 1);
		}

	@-webkit-keyframes opacityitem { 50% { opacity: 0; } 100% { opacity: 1; } }
	@keyframes opacityitem { 50% { opacity: 0; } 100% { opacity: 1; } }
	@-webkit-keyframes masking {
		0% { -webkit-transform: translate(-101%, 0); transform: translate(-101%, 0); }
		42%, 58% { -webkit-transform: translate(0%, 0); transform: translate(0%, 0); }
		100% { -webkit-transform: translate(101%, 0); transform: translate(101%, 0); }
		}
	@keyframes masking {
		0% { -webkit-transform: translate(-101%, 0); transform: translate(-101%, 0); }
		42%, 58% { -webkit-transform: translate(0%, 0); transform: translate(0%, 0); }
		100% { -webkit-transform: translate(101%, 0); transform: translate(101%, 0); }
		}




/*
	Main

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

    /* Header > Nav > Contact */
    .gn-contact-wrap {}
      #gn-contact {}
      #gn-contact:after { display: none; }
        #gn-contact span {}
      .gn-tel-wrap {}
        .gn-tel-item {  }
          .gn-tel-item dl {}
            .gn-tel-item dl dt {}
            .gn-tel-item dl dd {}

	/* Height Area */
	body > .container,
	/*.container > #intro { height: 100%; }*/

  /* Mainvisual */
.tpMVArea{}
.tpMVThmGrp{}
.tpMVThmInr{}
.tpMVThm{}
.tpMVThmTxt{
  font-weight: 600;
}
.tpMVThmTxt:last-of-type{
  margin: 0;
}
.tpMVThmSub{}
.tpMVThmSubTxt{}
.tpMVThmSubTxt:last-of-type{
  margin: 0;
}
.tpMVThmSubEnTxt{
  display: block;
	font-weight: 600;
}
.tpMVThmSubEnTxtMin{}
.tpMVMnuGrp{}
.tpMVMnuCnt{}
.tpMVMnuBlk{
  display: flex;
}
.tpMVMnu{
  position: relative;
  transition: all 0.8s;
}
.tpMVMnu:before{
  content: "";
  float: left;
  width: 100%;
  }
.tpMVMnuLnk{
  align-items: center;
  color: rgba(255, 255, 255, 1);
  display: flex;
  flex-wrap: wrap;
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  transition: all 0.8s;
  width: 100%;
}
.tpMVMnuNteBlk{
  display: flex;
  flex-wrap: wrap;
  position: relative;
  z-index: 25;
  width: 100%;
}
.tpMVMnuNteBlk:after{
  background-image: url("/src/img/common/arrow/line-right-white.svg");
  background-position: center;
  background-repeat: no-repeat;
  border: 1px rgba(255, 255, 255, 1) solid;
  border-radius: 50%;
  box-shadow: 0 0 4px rgb(0 0 0 / 80%);
  box-sizing: border-box;
  content: "";
  display: inline-block;
  left: 0;
  position: absolute;
}
.tpMVMnuNteTtl{
  order: 2;
  position: relative;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
  width: 100%;
}
.tpMVMnuNteTtl:before{
  background-color: rgba(255, 255, 255, 1);
  content: "";
  display: inline-block;
  height: 2px;
  left: 0;
  position: absolute;
}
.tpMVMnuNte{
  font-weight: 500;
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.8);
  order: 1;
}
.tpMVMnuNteActv{
  font-weight: 400;
  order: 3;
}
.tpMVMnuFigBlk{
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;
}
/*.tpMVMnuFigBlk:before{
  background-color: rgba(0, 0, 0, 0.2);
  bottom: 0;
  content: "";
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}*/
.tpMVMnuFigPc{}
.tpMVMnuFigSp{}
.tpMVMnuFigBlk img{
  /*height: auto;
  width: 100vw;
  max-width: 100vw;*/
  }




	/* Intro */
	/*#intro {
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
		overflow: hidden;
		}
		#int-wrap {
			display: block;
			height: 100%;
			position: relative;
			width: 100%;
			}
			#int-ttlarea {
				display: table;
				height: 100%;
				text-align: center;
				width: 100%;
				}
				#int-ttl {
					color: rgba(255, 255, 255, 1);
					display: table-cell;
					vertical-align: middle;
					}
					#int-logo {
						background-position: center;
						background-repeat: no-repeat;
						background-image: url(/src/img/common/logo/cd-landscape-white.svg);
						display: inline-block;
						text-indent: -9999px;
						}
					#int-catch {
						display: block;
						line-height: 1;
						}
						#int-catch span { font-family: var(--ff-cg); }
						#int-catch small { display: block; }*/

	/* Wrap */
	#wrap {
		background-color: rgba(255, 255, 255, 1);
		position: relative;
		z-index: 1;
		}

	/* Outline */
	#outline {
		background-color: rgba(255, 255, 255, 1);
		margin: 0 auto;
		position: relative;
		text-align: center;
		z-index: 1;
		}
		#otl-des {}
			#otl-des p {}
			#otl-des .com-linkarea {}

	/* MV Bottom Infomation */

/*.com-info { text-align: center; }
	.com-inf-item {
		border: 1px solid rgba(0, 0, 0, .4);
		color: rgba(0, 0, 0, 1);
		position: relative;
		text-align: left;
		display: inline-flex;
		align-items: center;
		justify-content: flex-start;
		}

    .com-inf-bnr{
      text-align: center;
    }
    .com-inf-bnr-itm-lnk{
      display: inline-block;
    }

@media screen and (min-width: 751px) {
.com-info { padding: 30px 30px 50px; }
	.com-inf-item {
		font-size: 17px;
		line-height: 1.5;
		padding: 15px 52px;
		transition: all .3s;
		}
	.com-inf-item:hover {
		opacity: .6;
		text-decoration: underline;
		}
  .com-inf-bnr{}
  .com-inf-bnr-itm-lnk{}
  .com-inf-bnr-itm-lnk:hover{
    opacity: 0.6;
  }
}
@media screen and (max-width: 750px) {
.com-info { padding: 20px 20px 30px; }
	.com-inf-item {
		font-size: 13px;
		line-height: 1.5;
		padding: 15px 20px;
		}
  .com-inf-bnr{
    padding: 0 20px;
  }
  .com-inf-bnr-itm-lnk{}
}*/

	/* WORKS */
	#works {
		/*border-top: 1px dotted rgba(50, 50, 50, .5);*/
		margin-top: 0;
		}
		#wks-list { width: 100%; }
			.wks-item {}
				.wks-item a {
					color: rgba(50, 50, 50, 1);
					display: block;
					}
					.wks-thumb {
						background-color: rgba(50, 50, 50, 1);
						max-width: 100%;
						overflow: hidden;
						position: relative;
						}
						.wks-thumb img {
							left: 0;
							max-width: none;
							position: absolute;
							top: 0;
							z-index: 0;
							}
					.wks-detail {
						text-align: left;
						}
						.wks-date { font-size:88%; color:#999;}
						.wks-ttl {}
							.wks-company {}
							.wks-category {
								background-image: url(/src/img/common/icon/tag-gray.png);
								background-repeat: no-repeat;
								border-top: 1px solid rgba(50, 50, 50, .5);
								font-family: var(--ff-cg);
								letter-spacing: -0.4em;
								}
								.wks-category span {
									display: inline-block;
									letter-spacing: 0em;
									vertical-align: top;
									}

	/* 360VR solution */
	#vrsolution {
		/*background-image: url(/src/img/top/vrsolution/bg.png);*/
		background-image: url(https://www.idoga.jp/theme/ver2/img/header/bg.jpg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		margin-top: 0;
		max-width: 100%;
		}
		#vrsolution .item-inner {
			margin: 0 auto;
			text-align: left;
			}
			#vrs-ttlarea { text-align: left; }
				#vrs-ttl { color: rgba(255, 255, 255, 1); }
					#vrs-ttl span,
					#vrs-ttl small {
						display: inline-block;
						vertical-align: middle;
						}
					#vrs-ttl span {
						background-image: url(/src/img/common/logo/idogavr-landscape-white.svg);
						background-repeat: no-repeat;
						background-position: center;
						text-indent: -9999px;
						}
					#vrs-ttl small {}
			#vrs-outline {}
				#vrs-outline p { color: rgba(255, 255, 255, 1); }
		#vrsolution .com-linkarea {}

	/* Information */
	#information {}
		#inf-list {
			border-bottom: 1px solid rgba(50, 50, 50, .2);
			border-top: 1px solid rgba(50, 50, 50, .2);
			}
			.inf-item {
				border-bottom: 1px solid rgba(50, 50, 50, .2);
				position: relative;
				}
			.inf-item:last-child { border-bottom: none; }
				.inf-item a {
					color: rgba(50, 50, 50, 1);
					display: block;
					}
				.inf-item dl {
					letter-spacing: -0.4em;
					text-align: left;
					}
					.inf-item dt,
					.inf-item dd {
						display: inline-block;
						letter-spacing: 0em;
						vertical-align: middle;
						}
					.inf-item dt {}
					.inf-item dd {}
						.inf-item span {
							display: inline-block;
							text-align: center;
							}
						.inf-cat {
							background-color: rgba(125, 132, 139, 1);
							color: rgba(255, 255, 255, 1);
							}
						.inf-data {}

	/* Blog */
	#blog {}


	/* musuvime topic */
  #musuvimetopics {
    background-color: #f5f3f0;
    color: #fff;
    margin-top: 0;
    max-width: none;
    }
    #mvt-ttlarea {}
      #mvt-ttl { color: #c7000b; }
        #mvt-ttl img {
          display: block;
          margin: 0 auto;
          }
    #mvt-list { margin: 0 auto; }
      .mvt-item {}
        .mvt-itm-link { color: #333; }
          .mvt-itm-thumb {
            border: 1px solid rgba(255, 255, 255, .5);
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 5px;
            }
            .mvt-itm-thumb img { position: relative; }
          .mvt-itm-dataarea {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: flex-start;
            }
	#musuvimetopics .f_sns {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 3rem auto;
		width: 80px;
		}
	#musuvimetopics .f_sns li {
		padding: 6px;
		}
  #musuvimetopics .mvt-itm-cat{
    color: rgba(255,255,255,1);
    padding: 0.3em 0.5em;
    }
  #musuvimetopics .mvt-itm-cat.cat1{background: #bba066;}
  #musuvimetopics .mvt-itm-cat.cat2{background: #89c7bf;}
  #musuvimetopics .mvt-itm-cat.cat3{background: #89b5d2;}
  #musuvimetopics .mvt-itm-cat.cat4{background: #db9ba0;}
  #musuvimetopics .mvt-itm-cat.cat5{background: #e2d06e;}
  /* ------------------------------------------------ */
  @media screen and (min-width: 751px) {
  #musuvimetopics {}
    #mvt-ttlarea {}
      #mvt-ttl { font-size: 30px; }
        #mvt-ttl img {
          max-width: 250px;
          margin-bottom: 15px;
          }
    #mvt-list {
      margin-top: 30px;
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: center;
      }
      .mvt-item { max-width: 360px; }
        .mvt-itm-link { padding: 25px; }
        span.mvt-itm-link {}
        a.mvt-itm-link { display: block; }
          .mvt-itm-thumb {}
            .mvt-itm-thumb img { transition: all .5s; }
          .mvt-itm-dataarea { margin-top: 20px; }
            .mvt-itm-dataarea span {
              font-size: 14px;
              margin-right: 20px;
              }
            .mvt-itm-dataarea span:last-child { margin-right: 0; }
          .mvt-itm-ttl {
            margin-top: 15px;
            font-size: 15px;
            line-height: 1.75;
            transition: all .5s;
            }
    /* Hover */
    a.mvt-itm-link:hover .mvt-itm-thumb img { transform: scale(1.1); }
    a.mvt-itm-link:hover .mvt-itm-ttl { color: #c7000b; }
    #musuvimetopics .cl-item:hover { border-color: #c7000b; }
    #musuvimetopics .cl-item:hover:before { background-color: #c7000b; }

  }
  /* ------------------------------------------------ */
  @media screen and (max-width: 750px) {
  #musuvimetopics {
    border-radius: 20px;
    margin: 0 10px 10px;
    }
    #mvt-ttlarea {}
      #mvt-ttl { font-size: 20px; }
        #mvt-ttl img {
          max-width: 150px;
          margin-bottom: 10px;
          }
    #mvt-list { margin-top: 20px; }
      .mvt-item { border-bottom: 1px dotted rgba(200, 0, 10, .5); }
      .mvt-item:last-child { border-bottom: none; }
        .mvt-itm-link { padding: 25px; }
        span.mvt-itm-link {}
        a.mvt-itm-link {
          display: flex;
          align-items: flex-start;
          justify-content: center;
          }
          .mvt-itm-thumb {
            min-width: 100px;
            max-width: 100px;
            }
          .mvt-itm-ttlarea { padding-left: 15px; }
            .mvt-itm-dataarea {}
              .mvt-itm-dataarea span {
                font-size: 12px;
                margin-right: 15px;
                }
              .mvt-itm-dataarea span:last-child { margin-right: 0; }
            .mvt-itm-ttl {
              margin-top: 10px;
              font-size: 14px;
              line-height: 1.5;
              }
	#musuvimetopics .f_sns {
		margin: 1rem auto 2rem;
		}
  }


	/* Recruit */
	#recruit {
		/*background-color: rgba(240, 240, 240, 1);*/
		max-width: none;
		}
		#recruit .item-inner {
			position: relative;
			z-index: 1;
			}
		#rec-outline { text-align: center; }
			#rec-outline p { display: inline-block; }
		#rec-list {
			letter-spacing: -0.4em;
			text-align: center;
			}
			.rec-item {
				color: rgba(255, 255, 255, 1);
				display: inline-block;
				letter-spacing: 0em;
				overflow: hidden;
				position: relative;
				vertical-align: top;
				}
				.rec-item:before {
					background-color: rgba(0, 0, 0, .4);
					content: '';
					left: 0;
					height: 100%;
					position: absolute;
					top: 0;
					width: 100%;

					-webkit-transition: all .2s ease;
					-moz-transition: all .2s ease;
					transition: all .2s ease;
					}
				.rec-ttl {
					display: table;
					height: 100%;
					position: relative;
					text-align: center;
					width: 100%;
					z-index: 1;
					}
					.rec-ttl span {
						display: table-cell;
						vertical-align: middle;
						}
				.rec-fig {
					position: absolute;
					left: 0;
					top: 0;
					z-index: -1;

					-webkit-transition: transform 3s linear;
					-moz-transition: transform 3s linear;
					transition: transform 3s linear;
					}

	/* Creative Initiatives */
	#creativeinitiatives {
		background-image: url(/src/img/top/creativeinitiatives/bg.png);
		background-position: center top 35%;
		background-repeat: no-repeat;
		background-size: cover;
		margin-top: 0;
		max-width: 100%;
		position: relative;
		}
		#creativeinitiatives:before {
			background-color: rgba(50, 50, 50, .5);
			content: '';
			left: 0;
			height: 100%;
			position: absolute;
			top: 0;
			width: 100%;

			-webkit-background-blend-mode: multiply;
			-moz-background-blend-mode: multiply;
			background-blend-mode: multiply;
			}
		#creativeinitiatives .item-inner {
			margin: 0 auto;
			text-align: left;
			position: relative;
			z-index: 1;
			}
			#cit-ttlarea { text-align: left; }
				#cit-ttl { color: rgba(255, 255, 255, 1); }
			#cit-outline {}
				#cit-outline p { color: rgba(255, 255, 255, 1); }
		#creativeinitiatives .com-linkarea {}

	/* Contact */
	#contact {}
		#ctc-outline {}
			#ctc-outline p {}
		#ctc-detail {}
			#ctc-detail p {}
		#contact .com-linkarea {}
			/* #contact .cl-item {
				background-color: rgba(65, 65, 65, 1);
				color: rgba(255, 255, 255, 1);
				font-family: inherit;
				}
			#contact .cl-item:before { background-color: rgba(255, 255, 255, 1); } */
		#contact .contactBox {
			margin:40px 0;
			text-align:center;
			}
		#contact .contactBoxInner {
			width:100%;
			background-color:#eee;
			padding:1em;
			font-weight:bold;
			}
			#contact .contactBox .contactBoxHead p { line-height:1.6; }
		#ctc-telarea {}
			.ctc-ta-item {
				display: table;
				margin: 0 auto;
				margin-bottom:1em;
				text-align: center;
				}
			#ctc-telarea > .ctc-ta-item:last-child { margin-bottom:0; }
				.ctc-ta-item dt,
				.ctc-ta-item dd {
					display: table-cell;
					vertical-align: middle;
					}
				.ctc-ta-item dt {}
				.ctc-ta-item dd {}
					.ctc-ta-item dd a {
						color: rgba(65, 65, 65, 1);
						cursor: default;
						}

	/* Relation */
	#relation {
		border-top: 2px dotted rgba(65, 65, 65, .5);
		margin: 0 auto;
		}
		.rlt-wrap {}
			.rlt-ttl { text-align: center; }
			.rlt-list {
				letter-spacing: -0.4em;
				text-align: center;
				}
				.rlt-item {
					display: inline-block;
					vertical-align: middle;
					}
					.rlt-item img {}



/*


	MediaQuery



 */


@media screen and (min-width: 751px) {


/*
	Main

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

    /* Header > Nav */
    #gl-nav { min-width: 1080px; }

    #gn-home { height: 105px; }

    .gn-contact-wrap {
    	background-color: rgba(25, 67, 117, .85);
    	margin-left: 20px;
    	padding: 15px 15px 10px;
    	text-align: center;
      	}
      #gn-contact {
        background-image: url(/src/img/common/icon/mail-white.svg);
        border: 1px solid rgba(255, 255, 255, 1);
		background-size: 15px;
		background-position: left 10px center;
		display: inline-block;
		padding: 7.5px 40px 7.5px 50px;

		-webkit-transition: .3s;
		transition: .3s;
		}
        #gn-contact span {}
      .gn-tel-wrap { margin-top: 10px; }
        .gn-tel-item {
        	color: rgba(255, 255, 255, 1);
			display: block;
			margin-bottom: 5px;
			}
          .gn-tel-item dl {
			align-items: center;
			display: flex;
			justify-content: center;
			}
            .gn-tel-item dl dt,
            .gn-tel-item dl dd {
            	font-size: 16px;
            	text-align: left;
            	}
            .gn-tel-item dl dt { width: 105px; }
            .gn-tel-item dl dd { letter-spacing: 1px; }
		/* Nav > Contact > Scheme */
		.l_sec .gn-item, .scrollactive #gn-contact { color: rgba(255, 255, 255, 1); }
		/* Nav > Contact > Hover */
		#gn-contact:hover {
			background-image: url(/src/img/common/icon/mail-blue.svg);
			background-color: rgba(255, 255, 255, 1);
			color: rgba(25, 67, 117, .85);
			}

  /* Animation > mouse stlker */

/*ストーカー*/
#stalker{
  background: rgba(0, 0, 0, 0.5);
  border-radius:30px;
  position: fixed;
  height: 40px;
  margin: -8px 0 0 -12px;/*真ん中にくるようにマイナスマージンで調整*/
  opacity: 0;
  pointer-events: none;/*クリックできなくなるのを防ぐため。noneで対応*/
  transition: transform 0.1s;/*アニメーションの秒数指定*/
  width: 40px;
  z-index: 9999;/*カーソルの後ろに来るように*/
}
#stalker.active{
  transform: scale(1.4);
}

	/* Common */
	.item-body {
		max-width: 1060px;
		margin: 70px auto 0;
		padding: 70px 0;
		}
		.item-ttlarea { text-align: center; }
			.item-ttl {
				font-size: 35px;
				letter-spacing: 5px;
				}

  /* Mainvisual */
.tpMVArea{
  margin: 110px 0 0;
  }
.tpMVThmGrp{
  padding: 75px 0 110px;
  }
.tpMVThmInr{
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1300px;
  }
.tpMVThm{
  margin: 0 0 5rem;
  }
.tpMVThmTxt{
  display: block;
  margin: 0 0 0.375em;

  font-size: 5.5rem;
	background: linear-gradient(135deg, #37D2B2 0%, #3756D2 100%);
	background: -webkit-linear-gradient(-45deg, #37D2B2 0%, #3756D2 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	letter-spacing: -12px;
	/*
  font-size: 5rem;
  letter-spacing: -0.02em;
	*/
  }
.tpMVThmSub{}
.tpMVThmSubTxt{
  display: block;
  font-size: 1.2rem;
  line-height: 1.75;
  margin: 0 0 0.5em;
  }
.tpMVThmSubEnTxt{
	font-size: 2rem;
	}
.tpMVThmSubEnTxtMin{
  display: inline-block;
  }
.tpMVMnuGrp{}
.tpMVMnuCnt{
  overflow: hidden;
  }
.tpMVMnuBlk{
  flex-wrap: wrap;
  }
.tpMVMnu{
  width: calc(100% / 3.0001);
  }
.tpMVMnu:before{
  padding-top: 129%;
  }
.tpMVMnuLnk{
  padding: 3rem 1.875rem 3rem;
  }
.tpMVMnuNteBlk{}
.tpMVMnuNteBlk:after{
  background-size: 15px;
  bottom: -65px;
  height: 50px;
  transition: all 0.5s;
  width: 50px;
  }
.tpMVMnuLnk:hover .tpMVMnuNteBlk:after{
  background-color: rgba(255, 255, 255, 1);
  background-image: url(/src/img/common/arrow/line-right-gray.svg);
  }
.tpMVMnuNteTtl{
  margin: 2.625rem 0 0;
  }
.tpMVMnuNteTtl:before{
  top: -1.5rem;
  width: 75px;
  }
.tpMVMnuNte{
  font-size: 1.125rem;
  height: auto;
  letter-spacing: -0.06em;
  line-height: 1.5;
  opacity: 1;
  }
.tpMVMnuNteActv{
  font-size: 1.5rem;
  height: 0;
  line-height: 1.5;
  margin: 5.625rem 0 0;
  opacity: 0;
  overflow: hidden;
  width: 100%;
  }
.tpMVMnuFigBlk{
  overflow: hidden;
  }
/*.tpMVMnuFigBlk:before{
  transition: all 0.5s;
}
.tpMVMnuLnk:hover .tpMVMnuFigBlk:before{
  background-color: rgba(0, 0, 0, 0);
}*/
.tpMVMnuFigBlk img{
  transition: all 0.5s;
  }
.tpMVMnuFigPc{
  display: inline-block;
  }
.tpMVMnuFigSp{
  display: none;
  }
#tpMVMnu01 .tpMVMnuLnk:hover .tpMVMnuFigBlk img,
#tpMVMnu02 .tpMVMnuLnk:hover .tpMVMnuFigBlk img,
#tpMVMnu03 .tpMVMnuLnk:hover .tpMVMnuFigBlk img{
  transform: scale(1.2);
  }

  /* Mainvisual > is-hover */
/*.is-hover#tpMVMnu01,
.is-hover#tpMVMnu02,
.is-hover#tpMVMnu03{
  width: 100%;
  }
.is-hover#tpMVMnu01:before,
.is-hover#tpMVMnu02:before,
.is-hover#tpMVMnu03:before{
  padding-top: 800px;
  }
.is-hover#tpMVMnu01 .tpMVMnuLnk,
.is-hover#tpMVMnu02 .tpMVMnuLnk,
.is-hover#tpMVMnu03 .tpMVMnuLnk{
  height: 800px;
  }
.is-hover#tpMVMnu01 .tpMVMnuNte,
.is-hover#tpMVMnu02 .tpMVMnuNte,
.is-hover#tpMVMnu03 .tpMVMnuNte{
  display: none;
  }
.is-hover#tpMVMnu01 .tpMVMnuNteActv,
.is-hover#tpMVMnu02 .tpMVMnuNteActv,
.is-hover#tpMVMnu03 .tpMVMnuNteActv{
  display: block;
  }*/


/* Menu hover effect - fin */


	/* Intro */
	/*#intro {
		height: 470px;
		}
		#int-wrap {}
			#int-ttlarea {}
				#int-ttl { padding-top: 60px; }
					#int-logo {
						height: 50px;
						margin-top: 30px;
						width: 250px;
						}
					#int-catch {
						font-size: 30px;
						line-height: 1.75;
            display: inline-block;
            background-color: rgba(0, 0, 0, 0.8);
						}
						#int-catch span {}
						#int-catch small {
							font-size: 18px;
							margin-top: 20px;
							}*/

	/* Key Visual */
	/*#key-visual {
	    height: 100vh;
	    z-index: -1;

	    -webkit-transition: none;
	    -moz-transition: none;
	    -ms-transition: none;
	    transition: none;
		}
		#key-visual,
		#kv-Video {
			position: fixed;
			top: 0;
			left: 50%;
			min-width: 100vw;
			min-height: 100vh;

			-webkit-transform: translateX(-50%);
			-moz-transform: translateX(-50%);
			transform: translateX(-50%);
			}
		#key-visual:before {
			background-color: rgba(25, 25, 25, .2);
			background-image: url(/src/img/top/intro/dot.png);
			background-repeat: repeat;
			background-position: left top;
			content: '';
			left: 0;
			height: 100%;
			position: absolute;
			top: 0;
			width: 100%;
			z-index: 2;

			-webkit-background-blend-mode: multiply;
			-moz-background-blend-mode: multiply;
			background-blend-mode: multiply;
			}
	#int-min-kv { display: none; }*/

	/* Wrap */
	#wrap {}

	/* Outline */
	#outline {
		max-width: 1060px;
		padding: 50px 0;
		top: -30px;

		-webkit-box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);
		-moz-box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);
		box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);

		-webkit-border-radius: 100px 0 100px 0;
		-moz-border-radius: 100px 0 100px 0;
		border-radius: 100px 0 100px 0;
		}
		#otl-des { display: inline-block; }
			#otl-des p {
				font-size: 14px;
				line-height: 2;
				}
			#otl-des .com-linkarea { margin-top: 45px; }

	/* WORKS */
	#works { max-width: 1400px; }
		#wks-list {
			margin: 45px auto;
			letter-spacing: -0.4em;
			text-align: center;
			}
			.wks-item {
				display: inline-block;
				letter-spacing: 0em;
				vertical-align: top;
				max-width: 25%;
				}
				.wks-item a { padding: 15px; }
					.wks-thumb { height: 200px; }
						.wks-thumb img {
							/*height: 100%;*/
							width: 100%;

							-webkit-transition: transform .5s linear;
							-moz-transition: transform .5s linear;
							transition: transform .5s linear;
							}
					.wks-detail { margin-top: 20px; }
						.wks-ttl {
							font-size: 15px;
							letter-spacing: 1px;
							line-height: 1.75;
							margin-top: 10px;
							}
							.wks-company {
								margin-top: 15px;
								font-size: 13px;
								line-height: 1.5;
								}
							.wks-category {
								background-position: left top 10px;
								background-size: 12px;
								margin-top: 15px;
								padding-top: 10px;
								padding-left: 20px;
								font-size: 11px;
								}
								.wks-category span { margin: 0 10px 5px 0; }
		/* WORKS > Hover */
		.wks-item a:hover .wks-thumb img {
			-webkit-transform: scale(1.2);
			-moz-transform: scale(1.2);
			transform: scale(1.2);
			}

    /* Works - add  */
  #wks-ttlarea { margin: 0 auto; }
  /* ------------------------------------------------ */
  @media screen and (min-width: 751px) {
  /* Common */
  .item-ttl {
    color: rgba(0, 0, 0, .5);
    font-size: 60px;
    }
  .item-body { padding: 100px 0; }
  /* Works */
  #wks-ttlarea { max-width: 1000px; }
  #wks-ttl { font-size: 100px; }
  #wks-list { margin-top: 0; }
  /* Contact */
  #ctc-outline p,
  #ctc-detail p { text-align: center; }
  }
  /* ------------------------------------------------ */
  @media screen and (max-width: 750px) {
  /* Common */
  .item-ttl {
    color: rgba(0, 0, 0, .4);
    font-size: 30px;
    }
  .item-body { padding: 70px 0; }
  /* Works */
  #wks-ttl { font-size: 60px; }
  }

	/* 360VR solution */
	#vrsolution {}
		#vrsolution .item-inner { max-width: 1060px; }
			#vrs-ttlarea {}
				#vrs-ttl {}
					#vrs-ttl span {
						background-size: 150px;
						height: 45px;
						width: 150px;
						}
					#vrs-ttl small {
						font-size: 26px;
						margin-left: 25px;
						}
			#vrs-outline { margin-top: 25px; }
				#vrs-outline p {
					font-size: 14px;
					line-height: 2;
					}
		#vrsolution .com-linkarea { margin-top: 35px; }

	/* Information */
	#information {
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 0;
		}
		#inf-list { margin: 30px 0 45px; }
			.inf-item {
				-webkit-transition: all .5s ease;
				-moz-transition: all .5s ease;
				transition: all .5s ease;
				}
				.inf-item:nth-child(even) { background-color: rgba(244, 244, 244, 1); }
				.inf-item a {}
				.inf-item dl {
					padding: 20px 30px;
					text-align: left;
					}
					.inf-item dt,
					.inf-item dd { font-size: 14px; }
					.inf-item dt {}
					.inf-item dd {
						line-height: 1.75;
						width: 75%;
						}
						.inf-item span { padding: 5px 0; }
						.inf-cat { width: 90px; }
						.inf-data { width: 150px; }
		/* Information > Banner Area */
		#information .com-bnrarea { margin-top: 45px; }
			#information .cb-item { margin: 0 5px; }
				#information .cb-item img { margin: 0 auto; }
		/* Information > Hover */
		.inf-item:hover .inf-data,
		.inf-item:hover dd { color: rgba(25, 67, 117, 1); }

	/* Blog */
	#blog {}

	/* Recruit */
	#recruit { margin-top: 0; }
		#recruit .item-inner {}
		#rec-outline { margin-top: 35px; }
			#rec-outline p {
				font-size: 14px;
				line-height: 2;
				}
		#rec-list { margin-top: 45px; }
			.rec-item {
				margin: 0 15px;
				height: 90px;
				width: 320px;
				}
				.rec-ttl {}
					.rec-ttl span { font-size: 16px; }
				.rec-fig {}
			/* Recruit > hover */
			.rec-item:hover .rec-fig {
				-webkit-transform: scale(1.2);
				-moz-transform: scale(1.2);
				transform: scale(1.2);
				}
			.rec-item:hover:before {
				background-color: rgba(65, 65, 65, .3);
				left: 2%;
				height: 90%;
				top: 5%;
				width: 96%;
				}

	/* Creative Initiatives */
	#creativeinitiatives { margin-bottom: 3rem; }
		#creativeinitiatives .item-inner { max-width: 1060px; }
			#cit-ttlarea {}
				#cit-ttl {}
			#cit-outline { margin-top: 25px; }
				#cit-outline p {
					font-size: 14px;
					line-height: 2;
					}
		#creativeinitiatives .com-linkarea { margin-top: 35px; }

	/* Contact */
	#contact { margin-top: 0; }
		#ctc-outline { margin-top: 30px; }
			#ctc-outline p {
				font-size: 18px;
				line-height: 1.75;
				}
		#ctc-detail { margin-top: 40px; }
			#ctc-detail p {
				font-size: 14px;
				line-height: 2;
				}
		#contact .com-linkarea { margin-top: 40px; }
			#contact .cl-item { margin: 0 15px; }
		 #ctc-telarea { margin-top: 15px; }
			/* .ctc-ta-item { margin-bottom: 20px; } */
				/* .ctc-ta-item dt,
				.ctc-ta-item dd { font-size: 18px; } */
		/* Contact > Hover */
		/* #contact .cl-item:hover { color: rgba(65, 65, 65, 1); } */

	/* Relation */
	#relation { padding-bottom: 20px; }
		.rlt-wrap { margin-bottom: 60px; }
			.rlt-ttl { font-size: 14px; }
			.rlt-list { margin-top: 30px; }
				.rlt-item { margin: 0 30px; }
					.rlt-item img {}
		/* Relation > Hover */
		.rlt-item:hover img { opacity: .5; }


}


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


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


/*
	Main

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

    /* Header > Nav > Contact */
    .gn-contact-wrap {}

	/* Common */
	.item-body { padding: 50px 0; }
		.item-ttlarea { text-align: center; }
			.item-ttl { font-size: 25px; }

  /* Mainvisual */
.tpMVArea{
  margin: 60px 0 0;
  }
.tpMVThmGrp{
  padding: 20px 0 40px;
  }
.tpMVThmInr{
  padding: 50px 20px 0;
  }
.tpMVThm{
display: flex;
margin: 0 auto 3.5rem;
align-items: flex-start;
justify-content: center;
flex-flow: row-reverse;

background: linear-gradient(135deg, #37D2B2 0%, #3756D2 100%);
background: -webkit-linear-gradient(-45deg, #37D2B2 0%, #3756D2 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
  }
.tpMVThmTxt{
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1.3;
  margin: 0 0 0.6em;

-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
white-space: nowrap;
vertical-align: top;
line-height: 2.35;
  }
.tpMVThmSub{}
.tpMVThmSubTxt{
	display: inline-block;
	font-size: 1rem;
	line-height: 1.5;
	padding: 0 30px;
  }
.tpMVThmSubTxt:last-of-type {
	line-height: 2;
	}
.tpMVThmSubEnTxt{
  display: block;
  margin: 0 0 1.5em;
  text-align: center;
  }
.tpMVThmSubEnTxtMin{
  display: block;
  position: relative;
  }
.tpMVMnuGrp{}
.tpMVMnuCnt{}
.tpMVMnuBlk{
  flex-wrap: wrap;
  }
.tpMVMnu{
  width: 100%;
  }
.tpMVMnu:before{
  padding-top: 75%;
  }
.tpMVMnuLnk{
  padding: 0 20px;
  }
.tpMVMnuNteBlk{}
.tpMVMnuNteBlk:after{
  background-size: 12px;
  bottom: -18vw;
  height: 50px;
  width: 50px;
  }
.tpMVMnuNteTtl{
  margin: 0 0 2rem;
  }
.tpMVMnuNteTtl:before{
  top: calc(100% + 1rem);
  width: 50px;
  }
.tpMVMnuNte{
  display: none;
  font-size: 0.875rem;
  line-height: 1.5;
  }
.tpMVMnuNteActv{
  font-size: 0.875rem;
  line-height: 1.75;
  /*margin: 1.5rem 0 0;*/
  }
.tpMVMnuFigBlk{}
.tpMVMnuFigPc{
  display: none;
  }
.tpMVMnuFigSp{
  display: inline-block;
  }

	/* Intro */
	/*#intro { height: 400px; }
		#int-wrap {}
			#int-ttlarea {}
				#int-ttl {}
					#int-logo {
						height: 35px;
						margin-top: 25px;
						width: 150px;
						}
					#int-catch {
						font-size: 20px;
						line-height: 1.75;
						}
						#int-catch span {}
						#int-catch small {
							font-size: 13px;
							line-height: 1.5;
							margin-top: 20px;
							}*/

	/* Key Visual */
	/*#key-visual,
	#kv-Video { display: none; }
	#int-min-kv {
	    display: block;
	    left: 0;
	    height: 100%;
	    position: absolute;
	    top: 0;
	    width: 100%;
	    z-index: -1;
		}
		.intmin-kv-item {
			display: none;
			height: 100%;
			overflow: hidden;
			position: absolute;
			top: 0;
			width: 100%;
			}
			.intmin-kv-fig {
				background-position: center;
				background-size: cover;
				background-repeat: no-repeat;
				left: 0 !important;
				position: absolute;
				width: auto;
				}
			.intmin-kv-item:before {
				background-color: rgba(50, 50, 50, .5);
				content: '';
				height: 100%;
				left: 0;
				position: absolute;
				top: 0;
				width: 100%;
				z-index: 1;

				-webkit-background-blend-mode: multiply;
				-moz-background-blend-mode: multiply;
				background-blend-mode: multiply;
				}*/
		/* Key Visual > Scheme */
		/*.slick-slider .slick-list,
		.slick-slider .slick-track { height: 100%; }*/

	/* Wrap */
	#wrap {}

	/* Outline */
	#outline {
		margin: 0 20px;
		padding: 40px 30px;
		top: -30px;

		-webkit-box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);
		-moz-box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);
		box-shadow: 0 -10px 110px rgba(0, 0, 0, .15);

		-webkit-border-radius: 50px 0 50px 0;
		-moz-border-radius: 50px 0 50px 0;
		border-radius: 50px 0 50px 0;
		}
		#otl-des {}
			#otl-des p {
				font-size: 13px;
				line-height: 2;
				text-align: left;
				}
			#otl-des .com-linkarea {}

	/* WORKS */
	#works { padding-bottom: 60px; }
		#wks-list { margin-top: 30px; }
			.wks-item { margin: 0 10px; }
				.wks-item a {}
					.wks-thumb { height: 200px; }
						.wks-thumb img {
							height: auto;
							max-width: 100%;
							}
					.wks-detail {
						margin-top: 15px;
						padding: 0 10px;
						}
						.wks-ttl {
							font-size: 15px;
							line-height: 1.75;
							text-align: justify;
							margin-top: 10px;
							}
						.wks-company {
							font-size: 12px;
							line-height: 1.75;
							margin-top: 15px;
							}
						.wks-category {
							background-size: 10px;
							font-size: 12px;
							margin-top: 15px;
							padding-top: 10px;
							padding-left: 20px;
							}
							.wks-category span { margin: 0 10px 5px 0; }

	/* 360VR solution */
	#vrsolution {}
		#vrsolution .item-inner { padding: 0 30px; }
			#vrs-ttlarea {}
				#vrs-ttl {}
					#vrs-ttl span {
						background-size: 100px;
						height: 30px;
						width: 100px;
						}
					#vrs-ttl small {
						font-size: 16px;
						margin-left: 15px;
						}
			#vrs-outline { margin-top: 20px; }
				#vrs-outline p {
					font-size: 13px;
					line-height: 1.75;
					}
		#vrsolution .com-linkarea { text-align: center; }

	/* Information */
	#information {}
		#inf-list {
			margin-top: 20px;
			padding: 0 20px;
			}
			.inf-item {
				border-bottom: 1px solid rgba(0, 0, 0, .3);
				padding: 20px 0;
				}
				.inf-item a {}
				.inf-item dl {}
					.inf-item dt { font-size: 13px; }
					.inf-item dd {
						font-size: 13px;
						line-height: 1.5;
						margin-top: 10px;
						}
						.inf-item span {}
						.inf-cat {
							padding: 3px 0;
							width: 100px;
							}
						.inf-data { padding: 3px 10px; }
		/* Information > Banner Area */
		#information .com-bnrarea { margin-top: 40px; }
			#information .cb-item { margin: 0 10px; }

	/* Blog */
	#blog {}

	/* Recruit */
	#recruit {}
		#recruit .item-inner {}
		#rec-outline {
			margin-top: 20px;
			padding: 0 20px;
			}
			#rec-outline p {
				font-size: 14px;
				line-height: 1.75;
				text-align: left;
				}
		#rec-list {
			display: table;
			margin-top: 20px;
			text-align: center;
			width: 100%;
			}
			.rec-item {
				display: table-cell;
				padding: 50px 0;
				vertical-align: middle;
				width: 50%;
				}
				.rec-ttl {
					font-size: 18px;
					line-height: 1.5;
					}
					.rec-ttl span {}
				.rec-fig {
					height: 100%;
					max-width: none;
					width: auto;
					}

	/* Creative Initiatives */
	#creativeinitiatives { margin-bottom: 3rem; }
		#creativeinitiatives .item-inner { padding: 0 20px; }
			#cit-ttlarea {}
				#cit-ttl {
					font-size: 23px;
					letter-spacing: 3px;
					}
			#cit-outline { margin-top: 20px; }
				#cit-outline p {
					font-size: 13px;
					line-height: 1.75;
					}
		#creativeinitiatives .com-linkarea { text-align: center; }

	/* Contact */
	#contact {}
		#contact .item-inner { padding: 0 20px; }
		#ctc-outline { margin-top: 20px; }
			#ctc-outline p {
				font-size: 15px;
				line-height: 1.5;
				text-align: left;
				}
		#ctc-detail { margin-top: 20px; }
			#ctc-detail p {
				font-size: 14px;
				line-height: 1.75;
				text-align: left;
				}
		#contact .com-linkarea { margin-top: 40px; }
			#contact .cl-item { width: 80%; }
		#ctc-telarea { margin-top: 15px; }
			.ctc-ta-item { margin-bottom: 10px; }
				.ctc-ta-item dt,
				.ctc-ta-item dd { font-size: 15px; }

	/* Relation */
	#relation { padding: 0; }
		#relation .item-inner { padding: 0 20px; }
		.rlt-wrap {
			border-bottom: 1px dotted rgba(0, 0, 0, .3);
			padding: 30px 0 15px;
			}
			.rlt-wrap:last-child { border-bottom: none; }
			.rlt-ttl { font-size: 15px; }
			.rlt-list { margin-top: 20px; }
				.rlt-item { margin: 5px 10px; }
					.rlt-item img { max-width: 70%; }


}



/*


	Intro



 */


@media (orientation: landscape) {

	/*#int-catch span { display: inline-block; }*/

}


@media (orientation: portrait) {

	/*#int-catch span { display: block; }*/

}
