/*
Theme Name: rctent
Theme URI: http://underscores.me/
Author: 4eyes
Author URI: http://underscores.me/
Description: for rctent
Version: 1.0
License: GNU General Public License
License URI: license.txt
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
and Blueprint http://www.blueprintcss.org/
*/


@import './css/base.css';
@import './css/general_classes.css';


html, body {
	font-family: 'Noto Sans JP Subset', sans-serif;
	font-size: 13px;
	color: #292929;
	letter-spacing: .1em;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	width: 100%;
	min-height: 100%;
	overflow-x: hidden;
	position: relative;
	min-width: 1140px;
}

/*リンク*/
a { color: #292929; transition: .3s; -webkit-transition: .3s; }
a:link,
a:visited,
a:hover,
a:active {
	color: #292929;
}


a:hover{
	opacity: 1;
}

/*エフェクト*/

.bright {
	overflow: hidden;
	position: relative;
}

.bright:before {
  content: "";
  width: 200%;
  height: 200%;
  background: rgba(0, 0, 0, .2);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: -10%;
  left: -180%;
  transition: .3s ease-in-out;
}

.bright:hover:before {
	left: 60%;
}

.fade {
	opacity: 0;
	-webkit-transition: all 0.6s;
	transition: all 0.6s;
}
.fade.is-show { opacity: 1; transform: none; }


.fade-left {
	-webkit-transform: translate(30px, 0);
	transform: translate(30px, 0);
}
.fade-right {
	-webkit-transform: translate(-30px, 0);
	transform: translate(-30px, 0);
}
.fade-up {
	-webkit-transform: translate(0, 30px);
	transform: translate(0, 30px);
}
.fade-down {
	-webkit-transform: translate(0, -30px);
	transform: translate(0, -30px);
}

br.sp { display: none; }


/* ---------------------------------
*    Structure
*/

#wrap {
	width: 100%;
	background-color: #fff;
	height: auto !important;
	height: 100%;
	min-height: 100%;
	margin-top: 71px;
	position: relative;
	overflow: hidden;
}
#contents {}
#contents .inner {
	max-width: 1300px;
	margin: 0 auto;
}

#footer {
	width: 100%;
	padding: 50px 0;
	background-color: #136736;
	color: #fff;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
}

#footer .inner {
	max-width: 1300px;
	margin: 0 auto;
}

/* ---------------------------------
*    Header
*/

#header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 70px;
	z-index: 999;
}

#header::before {}

/* Logo */

#mainLogo {
	position: absolute;
	top: 10px;
	left: 50%;
	margin: 0;
	z-index: 1001;
	margin-left: -60px;
}

#mainLogo a {
	text-indent: -999em;
	background: url(./images/logo-mainC.png) no-repeat 0 0;
	width: 120px;
	height: 120px;
	display: block;
	background-size: 100% !important;
	position: relative;
}

#mainLogo a::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 116px;
	height: 116px;
	border-radius: 50%;
	border: 2px solid #e1c916;
}

/*nav*/

#gdrawer {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
}

#gdrawer nav {
	position: relative;
	background-color: #f2db31;
	border-bottom: 1px solid #e1c916;
	display: flex;
	justify-content: center;
}

#gdrawer nav>div {
	width: 25%;
	margin: 0 7%;
}
#gdrawer nav>div:nth-of-type(2) {
	width: 28%;
	margin: 0 4%;
}

#gdrawer nav>div>ul {
	display: flex;
	justify-content: space-between;
}

#gdrawer nav>div>ul>li {
	display: inline-block;
	line-height: 1;
	vertical-align: top;
	position: relative;
}

#gdrawer nav>div>ul>li>a {
	font-family: 'Roboto Condensed', sans-serif;
	color: #136736;
	font-size: 22px;
	position: relative;
	height: 70px;
	line-height: 70px;
	display: block;
	text-align: center;
	font-weight: bold;
	letter-spacing: .1em;
}

/*#gdrawer nav>div>ul>li:nth-of-type(4) { width: 120px; }
#gdrawer nav>div>ul>li:nth-of-type(4)>a {
	text-indent: -999em;
	width: 120px;
	height: 120px;
	background: url(images/logo-mainC.png) no-repeat 0 0;
	background-size: 100%;
	position: absolute;
	left: -60px;
}*/

#gdrawer nav>div>ul>li>a:hover { color: #ab0000; }

#gdrawer nav>div>ul>li>a:hover::before{
	content: '★';
	display: block;
	font-size: 18px;
	position: absolute;
	left: -25px;
}

/* ---------------------------------
*    Common
*/

.select {
	width: 100%;
	position: relative;
	display: inline-block;
}

.select select {
	width: 100%;
	float: left;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 10px 10px 10px 60px;
	background-color: #fffcdd;
	border: 2px solid #116937;
	border-radius: 0;
	position: relative;
	height: 50px;
	background-image: none;
	border-radius: 3px;
	font-weight: 500;
	font-size: 16px;
}

.select select::-ms-expand {
    display: none;
}

.select::before {
	content: '';
	width: 50px;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	pointer-events: none;
	background-color: #116937;
	border-radius: 3px 0 0 3px;
}

.select::after {
	content: '';
	width: 8px;
	height: 8px;
	position: absolute;
	border-right: 2px solid #fffcdd;
	border-top: 2px solid #fffcdd;
	transform: rotate(135deg);
	top: 50%;
	left: 20px;
	margin-top: -6px;
	pointer-events: none;
	z-index: 2;
}


/*not-found*/

.not-found h1 {
	font-family: 'Roboto Condensed', sans-serif;
	color: #001358;
	text-align: center;
	font-size: 30px;
	font-weight: bold;
}

.not-found h1 span {
	display: inline-block;
	margin-top: 20px;
	font-size: 18px;
	font-weight: normal;
}


/*swiper*/

.swiper-slide img {
	width: 100%;
	vertical-align: bottom;
}

.swiper-button-prev,
.swiper-button-next {
	border: 1px solid #f2db31;
	border-radius: 30px;
	width: 60px !important;
	height: 60px !important;
	margin-top: -30px !important;
}

.swiper-button-next {
	right: 40px !important;
	background: url(./images/arrow3A3A3Ar.svg) #f2db31 no-repeat 50% calc(50% - 2px);
}

.swiper-button-prev {
	left: 40px !important;
	background: url(./images/arrow3A3A3Ar.svg) #f2db31 no-repeat 50% calc(50% - 2px);
	-webkit-transform: scale(-1, 1);
	transform: scale(-1, 1);
}

.swiper-button-prev:after,
.swiper-button-next:after {
	content: '' !important;
}

/*youtube*/

.youtube .iframe {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.youtube .iframe iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}


/* ---------------------------------
*    Top
*/

.top section {
	position: relative;
	box-sizing: border-box;
}

.top section .more {
	text-align: center;
	padding: 100px 0;
	clear: both;
}

.top section .more a {
	position: relative;
	display: inline-block;
	width: 300px;
	height: 70px;
	line-height: 70px;
	border-radius: 35px;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	font-weight: bold;
	background-color: #f2db31;
	color: #3a3a3a;
	box-shadow: 0 7px #e1c916;
	transition: none;
}

.top section .more a:hover {
	box-shadow: none;
	position: relative;
	top: 7px;
}

.top section .more a span {
	position: relative;
	display: inline-block;
	margin-left: 15px;
}

.top section .more a span::after{
	content: '';
	position: absolute;
	top: 50%;
	background: url(./images/arrow3A3A3Ar.svg) no-repeat;
	background-size: 100%;
	width: 32px;
	height: 11px;
	margin-top: -18px;
}

.top section header {
	text-align: center;
	padding: 100px 0 80px;
}

.top section header h1 {
	font-size: 16px;
	color: #116937;
	margin-bottom: 10px;
	font-weight: 500;
	position: relative;
	z-index: 10;
}

.top section header h2 {
	position: relative;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 65px;
	color: #116937;
	font-weight: bold;
	letter-spacing: .05em;
}

.top section header h2::after {
	content: '';
	display: block;
	position: absolute;
	bottom: -30px;
	left: 50%;
	height: 3px;
	width: 110px;
	margin-left: -55px;
	background-color: #116937;
}

/*kv*/

.top .kv {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 300px;
	background: url(images/top-kv.jpg) no-repeat 0 0;
	background-size: 100%;
}

.top .kv .catch {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 65px;
	font-weight: bold;
	letter-spacing: .05em;
	color: #fff;
}

.typ,
.typ span { opacity: 0; }

/*news*/

.top .news {
	background-color: #f5f3e8;
}

.top .news .inner { padding-top: 40px; }
.top .news .inner .unit01,
.top .news .inner .unit02 {
	width: 100%;
}

.top .news .inner .unit01 { margin-bottom: 40px; }
.top .news .inner .unit01 dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top .news .inner .unit01 dl dd { width: 49%; }

.top .news .inner .unit02 {}

.top .news .title {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 30px;
}

.top .news .title h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	color: #116937;
	font-weight: bold;
	letter-spacing: .05em;
	position: relative;
}

.top .news .inner .unit02 article {
	font-size: 18px;
	margin-bottom: 30px;
}
.top .news .inner .unit02 article:last-of-type { margin-bottom: 0; }

.top .news .inner .unit02 article time {
	display: inline-block;
	background-color: #116937;
	height: 28px;
	width: 110px;
	line-height: 28px;

	font-family: 'Roboto Condensed', sans-serif;
	color: #f2db31;
	font-weight: bold;
	letter-spacing: .05em;
	margin-right: 20px;
	text-align: center;
}

.top .news .inner .unit02 article .desc {
	display: inline-block;
	line-height: 25px;
}

.top .news .inner .unit02 article .desc a { text-decoration: underline; }
.top .news .inner .unit02 article .desc a:hover { text-decoration: none; }

/*works*/

.top .works header { padding: 40px 0 80px; }

.works .movie dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 3rem;
}

.works .movie dl dd {
	width: 32%;
	height: auto;
}

.works .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.works .list li {
	width: 32%;
	position: relative;
	overflow: hidden;
	margin: 0 2% 2% 0;
}
.works .list li:nth-of-type(3n) { margin-right: 0; }
/*.works .list li:nth-last-of-type(1),
.works .list li:nth-last-of-type(2),
.works .list li:nth-last-of-type(3) { margin-bottom: 0; }
*/

.works .list li img {
	width: 100%;
	height: auto;

	-webkit-transition: all .5s ease 0ms;
	transition: all .5s ease 0ms;
}

.works .list li .info {
	opacity: 0;
	z-index: 2;
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(242,219,49,.9);
	padding: 7%;

	-webkit-transition: all .5s ease 0ms;
	transition: all .5s ease 0ms;
}

.works .list li .info h2 {
	font-size: 18px;
	color: #116937;
	font-weight: 500;
	line-height: 1.5;
	padding-bottom: 3%;
	border-bottom: 1px solid #116937;
	margin-bottom: 3%;
}

.works .list li .info p {
	color: #116937;
	font-weight: 500;
}

.works .list li .info span {
	font-family: 'Roboto Condensed', sans-serif;
	color: #116937;
	font-weight: bold;
	font-size: 16px;
	position: absolute;
	bottom: 7%;
	right: 7%;
}

.works .list li:hover .info { opacity: 1; }
.works .list li:hover img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.works .service>ul>li {
	position: relative;
	height: 55vh;
	min-height: 500px;
	overflow: hidden;
}

.works .service>ul>li .overlay {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background: #fff;

	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transform-origin: left top;
	transform-origin: left top;

	-webkit-transition: all .7s ease 0.1s;
	transition: all .7s ease 0.1s;
}

.works .service>ul>li.is-show a .overlay {
	-webkit-transform: scaleY(0);
	transform: scaleY(0);
}

.works .service>ul>li .visual {
	float: left;
	width: 50%;
	height: 100%;
	overflow: hidden;

	-webkit-transition: all .7s ease 0ms;
	transition: all .7s ease 0ms;
}

.works .service>ul>li .visual img {
	display: block;
	width: 100%;
	height: auto;

	-webkit-transition: all .7s ease 0ms;
	transition: all .7s ease 0ms;
}

.works .service>ul>li a:hover .visual img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.works .service>ul>li .desc {
	float: left;
	width: 50%;
	height: 100%;
	padding: 80px;
	box-sizing: border-box;
	background-color: #116937;
	position: relative;

	-webkit-transition: all .7s ease 0ms;
	transition: all .7s ease 0ms;
}

.works .service>ul>li a:hover .desc { background-color: #0c502a; }

.works .service>ul>li .desc h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 48px;
	display: inline-block;
	color: #fff;
	font-weight: bold;
	margin-bottom: 30px;
	letter-spacing: .05em;
}

.works .service>ul>li .desc h4 {
	font-size: 20px;
	font-weight: bold;
	color: #e8db38;
	margin-bottom: 15px;
}

.works .service>ul>li .desc p {
	font-size: 16px;
	font-weight: 500;
	color: #fff;
	line-height: 2;
}

.works .service>ul>li .desc span {
	position: absolute;
	bottom: 30px;
	right: 75px;
	font-family: 'Roboto Condensed', sans-serif;
	color: #e8db38;
	font-size: 22px;
	font-weight: bold;
}

.works .service>ul>li .desc span::after {
	content: '';
	position: absolute;
	top: 50%;
	background: url(./images/arrowF2DB31r.svg) no-repeat;
	background-size: 100%;
	width: 32px;
	height: 11px;
	margin: -7px 0 0 10px;

	-webkit-transition: all .7s ease 0ms;
	transition: all .7s ease 0ms;
}

.works .service>ul>li:hover .desc span::after { margin-left: 18px; }

.works .service>ul>li:nth-child(odd) .desc { right: 0; }
.works .service>ul>li:nth-child(even) .desc { left: 0; }
.works .service>ul>li:nth-child(even) .visual { float: right; }


/*about*/
.top .about {
	background: url(images/ptn-logo.png) repeat 0 0;
}

.top .about>div {
	width: 60%;
	margin: 0 auto;
	padding: 120px 0 80px;
	margin-top: -120px;
}

.top .about h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	color: #116937;
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 15px;
	position: relative;
}

.top .about h3::before {
	content: '';
	display: inline-block;
	width: 10px;
	height: 3px;
	background-color: #116937;
	margin-right: 10px;
}


.top .about h3 span {
	display: inline-block;
	margin-left: 15px;
	font-family: 'Noto Sans JP Subset', sans-serif;
	font-size: 14px;
	font-weight: 500;
}

.top .about .company .wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(242,219,49,.9);
	padding: 50px;
	border-radius: 5px;
}

.top .about .company .wrap dl {
	font-size: 16px;
}

.top .about .company .wrap dl dt {
	float: left;
	clear: left;
	text-align: right;
	padding: 13px 0;
	width: 120px;
	font-weight: 500;
}

.top .about .company .wrap dl dt::after {
	content: '';
	display: inline-block;
	height: 12px;
	width: 2px;
	background-color: #292929;
	margin-left: 10px;
}

.top .about .company .wrap dl dd {
	margin-left: 150px;
	padding: 13px 0;
}

.top .about .access .gmap {
	position: relative;
	width: 100%;
	margin: 20px auto;
	padding-top: 60%;
}

.top .about .access .gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
}

/*recruit*/

.top .recruit {
	padding-top: 120px;
	margin-top: -120px;
}

.top .recruit .bg {
	padding-bottom: 80px;
	background: url(images/reqruit-bg.jpg) #f2db31 no-repeat 0 0;
	background-size: 100%;
}

.top .recruit h3 {
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	color: #fff;
	line-height: 1.8;
	letter-spacing: .05em;
	margin-bottom: 30px;
}

.top .recruit .points {
	box-sizing: border-box;
	width: 60%;
	margin: 0 auto;
	background-color: rgba(255,255,255,.9);
	padding: 80px 120px;
	font-size: 15px;
	border-radius: 5px;
}

.top .recruit .points dl {
	border-bottom: 1px solid #292929;
	padding-bottom: 15px;
	margin-bottom: 30px;
}

.top .recruit .points dl dt {
	float: left;
	clear: left;
	padding: 10px 0;
	width: 150px;
	font-weight: 500;
}

.top .recruit .points dl dd {
	margin-left: 180px;
	padding: 10px 0;
}

.top .recruit .points p {
	line-height: 2;
}

.top .recruit .points p a { text-decoration: underline; }

/*contact*/

.top .contact {
	padding: 120px 0 80px;
	margin-top: -120px;
}

.top .contact .form {
	width: 50%;
	margin: 0 auto;
}

.top .contact .form label {
	font-size: 18px;
	font-weight: 500;
}

.top .contact .form label+span {
	font-size: 14px;
	font-weight: 500;
	color: #c40000;
	display: inline-block;
	margin-left: 10px;
}

.top .contact .form .subject {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-left: 5px;
	margin-bottom: 40px;
}

.top .contact .form .select {
	width: 550px;
}

.top .contact .form dl dt {
	padding: 20px 5px;
}

.top .contact .form dl dd {
	padding-bottom: 20px;
}

.top .contact .form dl dd input,
.top .contact .form dl dd textarea {
	box-sizing: border-box;
	width: 100%;
	font-size: 16px;
	font-weight: 500;
	padding: 12px;
	border: 2px solid #116937;
	background-color: #fffcdd;
	border-radius: 5px;
}

.top .contact .form .submit {
	text-align: center;
	padding: 30px 0;
}

.top .contact .form .submit input {
	display: inline-block;
	font-size: 25px;
	font-weight: 500;
	width: 250px;
	height: 70px;
	line-height: 70px;
	border-radius: 35px;
	background-color: #f2db31;
	color: #3a3a3a;
	box-shadow: 0 7px #e1c916;
	border: none;
}
.top .contact .form .submit input:hover {
	box-shadow: none;
	position: relative;
	top: 7px;
}


.wpcf7 .ajax-loader { display: none; }
.wpcf7-not-valid-tip {
	font-size: 14px;
	font-weight: 500;
	padding: 15px 5px;
	color: #c40000;
}

.wpcf7 form .wpcf7-response-output {
	border: 0;
	text-align: center;
	font-size: 15px;
	font-weight: 500;
	color: #c40000;
}

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

.page h1 {
	font-family: 'Roboto Condensed', sans-serif;
	line-height: 1.5;
	color: #f2db31;
	font-size: 80px;
	text-align: left;
	font-weight: bold;
}

.page h1 span {
	display: block;
	font-size: 18px;
	letter-spacing: .2em;
	font-family: 'Noto Sans JP Subset', sans-serif;
	font-weight: 500;
}

.page .kv {
	position: relative;
	height: 300px;
	text-align: center;
	width: 100%;
	background-color: #106937;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	margin-bottom: 80px;
}

.page .kv::after {
	position: absolute;
	z-index: 2;
	content: '';
	width: 100%;
	height: 100%;
	background-color: #00421d;
	opacity: .9;
	top: 0;
	left: 0;
}

.page .kv header {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 94%;
	padding: 0 3%;
	max-width: 1300px;
	-webkit-transform: translateY(-50%) translateX(-50%);
	transform: translateY(-50%) translateX(-50%);
	z-index: 3;
}


.page h2.ttl {
	text-align: center;
	font-size: 45px;
	line-height: 1.5;
	color: #001358;
	font-weight: bold;
	margin-bottom: 100px;
	font-family: 'Roboto Condensed', sans-serif;
	position: relative;
}

.page h2.ttl::after {
	content: '';
	width: 60px;
	height: 3px;
	background-color: #001358;
	display: block;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.page h2.ttl span {
	display: block;
	font-size: 16px;
	letter-spacing: .3em;
	margin-bottom: 30px;
}

.page .contact {
	text-align: center;
	padding: 100px 0;
	clear: both;
}

.page .contact a {
	position: relative;
	display: inline-block;
	width: 300px;
	height: 70px;
	line-height: 70px;
	border-radius: 35px;
	text-align: center;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	font-weight: bold;
	background-color: #f2db31;
	color: #3a3a3a;
	box-shadow: 0 7px #e1c916;
	transition: none;
}

.page .contact a:hover {
	box-shadow: none;
	position: relative;
	top: 7px;
}

.page .contact a span {
	position: relative;
	display: inline-block;
	margin-left: 15px;
}

.page .contact a span::after{
	content: '';
	position: absolute;
	top: 50%;
	background: url(./images/arrow3A3A3Ar.svg) no-repeat;
	background-size: 100%;
	width: 32px;
	height: 11px;
	margin-top: -18px;
}

/*news*/

#news { background-color: #f5f3e8; }
#news .kv {
	background-image: url(./images/news-kv.jpg);
}

#category .inner {
	padding: 50px 0;
}


.post-list .flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.post-list article {
	position: relative;
	width: 31%;
	margin: 0 3.5% 50px 0;
	box-sizing: border-box;
	background-color: #fff;

	opacity: 0;
	-webkit-transform-origin: left top;
	transform-origin: left top;

	-webkit-transition: all .7s ease 0.1s;
	transition: all .7s ease 0.1s;
}

.post-list article:nth-of-type(3n) { margin-right: 0; }

.post-list article::before {
	content: '';
	display: block;
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 0;
	background-color: #f2db31;

	-webkit-transition: all 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
	transition: all 0.4s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.post-list article:hover::before { height: 100%; }

.post-list article.is-show {
	opacity: 1
}

.post-list article a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	padding: 11% 5% 5%;
	box-sizing: border-box;
}

.post-list article time {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 20px;
	font-weight: bold;
	position: absolute;
	background-color: #116937;
	padding: 3px;
	color: #f2db31;
	top: -3%;
	z-index: 2;
	width: 110px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.post-list article .detail {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 15px;
	font-weight: bold;
	position: absolute;
	bottom: 0;
	right: 0;
	color: #116937;
	display: inline-block;
	padding: 10px;
}

.post-list article .thumbnail {
	overflow: hidden;
}

.post-list article .thumbnail img {
	width: 100%;
	height: auto;

	-webkit-transform: scale(1);
	transform: scale(1);

	-webkit-transition: all .7s ease 0ms;
	transition: all .7s ease 0ms;
}

.post-list article:hover .thumbnail img {
	-webkit-transform: scale(1.05);
	transform: scale(1.05);
}

.post-list article .desc {
	padding: 15px;
}

.post-list article .desc h2 {
	font-size: 15px;
	line-height: 1.8;
	font-weight: 500;
}

.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 50px 0 100px;
}

.wp-pagenavi .pages { display: none; }

.wp-pagenavi .page,.wp-pagenavi .current {
	display: block;
	border: 0;
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 20px;
	font-weight: bold;
	width: 40px;
	height: 40px;
	line-height: 40px;
	color: #116937;
	border: 2px solid #116937;
	border-radius: 50%;
	text-align: center;
	padding: 0;
	margin: .2em;
}
.wp-pagenavi .page:hover {
	background-color: #116937;
	color: #fff;
}
.wp-pagenavi .current {
	background-color: #f2db31;
	border-color: #f2db31;
}

.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
	display: block;
	text-indent: -999em;
	border: 0;
	padding: 0;
	margin: 0 10px;
}

.wp-pagenavi .nextpostslink::after,
.wp-pagenavi .previouspostslink:after {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	border-right: 2px solid #116937;
	border-top: 2px solid #116937;
	margin-bottom: 11px;
}
.wp-pagenavi .nextpostslink::after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.wp-pagenavi .previouspostslink::after {
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}


/*works*/
#works .kv { background-image: url(./images/works-kv.jpg); }

#works .list { margin-bottom: 80px; }

/*rental-studio*/
#rental-studio .kv {
	background-image: url(./images/rental-studio-kv.jpg);
}

#rental-studio h2 {
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: .05em;
	margin-bottom: 80px;
	padding: 0 3%;
}

#rental-studio h2 span {
	font-size: 16px;
	font-weight: normal;
}

#rental-studio .swiper-container { margin-bottom: 50px; }

#rental-studio h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	color: #292929;
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 15px;
	position: relative;
}

#rental-studio h3::before {
	content: '';
	display: inline-block;
	width: 10px;
	height: 3px;
	background-color: #292929;
	margin-right: 10px;
}

#rental-studio h3 span {
	display: inline-block;
	margin-left: 15px;
	font-family: 'Noto Sans JP Subset', sans-serif;
	font-size: 14px;
	font-weight: 500;
}
#rental-studio .flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#rental-studio .flex .unit {
	width: 48%;
}

#rental-studio .flex .unit .gmap {
	position: relative;
	width: 100%;
	padding-top: 73%;
	height: 90px;
}

#rental-studio .flex .unit .gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-radius: 5px;
}

#rental-studio .flex .unit .gmap+p {
	font-size: 15px;
	line-height: 1.5;
	padding: 20px 7px;
}

#rental-studio .flex .unit .wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #f5f3e8;
	border-radius: 5px;
	padding: 30px;
}

#rental-studio .flex .unit dl {
	font-size: 15px;
	width: 100%;
}
#rental-studio .flex .unit dl dt {
	padding: 0 0 13px;
	font-weight: 500;
	line-height: 1.5;
	border-bottom: 1px solid #e4e0c7;
}

#rental-studio .flex .unit dl dd {
	padding: 13px 0 26px;
	line-height: 1.5;
}
#rental-studio .flex .unit dl dd:last-of-type { padding-bottom: 13px; }

#rental-studio .flex .unit dl dd span {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	font-size: 25px;
}

#rental-studio .flyer {
	margin: 50px auto;
}

#rental-studio .flyer img {
	width: 100%;
	height: auto;
}

#rental-studio .flyer p {
	text-align: center;
	font-size: 18px;
	padding: 10px 0;
}

/*you tube*/
#you-tube .kv { background-image: url(./images/you-tube-kv.jpg); }
#owned-media .kv { background-image: url(./images/owned-media-kv.jpg); }

#you-tube .list li,
#owned-media .list li {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 50px;
}

#you-tube .list li figure,
#owned-media .list li .youtube  {
	width: 55%;
}

#you-tube .list li figure img {
	width: 100%;
	height: auto;
}

#you-tube .list li .info,
#owned-media .list li .info {
	width: 40%;
	padding: 2% 0;
}

#you-tube .list li .info h2,
#owned-media .list li .info h2 {
	font-size: 25px;
	font-weight: 500;
	margin-bottom: 30px;
	line-height: 1.5;
}

#you-tube .list li .info p,
#owned-media .list li .info p {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 30px;
}

#you-tube .list li .info a {
	display: inline-block;
	font-size: 15px;
	padding: 15px 20px;
	background-color: #c00;
	color: #fff;
	border-radius: 5px;
}

/*kumagoro*/
#kumagoro .kv {
	background-image: url(./images/kumagoro-kv.jpg);
	overflow: hidden;
}

#kumagoro .kv header {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

#kumagoro .kv h1 {
	line-height: 1;
	margin-right: 50px;
}

#kumagoro .kv .chara {
	position: absolute;
	right: 10%;
	top: -30%;
	width: 450px;
}

#kumagoro .kv .chara img {
	width: 100%;
	height: auto;
}

#kumagoro h3 {
	font-family: 'Roboto Condensed', sans-serif;
	font-size: 30px;
	color: #292929;
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 80px;
	position: relative;
	text-align: center;
}

#kumagoro h3::after{
	content: '';
	display: block;
	position: absolute;
	bottom: -30px;
	left: 50%;
	height: 3px;
	width: 80px;
	margin-left: -40px;
	background-color: #292929;
}

#kumagoro h3 span {
	display: block;
	margin-top: 15px;
	font-family: 'Noto Sans JP Subset', sans-serif;
	font-size: 14px;
	font-weight: 500;
}

#kumagoro .desc {
	text-align: left;
	font-size: 16px;
	background-color: #fff;
	padding: 20px;
	line-height: 1.8;
	border-radius: 3px;
	position: relative;
}

#kumagoro .desc::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 99%;
	margin-top: -15px;
	border: 15px solid transparent;
	border-left: 20px solid #fff;
}

#kumagoro .desc i {
	font-weight: bold;
	color: #136736;
}

#kumagoro .manga .flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-top: 80px;
}

#kumagoro .manga .flex .unit {
	width: 20%;
	margin: 0 5% 5% 0;
}

#kumagoro .manga .flex .unit:nth-last-of-type(1),
#kumagoro .manga .flex .unit:nth-last-of-type(2),
#kumagoro .manga .flex .unit:nth-last-of-type(3),
#kumagoro .manga .flex .unit:nth-last-of-type(4) { margin-bottom: 0; }

#kumagoro .manga .flex .unit time {
	display: block;
	padding: 7px 12px;
	margin-bottom: -1px;
	border: 1px solid #060606;
	font-size: 15px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	text-align: center;
}

#kumagoro .manga .flex .unit h4 {
	text-align: center;
	font-weight: 500;
	font-size: 16px;
	background-color: #060606;
	color: #fff;
	padding: 12px 0;
}

#kumagoro .swiper-wrapper { display: block; }
#kumagoro .swiper-slide .num {
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	font-size: 18px;
	text-align: center;
	padding: 5px;
}

#kumagoro .swiper-counter {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 15px;
	font-weight: bold;
	font-family: 'Roboto Condensed', sans-serif;
	text-align: center;
	height: 50px;
	line-height: 50px;
}


#kumagoro .swiper-button-prev, #kumagoro .swiper-button-next {
	position: relative;
	margin-top: 0 !important;
	background-color: transparent !important;
	border: 0 !important;
	width: 50px !important;
	height: 50px !important;
	display: none;
}
#kumagoro .swiper-button-prev {
	left: 0 !important;
	float: left;
}
#kumagoro .swiper-button-next {
	right: 0 !important;
	float: right;
}

#kumagoro .swiper-button-prev.swiper-button-disabled, #kumagoro .swiper-button-next.swiper-button-disabled { opacity: 0; }

#kumagoro .line { margin-bottom: 120px; }
#kumagoro .line .store {
	text-align: center;
	margin-bottom: 50px;
}

#kumagoro .line .msg {
	font-size: 16px;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 50px;
}

#kumagoro .line .store a {
	display: inline-block;
	background-color: #00bd00;
	color: #fff;
	font-size: 22px;
	font-family: 'Roboto Condensed', sans-serif;
	font-weight: bold;
	padding: 15px 20px;
	border-radius: 5px;
}

#kumagoro .line ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 80%;
	margin: 0 auto 50px;
}

#kumagoro .line ul li {
	width: 18%;
	margin: 1%;
}

#kumagoro .line ul li img {
	width: 100%;
	height: auto;
}

#kumagoro .line a:hover {
	opacity: .9;
}

#kumagoro .movie { margin-bottom: 120px; }
#kumagoro .movie .title {
	text-align: center;
	font-size: 14px;
	margin: 2rem 0;
}

#kumagoro .movie dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

#kumagoro .movie dl dd {
	width: 31.3%;
	margin: 0 3% 3% 0;
}
#kumagoro .movie dl dd:nth-of-type(3n) { margin-right: 0; }

#kumagoro .sns { margin-bottom: 60px; }
#kumagoro .sns ul {
	width: 12%;
	margin: 0 auto;
}

#kumagoro .sns ul li a {
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	background-color: #136736;
	text-align: center;
	border-radius: 30px;
}

#kumagoro .sns ul li img {
	width: 50%;
}

#kumagoro .collabo .msg {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 500px;
	margin: 30px auto 0;
}
#kumagoro .collabo .msg figure img {
	width: 100%;
	height: auto;
}

#kumagoro .collabo .msg p {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	font-weight: 500;
	color: #136736;
	height: 80px;
	border: 3px solid #136736;
	padding: 0 30px;
	border-radius: 5px;
	position: relative;
	margin-left: 15px;
}

#kumagoro .collabo .msg p::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #fff;
  z-index: 2;
}

#kumagoro .collabo .msg p::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #136736;
  z-index: 1;
}


.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  transition: opacity 0.65s;
  pointer-events: none;
  opacity: 0;
  z-index: 10000;
}

.modal.isShow {
  transition: opacity 0.65s;
  pointer-events: auto;
  opacity: 1;
}

.modal sup {
  position: absolute;
  background: rgba(0, 0, 0, 0.5);
  width: 100%;
  height: 100vh;
}

.modal-inner {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 980px;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.modal .swiper-container { width: 100%; }
.modal .swiper-wrapper {
    display: flex;
}

.modal .swiper-slide {
    width: 100% !important;
    height: auto;
}

.modal .slide{
    padding-top: 50px;
    padding-bottom: 50px;
    width: 100%;
    height: 100%;
}

.modal .slide-inner {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    width: 78.37%;
}

.JS_Click_CloseModal_Trigger {
	position: absolute;
	top: 60px;
	right: 60px;
	cursor: pointer;
	z-index: 10;
}

.JS_Click_CloseModal_Trigger span {
	position: relative;
	display: inline-block;
	width: 50px;
	left: 50%;
	top: 50%;
	height: 1px;
	background-color: #ffc100;
	margin: 0 0 50px -50px;
}

.JS_Click_CloseModal_Trigger span:nth-of-type(1) {
	-webkit-transform: translateX(40%) rotate(45deg);
	transform: translateX(40%) rotate(45deg);
}

.JS_Click_CloseModal_Trigger span:nth-of-type(2) {
	-webkit-transform: translateX(40%) rotate(135deg);
	transform: translateX(40%) rotate(135deg);
}

/* ---------------------------------
*    Single
*/

#single {}

#single article {
	width: 980px;
	padding: 80px 130px 94px;
	margin: 0 auto;
	background-color: #fff;
}

#single article header {
	padding: 10px 0;
}

#single article header h1 {
	font-size: 30px;
	line-height: 1.8;
	margin: 15px 0;
	font-weight: 500;
}

#single article .the_time {
    font-family: 'Roboto Condensed', sans-serif;
    letter-spacing: 0;
    font-size: 20px;
    font-weight: bold;
    padding: 10px;
    color: #f2db31;
    text-align: center;
    background-color: #136736;
    display: inline-block;
}

#single article .meta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#single article .meta aside {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#single article .meta aside a {
	display: block;
	width: 50px;
	height: 50px;
	line-height: 50px;
	border-radius: 50%;
	margin-left: 10px;
	text-align: center;
}
#single article .meta aside a.line { background-color: #00bd00; }
#single article .meta aside a.tw { background-color: #1da1f2; }
#single article .meta aside a.fb { background-color: #1877f2; }

#single article .meta aside a img {
	width: 60%;
	height: auto;
}



#single article .content {
	margin: 50px 0 0;
}

#single article .content h1,
#single article .content h2,
#single article .content h3,
#single article .content h4,
#single article .content h5,
#single article .content h6 {
}

#single article .content h3 {
	font-size: 1.3em;
	margin-bottom: .5em;
}

#single article .content a {
	text-decoration: underline;
}

#single article .content p {
	font-size: 14px;
	margin-bottom: 15px;
	padding: initial;
	line-height: 2.2;
	word-break: break-all;
}

#single article .content strong { font-weight: 500; }

#single article .content figure {
	line-height: 1.8;
	margin-bottom: 2em;
}

#single article .content figure figcaption { text-align: center; }

#single article .content img {
	max-width: 100%;
	height: auto;
}

#single article .content .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#single article .content .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

#nav-below {
	margin: 50px 0 100px;
}

#nav-below .previous { float: left; }
#nav-below .next { float: right; }

#nav-below .previous a,
#nav-below .next a {
	position: relative;
	line-height: 1;
	display: inline-block;
	padding: 10px 8px;
	line-height: 1.5;
}

#nav-below .previous a { padding-left: 25px; }
#nav-below .next a { padding-right: 25px; }

#nav-below .previous a::after,
#nav-below .next a::after {
	position: absolute;
	top: 50%;
	width: 4px;
	height: 4px;
	content: '';
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin-top: -3px;
}

#nav-below .next a::after {
	right: 12px;
	border-top: 1px solid #636363;
	border-right: 1px solid #636363;
}

#nav-below .previous a::after {
	left: 12px;
	border-bottom: 1px solid #636363;
	border-left: 1px solid #636363;
}

/* ---------------------------------
*    Feature
*/


/* ---------------------------------
*    Footer
*/

#footer {
	position: relative;
}

#footer .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
#footer .inner img {
	max-width: 100%;
	height: auto;
	margin: 0 20px;
}

/*#footer .rocket-injection {
	position: absolute;
	top: -109px;
	right: 0;
}*/

#page-top {
	display: none;
	position: fixed;
	right: 75px;
	bottom: 0;
	z-index: 999;
}
#page-top a {
	width: 80px;
	height: 200px;
	position: relative;
	display: block;
}

#page-top a img {
	width: 100%;
	height: auto;
	position: absolute;
	cursor: pointer;
	top: 20px;

	transition: .3s;
}

#page-top a:hover img {
	top: 0;
}

/* ---------------------------------
*    Media Query
*/

@media screen and (max-width: 1024px) {
	#gdrawer nav>div { width: 35% !important; }
	#contents .inner { 
		width: 95%;
		margin: 0 auto;
	}
	.works .service>ul>li {
		min-height: auto;
		height: 30vh;
	}
	.works .service>ul>li .desc { padding: 40px; }
	.top .about>div,
	.top .recruit .points,
	.top .contact .form { width: 80%; }

}

/*@media screen and (max-width: 768px) {*/
/* 768pxまでの幅の場合に適応される */
/*}*/

/*@media( max-width:480px ){ 
/* 480pxまでの幅の場合に適応される */

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

/* ---------------------------------
*    Common
*/

html, body {
	min-width: initial;
}

#contents .inner { width: 100%; }
#footer .inner,
#header .inner {
	width: 92% !important;
	padding: 0 4%;
}

br.sp { display: block; }
#page-top { right: 12px; }
#page-top a {
	width: 35px;
	height: 66px;
}

#wrap { margin-top: 80px; }

/*header*/

#header { top: 0; }

#header,
#header>.inner {
	height: 79px;
	background-color: #f2db31;
	border-bottom: 1px solid #e1c916;
}

#mainLogo {
	left: 4%;
	display: block;
	margin-left: 0;
}

#mainLogo a {
	width: 60px;
	height: 60px;
}
#mainLogo a::after { display: none; }

/*footer*/

#footer {
	padding: 30px 0;
}

#footer .rocket-injection {
	top: -56px;
	right: -30px;
}

#footer .rocket-injection img {
	width: 120px;
	height: auto;
}

/*drawer*/

#gdrawer nav {
	display: block;
	border-bottom: 0;
}
#gdrawer nav>div { margin-left: 0 !important; }

#gdrawer-btn {
	cursor: pointer;
	height: 50px;
	width: 50px;
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 1001;
}

#gdrawer-btn span {
	background: #001358;
	display: block;
	height: 2px;
	left: 50%;
	margin: 0 0 0 -13px;
	position: absolute;
	top: 50%;
	width: 26px;
}

#gdrawer-btn span::before,
#gdrawer-btn span::after {
	background: #001358;
	content: '';
	display: block;
	height: 100%;
	left: 50%;
	margin: 0 0 0 -50%;
	position: absolute;
	width: 100%;
}

#gdrawer-btn span::before { margin-top: -8px; }
#gdrawer-btn span::after { margin-top: 8px; }

.gdrawer-show #gdrawer-btn span::after { display: none; }

.gdrawer-show span {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.gdrawer-show span::before {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	margin-top: 0 !important;
}

	.gdrawer-show #gdrawer {
		position: fixed;
		visibility: visible;
		opacity: 1;
	}

	#gdrawer {
		width: 100%;
		height: 100%;
		position: relative;
		top: 0;
		left: 0;
		z-index: 1000;
		background: #fff;
		opacity: 0;
	}

	#gdrawer-bg {
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
	}

	#gdrawer #gdrawer-content {
	    height: 100%;
	    width: 100%;
	}

	#gdrawer .gdrawer-body {
		height: 100%;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		background: url(./images/ptn-logo.png) repeat 0 0;
		background-size: 80px;
	}

#gdrawer nav {
	width: 100%;
	padding-top: 20%;
	left: 0;
	background-color: transparent;
}

#gdrawer nav::before, #gdrawer nav::after { display: none; }

#gdrawer nav>div { width: 100% !important; }

#gdrawer nav>div>ul {
	display: block;
}

#gdrawer nav>div>ul>li {
	display: block;
	text-align: center;
}
#gdrawer nav>div>ul>li>a {
	padding: 12px 0;
	display: inline-block;
	height: auto;
	line-height: 1;
	font-size: 28px;
	letter-spacing: 0;
}

#gdrawer nav>div>ul>li.current-menu-item>a::before, #gdrawer nav>div>ul>li>a:hover::before {
	top: 14px;
}

.swiper-button-prev, .swiper-button-next {
	width: 40px !important;
	height: 40px !important;
	background-size: 50%;
	margin-top: -20px !important;
}


/* ---------------------------------
*    Top
*/

.top section header {
	padding: 30px 0 50px !important;
}

.top section header h1 {
	font-size: 13px;
	margin-bottom: 5px;
	letter-spacing: 0;
}
.top section header h2 {
	font-size: 35px;
	letter-spacing: 0;
}

.top section header h2::after {
	bottom: -20px;
	width: 60px;
	margin-left: -30px;
}

.top section .more {
	padding: 30px 0 50px;
}

.top section .more a {
	font-size: 28px;
	width: 80%;
	height: 65px;
	line-height: 65px;
}

/*kv*/

.top .kv {
	height: 150px;
	background-size: cover;
}

.top .kv .catch {
	font-size: 35px;
	padding: 5%;
	letter-spacing: 0;
}

/*news*/

.top .news .inner .unit01, .top .news .inner .unit02 {
	width: 95%;
	margin: 15px auto 0;
	padding: 0;
}

.top .news .title { margin-bottom: 15px; }

.top .news .title h3 {
	font-size: 25px;
	letter-spacing: 0;
}

.top .news .title time {
	font-size: 14px;
	padding: 5px 7px;
	letter-spacing: 0;
}

.top .news .inner .unit01 dl dd {
	width: 100%;
	margin-bottom: 15px;
}

.top .news .inner .unit02 article {
	font-size: 14px;
	margin-bottom: 15px;
}

.top .news .inner .unit02 article time {
	display: block;
	height: 22px;
	line-height: 22px;
	margin: 0 0 20px 0;
	width: 80px;
}

.post-list article {
	width: 48%;
	margin-bottom: 30px;
}
.post-list article:nth-of-type(2n) { margin-right: 0; }
.post-list article:nth-of-type(odd) { margin-right: 3.5%; }

.post-list article .thumbnail { height: auto; }

.post-list article time {
	font-size: 14px;
	padding: 5px 7px;
	width: auto;
	height: auto;
	letter-spacing: 0;
}

.post-list article .desc { padding: 7px 7px 12px; }

.post-list article .desc h2 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-size: 14px;
	line-height: 1.5;
}

.post-list article .detail {
	font-size: 12px;
	padding: 7px;
}

.wp-pagenavi .page,.wp-pagenavi .current {
	width: 30px;
	height: 30px;
	line-height: 30px;
	font-size: 16px;
}

.wp-pagenavi .nextpostslink:after, .wp-pagenavi .previouspostslink:after {
	width: 10px;
	height: 10px;
	margin-bottom: 13px;
}

/*works*/

.works .list {
	width: 95%;
	margin: 0 auto;
	justify-content: space-between;
}

.works .movie dl dd {
	width: 96%;
	margin: 0 auto 5%;
}

.works .list li {
	width: 100%;
	margin: 0 0 5% 0 !important;
}

.works .list li .info {
	opacity: 1;
	position: relative;
	background-color: transparent;
	padding: 2%;
}

.works .list li .info h2 {
	font-size: 13px;
}

.works .list li .info p { font-size: 11px; line-height: 1.5; }

.works .service>ul>li {
	width: 100%;
	height: auto;
	min-height: auto;
}

.works .service>ul>li .visual,
.works .service>ul>li .desc {
	position: inherit;
	float: none !important;
	width: 100%;
	height: auto;
}

.works .service>ul>li .visual img { margin-bottom: -20%; }

.works .service>ul>li .desc {
	padding: 5% 5% 50px;
}

.works .service>ul>li .desc h4 {
	font-size: 16px;
	text-align: center;
	letter-spacing: 0;
}
.works .service>ul>li .desc h3 {
	display: block;
	text-align: center;
	font-size: 30px;
	margin-bottom: 20px;
	letter-spacing: 0;
}

.works .service>ul>li .desc h3 img { width: 180px; }

.works .service>ul>li .desc p {
	font-size: 13px;
	line-height: 1.8;
}

.works .service>ul>li .desc span {
	font-size: 18px;
	right: 50px;
	bottom: 15px;
}

.works .service>ul>li .desc span::after {
	width: 22px;
	height: 7px;
	margin-top: -5px;
}

/*about*/
.top .about { background-size: 80px; }
.top .about>div {
	width: 95%;
}

.top .about h3 {
	font-size: 25px;
	letter-spacing: 0;
}

.top .about .company .wrap {
	padding: 5%;
}
.top .about .company .wrap dl { font-size: 14px; }
.top .about .company .wrap dl dt {
	float: none;
	clear: none;
	width: 100%;
	text-align: left;
	border-bottom: 1px solid #dcc944;
}
.top .about .company .wrap dl dt::after { display: none; }

.top .about .company .wrap dl dd {
	margin-left: 0;
	line-height: 1.8;
}

/*recruit*/

.top .recruit h3 {
	font-size: 18px;
	letter-spacing: 0;
}

.top .recruit .points {
	width: 95%;
	padding: 5%;
}

.top .recruit .points dl { border-bottom: 0; }
.top .recruit .points dl dt {
	float: none;
	clear: none;
	width: 100%;
	text-align: left;
	border-bottom: 1px solid #d8d7ca;
}

.top .recruit .points dl dd {
	line-height: 1.8;
	margin-left: 0;
}


/*contact*/

.top .contact .form { width: 95%; }

.top .contact .form .subject {
	display: block;
	padding-left: 0;
	margin-bottom: 20px;
}

.top .contact .form label {
	font-size: 16px;
	margin-bottom: 10px;
}

.top .contact .form .subject label { display: block; } 

.top .contact .form .select {
	width: 100%;
}
.top .contact .form dl dt { padding: 10px 5px; }

.top .contact .form dl dd input, .top .contact .form dl dd textarea {
	font-size: 15px;
	padding: 7px;
}


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

#category .inner {
	width: 95%;
	margin: 0 auto;
	padding: 0 0 80px;
}

#category h1, .page h1 {
	font-size: 28px;
	white-space: nowrap;
	letter-spacing: 0;
}
.page h1 span { font-size: 14px; }

.page .kv {
	height: 130px;
	margin-bottom: 40px;
}

.page .kv header {
	width: 90%;
}

.page h2.ttl {
	font-size: 35px;
	margin-bottom: 50px;
}
.page h2.ttl span {
	font-size: 14px;
	margin-bottom: 15px;
	letter-spacing: .2em;
}

.page h2.ttl::after {
	width: 30px;
}

.page .contact { padding: 60px 0; }
.page .contact a {
	font-size: 28px;
	height: 65px;
	line-height: 65px;
}

/*rental-studio*/

#rental-studio .kv { margin-bottom: 0; }
#rental-studio .swiper-container { margin-bottom: 20px; }
#rental-studio h2 {
	font-size: 20px;
	margin-bottom: 40px;
}
#rental-studio h2 span { font-size: 13px; }

#rental-studio h3 {
	font-size: 20px;
	letter-spacing: 0;
}
#rental-studio h3 span { font-size: 12px; }


#rental-studio .flex .unit {
	width: 95%;
	margin: 0 auto 40px;
}
#rental-studio .flex .unit:last-of-type { margin-bottom: 0; }

#rental-studio .flex .unit .wrap {
	padding: 5%;
}

#rental-studio .flex .unit dl {
	font-size: 14px;
}
#rental-studio .flex .unit dl dd span { font-size: 20px; }

#rental-studio .flex .unit .gmap { height: auto; }
#rental-studio .flex .unit .gmap+p { font-size: 14px; }

#rental-studio .flyer {
	width: 95%;
	margin: 25px auto;
}

/*kumagoro*/

#kumagoro .kv {
	height: 180px;
	overflow: visible;
}

#kumagoro .kv header {
	position: relative;
}

#kumagoro .kv .chara {
	width: 120px;
	right: 0;
	top: 30%;
}

#kumagoro .kv h1 {
	text-align: center;
	margin: 100px 0 20px;
}

#kumagoro .kv h1 img {
	width: 120px;
	height: auto;
}

#kumagoro .desc {
	font-size: 13px;
	padding: 15px;
	background-color: #f5f3e8;
}
#kumagoro .desc::before { display: none; }

#kumagoro .manga .flex {
	display: block;
	width: 70%;
	margin: 120px auto 0;
}

#kumagoro .manga .flex .unit {
	width: 100%;
	margin: 0 0 10% !important;
}

#kumagoro h3 { font-size: 20px; }
#kumagoro h3 span { font-size: 12px; }


#kumagoro .movie { margin-bottom: 80px; }

#kumagoro .movie dl dd {
	width: 95%;
	margin: 0 auto 3%;
}

#kumagoro .line { margin-bottom: 80px; }
#kumagoro .line .msg {
	font-size: 14px;
	margin-bottom: 20px;
}

#kumagoro .line .sns ul {
	width: 100%;
	justify-content: center;
}
#kumagoro .line .sns ul li { width: auto !important; }

#kumagoro .line ul li {
	width: 48%;
	margin-bottom: 2%;
}

#kumagoro .collabo .msg {
	width: 100%;
	height: auto;
}

#kumagoro .collabo .msg figure {
	width: 25%;
	height: auto;
}

#kumagoro .collabo .msg p {
	width: 50%;
	font-size: 13px;
}

/*you-tube/owned-media*/

#you-tube .kv,
#owned-media .kv { margin-bottom: 0; }
#you-tube .list li figure,
#owned-media .list li .youtube { width: 100%; }
#you-tube .list li .info,
#owned-media .list li .info
 {
	width: 90%;
	padding: 5%;
}

#you-tube .list li .info h2,
#owned-media .list li .info h2 {
	font-size: 20px;
	margin-bottom: 1em;
}

#you-tube .list li .info p,
#owned-media .list li .info p { font-size: 14px; }

/* ---------------------------------
*    Single
*/

#single { padding-bottom: 80px; }

#single article {
	width: 92%;
	padding: 8% 4%;
}
#single article header { padding: 5px 0; }
#single article header h1 { font-size: 22px; }
#single article header .category {
	font-size: 12px;
	height: 23px;
	line-height: 24px;
}
#single article .the_time {
	font-size: 16px;
	padding: 7px;
}

#single article .meta aside a {
	width: 40px;
	height: 40px;
	line-height: 40px;
}

#nav-below { margin: 30px 0 0; }
#nav-below .previous { margin-bottom: 10px; }


/* ---------------------------------
*    Feature
*/


}

@media( max-width:320px ){ 
	#mainLogo { left: 5px; }
	#gdrawer-btn {
		right: 0;
		width: 40px;
	}
	#gdrawer-btn span { width: 26px; margin-left: -13px; }
}

/* Retina Display ----------- */

@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) {
}
