/*   
Theme Name: Point Pictures Inc. Original style
Theme URI: 
Description: A original theme to Point Pictures Inc.
Author: Masayuki Kawakubo
Author URI: http://knight-dl.jp
Version: 1.2

*/

@charset "UTF-8";
 //*   

1. INITIAL

*/

/* ---------------------------------------------------------------------------------------- */
/* INITIAL
/* ---------------------------------------------------------------------------------------- */

* {
-webkit-touch-callout:none;
-webkit-tap-highlight-color:rgba(0,0,0,0);
-webkit-text-size-adjust:none;
}
* {
	padding: 0;
	margin: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	overflow: scroll-y;
}
::before, ::after {
	box-sizing: inherit;
	text-decoration: inherit;
	vertical-align: inherit;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
hr {
	overflow: visible;
}
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
	display: block;
}
small {
	font-size: 80%;
}
[hidden], template {
	display: none;
}
abbr[title] {
	border-bottom: 1px dotted;
	text-decoration: none;
}
a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}
a:active, a:hover {
	outline-width: 0;
}
h1, h2, h3, h4, h5, h6, p, li, dt, dd {
	font-size: 1em;
	font-weight: normal;
}
code, kbd, pre, samp {
	font-family: monospace, monospace;
}
b, strong {
	font-weight: bolder;
}
dfn {
	font-style: italic;
}
mark {
	background-color: #ff0;
	color: #000;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub {
	bottom: -0.25em;
}
sup {
	top: -0.5em;
}
/* Forms
/* ---------------------------------------------------------------------------------------- */
input {
	border-radius: 0;
}
[type="number"] {
	width: auto;
}
[type="search"] {
	-webkit-appearance: textfield;
}
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
-webkit-appearance:none;
}
textarea {
	overflow: auto;
	resize: vertical;
}
button, input, optgroup, select, textarea {
	font: inherit;
}
optgroup {
	font-weight: bold;
}
button {
	overflow: visible;
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
border-style:0;
padding:0;
}
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
outline:1px dotted ButtonText;
}
button, html [type="button"], [type="reset"], [type="submit"] {
	-webkit-appearance: button;
}
button, select {
	text-transform: none;
}
button, input, select, textarea {
	background-color: transparent;
	border-style: none;
	color: inherit;
}
select {
	-moz-appearance: none;
	-webkit-appearance: none;
}
select::-ms-expand {
display:none;
}
select::-ms-value {
color:currentColor;
}
legend {
	border: 0;
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal;
}
::-webkit-file-upload-button {
-webkit-appearance:button;
font:inherit;
}
::-webkit-input-placeholder {
color:inherit;
opacity:.5;
}
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
/* Specify media element style
/* ---------------------------------------------------------------------------------------- */
img {
	border-style: none;
	vertical-align: bottom;
}
progress {
	vertical-align: baseline;
}
svg:not(:root) {
	overflow: hidden;
}
audio, canvas, progress, video {
	display: inline-block;
}

/* Acessibility
/* ---------------------------------------------------------------------------------------- */
@media screen {
[hidden~="screen"] {
	display: inherit;
}
[hidden~="screen"]:not(:active):not(:focus):not(:target) {
	position: absolute !important;
	clip: rect(0 0 0 0) !important;
}
}
[aria-busy="true"] {
	cursor: progress;
}
[aria-controls] {
	cursor: pointer;
}
[aria-disabled] {
	cursor: default;
}

/* Selection
/* ---------------------------------------------------------------------------------------- */

::-moz-selection {
background-color:#000;
color:#fff;
text-shadow:none;
}
::selection {
	background-color: #000;
	color: #fff;
	text-shadow: none;
}
/* ---------------------------------------------------------------------------------------- */
/* COMMON
/* ---------------------------------------------------------------------------------------- */

html {
	height: 100%;
	font-size: 50%;
}
body {
	font-size: 1em;
	line-height: 1.7;
	font-family: "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #44AD00;
	text-align: center;
}
.anime {
	transition: all .3s ease-in-out;
}
.flt-R {
	float: right;
}
.flt-L {
	float: left;
}
.flt-C {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.tb-L {
	margin-left: 0;
	margin-right: auto;
	text-align: left;
}
.tb-R {
	margin-right: 0;
	margin-left: auto;
	text-align: right;
}
.clr-L {
	clear: left;
}
.clr-R {
	clear: right;
}
.clr-B {
	clear: both;
}
.aln-R {
	text-align: right;
}
.aln-C {
	text-align: center;
}
.aln-L {
	text-align: left;
}
.noshow {
	display: none;
}
.clearfix:after, .row:after {
	content: ' ';
	display: block;
	clear: both;
}
.clear {
	clear: both;
	visibility: hidden;
	width: 0;
	height: 0;
}
.border-box {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.linkbox .readmore, .lkbx .readmore {
	display: none;
}
img {
	max-width: 100%;
	height: auto;
}
.only480, .only320 {
	display: none;
}
.onlySMP {
	display: none;
}
.onlyPC, .noSMP {
	display: inherit;
}
.notice {
	font-weight: bold;
}
h1, h2, h3 {
	color: #4BCC00;
	line-height: 1.5;
}
h1 {
	font-size: 5em;
	line-height: 1.2;
	font-family: 'notoLight', sans-serif;
}
h2 {
	font-size: 2.5em;
}
h3 {
	font-size: 2.25em;
	font-weight: bold;
}
h4 {
	font-size: 2.15em;
}
h5, h6, p, li, dt, dd, th, td {
	font-size: 2em;
}
dt li, dd li, th li, td li {
	font-size: 1em;
}
p {
	line-height: 1.9;
}
p + h3, p + h4, p + p {
	margin-top: 1.5em;
}
p + p.fntS {
	margin-top: 0;
}
* + .fntMS {
	margin-top: .5em;
}
.fntM {
	font-size: 1.8em;
	line-height: 1.8;
}
.fntS {
	font-size: 0.83em;
	line-height: 1.5;
}
.fntL {
	font-size: 1.25em;
}
.fntBold {
	font-weight: bold;
}
.clr-gr {
	color: #555;
}
p.fntMS {
	font-size: 1.75em;
	line-height: 1.5;
}
.asterisk {
	display: block;
	text-indent: -1em;
	margin-left: 1em;
}
a {
	color: #338200;
	text-decoration: none;
	transition: all .3s ease-in-out;
}
a:active, a:hover {
	color: #AEEA88;
}
dt, dd, li, th, td {
}
nav ol, nav ul {
	list-style: none;
}
.list-norm {
	margin-left: 2.5em;
}
.list-norm.wide-space {
  margin-bottom: 2.25em;
}
ol.list-norm {
	list-style: decimal;
}
ul.list-norm {
	list-style: circle;
}
.list-norm li {
	margin-bottom: .25em;
}
.list-norm.wide-space li {
	margin-bottom: 1em;
}
.list-norm li:last-child {
	margin-bottom: 0;
}
ul + h3, ul + h4, ul + h5, ul + h6, ul + p, ul + dl, ul + ul {
	margin-top: 2em;
}
.dl-flt {
	overflow: hidden;
}
.dl-flt dt {
	float: left;
	margin-top: 1em;
	width: 10em;
}
.dl-flt dd {
	margin-left: 10em;
	margin-top: 1em;
}
.dl-flt dt:nth-of-type(1), .dl-flt dd:nth-of-type(1) {
	margin-top: 0;
}
table {
	border-collapse: collapse;
}
.tb-norm, .tb-no-border {
	position: relative;
	margin-bottom: 1em;
}
.tb-norm.no-table-sp {
}
.tb-norm thead {
}
.tb-norm tbody {
}
.tb-norm th, .tb-norm td {
	padding: 1em;
	border: 1px solid #DDD;
	vertical-align: top;
}
.tb-norm thead th {
	background-color: #EEE;
}
.tb-norm tbody th {
	background-color: #F5F5F5;
}
.tb-norm.border-top-only th, .tb-norm.border-top-only td {
	padding: 1em 0;
	border: none;
	border-top: 1px solid #CCC;
}
.tb-norm.border-top-only thead th {
	background: none;
}
.tb-norm.border-top-only tbody th {
	background: none;
}
.inner-wrap {
	position: relative;
	max-width: 1200px;
	padding-left: 15em;
	padding-right: 15em;
	margin: 0 auto;
	text-align: left;
}
.inner-wrap.aln-C {
	text-align: center;
}
.inner-wrap.narrow-width {
	max-width: 960px;
}
.inner-wrap.thin-width {
	max-width: 740px;
}
.inner-wrap.fullW {
	max-width: none;
}
#Mask-cnt {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #4BCC00;
	z-index: 599;
}
#Bg-modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	z-index: 800;
	opacity: 0;
	cursor: pointer;
}
#Btn-close-modal {
	position: absolute;
	top: -64px;
	right: 0;
	margin-left: -20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	border: 1px solid #FFF;
	background-color: rgba(0,0,0,.2);
	background-repeat: no-repeat;
	background-position: center;
	background-image: url(assets/img/common/btn-close.svg);
	cursor: pointer;
	transition: all .3s ease-in-out;
	opacity: .4;
	-webkit-background-size: 40px 40px;
	-moz-background-size: 40px 40px;
	-ms-background-size: 40px 40px;
	background-size: 40px 40px;
}
#Btn-close-modal:hover {
	opacity: .8;
}
.ball {
	position: fixed;
	top: 50%;
	left: 50%;
	background-color: #4BCC00;
	z-index: 601;
}
.ball.zoom {
	-webkit-animation: bounce .3s ease-in-out forwards;
	animation: bounce .3s ease-in-out forwards;
}
@keyframes bounce {
 0% {
transform:scale(0.0);
opacity:0;
}
 100% {
transform:scale(1.0);
opacity:1;
}
}
@-webkit-keyframes bounce {
 0% {
transform:scale(0.0);
opacity:0;
}
 100% {
transform:scale(1.0);
opacity:1;
}
}
.ball.zoomOut {
	-webkit-animation: ballZoomOut 3s ease-in-out forwards;
	animation: ballZoomOut 3s ease-in-out forwards;
}
@keyframes ballZoomOut {
 0% {
transform:scale(1);
background-color:#4BCC00;
}
 100% {
transform:scale(0);
background-color:#FFF;
}
}
@-webkit-keyframes ballZoomOut {
 0% {
transform:scale(1);
background-color:#4BCC00;
}
 100% {
transform:scale(0);
background-color:#FFF;
}
}
/* ---------------------------------------------------------------------------------------- */
/* PRELOADER
/* ---------------------------------------------------------------------------------------- */

#Preloader {
	position: fixed;
	top: 40vh;
	left: 0;
	width: 100%;
	height: 0;
	z-index: 700;
}
#Preloader .logo {
	position: absolute;
	top: -94px;
	left: 110%;
	margin-left: -47px;
	width: 94px;
	height: 94px;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(assets/img/header/logo-large-white.png);
	-webkit-background-size: 94px 94px;
	-moz-background-size: 94px 94px;
	-ms-background-size: 94px 94px;
	background-size: 94px 94px;
}

@media all and (-webkit-min-device-pixel-ratio : 1.5) {
background-image:url(assets/img/header/logo-large-white@2x.png);
}
#Preloader .line {
	position: absolute;
	top: 0;
	right: 0;
	width: 0;
	height: 0;
	border-top: 1px solid #AEEA88;
}
.shake-logo {
	-webkit-animation: shake .3s cubic-bezier(.36, .07, .19, .97) both;
	animation: shake .3s cubic-bezier(.36, .07, .19, .97) both;
}
 @keyframes shake {
0% {
transform: translate(2px, 1px) rotate(0deg);
}
10% {
transform: translate(-1px, -2px) rotate(-1deg);
}
20% {
transform: translate(-2px, 0px) rotate(1deg);
}
30% {
transform: translate(0px, 1px) rotate(0deg);
}
40% {
transform: translate(1px, -1px) rotate(1deg);
}
50% {
transform: translate(-1px, 2px) rotate(-1deg);
}
60% {
transform: translate(-2px, 1px) rotate(0deg);
}
70% {
transform: translate(2px, 1px) rotate(-1deg);
}
80% {
transform: translate(-1px, -1px) rotate(1deg);
}
90% {
transform: translate(1px, 1px) rotate(0deg);
}
100% {
transform: translate(0, 0) rotate(0deg);
}
}
@-webkit-keyframes shake {
0% {
transform: translate(2px, 1px) rotate(0deg);
}
10% {
transform: translate(-1px, -2px) rotate(-1deg);
}
20% {
transform: translate(-2px, 0px) rotate(1deg);
}
30% {
transform: translate(0px, 1px) rotate(0deg);
}
40% {
transform: translate(1px, -1px) rotate(1deg);
}
50% {
transform: translate(-1px, 2px) rotate(-1deg);
}
60% {
transform: translate(-2px, 1px) rotate(0deg);
}
70% {
transform: translate(2px, 1px) rotate(-1deg);
}
80% {
transform: translate(-1px, -1px) rotate(1deg);
}
90% {
transform: translate(1px, 1px) rotate(0deg);
}
100% {
transform: translate(0, 0) rotate(0deg);
}
}
/* ---------------------------------------------------------------------------------------- */
/* GLOBAL-HEADER
/* ---------------------------------------------------------------------------------------- */

#Global-header {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 5em 5em 0;
	z-index: 10;
}
#Global-header h1 {
	position: relative;
	font-size: 1px;
	line-height: 1;
}
#Global-header h1 a {
	position: relative;
	width: 204px;
	height: 34px;
	display: block;
}
#Global-header h1 span {
	position: absolute;
}
#Global-header h1 span img {
	width: 100%;
	height: auto;
}
#Global-header h1 .logo {
	left: 0;
	top: 0;
	width: 34px;
	height: 34px;
}
#Global-header h1 .title {
	left: 44px;
	top: 9px;
	width: 160px;
	height: 16px;
}
#Trigger {
	position: fixed;
	top: 3em;
	right: 3em;
	width: 48px;
	height: 48px;
	z-index: 599;
	cursor: pointer;
	display: block;
	background-color: #4BCC00;
}
#page-home #Trigger {
	background-color: #F0F0F0;
}
#Trigger .txt {
	position: absolute;
	bottom: 4px;
	left: 0;
	width: 100%;
	text-align: center;
	font-family: 'LatoWeb', sans-serif;
	color: #FFF;
	line-height: 1;
}
#page-home #Trigger .txt {
	color: #4BCC00;
}
#Trigger .bar {
	position: absolute;
	top: 12px;
	left: 12px;
	width: 24px;
	height: 15px;
}
#Trigger .bar span, #Trigger .bar:before, #Trigger .bar:after {
	position: absolute;
	height: 0;
	border-top: 1px solid #FFF;
	transition: all .3s ease-in-out;
}
#page-home #Trigger .bar span, #page-home #Trigger .bar:before, #page-home #Trigger .bar:after {
	border-color: #4BCC00;
}
#Trigger .bar span {
	top: 7px;
	left: 0;
	width: 20px;
	-webkit-animation: barGrowFirstA .3s forwards;
	animation: barGrowFirstA .3s forwards;
}
#Trigger .bar:before {
	top: 0;
	left: 0;
	width: 24px;
	content: ' ';
	-webkit-animation: barGrowFirstB .3s forwards;
	animation: barGrowFirstB .3s forwards;
}
#Trigger .bar:after {
	bottom: 0;
	left: 0;
	width: 15px;
	content: ' ';
	-webkit-animation: barGrowFirstC .3s forwards;
	animation: barGrowFirstC .3s forwards;
}
#Trigger:hover .bar span {
	-webkit-animation: barGrowA .2s forwards;
	animation: barGrowA .2s forwards;
}
#Trigger:hover .bar:before {
	-webkit-animation: barGrowB .2s forwards;
	animation: barGrowB .2s forwards;
}
#Trigger:hover .bar:after {
	-webkit-animation: barGrowC .2s forwards;
	animation: barGrowC .2s forwards;
}
 @keyframes barGrowFirstA {
0% {
width:24px;
}
100% {
width:20px;
}
}
@keyframes barGrowFirstB {
0% {
width:24px;
}
100% {
width:24px;
}
}
@keyframes barGrowFirstC {
0% {
width:24px;
}
100% {
width:15px;
}
}
@-webkit-keyframes barGrowFirstA {
0% {
width:24px;
}
100% {
width:20px;
}
}
@-webkit-keyframes barGrowFirstB {
0% {
width:24px;
}
100% {
width:24px;
}
}
@-webkit-keyframes barGrowFirstC {
0% {
width:24px;
}
100% {
width:15px;
}
}
 @keyframes barGrowA {
0% {
width:20px;
}
100% {
width:24px;
}
}
@keyframes barGrowB {
0% {
width:24px;
}
100% {
width:24px;
}
}
@keyframes barGrowC {
0% {
width:15px;
}
100% {
width:24px;
}
}
@-webkit-keyframes barGrowA {
0% {
width:20px;
}
100% {
width:24px;
}
}
@-webkit-keyframes barGrowB {
0% {
width:24px;
}
100% {
width:24px;
}
}
@-webkit-keyframes barGrowC {
0% {
width:15px;
}
100% {
width:24px;
}
}
#Btn-top {
	position: fixed;
	bottom: 3em;
	right: 3em;
	width: 48px;
	height: 48px;
	z-index: 598;
	cursor: pointer;
	display: block;
	background-color: #4BCC00;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url(assets/img/common/arrow-top.svg);
	-webkit-background-size: 48px 48px;
	-moz-background-size: 48px 48px;
	-ms-background-size: 48px 48px;
	background-size: 48px 48px;
}
/* ---------------------------------------------------------------------------------------- */
/* GLOBAL-NAVIGATION
/* ---------------------------------------------------------------------------------------- */

#Global-navigation {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 12em;
	background-color: rgba(255,255,255,.9);
	z-index: 599;
	display: none;
}
#Global-navigation .btn-close {
	position: absolute;
	top: 3em;
	right: 3em;
	width: 48px;
	height: 48px;
	z-index: 599;
	cursor: pointer;
	display: block;
	background-color: #4BCC00;
	transition: all .3s ease-in-out;
}
#page-home #Global-navigation .btn-close {
	background-color: #F0F0F0;
}
#Global-navigation .btn-close .txt {
	position: absolute;
	bottom: 4px;
	left: 0;
	width: 100%;
	text-align: center;
	font-family: 'LatoWeb', sans-serif;
	color: #FFF;
	line-height: 1;
}
#page-home #Global-navigation .btn-close .txt {
	color: #4BCC00;
}
#Global-navigation .btn-close .bar {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -4px;
	width: 0;
	height: 0;
}
#Global-navigation .btn-close .bar span, #Global-navigation .btn-close .bar:before {
	position: absolute;
	height: 0;
	border-top: 1px solid #FFF;
	transition: all .3s ease-in-out;
}
#Global-navigation .btn-close .bar span {
	top: 0;
	left: 0;
	margin-left: -12px;
	width: 24px;
	transform: rotate(-45deg);
}
#Global-navigation .btn-close .bar:before {
	top: 0;
	left: 0;
	margin-left: -12px;
	width: 24px;
	transform: rotate(45deg);
	content: ' ';
}
#page-home #Global-navigation .btn-close .bar span, #page-home #Global-navigation .btn-close .bar:before {
	border-color: #4BCC00;
}
#Global-navigation .btn-close:hover {
	opacity: .7;
}
#Global-navigation .wrap-nav-block {
	position: relative;
	max-width: 1080px;
	margin: 0 auto;
	padding-left: 9em;
	padding-right: 9em;
}
#Global-navigation .wrap-nav-block p.link-home {
	margin-bottom: 2em;
	font-size: 2em;
	font-weight: bold;
}
#Global-navigation .nav-block {
	position: relative;
	float: left;
	width: 50%;
}
#Global-navigation .nav-block h3 {
	margin-bottom: 1em;
}
#Global-navigation ul {
	letter-spacing: -.4em;
}
#Global-navigation ul li {
	position: relative;
	display: inline-block;
	letter-spacing: normal;
	line-height: 1.4;
	width: 50%;
	vertical-align: top;
	margin-bottom: 1em;
}
#Global-navigation ul li:after {
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -12px;
	width: 24px;
	height: 0;
	border-top: 1px solid #AEEA88;
	content: ' ';
}
#Global-navigation ul li a {
	display: block;
	padding: .5em 1em 1em;
}
/* ---------------------------------------------------------------------------------------- */
/* GLOBAL-FOOTER
/* ---------------------------------------------------------------------------------------- */

#Global-footer {
	position: relative;
	z-index: 1;
	padding: 6em;
}
#page-home #Global-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
}
#Global-footer .copyright {
	font-size: 1.5em;
	line-height: 1.4;
	letter-spacing: .075em;
	font-family: 'LatoWeb', sans-serif;
	color: #333;
}
/* ---------------------------------------------------------------------------------------- */
/* CONTENT
/*
/* GREEN (DARKEST)              #338200
/* GREEN (DARKER)                #44AD00
/* GREEN (BASE-COLOR)          #4BCC00
/* GREEN (LIGHTER)               #AEEA88
/* 
/* ---------------------------------------------------------------------------------------- */

body {
	background-color: #FFF;
}
.border-left, .border-right, .border-top, .border-bottom {
	position: fixed;
	background-color: #4BCC00;
	z-index: 600;
}
#page-home .border-left, #page-home .border-right, #page-home .border-top, #page-home .border-bottom {
	background-color: #f0f0f0;
}
.border-left {
	top: 0;
	left: 0;
	width: 3em;
	height: 100%;
}
.border-right {
	top: 0;
	right: 0;
	width: 3em;
	height: 100%;
}
.border-top {
	top: 0;
	left: 0;
	height: 3em;
	width: 100%;
}
.border-bottom {
	bottom: 0;
	left: 0;
	height: 3em;
	width: 100%;
}
.atl-norm {
	position: relative;
	text-align: left;
	margin-bottom: 6em;
}
.corner-header {
	position: relative;
	width: 100%;
	text-align: center;
	padding: 186px 0 5em;
}
.page-samplemovie .corner-header {
	padding-bottom: 8em;
}
.corner-header:before {
	position: absolute;
	top: -300px;
	left: 50%;
	content: ' ';
	width: 0;
	height: 170px;
	border-left: 1px solid #4BCC00;
	transition: all .5s ease-in-out;
}
.corner-header.loaded:before {
	top: 0;
}
.corner-header h1 {
	letter-spacing: -.05em;
	opacity: 0;
}
.corner-header h1.double-line {
	line-height: 1;
}
.corner-header h1 span {
	font-size: .625em;
}
.corner-header h1 span.recruiting {
	font-size: .5em;
}
.corner-header h1 span.en {
	font-family: 'LatoWeb', sans-serif;
	letter-spacing: .1em;
	font-size: .7em;
}
.corner-header .icon {
	position: absolute;
	top: 170px;
	left: 50%;
	margin-top: -48px;
	margin-left: 24px;
	width: 48px;
	height: 48px;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0;
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-ms-background-size: 100% auto;
	background-size: 100% auto;
}
.page-intro .corner-header .icon {
	background-image: url(assets/img/icons/i-time.svg);
}
.page-news .corner-header .icon {
	background-image: url(assets/img/icons/i-news.svg);
}
.page-about .corner-header .icon {
	background-image: url(assets/img/icons/i-company.svg);
}
.page-organization .corner-header .icon {
	background-image: url(assets/img/icons/i-company.svg);
}
.page-pastwork .corner-header .icon {
	background-image: url(assets/img/icons/i-pastwork.svg);
}
.page-recruiting .corner-header .icon,
[class^="page-job0"] .corner-header .icon{
	background-image: url(assets/img/icons/i-recruit.svg);
}
.page-access .corner-header .icon {
	background-image: url(assets/img/icons/i-access.svg);
}
.page-shop .corner-header .icon {
	background-image: url(assets/img/icons/i-shop.svg);
}
.page-animation .corner-header .icon, .page-cg .corner-header .icon, .page-other .corner-header .icon, .page-samplemovie .corner-header .icon {
	background-image: url(assets/img/icons/i-film.svg);
}
#Page-container .content {
	opacity: 0;
}
.scn-norm {
	position: relative;
}
.scn-norm.thin-width {
	max-width: 740px;
	margin-left: auto;
	margin-right: auto;
}
.scn-norm + section {
	margin-top: 6em;
}
.scn-norm + .wide-mgn {
	margin-top: 8em;
}
.scn-norm + aside {
	margin-top: 3em;
}
.scn-norm.with-left-border {
}
.scn-norm.with-left-border + section {
	padding-top: 6em;
	margin-top: 0;
}
.scn-norm.with-left-border:before {
	position: absolute;
	top: 0;
	left: -24px;
	content: ' ';
	width: 0;
	height: 100%;
	border-left: 1px solid #4BCC00;
}
.scn-norm.with-left-border.first-scn:before {
	top: 1.25em;
}
.scn-norm.with-left-border.last-scn:before {
	height: 7.25em;
}
.scn-norm h2 {
	position: relative;
	margin-bottom: 1em;
}
.scn-norm.with-left-border h2:before {
	position: absolute;
	top: .5em;
	left: -24px;
	margin-left: -4px;
	content: ' ';
	width: 9px;
	height: 9px;
	background-color: #4BCC00;
	border-radius: 4.5px;
}
.fig-under-construction {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.fig-under-construction img {
	max-width: 200px;
	height: auto;
}
h3.with-border {
	border-bottom: 1px dotted #4BCC00;
	padding-bottom: .5em;
	margin-bottom: 1em;
}
#Modal {
	position: fixed;
	top: 50%;
	left: 50%;
	background-color: #FFF;
	box-shadow: 0 0 5px rgba(0,0,0,.8);
	z-index: 801;
	animation: modalSlideIn .3s forwards;
	-webkit-animation: modalSlideIn .3s forwards;
}
@keyframes modalSlideIn {
0% {
top:150%;
}
100% {
top:50%;
}
}
@-webkit-keyframes modalSlideIn {
0% {
top:150%;
}
100% {
top:50%;
}
}
.vd-area {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	background-color: #000;
}
.vd-area iframe, .vd-area #vd-mpg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.atl-error {
	position: relative;
	padding: 30vh 0;
	text-align: center;
}
.atl-error > div {
	font-family: 'LatoWebLight', sans-serif;
	font-size: 8em;
	line-height: 1;
	margin-bottom: 24px;
}
.atl-error a {
	font-family: 'LatoWeBold', sans-serif;
}
#Local-navigation {
	position: relative;
	text-align: left;
	margin-bottom: 4em;
}
#Local-navigation ul {
	letter-spacing: -.4em;
}
#Local-navigation li {
	position: relative;
	letter-spacing: normal;
	vertical-align: top;
	text-align: center;
	display: inline-block;
	width: 33.33333333%;
	padding: 0 16px 16px;
	font-size: 1.85em;
	line-height: 1.4;
}
#Local-navigation li.dLine {
}
#Local-navigation li a {
	position: relative;
	display: block;
	padding-bottom: 12px;
}
#Local-navigation li a:before {
	position: absolute;
	top: -12px;
	left: 50%;
	margin-left: -4px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #FFF;
	border: 1px solid #4BCC00;
	overflow: hidden;
	content: ' ';
}
.page-recruiting #Local-navigation {
}
/* ---------------------------------------------------------------------------------------- */
/* HOME
/* ---------------------------------------------------------------------------------------- */

.bg-green {
	position: absolute;
	top: 40vh;
	left: 0;
	width: 100%;
	height: 60vh;
	background-color: #4BCC00;
	z-index: 0;
}
#Home-header {
	position: absolute;
	top: 40vh;
	left: 0;
	width: 100%;
	z-index: 10;
	background-color: #DDD;
}
#Home-header .logo-lrg {
	position: absolute;
	top: -94px;
	left: 50%;
	margin-left: -47px;
	width: 94px;
	height: 94px;
}
#Home-header .title-lrg {
	position: absolute;
	top: 16px;
	left: 50%;
	margin-left: -93px;
	width: 186px;
	height: 20px;
}
.tilt-title {
	animation: tilt .4s cubic-bezier(.36, .07, .19, .97) both;
	-webkit-animation: tilt .4s cubic-bezier(.36, .07, .19, .97) both;
}
 @keyframes tilt {
0% {
transform: translate(2px, 1px) rotate(0deg);
}
100% {
transform: translate(0, 0) rotate(30deg);
}
}
@-webkit-keyframes tilt {
0% {
transform: translate(2px, 1px) rotate(0deg);
}
100% {
transform: translate(0, 0) rotate(30deg);
}
}
.home-nav {
	position: relative;
	float: left;
	width: 50%;
	padding: 40vh 0 0;
	margin-top: -6em;
	z-index: 2;
}
.home-nav h2 {
	font-size: 4em;
	line-height: 1;
	color: #4BCC00;
}
.home-nav nav {
	text-align: left;
	margin-top: 4.5em;
	width: 100%;
	padding-left: 50%;
	margin-left: -7em;
}
.home-nav.biz nav {
}
.home-nav nav ul {
}
.home-nav nav li {
	line-height: 1.4;
}
.home-nav nav li a {
	color: #FFF;
	font-weight: bold;
	display: inline-block;
	padding: .5em 0 1em;
	width: 12em;
}
.home-nav nav li a:hover {
	color: #000;
}
.headline-home {
	position: absolute;
	top: -50px;
	left: 50%;
	z-index: 11;
	transform: scale(0);
}
.headline-home.show-headline {
	animation: headlinePop .2s forwards;
	-webkit-animation: headlinePop .2s forwards;
}
@keyframes headlinePop {
0% {
transform:scale(0);
}
100% {
transform:scale(1);
}
}
@-webkit-keyframes headlinePop {
0% {
transform:scale(0);
}
100% {
transform:scale(1);
}
}
.headline-home dl {
	position: absolute;
	bottom: 0;
	left: 50%;
	margin-left: -250px;
	width: 500px;
	padding: 16px;
	background-color: #F5F5F5;
	border-radius: 8px;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.headline-home dl:after {
	position: absolute;
	bottom: -20px;
	left: 50%;
	margin-left: -10px;
	content: ' ';
	border: 10px solid transparent;
	border-top-color: #F5F5F5;
}
.headline-home dt {
	font-family: 'LatoWebMedium', sans-serif;
	color: #555;
}
.headline-home dd {
}
.headline-home dd a {
	color: #333;
}
.headline-home dd a:hover {
	color: #999;
}
/* ---------------------------------------------------------------------------------------- */
/* INTRO
/* ---------------------------------------------------------------------------------------- */

.scn-intro {
	background-repeat: no-repeat;
	background-position: right 6em;
	-webkit-background-size: 72px 40px;
	-moz-background-size: 72px 40px;
	-ms-background-size: 72px 40px;
	background-size: 72px 40px;
}
.scn-intro#Scn1 {
	background-image: url(assets/img/intro/sec-0.svg);
	background-position: right 2em;
}
.scn-intro#Scn2 {
	background-image: url(assets/img/intro/sec-15.svg);
}
.scn-intro#Scn3 {
	background-image: url(assets/img/intro/sec-30.svg);
}
.scn-intro#Scn4 {
	background-image: url(assets/img/intro/sec-45.svg);
}
.mgn-top {
	margin-top: 1em;
	display: block;
}
.btn-norm {
	position: relative;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	font-size: .92em;
	line-height: 1;
	font-weight: bold;
	padding: .5em 1em;
	display: inline-block;
}
.btn-norm:hover {
	background-color: #4BCC00;
	color: #FFF;
}
/* ---------------------------------------------------------------------------------------- */
/* ABOUT
/* ---------------------------------------------------------------------------------------- */

.list-client {
	letter-spacing: -.4em;
	text-align: center;
	margin-bottom: -.5em;
}
.list-client li {
	letter-spacing: normal;
	display: inline-block;
	margin: .5em 1em;
}
.list-client + p {
	margin-top: 0;
}
.chart-org {
	position: relative;
	border: 1px dotted #b9f398;
	padding: 1em;
	margin: 1em auto 0;
	max-width: 800px;
}
/* ---------------------------------------------------------------------------------------- */
/* ACCESS
/* ---------------------------------------------------------------------------------------- */

.wrap-half {
	position: relative;
	margin: 0 -3em;
	overflow: hidden;
}
.inner-half {
	float: left;
	width: 50%;
	padding: 0 3em;
}
.scn-norm.with-map {
	padding-bottom: 5em;
	border-bottom: 1px dotted #BBB;
}
#map-canvas {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: hidden;
	margin-top: 3em;
}
#map-canvas iframe, #map-canvas object, #map-canvas embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* ---------------------------------------------------------------------------------------- */
/* RECRUITMENT
/* ---------------------------------------------------------------------------------------- */

.first-copy {
  position: relative;
	text-align: center;
	font-size: 1.85em;
	line-height: 1.6;
	margin-bottom: 1.5em;
}
@media only screen and (min-width:602px){
.first-copy {
	font-size: 2em;
	margin-bottom: 2em;
}
}
@media only screen and (min-width:851px){
.first-copy {
	font-size: 2.5em;
	margin-bottom: 2em;
}
}

#Recruit-type {
	position: relative;
	margin-bottom: 1em;
}
#Recruit-type.recruit-type-ft {
margin-top: 5em;
}
@media only screen and (min-width:851px){
#Recruit-type.recruit-type-ft {
margin-top: 7em;
}
}
#Recruit-type ul {
  margin: 0 -.5rem;
	letter-spacing: -.4em;
	overflow: hidden;
}
#Recruit-type li {
  position: relative;
	letter-spacing: 0;
	display: inline-block;
  width: 100%;
	padding: .5rem;
	margin: 0!important;
	vertical-align: top;
}
.wrap-backto-recruit-top {
  position: relative;
  margin-top: 20rem;
  text-align: center;
}
#Recruit-type li a,
.backto-recruit-top {
  position: relative;
  display: block;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	line-height: 1.5;
	text-align: center;
	width: 100%;
	min-height: 4em;
}
.backto-recruit-top {
  /*max-width: 20em;*/
  margin: 0 auto;
}
#Recruit-type li a:hover,
.backto-recruit-top:hover {
	background-color: #4BCC00;
	color: #FFF;
}
#Recruit-type li span,
.backto-recruit-top span {
  position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 0 1em;
	text-align: center;
	font-size: .875em;
	font-weight: bold;
	transform: translateY(-50%);
}
@media only screen and (min-width:350px){
#Recruit-type li {
  width: 50%;
}
.backto-recruit-top {
  max-width: none;
}
.backto-recruit-top span {
	font-size: 1em;
}
.wrap-backto-recruit-top {
  margin-top: 4rem;
}
}
@media only screen and (min-width:480px){
#Recruit-type ul {
  margin: 0 -1rem;
}
#Recruit-type li {
	padding: 1rem;
}

}
@media only screen and (min-width:602px){
#Recruit-type ul {
  margin: 0 -1.25rem;
}
#Recruit-type li {
	padding: 1.25rem;
}
#Recruit-type li a {
	min-height: 5em;
}
#Recruit-type li span,
.backto-recruit-top span {
	font-size: .92em;
}
.backto-recruit-top {
  max-width: 15em;
}
.wrap-backto-recruit-top {
  margin-top: 8rem;
}
}
@media only screen and (min-width:851px){
#Recruit-type ul {
  margin: 0 -1.75rem;
}
#Recruit-type li {
  width: 33.33333333%;
	padding: 1.75rem;
}
}
@media only screen and (min-width:960px){
#Recruit-type ul {
  margin: 0 -2rem;
}
#Recruit-type li {
	padding: 2rem;
}
}
@media only screen and (min-width:1200px){
#Recruit-type ul {
  margin: 0 -2.25rem;
}
#Recruit-type li {
	padding: 2.25rem;
}
}

#Modal-benefit {
  position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 599;
	background-color: rgba(255,255,255,.95);
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	display: none;
	margin: 0!important;
	padding: 1em;
}
@media only screen and (min-width:602px){
#Modal-benefit {
	padding: 2em;
}
}
@media only screen and (min-width:851px){
#Modal-benefit {
	padding: 3em;
}
}
#Modal-benefit .inner {
  position: relative;
	max-width: 1024px;
	margin: 0 auto;
	padding: 8em 1em 4em;
}
#Modal-benefit h2 {
  text-align: center;
	font-size: 2.5em;
	padding: 0!important;
	margin: 0 auto 2em!important;
}
@media only screen and (min-width:602px){
#Modal-benefit .inner {
	padding: 8em 2em 4em;
}
#Modal-benefit h2 {
	font-size: 3em;
}
}
@media only screen and (min-width:851px){
#Modal-benefit .inner {
	padding: 8em 3em 4em;
}
#Modal-benefit h2 {
	font-size: 4.5em;
}
}
.detail-benefit {
  position: relative;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-flex-grow: 1;
  -ms-flex-grow: 1;
  flex-grow: 1;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
  margin: -1.5em -.5em;
}

.detail-benefit dl {
  position: relative;
  min-width: 2rem;
  margin: 1em 1.5em;
	width: calc(100% - 3em);
	padding: 2em 3em;
	text-align: center;
	border: 2px solid #b3f58d;
	font-feature-settings: 'palt';
	background-color: #f8fcf6;
	border-radius: 1.5em;
}
.detail-benefit dt {
	font-size: 2em;
	margin-bottom: .75em;
}
.detail-benefit dd {
  font-size: 1.65em;
	line-height: 1.5;
	color: #444;
}
@media only screen and (min-width:600px){
.detail-benefit {
  margin: -1.5em;
}
.detail-benefit dl {
  margin: 1.5em;
  width: calc(50% - 3em);
}
}
@media only screen and (min-width:768px){
.detail-benefit dl {
  width: calc(33.33333333% - 3em);
	min-height: 16em;
	padding-top: 3em;
}
}

.tb-norm.tb-recruit {
	width: 100%;
	margin-top: 1em;
  border-bottom: 1px solid #DDD;
}
.tb-norm.tb-recruit + h3 {
	margin-top: 3em;
}
.tb-norm.tb-recruit th, .tb-norm.tb-recruit td {
	font-size: 1.75em;
}
.tb-recruit th {
	width: 8em;
}
.tb-norm.tb-recruit.border-top-only th {
	border-top-color: #AAA;
}
.tb-recruit td {
	color: #555;
}
.page-recruiting h2 {
	position: relative;
	padding-right: 6em;
}
.btn-apply {
	position: absolute;
	top: .15em;
	right: 0;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	font-size: .8em;
	line-height: 1;
	font-weight: bold;
	padding: .5em 1em;
	display: block;
}
.btn-apply:hover {
	background-color: #4BCC00;
	color: #FFF;
}
.btn-more-benefit {
  margin-top: .5em;
}
.btn-more-benefit a {
	position: relative;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	font-size: .92em;
	line-height: 1;
	font-weight: bold;
	padding: .35em .75em;
	display: inline-block;
}
.btn-more-benefit a:hover {
	background-color: #4BCC00;
	color: #FFF;
}

.btn-modal-close {
	position: fixed;
	top: 1em;
	right: 1em;
	width: 48px;
	height: 48px;
	z-index: 599;
	cursor: pointer;
	display: block;
	background-color: #F0F0F0;
	transition: all .3s ease-in-out;
}
@media only screen and (min-width:602px){
.btn-modal-close {
	top: 2em;
	right: 2em;
}
}
@media only screen and (min-width:851px){
.btn-modal-close {
	top: 3em;
	right: 3em;
}
}
.btn-modal-close::before,
.btn-modal-close::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 0;
	height: 0;
	content: ' ';
	border-top: 1px solid #444;
	width: 24px;
	margin-left: -12px;
}
.btn-modal-close::before {
	transform: rotate(-45deg);
}
.btn-modal-close::after {
	transform: rotate(45deg);
}
.btn-modal-close:hover {
	opacity: .7;
}

/* add 2018.08.29 */
.btns-inq-app {
	position: absolute;
	top: 0;
	right: 0;
	letter-spacing: -.4em;
	list-style: none;
	margin: 0;
	padding: 0;
  float: right;
}
.btns-inq-app li {
  letter-spacing: 0;
	display: inline-block;
	vertical-align: top;
  font-size: .8em;
	line-height: 1;
	margin: 0;
	padding: 0;
}
.btns-inq-app li a {
	position: relative;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	font-weight: bold;
	padding: .5em 1em;
	display: block;
}
.btns-inq-app li + li a {
  border-left: none;
}
.btns-inq-app li a:hover {
	background-color: #4BCC00;
	color: #FFF;
}

.wrap-inq-app {
  overflow: hidden;
  width: 100%;
  display: none;
}
.wrap-inq-app .btns-inq-app {
	position: relative;
  float: right;
}
.wrap-inq-app .btns-inq-app li {
  font-size: 2em;
}
@media only screen and (max-width: 767px){
.wrap-inq-app {
display: block;
}
.wrap-inq-app:not(:last-child) {
  margin-bottom: 2em;
}
.wrap-inq-app .btns-inq-app li {
  font-size: 1.75em;
}
}
/* ---------------------------------------------------------------------------------------- */
/* PASTWORK
/* ---------------------------------------------------------------------------------------- */

.dl-pastwork {
	position: relative;
}
.dl-pastwork:after {
	content: ' ';
	display: block;
	clear: both;
}
.dl-pastwork dt {
	position: relative;
	float: left;
	width: 10em;
	text-align: right;
	padding-bottom: 3em;
	font-family: 'latoWeb', sans-serif;
}
.dl-pastwork dt:after {
	position: absolute;
	top: .25em;
	right: -3.5em;
	content: ' ';
	width: 1em;
	height: 1em;
	border: 1px solid #4BCC00;
	background-color: #FFF;
	border-radius: .5em;
	z-index: 1;
}
.dl-pastwork dd {
	position: relative;
	margin-left: 13em;
	padding-left: 3em;
	padding-bottom: 3em;
	color: #555;
}
.dl-pastwork dd:before {
	position: absolute;
	top: 0;
	left: 0;
	content: ' ';
	width: 0;
	height: 100%;
	border-left: 1px solid #4BCC00;
}
.dl-pastwork dd ul {
	list-style: none;
	font-size: .875em;
}
.dl-pastwork dd li {
	position: relative;
	padding-top: .5em;
	padding-left: 1.25em;
}
.dl-pastwork dd li:before {
	position: absolute;
	top: .5em;
	left: 0;
	content: '・'
}
.dl-pastwork dd li:nth-of-type(1) {
	padding-top: 0;
}
.dl-pastwork dd li:nth-of-type(1):before {
	top: 0;
}
/* ---------------------------------------------------------------------------------------- */
/* SAMPLE-MOVIE
/* ---------------------------------------------------------------------------------------- */

.list-samplemov {
	position: relative;
	list-style: none;
	letter-spacing: -.4em;
}
.list-samplemov li {
	position: relative;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width: 33.33333333%;
	text-align: center;
	padding: 0 16px 32px;
}
.list-samplemov li a {
	position: relative;
	display: block;
	width: 100%;
	color: #338200;
	font-weight: bold; /*border-top:1px solid #DDD;*/
	padding: 32px 0;
	transition: all .3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.list-samplemov li a i {
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #FFF;
	border: 1px solid #DDD;
	overflow: hidden;
	z-index: 2;
	transition: all .3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.list-samplemov li a:before {
	position: absolute;
	top: 0;
	left: 50%;
	width: 100%;
	height: 1px;
	content: ' ';
	margin-left: -50%;
	background-color: #DDD;
	transform: scale(0);
	transition: all .3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.list-samplemov li a i svg {
	position: relative;
	width: 100%;
	height: auto;
}
.list-samplemov li a i .st0 {
	fill: #AAA;
}
.list-samplemov li a:hover {
	color: #44AD00;
	border-color: #4BCC00;
}
.list-samplemov li a:hover i {
	transform: scale(1.2);
	border-color: #4BCC00;
}
.list-samplemov li a:hover i img {
	position: relative;
	width: 100%;
	height: 100%;
}
.list-samplemov li a:hover i .st0 {
	fill: #4BCC00;
}
.list-samplemov li a:hover:before {
	transform: scale(1);
	background-color: #4BCC00;
}
/* ---------------------------------------------------------------------------------------- */
/* CARTOON
/* ---------------------------------------------------------------------------------------- */

body.cartoon {/*background-color:#cfcdb6;*/
}
.cartoon .corner-header {
	padding: 86px 0 3em;
}
.cartoon .corner-header:before {
	height: 70px;
}
.cartoon .corner-header h1 {
	font-size: 4em;
}
.page-cartoon .scn-norm figure {
	max-width: 840px;
	margin: 0 auto;
	text-align: center;
}
.cartoon .wp-pagenavi {
	font-size: 2em;
	z-index: 200;
}
.cartoon .wp-pagenavi .previouspostslink, .cartoon .wp-pagenavi .nextpostslink {
	position: absolute;
	top: 50%;
	width: 48px;
	height: 48px;
	border: 1px solid #625e32;
	border-radius: 50%;
	text-indent: -999999em;
	overflow: hidden;
	text-align: left;
	background-position: center;
	background-repeat: no-repeat;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	background-size: 100% 100%;
	transition: all .3s ease-in-out;
}
.cartoon .wp-pagenavi .previouspostslink {
	right: -56px;
	background-image: url(assets/img/common/arrow-right.svg);
}
.cartoon .wp-pagenavi .nextpostslink {
	left: -56px;
	background-image: url(assets/img/common/arrow-left.svg);
}
.cartoon .wp-pagenavi .previouspostslink:hover, .cartoon .wp-pagenavi .nextpostslink:hover {
	opacity: .7;
}
/* ---------------------------------------------------------------------------------------- */
/* NEWS
/* ---------------------------------------------------------------------------------------- */

.page-news .content + .content {
	margin-top: 6em;
}
.news-date {
	float: left;
	width: 12em;
}
.news-date p {
	line-height: 1.2;
	font-family: 'LatoWebMedium', sans-serif;
}
.news-body {
	margin-left: 12em;
	border-left: 1px solid #EEE;
	padding-left: 3em;
	color: #555;
}
.news-body h1 {
	font-size: 2.75em;
	line-height: 1.5;
}
.news-body h1 + section {
	margin-top: 2em;
}
.news-body .scn-norm img {
	width: 100%;
	height: auto;
}
.news-body .scn-norm ul, .news-body .scn-norm ol {
	margin-left: 2em;
}
.page-news .wp-pagenavi {
	position: relative;
	overflow: hidden;
	padding: 32px 0 8px;
}
.page-news .wp-pagenavi .previouspostslink, .page-news .wp-pagenavi .nextpostslink {
	width: 34px;
	height: 34px;
	border: 1px solid #338200;
	border-radius: 50%;
	text-indent: -999999em;
	overflow: hidden;
	text-align: left;
	background-position: center;
	background-repeat: no-repeat;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	-ms-background-size: 100% 100%;
	background-size: 100% 100%;
	transition: all .3s ease-in-out;
}
.page-news .wp-pagenavi .previouspostslink {
	float: left;
	background-image: url(assets/img/common/arrow-left-green.svg);
}
.page-news .wp-pagenavi .nextpostslink {
	float: right;
	background-image: url(assets/img/common/arrow-right-green.svg);
}
.page-news .wp-pagenavi .previouspostslink:hover, .page-news .wp-pagenavi .nextpostslink:hover {
	opacity: .7;
}

/* add 2019.05.22 */
.page-about .dl-flt dd .dsp-ib,
.page-about-re .dl-flt dd .dsp-ib,
.page-about-rere .dl-flt dd .dsp-ib {
  display: inline-block;
  vertical-align: middle;
  margin-right: 2em;
}
.btn-msg {
  position: relative;
  top: -1px;
	display: inline-block;
  vertical-align: middle;
}
.btn-msg a {
	position: relative;
	border: 1px solid #4BCC00;
	color: #4BCC00;
	font-size: .8125em;
	line-height: 1;
	font-weight: bold;
	padding: .35em .75em;
}
.btn-msg a:hover {
	background-color: #4BCC00;
	color: #FFF;
}
@media only screen and (max-width:320px){
  .btn-msg {
    margin-top: .5em;
  }
}
#Modal-message {
  position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 599;
	background-color: rgba(255,255,255,.95);
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	display: none;
	margin: 0!important;
	padding: 1em;
}
@media only screen and (min-width:602px){
  #Modal-message {
    padding: 2em;
  }
}
@media only screen and (min-width:851px){
  #Modal-message {
    padding: 3em;
  }
}
#Modal-message .inner {
  position: relative;
	max-width: 800px;
	margin: 0 auto;
	padding: 8em 2em 4em;
}
#Modal-message h2 {
  text-align: center;
	font-size: 2.5em;
	padding: 0!important;
	margin: 0 auto 2em!important;
}
@media only screen and (min-width:602px){
  #Modal-message .inner {
    padding: 8em 3em 4em;
  }
  #Modal-message h2 {
    font-size: 3em;
  }
}
@media only screen and (min-width:851px){
  #Modal-message .inner {
    padding: 8em 4em 4em;
  }
  #Modal-message h2 {
    font-size: 4.5em;
  }
}
#Modal-message .msg-block {
  position: relative;
	padding: 2em 1.5em;
	text-align: left;
	border: 2px solid #b3f58d;
	font-feature-settings: 'palt';
	background-color: #eefde6;
	border-radius: 1.5em;
  color: #111;
}
@media only screen and (min-width:602px){
  #Modal-message .msg-block {
    padding: 3em;
  }
}
@media only screen and (min-width:851px){
  #Modal-message .msg-block {
    padding: 4em;
  }
}
@media only screen and (min-width:1024px){
  #Modal-message .msg-block {
    padding: 6em;
  }
}
