/*
Theme Name: ITS animation
*/

@charset 'utf-8';

/* http://yuilibrary.com/license/ */
table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}#yui3-css-stamp.cssreset{display:none}

/* --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
COMMON
-----------------------------------------------------------------------------------
-------------------------------------------------------------------------------- */
html,body {
	-webkit-text-size-adjust: 100%;
	        text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
	position: relative;
	font-size: 14px;
	line-height: 160%;
	font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', sans-serif;
	color: #000;
	background: #FFF;
}

a {
	color: #000;
	transition: opacity 0.3s;
}
a:hover {
	opacity: 0.6;
}
body:not(.sp) a[href^="tel:"] {
	pointer-events: none;
}

* {
	margin: 0;
	padding: 0;
	-webkit-appearance: none;
	word-wrap: break-word;
}
*::before,
*::after,
* {
	box-sizing: border-box;
}

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

.img img {
	width: 100%;
}

.vsbl_pc {
	display: none;
}

@media only screen and (min-width: 600px) {
	html,body {
		font-size: 16px;
	}
	.vsbl_pc {
		display: block;
	}
	.vsbl_sp {
		display: none;
	}
}

/* --------------------------------------------------------------------------------
Google font
-------------------------------------------------------------------------------- */
.engfont{
	font-family: 'Poppins', sans-serif;
	font-size: 40px;
}
.engfont-menu{
	font-family: 'Poppins', sans-serif;
	font-size: 60px;
}

/* --------------------------------------------------------------------------------
FORM
-------------------------------------------------------------------------------- */

input[type='text'],
input[type='email'],
input[type='tel'],
textarea {
	font-size: 14px;
	padding: 10px 5px;
	width: 100%;
	border: none;
	outline: none;
	margin-bottom: 10px;
}

textarea {
	height: 250px;
	font-size: 16px;
	resize: vertical;
	margin-bottom: 0;
}

input[type='submit'] {
	font-size: 16px;
	padding: 16px;
	width: 380px;
	border: none;
	background-color: #000;
	color: #FFF;
	cursor: pointer;
	margin: 30px 0px 10px;
	border-radius: 8px;
	font-weight: bold;
}

input[type='submit']:hover {
	opacity: 0.6;
}

input[type='checkbox']:not(.check) {
	padding: 5px 7px;
	font-size: 16px;
	border: solid 1px #999;
	border-radius: 3px;
	box-shadow: inset 1px 4px 9px -6px rgba(0,0,0,0.5);
	-webkit-appearance: checkbox;
}

/* TABLE
-------------------------------------------------------------------------------- */

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0 auto;
	font-size: 90%;
}

table tr {
	/* background: #FEFEFE; */
}

table tr:nth-of-type(odd) {
	/* background: #F5F5F5; */
}

table th,table td {
	padding: 8px;
	line-height: 1.4;
	vertical-align: top;
}

th {
	width: 25%;
	text-align: left;
	white-space: nowrap;
}

td {
	width: 75%;
	word-break: break-all;
}

/* --------------------------------------------------------------------------------
FLOAT
-------------------------------------------------------------------------------- */
.algn_R { text-align: right; }
.algn_C { text-align: center; }

.clear {
	content: '';
	display: block;
	clear: both;
}

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.flex_C {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	     -ms-flex-align: center;
	  -webkit-box-align: center;
	        align-items: center;
}

.flex_E {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-end;
	     -ms-flex-align: flex-end;
	  -webkit-box-align: flex-end;
	        align-items: flex-end;
}

.flex_wrap {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.flex_sb {
	-webkit-justify-content: space-between;
	          -ms-flex-pack: space-between;
	       -webkit-box-pack: space-between;
	        justify-content: space-between;
}

.flex_sa {
	-webkit-justify-content: space-around;
	          -ms-flex-pack: space-around;
	       -webkit-box-pack: space-around;
	        justify-content: space-around;
}

.flex_center {
	-webkit-justify-content: center;
	          -ms-flex-pack: center;
	       -webkit-box-pack: center;
	        justify-content: center;
}

.flex_end {
	-webkit-justify-content: flex-end;
	          -ms-flex-pack: flex-end;
	       -webkit-box-pack: flex-end;
	        justify-content: flex-end;
}

.flex_right {
	-webkit-flex-direction: row-reverse;
	    -ms-flex-direction: row;
	 -webkit-box-direction: reverse;
	        flex-direction: row-reverse;
}

@media only screen and (min-width: 600px) {
	.algn_R_pc { text-align: right; }
	.algn_C_pc { text-align: center; }

	.flex_pc {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
	}

	.flex_center_pc {
		-webkit-justify-content: center;
		          -ms-flex-pack: center;
		       -webkit-box-pack: center;
		        justify-content: center;
	}
}

.btn{
	border-radius: 30px;
	padding: 16px 24px;
	transition: 0.5s;
	text-decoration: none;
	font-size:16px;
	display: inline-block;
	font-weight: bold;
}
.btn:hover{
	opacity:1;
	transform:translateY(-2px);
	box-shadow: 0px 12px 15px -5px #22222280;
	transition: 0.3s ease-in-out;
}
.btn-white{
	background-color:#fff;
	color:#222;
}
.btn-blue{
	background-color: #0083c9;
	color: #fff;
}
.btn-blue:hover{
	background-color: #07a3b3;
	color: #fff;
	opacity: 1;
}
.mv-btn{
	padding-top:100px;
}
/* --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
HEADER
-----------------------------------------------------------------------------------
-------------------------------------------------------------------------------- */
/* --------------------------------------------------------------------------------
header
-------------------------------------------------------------------------------- */

header {
	    /* pointer-events: none; */
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	/* height: 65px; */
	text-align: center;
	/* background: rgba(255,255,255,0.6); */
	overflow: hidden;
	z-index: 3;
/* background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,0) 100%);
background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#00ffffff',GradientType=0 );*/
background-color: #fff;

}
@media only screen and (max-width: 599px) {
	header{
		mix-blend-mode: multiply;
		background-color: #ffffff00;
	}
}

header .header_inner {
	max-width: 1280px;
	height: 100%;
	margin: 0 auto;
	padding: 16px 8px;
}
@media only screen and (max-width: 599px) {
	header .header_inner {
		max-width: unset;
		padding: 16px 24px;
	}
}
header .header_inner h1 a img {
	width: 70px;
	    pointer-events: auto;
}
@media only screen and (max-width: 599px) {
	header .header_inner h1 a img {
		width: 60px;
	}
}
@media only screen and (min-width: 600px) {
	header .header_inner h1 {
		font-size: 12px;
		line-height: 12px;
		margin-left: 10px;
		margin-right: 40px;
	}

	header .header_inner ul{
		display:flex;
		width: 100%;
		justify-content: flex-end;
		align-items: center;
    /* padding-right: 96px; */
	}
	header .header_inner ul li a{
		font-size:16px;
		font-family: 'Poppins', sans-serif;
		padding:0px 24px;
		text-decoration: none;
	}
	header .header_inner ul li a:hover{
		color: #0083c9;
		opacity: 1;
	}
	header .header_inner ul li .btn{
		background-color: #0083c9;
		color: #fff;
		border-radius: 30px;
    padding: 10px 24px;
		transition: 0.5s;
		margin-left: 16px;
	}
	header .header_inner ul li .btn:hover{
		background-color: #07a3b3;
		color: #fff;
		opacity: 1;
	}
}
@media only screen and (max-width: 599px) {
	header .header_inner ul{
		display:none;
	}
}

/* --------------------------------------------------------------------------------
drawer_nav
-------------------------------------------------------------------------------- */
/* ------------------------------------------------ common */
.contents {
	width: 100%;
	padding: 0;
	margin: 0;
	transition: 0.5s 0.3s;
	overflow: hidden;
}
#home .contents {
	display: table;
}
#home .contents__inner {
	display: table-cell;
	vertical-align: middle;
	height: 100vh;
}
/* ------------------------------------------------ drawer menu */
.drawer-menu {
	display: block;
	z-index: 4;
	position: fixed;
	top: -100%;
	right: 0;
	width: 100%;
	height: 100%;
	background: #FFF;
	text-align: center;
	transition: 0.5s;
}

nav ul {
	position: absolute;
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
}

nav a {
	text-decoration: none;
	font-size: 120%;
	font-weight: bold;
}

nav li {
	margin-bottom: 10px;
}

nav li:first-child {
	margin-bottom: 20px;
}

nav img {
	width: 80px;
}

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

	nav li:first-child {
	    margin-bottom: 70px;
	}
	nav li {
	    margin-bottom: 70px;
	}

	nav a {
		/* font-size: 150%; */
		font-size: 6rem;
    margin-bottom: 50px;
    display: block;
    line-height: 120px;
    color: #222;
		font-size: 40px !important;
		line-height: 39px !important;
	}
	nav a:hover {
		color: #003770;
		opactity:1;
	}

	nav li {
		margin-bottom: 50px;
	}

	nav li:first-child {
		margin-bottom: 40px;
	}

	nav img {
		    width: 100px;
	}
	.drawer-menu {
		background: #ffffff90;
    backdrop-filter: blur(10px);
		 -webkit-backdrop-filter: blur(10px);
    /* margin: 16px; */
    width: 100%;
    height: 100%;
    /* border-radius: 16px; */
	}

}

/* ------------------------------------------------ checkbox */
.check {
	display: none;
}

/* ------------------------------------------------ menu button */
@media only screen and (max-width: 600px) {

	.menu-btn,.toHome {
		position: fixed;
		display: block;
		right: 10px;
		width: 40px;
		text-align: center;
		z-index: 5;
	}

	.menu-btn {
		top: 20px;
		height: 25px;
		cursor: pointer;
	}

	.menu-btn .bar {
		position: absolute;
		left: 0;
		display: block;
		width: 32px;
		height: 2px;
		background: #000;
		transition: 0.5s;
	}

	.menu-btn .bar.top    { top: 0; }
	.menu-btn .bar.middle { top: 11px; }
	.menu-btn .bar.bottom { bottom: 0; }

	.toHome {
		top: 7px;
		color: #000;
		line-height: 1;
		padding: 5px 0;
	}

	.toHome .icon { font-size: 30px; }
	.toHome .text { font-size: 11px; }


	.menu-btn:hover .bar {
		background: #999;
	}

	.menu-btn,
	.toHome {
		right: 10px;
		/* transform: translateX(630px); */
	}
}

/* ------------------------------------------------ checked */
.check:checked ~ .drawer-menu {
	top: 0;
}

.check:checked ~ .contents {
	transition: 0;
}

.check:checked ~ .menu-btn .bar.top {
	transform: translateY(15px) rotate(225deg);
	top: -7px;
}

.check:checked ~ .menu-btn .bar.middle {
	transform: rotateY(90deg);
	opacity: 0;
}

.check:checked ~ .menu-btn .bar.bottom {
	transform: translateY(-15px) rotate(-225deg);
}

/* ------------------------------------------------ mainvisual */
#mainVisual {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: url(./movie/loading.gif) no-repeat center center;
	background-size: auto 56px;
}
#mainVisual .mv-text {
	position: absolute;
	    top: 0;
	    right: 0;
	    left: 0;
	    bottom: 0;
	    margin: auto;
	    height: 400px;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    text-align: center;
	    flex-wrap: wrap;
}
@media only screen and (max-width: 599px) {
	#mainVisual .mv-text p {
		font-size:16px;
		padding:16px;
	}
}
g .fadeboxCatch{
	animation: fadeboxCatch 0.5s ease-out 0.5s both;
}
@keyframes fadeboxCatch {
  0% {
    opacity:0;
		transform:translateY(20px);
  }
	70% {
		opacity:0.3;
	}
  100% {
    opacity:1;
		transform:translateY(0px);
  }
}
#mainVisual .fadeboxCatch2{
	animation: fadeboxCatch2 0.7s ease-out 0.7s both;
	padding-top: 60px;
	font-size: 20px;
	color: #fff;
	font-weight: bold;
	display: block;
}
@keyframes fadeboxCatch2 {
  0% {
    opacity:0;
		transform:translateY(40px);
  }
	70% {
		opacity:0.3;
	}
  100% {
    opacity:1;
		transform:translateY(0px);
  }
}

#mainVisual .mv-text > *{
	flex:1 0 100%;
}
#mainVisual .mv-text span {
	color: #fff;
	/* background-color: #000; */
	display: block;
	font-size: 100px;
	vertical-align: middle;
	margin: 0px 30px;
	position: relative;
	/* overflow: hidden; */
	/* mix-blend-mode: overlay; */
	height: 80px;
	font-family: 'Poppins', sans-serif;
	line-height: 48px;
	text-shadow: 10px 7px 9px #2222222e;
}
@media only screen and (max-width: 599px) {
	#mainVisual .mv-text span {
		font-size: 15vw;
    height: 60px;
	}
}
#mainVisual .mv-text span:after {
    /* content: ""; */
    background-color: #0083c9;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 0;
    mix-blend-mode: hard-light;
    transform: translateX(100%);
		transition: 0.2s ease-out;
}
#mainVisual .mv-text span:before {
    /* content: ""; */
		width: 100%;
		height: 6px;
		position: absolute;
		background-color: #000;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		margin: auto;
		transform: translateX(-100%);
		transition: 0.2s ease-out;
		font-weight:normal;
		font-size:20px;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size:30px;
}
/* #mainVisual .mv-text span:hover:after{
	transform: translateX(0%);
	    mix-blend-mode: difference;
	    background-color: #0037ff;
}
#mainVisual .mv-text span:hover:before{
	transform: translateX(0%);
} */
#mainVisual:before {
    content: "";
    /* background-color: #fff; */
    background-image: radial-gradient(#000000a3 30%, transparent 30%);
    background-size: 3px 3px;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

#mainVisual {
	height:100vh;
	background: url(./images/its_mv_sample_02.jpg) no-repeat center center;
	background-size: cover;
}
#mainVisual.active {
	background-image: none;
}
#mainVisual .mainVisual_inner {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	image-rendering: optimizequality;
	opacity: 0;
	transition: opacity 1s;
}
@media screen and (max-width: 599px),screen and (orientation: portrait) {
	.sp #mainVisual {
	    background: url(./images/its_mv_sample_02.jpg) no-repeat center center;
	    background-size: cover;
	    height: 100vh;
	}
	/* .sp #mainVisual:before {
		position: absolute;
		display: block;
		content: '';
		width: 45px;
		height: 56px;
		background: url(./movie/loading.gif) no-repeat center center;
		background-size: contain;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%);
	} */
	.sp #mainVisual.active:before {
		display: none;
	}

	#mainVisual {
		width: 100%;
	}
	#mainVisual .mainVisual_inner {
		/* left: 40%; */
	}
}
#mainVisual.active .mainVisual_inner {
	opacity: 1;
}
#mainVisual .mainVisual_inner #mv {
	position: absolute;
	width: 100%;
	height: 100%;
}
#mainVisual.active .mainVisual_inner #mv {
	animation: mvMove 15s ease-out forwards;
}
#mainVisual #playButton {
	position: absolute;
	display: none;
	width: 100px;
	height: 100px;
	background: #555;
	top: 50%;
	left: 50%;
	cursor: pointer;
	transform: translate(-50%,-50%);
	border-radius: 50%;
}
#mainVisual #playButton.hide {
	display: none !important;
}
#mainVisual #playButton:before {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	border-left:   50px solid #FFF;
	border-top:    25px solid transparent;
	border-bottom: 25px solid transparent;
}

/* --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
CONTENT
-----------------------------------------------------------------------------------
-------------------------------------------------------------------------------- */

.top--contents{
	min-height:80vh;
	margin-bottom:40px;
}

/* --------------------------------------------------------------------------------
COMMON
-------------------------------------------------------------------------------- */
/* tab
-------------------------------------------------------------------------------- */
.tabNav {
	/* border-bottom: 1px solid #CCC; */
	text-align: center;
	font-size: 0;
}
.tabNav li {
	display: inline-block;
	/* margin-bottom: -1px; */
	padding: 24px 0px;
	margin:24px;
	/* border: 1px solid #CCC; */
	/* border-radius: 10px 10px 0 0; */
	/* color: #929292; */
	font-weight: bold;
	cursor: pointer;
	transition: 0.3s;
		position: relative;
}
.tabNav li span.engfont{
	font-size:40px !important;
	color:#969696;
}
.tabNav li.active {
	/* border-bottom: 1px solid #F5F5F5; */
	/* backsground: #F5F5F5; */
	cursor: default;
	color:#222;
}
.tabNav li.active  span.engfont{
	color:#222;
}
.tabNav li:after{
	content: "";
	    width: 100%;
	    height: 3px;
	    background-color: #ffffff00;
	    position: absolute;
	    bottom: 0;
	    right: 0;
	    left: 0;
	    margin: auto;
	    transition: .5s ease-out;
}
.tabNav li.active:after{
	content: "";
	    width: 100%;
	    height: 3px;
	    background-color: #265284;
	    position: absolute;
	    bottom: 0;
	    right: 0;
	    left: 0;
	    margin: auto;
	    transition: .3s ease-in;
}
.tabNav li:not(.active):after {
	content: "";
	width: 100%;
	height: 0px;
	background-color: #ffffff00;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	transition: .3s ease-out;
}
.tabNav li:not(.active):hover:after {
	content: "";
	width: 100%;
	height: 6spx;
	background-color: #0083c9;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	transition: .1s ease-in;
}
.tabNav li span {
	display: block;
	font-size: 14px;
}

@media only screen and (max-width: 599px) {
	.tabNav {
	    text-align: center;
	    font-size: 0;
	    display: flex;
	    flex-wrap: wrap;
	    flex-direction: row;
	}
	.tabNav li{
		flex: 0 0 50%;
    padding: 0px;
    width: auto;
    margin: 0px;
	}
	.tabNav li span.engfont {
    font-size: 30px !important;
	}
}

/* mg
-------------------------------------------------------------------------------- */
#mainContents {
	position: relative;
	padding-top: 80px;
}
body:not(#home) #mainContents {
	padding-top: 65px;
}
#home #mainContents {
	max-width: none;
	padding-top: 0;
}
#mainContents:before {
	/* content: ''; */
	position: absolute;
	top: -80px;
	width: 100%;
	height: 80px;
	background: -webkit-linear-gradient(top      ,rgba(255,255,255,0) 0%,#FFF 40px);
	background:         linear-gradient(to bottom,rgba(255,255,255,0) 0%,#FFF 40px);
}
.nml_mg,
.txt_mg {
	margin: 30px auto;
}
#contactus .txt_mg {
	margin: 0 auto;
	padding: 20px 0 30px;
}
@media only screen and (max-width: 599px) {
	#contactus .txt_mg {
		text-align:center;
	}
}
#recruit.nml_pd,
#policy.nml_pd {
	padding: 30px 0;
}
.tabList section {
	overflow: hidden;
	display: none;
}
.tabList section:first-of-type {
	display: block;
}
@media only screen and (min-width: 600px) {
	.nml_mg,
	.txt_mg {
		margin: 60px auto;
	}
	#recruit.nml_pd,
	#policy.nml_pd {
		padding: 60px 0;
	}
}

/* nml_inner
-------------------------------------------------------------------------------- */
.nml_inner {
	margin: 30px auto;
	padding: 0 10px;
	max-width: 1200px;
}

body:not(#home) .nml_inner {
	margin-top: 15px;
}

#intro.nml_inner {
	margin-top: 0;
/* 	position: relative; */
}
#recruit.nml_pd .nml_inner,
#policy.nml_pd .nml_inner {
	margin: 0 auto;
}

.bg_gry {
	background: #F5F5F5;
}

@media only screen and (min-width: 600px) {
	body:not(#home) .nml_inner {
		margin-top: 30px;
	}
}

/* H
-------------------------------------------------------------------------------- */

main h1,main .caption_h1 {
	font-size: 180%;
	font-weight: 700;
	line-height: 1;
	color: #222;
	font-size:40px;
}
.caption_h1{
	margin-bottom:32px;
}
main #creative h1 img {
	min-width: 140%;
	margin-left: -20%;
}

main h1 span,main .caption_h1 span {
	display: block;
	font-size: 50%;
	margin-top: 1em;
}

main h2 {
	font-size: 140%;
	line-height: 1;
	color: #929292;
}

main h2 span {
	font-size: 70%;
}

main h3 {
	font-size: 110%;
	font-weight: bold;
	line-height: 1;
}

h2.withHr:nth-of-type(n) {
	position: relative;
	margin: 0 auto;
	padding: 40px 0;
	line-height: normal;
}

h2.withHr:nth-of-type(n) span {
	display: inline-block;
	position: absolute;
	top: 50%;
	margin: 0;
	padding: 0 2% 0 0;
	font-size: 30px;
	background: #F5F5F5;
	transform: translateY(-50%);
}

h2.withHr:nth-of-type(n):before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 10px;
	transform: translateY(-50%);
	background: #929292;
}
@media only screen and (min-width: 600px) {
	main #creative h1 img {
		min-width: auto;
		margin: 0;
	}
	h2.withHr:nth-of-type(n) span {
		font-size: 54px;
	}
	h2.withHr:nth-of-type(n):before {
		height: 17px;
	}
	main h1 {
		font-size: 250%;
		/* position: absolute; */
    /* top: 0;
    right: 0;
    left: 0; */
    margin: auto auto 20px;
    /* height: 100%; */
    /* display: flex;
    align-items: center;
    justify-content: center; */
		text-align:center;

	}
	main h2 span {
		margin-left: 10px;
	}
}

/* topcontents
-------------------------------------------------------------------------------- */

.row{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}

.topcont {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
}
.topcont h2 {
		flex: 0 0 100%;
		font-weight: bold;
		font-size: 32px;
		color: #222;
		padding: 50px 24px 32px;
		text-align: center;
		margin: 0px 0px 0px;
		font-family: 'ヒラギノ角ゴ ProN W8', 'Hiragino Kaku Gothic ProN', 'メイリオ', 'Meiryo', sans-serif;
}
@media only screen and (max-width: 599px) {
	.topcont {
	    display: flex;
	    flex-wrap: wrap;
	    flex-direction: column;
	}
}
.topcont--card {
	flex: 0 0 calc(33% - 32px);
	/* box-shadow: 2px 2px 13px -10px #22222250; */
	background-color: #f1f5f7;
	margin: 16px 16px 32px;
	border-radius: 8px;
	border: 1px solid #f1f5f7;
}
.topcont--card.movielg {
	flex: 0 0 calc(50% - 32px);
	background-color: #f1f5f7;
	margin: 16px;
	border-radius: 8px;
	border: 1px solid #f1f5f7;
}
.topcont--card img,.topcont--card iframe,.topcont--card video{
	    width: 100%;
			overflow: hidden;
			border-radius: 8px 8px 0px 0px;
}
.topcont--title{
	  padding: 16px;
}

@media only screen and (max-width: 599px) {
	.topcont--card img,.topcont--card iframe{
		    height: 190px;
	}
	.topcont--card img{
		width:auto;
	}
	.topcont--card iframe{
		width:100%;
	}
	.topcont--thumb{
		background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
	}
}


.row{
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}
.row.top--about{
	justify-content: center;
}
.row.top--about > * {
	flex: 0 0 500px;
	padding: 0px 0px;
}
@media only screen and (max-width: 599px) {
	.row.top--about > * {
		flex: 1;
		padding: 16px;
		margin: 16px;
		box-shadow: 0px 10px 20px -14px #ccc;
	}
}
.row.top--about > *:first-child {
	background-color: #fff;
	padding: 16px;
	border-radius: 8px;
	    z-index: 1;
}
.row.top--about > .top--about--map {
	flex: 1 0 100%;
	padding: 0px 0px 0px 0px;
	margin-top: -40px;
	z-index: 0;
	position: relative;
}
@media only screen and (max-width: 599px) {
	.row.top--about > .top--about--map {
		margin-top: -20px;
	}
}
.top--about--map iframe{
	width:100%;
	height:300px;
}

.contents-bg-white{
	background-color: #fff;
	padding: 80px 0px;
}
.contents-bg-gray{
	background-color: #f1f5f7;
	padding: 80px 0px 80px 0px;
}
/* call
-------------------------------------------------------------------------------- */

.call {
	font-family: 'Nunito', sans-serif;
	font-size: 210%;
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}
.fa-phone {
	display: inline-block;
	background: #000;
	color: #FFF;
	padding: 7px;
	border-radius: 50%;
	margin-right: 5px;
	font-size: 50%;
	vertical-align: top;
}

@media only screen and (min-width: 600px) {
	.call {
		font-size: 300%;
	}
	.fa-phone {
		padding: 11px;
		margin-right: 10px;
	}
}

/* #video
-------------------------------------------------------------------------------- */

#video {
	width: 100%;
	height: 150px;
	position: relative;
}
#video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 150px;
}

@media only screen and (min-width: 600px) {
	#video, #video iframe {
		height: 400px;
	}
}

/* article
-------------------------------------------------------------------------------- */

article {
	position: relative;
	overflow: hidden;
	margin-bottom: 10px;
}

article img {
	width: 100%;
}

article div.img {
	position: relative;
	width: 100%;
	overflow: hidden;
}

article div.img img {
	display: block;
	height: auto;
}
article div.movieWrapper {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	overflow: hidden;
	cursor: pointer;
}
article div.movieWrapper .movie {
	position: relative;
	width: 100%;
	padding: 100% 0 0;
}
article div.movieWrapper .movie .vTag {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
/* 	height: 100%; */
	image-rendering: optimizequality;
}

#character .articles {
	display: block;
}

#character .articles .magnify {
	position: relative;
	width: 85%;
	margin: 0 auto;
	padding: 0;
}

#character .articles .magnify .magnify_inner {
	position: relative;
	width: 100%;
	padding-top: 100%;
}

#character .articles .magnify .magnify_inner li,
#character .articles .magnify .magnify_inner li .base,
#character .articles .magnify .magnify_inner li .magnifyCanvas {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
#character .articles .magnify .magnify_inner li,
#character .articles .magnify .magnify_inner li .base {
	width: 100%;
	height: 100%;
}
#character .articles .magnify .magnify_inner li .base img {
	vertical-align: middle;
}
#character .articles .magnify .magnify_inner li .magnifyCanvas {
	z-index: 1;
}
#character .articles .magnify .magnify_inner li .magnifyCanvas img,
#character .articles .magnify .magnify_inner li:not(.active) {
	display: none;
}

#character .articles .magnify .magNav li {
	position: absolute;
	top: 50%;
	width: auto;
	font-size: 60px;
	text-align: center;
	transform: translateY(-50%);
	z-index: 1;
	cursor: pointer;
	transition: 0.3s;
}

#character .articles .magnify .magNav li:hover {
/* 	font-size: 50px; */
	opacity: 0.6;
}

#character .articles .magnify .magNav li:nth-of-type(1) { right: 101%; }
#character .articles .magnify .magNav li:nth-of-type(2) { left:  101%; }

#character .articles .imgThumb {
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	width: auto;
	margin-top: 5px;
}

#character .articles .imgThumb li {
	position: relative;
	width: 24%;
	margin: 5px auto;
	text-align: center;
}

#character .articles .imgThumb li .imgThumb_inner {
	display: inline-block;
	position: relative;
	overflow: hidden;
	border: 1px solid #AAA;
	cursor: pointer;
	transition: border-color 0.3s;
}

#character .articles .imgThumb li .imgThumb_inner:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border: 3px solid transparent;
	transition: border-color 0.3s;
}

#character .articles .imgThumb li .imgThumb_inner:hover,
#character .articles .imgThumb li .imgThumb_inner:hover:after,
#character .articles .imgThumb li.active .imgThumb_inner,
#character .articles .imgThumb li.active .imgThumb_inner:after {
	border-color: #2D71A0;
}

#character .articles .imgThumb li .imgThumb_inner img {
	display: block;
	vertical-align: middle;
	width: 100%;
	max-width: none;
	margin: 0;
	transition: 0.1s;
}

#character .articles .imgThumb li .imgThumb_inner:hover img,
#character .articles .imgThumb li.active .imgThumb_inner img {
	width: 110%;
	margin: -5%;
}

#character .articles .imgThumb li .imgThumb_inner span {
	position: absolute;
	right: 5px;
	bottom: 5px;
	line-height: 1.2em;
	padding: 0 2px;
	color: #FFF;
}

@media only screen and (min-width: 600px) {
	.block:nth-of-type(1) article div.img,
	.block:nth-of-type(2) article div.img {
		padding-top: 100%;
	}
	.block:nth-of-type(2):not(.square) article div.img,
	.block:nth-of-type(2):not(.square) article div.movieWrapper .movie {
		padding-top: 48%;
	}

	article div.img {
		cursor: pointer;
	}

	article div.img img,
	article div.movieWrapper .movie .vTag {
		position: absolute;
		top: 50%;
		left: 0;
		transform: translateY(-50%);
	}
	#character .articles .magnify {
		width: 70%;
	}
	#character .articles .magnify .magNav li {
		font-size: 90px;
	}
	#character .articles .magnify .magNav li:hover {
/* 		font-size: 80px; */
	}
	#character .articles .imgThumb {
		margin-top: 0;
	}
	#character .articles .imgThumb li {
		width: 25%;
		margin: 20px auto;
	}
	#character .articles .imgThumb li .imgThumb_inner:after {
		border: 9px solid transparent;
	}
	#character .articles .imgThumb li .imgThumb_inner span {
		padding: 0 5px;
		line-height: normal;
	}

	article div:not(.img):not(.movieWrapper):not(.movie):not(.vTag) {
		position: absolute;
		left: 0;
		color: #FFF;
		background: rgba(0,0,0,0.6);
		padding: 10px;
		transition: 0.5s;
		width: 100%;
		transform: translateY(0);
		border: 1px solid #CCC;
	}

	article:hover div:not(.img):not(.movieWrapper):not(.movie):not(.vTag) {
		transform: translateY(-100%);
	}
}

article p {
	padding: 10px 0 0;
	font-size: 80%;
	line-height: 1.4;
}

@media only screen and (min-width: 600px) {
	article {
		border: none;
	}
	.articles {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
	}
	.articles .block {
		width: 48%;
		margin: 1%;
	}
	.articles .block:nth-of-type(2) article:first-of-type {
		margin-bottom: 4%;
	}
}

/* --------------------------------------------------------------------------------
CONTENTS
-------------------------------------------------------------------------------- */
/* #news
-------------------------------------------------------------------------------- */
#news {}
#news dl {
	max-height: 150px;
	overflow: auto;
	margin-top: 10px;
	color: #929292;
}
#news dl a {
	color: #929292;
}
#news dl {
	max-height: 150px;
	overflow: auto;
	margin-top: 10px;
	-webkit-overflow-scrolling: touch;
	line-height: 1.2;
}
#news dt {
	margin-top: 10px;
}

@media only screen and (min-width: 600px) {
	#news dl {
		margin-top: 20px;
	}
	#news dl:after {
		content: '';
		display: block;
		height: 0;
		overflow: hidden;
		clear: both;
	}
	#news dt {
		clear: both;
		float: left;
		width: 110px;
	}
	#news dt {
		margin-top: 0;
	}
	#news dd {
		margin: 0 0 10px 110px;
	}
}

/* #creative
-------------------------------------------------------------------------------- */

#creative ul li {
	width: 19%;
	font-size: 80%;
}

#creative ul li a {
	text-decoration: none;
}

h1 + .creative_contents {
	margin-top: 20px;
}

.creative_contents .inner {
	position: relative;
}

.creative_contents .inner:not(:last-of-type) {
	margin-bottom: 30px;
}

.creative_contents #character.inner:before,
.creative_contents #animation.inner:before,
.creative_contents #background.inner:before,
.creative_contents #effect.inner:before,
.creative_contents #uiux.inner:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 60px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-position: center bottom;
	opacity: 0.4;
}

.creative_contents .inner.no_img h1 {
	margin: 20px 0;
}

.creative_contents h2 {
	padding: 20px 0 0 50px;
	line-height: 20px;
}

.creative_contents .inner + .inner h2 {
	border-top: solid 2px #929292;
}

.creative_contents h2 span {
	display: block;
}

.creative_contents p {
	padding: 20px 0;
	line-height: 1.4;
}

.creative_contents .no_img p {
	padding-top: 0;
}

.creative_contents #recruit.inner p,
.creative_contents #contactus.inner p {
	padding: 0;
}

.creative_contents .inner h3 {
	padding: 10px 0 0 !important;
}
.creative_contents .inner h3 ~ p {
	padding: 10px 0 0 !important;
}

.creative_contents p br {
	display: none;
}

.creative_contents .more {
	padding: 15px 0;
	text-align: center;
}

.creative_contents .more a.movieWrapper {
	position: relative;
	display: block;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	overflow: hidden;
}
.creative_contents .more a.movieWrapper .movie {
	position: relative;
	width: 100%;
	padding: 16% 0 0;
}
.creative_contents .more a.movieWrapper .movie.sp {
	padding-top: 49%;
}
.creative_contents .more a.movieWrapper .movie .vBanner {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
/* 	height: 100%; */
	image-rendering: optimizequality;
	transform: translateY(-50%);
}
.creative_contents .more a.movieWrapper .movie:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #000;
}

@media only screen and (min-width: 600px) {
	#creative ul {
		width: 560px;
	}
	#creative ul li {
		width: 15%;
	}
/*
	.creative_contents .inner:nth-of-type(even) .articles {
		-webkit-flex-direction: row-reverse;
		    -ms-flex-direction: row;
		 -webkit-box-direction: reverse;
		        flex-direction: row-reverse;
	}
*/
	.creative_contents h2 {
		padding: 20px 0 0 100px;
	}
	.creative_contents h2 span {
		display: inline;
	}
	.creative_contents h2 + div {
		min-height: 4em;
	}
	.creative_contents p {
		padding-left: 100px;
	}
	.creative_contents p br {
		display: block;
	}
	.creative_contents .no_img p {
		padding: 20px 0;
	}
	.creative_contents article p {
		padding: 10px 0 0;
	}
	.creative_contents .inner:not(:last-of-type) {
		margin-bottom: 50px;
	}
	.creative_contents #character.inner:before,
	.creative_contents #animation.inner:before,
	.creative_contents #background.inner:before,
	.creative_contents #effect.inner:before,
	.creative_contents #uiux.inner:before {
		width: 80px;
		height: 100px;
	}
	.creative_contents .inner.no_img h1 {
		margin: 50px 0;
	}
	.creative_contents .more a.movieWrapper .movie:after {
		border-width: 3px;
	}
}

/* --------------------------------------------------------------------------------
#about us
-------------------------------------------------------------------------------- */
#aboutus .table-captipn {
	font-weight:bold;
	display:block;
	margin-bottom:16px;
	padding: 0px 10px;
	padding: 10px 10px;
	border-bottom: 1px solid #ccc;
	position: relative;
}
#aboutus .table-captipn span {
	font-family: 'Poppins', sans-serif;
	font-size:14px;
	display:block;
}
#aboutus table {
	width: 100%;
	/* max-width: 600px; */
}

/* --------------------------------------------------------------------------------
#recruit
-------------------------------------------------------------------------------- */
#recruit .articles {
	margin-top: 30px;
}

/* --------------------------------------------------------------------------------
#contactus
-------------------------------------------------------------------------------- */
.form {
	background: #f1f5f7;
	padding: 10px;
	max-width: 500px;
	margin: 0 auto;
	    padding: 16px;
			border-radius: 16px;
}
.form input[type='text'], .form input[type='email'], .form input[type='tel'], .form textarea{
	    margin-bottom: 0px;
			padding:16px;
			border-bottom: 2px solid #f1f5f7;
}
.form p .wpcf7-form-control-wrap{
	display: block;
    margin: 0px;
    padding: 0px;
    overflow: hidden;

}
.form p .wpcf7-form-control-wrap:first-child{
	border-radius: 8px 8px 0px 0px;
}
.form p .wpcf7-form-control-wrap.your-message{
	border-radius:0px 0px 8px 8px;
	margin-bottom:16px;
}
span.wpcf7-not-valid-tip {
	text-align: left;
	font-size: 12px;
}
.wpcf7-response-output.wpcf7-validation-errors {
	margin: 0;
	padding: 10px;
	font-size: 12px;
}

.wpcf7-list-item label,
.wpcf7-list-item label input[type='checkbox'],
.wpcf7-form-control-label {
	cursor: pointer;
}
.wpcf7-submit{
	display: block !important;
	width:100% !important;
	background-color: #0083c9 !important;
	margin-bottom:0px !important;
}

@media only screen and (max-width: 599px) {
	.form .wpcf7-form-control-wrap textarea{
		height: 160px !important;
	}
}
/* --------------------------------------------------------------------------------
#policy
-------------------------------------------------------------------------------- */

#policy {
	color: #929292;
}

#policy h1 {
	font-size: 100%;
	margin-bottom: 15px;
}

#policy h2 {
	font-size: 90%;
	margin: 10px 0;
}

#policy .nml_inner div {
	height: 100px;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

#policy .nml_inner div:first-of-type {
	margin-bottom: 30px;
}

#policy .nml_inner div > :not(:last-child) {
	margin-bottom: 10px;
}

#policy .nml_inner div > p,
#policy .nml_inner div > ul,
#policy .nml_inner div > ol {
	margin: 0.2em 0;
	font-size: 80%;
	line-height: 1.4;
}

#policy .nml_inner div ul li {
	margin-left: 2em;
	list-style: decimal;
}

#policy .nml_inner div ol li {
	margin-left: 2em;
	list-style: upper-roman;
}

/* --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
FOOTER
-----------------------------------------------------------------------------------
-------------------------------------------------------------------------------- */

footer {
	color: #FFF;
	background: #000;
	padding:16px;
}
footer p {
	padding: 15px 0;
}

footer a {
	color: #FFF;
}
footer .fa-phone {
	background: #FFF;
	color: #000;
}

address {
	font-size: 10px;
}

@media only screen and (min-width: 600px) {
	footer p {
		padding: 30px 0;
	}
	address {
		font-size: 12px;
	}
}

/* #page_top,#toBottom
-------------------------------------------------------------------------------- */

#page_top,
#toBottom {
	display: none;
	position: fixed;
	font-size: 30px;
	cursor: pointer;
	z-index: 3;
}
#page_top {
	right: 20px;
	bottom: 10px;
	/* background: #000; */
	color: #FFF;
	line-height: 1;
	padding: 5px 10px;
	text-align:center;
}
.fixedcat{
	width: 80px;
}
#toBottom {
	left: 50%;
	bottom: 30px;
	animation: toBottom 0.5s ease-in infinite alternate;
}
#page_top i{
	color:#222;
}

#page_top:hover,
#toBottom:hover {
	opacity: 0.8;
}

@keyframes toBottom {
	  0% { transform: translate(-50%,0); }
	100% { transform: translate(-50%,10px); }
}

@media only screen and (max-width: 640px) {
	.fixedcat{
		width: 65px;
	}
}

/* --------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
LOWER Page
-----------------------------------------------------------------------------------
-------------------------------------------------------------------------------- */

/* .articles_inner
-------------------------------------------------------------------------------- */
.articles_inner {
}


#order.articles_inner {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
#order.articles_inner .order_inner {
	position: relative;
	margin: 0 ;
	padding-top: 80%;
}
#order.articles_inner .order_inner li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#order.articles_inner .order_inner li img {
	display: block;
	position: absolute;
}
#order.articles_inner .order_inner li:nth-of-type(1) img { width: 70%; left:  15%; top:   55%; transform: translateY(-50%); }
#order.articles_inner .order_inner li:nth-of-type(2) img { width: 60%; left:  -6%; top:     0; }
#order.articles_inner .order_inner li:nth-of-type(3) img { width: 30%; left:   2%; top:   45%; }
#order.articles_inner .order_inner li:nth-of-type(4) img { width: 40%; right: -6%; top:   28%; }
#order.articles_inner .order_inner li:nth-of-type(5) img { width: 25%; right:   0; bottom: 2%; }

.articles_inner #painting .paintingList {
	margin: 0 auto;
}

#creative .articles_inner #painting .paintingList ul {
	width: 100%;
	font-size: 0;
}

#creative .articles_inner #painting .paintingList ul li {
	display: inline-block;
	width: 49%;
	margin-left: 2%;
}

#creative .articles_inner #painting .paintingList ul li:nth-of-type(2n+1) {
	margin-left: 0;
}

#creative .articles_inner #painting .paintingList ul li:nth-of-type(n+3) {
	margin-top: 20px;
}

#creative .articles_inner #painting .paintingList ul li h3 {
	margin: 0 auto 20px;
	text-align: center;
	font-size: 16px;
}

.articles_inner #painting .paintingList .etc {
	margin-top: 20px;
	text-align: right;
}

.articles_inner #painting .paintingList .etc img {
	width: 60px;
}

.articles_inner .paintingText {
	margin: 20px auto;
	text-align: center;
}

.articles_inner #progress .progress_inner {
	width: auto;
	padding-bottom: 20px;
}
.articles_inner #progress .progress_inner li {
	position: relative;
	width: 86vw;
	margin: 0 auto;
}
.articles_inner #progress .progress_inner li + li {
	padding-top: 40px;
}
.articles_inner #progress .progress_inner li:not(:last-of-type):after {
	content: '';
	display: block;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 85vw;
	border: 43vw solid transparent;
	border-top-width: 35px;
	z-index: 1;
}
.articles_inner #progress .progress_inner li:nth-of-type(1):after { border-top-color: #FF6F95; }
.articles_inner #progress .progress_inner li:nth-of-type(2):after { border-top-color: #FFA857; }

.articles_inner #progress .progress_inner li:nth-of-type(1) h3,
.articles_inner #progress .progress_inner li:nth-of-type(1) .description {
	background: #FF6F95;
}
.articles_inner #progress .progress_inner li:nth-of-type(2) h3,
.articles_inner #progress .progress_inner li:nth-of-type(2) .description {
	background: #FFA857;
}
.articles_inner #progress .progress_inner li:nth-of-type(3) h3,
.articles_inner #progress .progress_inner li:nth-of-type(3) .description {
	background: #7288DE;
}
.articles_inner #progress .progress_inner li h3,
.articles_inner #progress .progress_inner li .description {
	color: #FFF;
	text-shadow: 0 0 2px rgba(0,0,0,0.5);
	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
}
.articles_inner #progress .progress_inner li h3 {
	position: absolute;
	width: 100%;
	line-height: 50px;
	font-size: 30px;
	letter-spacing: 1em;
	text-indent:1em;
	text-align: center;
	z-index: 2;
}
.articles_inner #progress .progress_inner li .img {
	position: relative;
	height: 0;
	padding-top: 150%;
	overflow: hidden;
	border-left: 1px solid;
	border-right: 1px solid;
	text-align: center;
}
.articles_inner #progress .progress_inner li:nth-of-type(1) .img { border-color: #FF6F95; }
.articles_inner #progress .progress_inner li:nth-of-type(2) .img { border-color: #FFA857; }
.articles_inner #progress .progress_inner li:nth-of-type(3) .img { border-color: #7288DE; }
.articles_inner #progress .progress_inner li .img .img_inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.articles_inner #progress .progress_inner li .img .img_inner img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.articles_inner #progress .progress_inner li .img .magnifyCanvas {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	z-index: 1;
}

.articles_inner #progress .progress_inner li .description {
	display: table;
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 8em;
	z-index: 2;
}
.articles_inner #progress .progress_inner li .description .description_inner {
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	padding: 0 10px;
	font-size: 18px;
}
.articles_inner #progress .progress_inner li .description .description_inner br {
	display: none;
}
.articles_inner #progress .progress_inner li:last-of-type .description .description_inner {
	text-align: center;
}
.articles_inner #progress .progressText {
	position: relative;
	width: 100%;
	margin: 0 auto;
}
.articles_inner #progress .progressText ul {
	position: relative;
	width: 100%;
	margin: 0 ;
	padding-top: 60%;
}
.articles_inner #progress .progressText ul li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.articles_inner #progress .progressText ul li img {
	display: block;
	position: absolute;
}
.articles_inner #progress .progressText ul li:nth-of-type(1) img {
	max-width: 75%;
	top: 0;
	left: 5%;
}
.articles_inner #progress .progressText ul li:nth-of-type(2) img {
	max-width: 85%;
	right: 0;
	bottom: 0;
}

.articles_inner #changing .changingText {
	margin: 20px auto;
}

.articles_inner #changing .changingText br {
	display: none;
}

#creative .articles_inner #changing .withHr {
	border-top: 0;
}

#creative .articles_inner #changing .changingList {
	position: relative;
	width: 100%;
	margin: 20px auto;
}

#creative .articles_inner #changing .changingList ul {
	position: relative;
	width: 100%;
	padding-top: 120%;
	overflow: hidden;
}
#creative .articles_inner #changing .changingList ul li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	animation: 12s infinite;
}
#creative .articles_inner #changing .changingList ul li:nth-of-type(1) { animation-name: changingList1; }
#creative .articles_inner #changing .changingList ul li:nth-of-type(2) { animation-name: changingList2; }
#creative .articles_inner #changing .changingList ul li:nth-of-type(3) { animation-name: changingList3; }

@keyframes changingList1 {
	  0% { opacity: 1; }
	 24% { opacity: 1; }
	 33% { opacity: 0; }
	 57% { opacity: 0; }
	 66% { opacity: 0; }
	 90% { opacity: 0; }
	100% { opacity: 1; }
}
@keyframes changingList2 {
	  0% { opacity: 0; }
	 24% { opacity: 0; }
	 33% { opacity: 1; }
	 57% { opacity: 1; }
	 66% { opacity: 0; }
	 90% { opacity: 0; }
	100% { opacity: 0; }
}
@keyframes changingList3 {
	  0% { opacity: 0; }
	 24% { opacity: 0; }
	 33% { opacity: 0; }
	 57% { opacity: 0; }
	 66% { opacity: 1; }
	 90% { opacity: 1; }
	100% { opacity: 0; }
}

#creative .articles_inner #changing .changingList p,
#creative .articles_inner #changing .changingList ul li .img .magnifyCanvas {
	display: none;
}

@media only screen and (min-width: 600px) {
	#order.articles_inner .order_inner {
		position: relative;
		width: auto;
		margin: 0 ;
		padding: 100px 0;
	}
	#order.articles_inner .order_inner li:first-of-type {
		position: relative;
		width: auto;
		height: auto;
		text-align: center;
	}
	#order.articles_inner .order_inner li:nth-of-type(n+1) img {
		width: auto;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
	}
	#order.articles_inner .order_inner li:nth-of-type(1) img {
		display: inline;
		position: relative;
		max-width: 54%;
		transform: none;
	}
	#order.articles_inner .order_inner li:nth-of-type(2) img {
		top: 2%;
		max-width: 41%;
	}
	#order.articles_inner .order_inner li:nth-of-type(3) img {
		top: 42%;
		left: 5%;
		max-width: 22%;
	}
	#order.articles_inner .order_inner li:nth-of-type(4) img {
		right: 5%;
		bottom: 40%;
		max-width: 27%;
	}
	#order.articles_inner .order_inner li:nth-of-type(5) img {
		bottom: 0;
		right: 7%;
		max-width: 21%;
	}
	#creative .articles_inner #painting .paintingList {
		margin: 20px auto;
	}

	#creative .articles_inner #painting .paintingList ul li {
		width: 32%;
	}

	#creative .articles_inner #painting .paintingList ul li:nth-of-type(2n+1) {
		margin-left: 2%;
	}

	#creative .articles_inner #painting .paintingList ul li:nth-of-type(n+3) {
		margin-top: 0;
	}

	#creative .articles_inner #painting .paintingList ul li:nth-of-type(3n+1) {
		margin-left: 0;
	}

	#creative .articles_inner #painting .paintingList ul li:nth-of-type(n+4) {
		margin-top: 20px;
	}

	#creative .articles_inner #painting .paintingList ul li h3 {
		margin-top: 20px;
		font-size: 24px;
	}

	#creative .articles_inner #painting .paintingList .etc img {
		width: auto;
	}
	#creative .articles_inner .paintingText {
		max-width: 58%;
	}

	.articles_inner #progress .progress_inner li {
		width: 32%;
	}
	.articles_inner #progress .progress_inner li + li {
		padding-top: 0;
	}
	.articles_inner #progress .progress_inner li:nth-child(n+1):after {
		display: none;
	}
	.articles_inner #progress .progress_inner li h3 {
		position: relative;
		z-index: auto;
	}
	.articles_inner #progress .progress_inner li:not(:last-of-type) h3:after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 100%;
		height: 100%;
		border: 30px solid transparent;
		border-left-width: 60px;
		z-index: 1;
	}
	.articles_inner #progress .progress_inner li:nth-of-type(1) h3:after { border-left-color: #FF6F95; }
	.articles_inner #progress .progress_inner li:nth-of-type(2) h3:after { border-left-color: #FFA857; }
	.articles_inner #progress .progress_inner li .img {
		height: auto;
		margin: 10px auto;
		padding: 0;
		border: 0;
	}
	.articles_inner #progress .progress_inner li .img .img_inner,
	.articles_inner #progress .progress_inner li .img .img_inner img {
		position: relative;
		top: auto;
		left: auto;
		width: 100%;
	}
	.articles_inner #progress .progress_inner li .description {
		position: relative;
		bottom: auto;
	}
	.articles_inner #progress .progress_inner li .description .description_inner {
		line-height: 2em;
		padding: 0;
		text-align: center;
	}
	.articles_inner #progress .progress_inner li .description .description_inner br {
		display: block;
	}
	.articles_inner #progress .progressText ul {
		padding-top: 23%;
	}
	.articles_inner #progress .progressText ul li:nth-of-type(1) img { max-width: 47%; left: 0; }
	.articles_inner #progress .progressText ul li:nth-of-type(2) img { max-width: 56%; }

	#creative .articles_inner #changing .changingList ul {
		width: 100%;
		padding: 0;
	}

	#creative .articles_inner #changing .changingList ul li:nth-of-type(n+1) {
		position: relative;
		top: auto;
		left: auto;
		width: 33%;
		height: auto;
		animation-name: none;
	}

	#creative .articles_inner #changing .changingList ul li + li:before {
		position: absolute;
		display: block;
		top: 50%;
		left: -1%;
		transform: translate(-50%,-50%);
		content: '\f337';
		color: #929292;
		font-size: 4em;
		font-family: 'Font Awesome 5 Free';
		font-weight: bold;
		z-index: 2;
	}

	#creative .articles_inner #changing .changingList ul li .img {
		position: relative;
		overflow: hidden;
	}

	#creative .articles_inner #changing .changingList p {
		display: block;
	}

	#creative .articles_inner #changing .changingList ul li .img .magnifyCanvas {
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		overflow: hidden;
		z-index: 1;
	}
	.articles_inner #changing .changingText br {
		display: block;
	}
}

/* .youtube
-------------------------------------------------------------------------------- */
.youtube {
	position: relative;
	width: 100%;
	margin: 20px auto;
}
@media only screen and (min-width: 600px) {
	.youtube {
		font-size: 12px;
	}
}

.youtube .youtube_inner {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube .youtube_inner iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

/* #exp
-------------------------------------------------------------------------------- */
#exp .nml_inner ul li {
	width: auto;
}
#exp .nml_inner ul li + li {
	margin-top: 20px;
}
#exp .nml_inner ul li .title {
	font-size: 1.2em;
	font-weight: bold;
}
#exp .nml_inner ul li .description p {
	padding: 0;
}
#exp.home .nml_inner ul li {
	width: 60%;
	margin: 0 auto;
	padding: 1%;
}
#exp.home .nml_inner ul li .title,
#exp.home .nml_inner ul li .description {
	display: none;
}
@media only screen and (min-width: 600px) {
	#exp .nml_inner ul {
		max-width: 60%;
		width: auto;
		margin: 0 auto;
	}
	#exp.home .nml_inner ul {
		display: table;
		table-layout: fixed;
		max-width: none;
		width: 100%;
	}
	#exp.home .nml_inner ul li {
		display: table-cell;
		width: auto;
		padding: 0 1%;
	}
	#exp.home h2 span {
		font-size: 40px;
	}
	#exp.home h2:nth-of-type(n):before {
		height: 10px;
	}
}


.ma_miraicon{
    position: absolute;
    left: auto;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto auto 0px;
    width: 110px;
    height: 170px;
    background-image: url(/itsdev/wp-content/uploads/2021/09/mira_icon.png);
    background-size: contain;
    background-repeat: no-repeat;
}
@media only screen and (max-width: 640px) {
	.ma_miraicon{
		width: 80px;
		height: 130px;
	}
}
