@charset "UTF-8";
/*
Theme Name: icuco(イクコ)
Template: twentynineteen
Author: icuco(イクコ)
Author URI:
Description:
Version: 1.1
Updated: 2023-05-09
*/

/* Color Scheme
-----------------------------------------------------

	=THEME COLOR = #ff8392

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

@import url(reset.css);
@import url(wordpress.css);
@import url(ownedmedia.css);

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

	=GLOBAL LAYOUT

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

* {
	margin: 0;
	padding: 0;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
	-webkit-font-smoothing: antialiased !important;
	-webkit-text-stroke: 1px transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
	color: #46403b;
	font-size: 10px;
	font-weight: normal;
	line-height: 1.8;
	word-wrap: break-word;
	letter-spacing: 0.05em;
}

/* Firefox
@-moz-document url-prefix() {
	html {
		font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
	}
} */
/* IE11 */
_:-ms-lang(x)::-ms-backdrop,
html {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
}

body {
	font-size: 1.6rem;
}

body::before {
	content: "";
	position: fixed;
	z-index: -99;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
dt,
dd,
li {
	line-height: 2.0;
}

p,
ul,
ol,
dl,
table {
	margin-bottom: 2em;
}

p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child {
	margin-bottom: 0;
}

table {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.8;
	text-align: left;
}

th,
td {
	padding: 1em 1.5em;
	vertical-align: top;
	border: none;
}

th {
	font-weight: bold;
	text-align: justify;
}

tr {
	border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

tr:last-child {
	border-bottom: none;
}

hr {
	clear: both;
	border: none;
}

img {
	display: inline-block;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

a img {
	border: none;
}

a {
	color: #ff8392;
	text-decoration: underline;
}

a {
	cursor: pointer;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

a:hover {
	opacity: 0.5;
	text-decoration: none;
}

/*::selection {
	background-color: rgba(0,0,0,0.25);
}*/

em {}

ol {
	counter-reset: number;
	list-style: none;
}

ol>li {
	position: relative;
	padding-left: 2.5em;
}

ol>li:not( :last-child) {
	margin-bottom: 1.0em;
}

ol>li::before {
	position: absolute;
	left: 0;
	counter-increment: number;
	content: "("counter(number)")";
	content: ""counter(number)"";
	margin: 0 1.0em 0 0;
}

ol>li ol:last-child {
	margin-bottom: 2em;
}

ol>li ol li::before {
	content: "("counter(number, lower-roman)")";
}

ol>li ol li:not( :last-child) {
	margin-bottom: .5em;
}

ol.list-order-katakana>li::before {
	content: "("counter(number, katakana)")";
}

strong {
	font-weight: bold;
}

iframe {
	display: block;
	max-width: 100%;
}

sup,
sub {
	font-size: 50%;
}

form {}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea {
	padding: 5px;
	font-size: 16px;
	font-weight: inherit;
	color: inherit;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea,
select {
	background-color: #eee;
	color: #555;
	border: 1px solid #eee;
	line-height: 1;
	vertical-align: middle;
	max-width: 100%;
	border-radius: 5px;
}

textarea {}

input[type=text] {
	margin-bottom: 0.5em;
}

input[type=text]:last-child {
	margin-bottom: 0;
}

input[type=email] {}

input[type=submit] {
	cursor: pointer;
}

input[type=text]:focus,
textarea:focus {
	color: #555;
}

form ul {
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

form ul li {
	display: inline-block !important;
}

form label {
	margin-right: 1.4em;
}

form input[type*="submit"] {
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto 20px;
	padding: 1em 2em;
	border: none;
	background-color: #e45539;
	color: #fff;
	font-size: 1.0em;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
	cursor: pointer;
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	-webkit-transition: all ease-out 0.1s;
	-moz-transition: all ease-out 0.1s;
	-ms-transition: all ease-out 0.1s;
	transition: all ease-out 0.1s;
}

form input[type*="submit"]:hover {
	opacity: 0.7;
}

::placeholder {
	color: #ddd;
}



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

	=GLOBAL STYLE

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

#container {
	overflow: hidden;
}

.wrapper {
	width: 1200px;
	max-width: 100%;
	margin: auto;
}

.wrapper-min {
	width: 800px;
}

.wrapper-1120 {
	width: 1120px;
}

.wrapper-1000 {
	width: 1000px;
}

.wrapper-960 {
	width: 960px;
}

.wrapper-800 {
	width: 800px;
}

.wrapper-720 {
	width: 720px;
}

#cont {}

#main {}

#main main {}


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

	=MEDIA QUERIES RESPONSIVE STRUCTURE

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

/* DESKTOP
----------------------------------------------------- */
@media screen and (min-width: 960px) {
	.sp {
		display: none !important;
	}

	body {
		min-width: 1200px;
	}
}

/* SMARTPHONE
----------------------------------------------------- */
@media screen and (min-width: 0px) and (max-width: 959px) {
	.pc {
		display: none !important;
	}

	html {
		font-size: 10px;
	}

	body {
		font-size: 1.4rem;
		letter-spacing: 0;
	}

	/* APPERANCE
	--------------------------------------------------*/
	input[type="button"],
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="submit"],
	select {
		-webkit-appearance: none;
		border-radius: 0;
	}

	iframe {
		width: 100%;
	}

	th,
	td {
		font-size: 1.2rem;
		padding: 1em 0.5em;
	}

	/* =GLOBAL STYLE
	-------------------------------------------------- */
	.wrapper {
		width: 100%;
		padding: 0 6.25vw;
		margin: auto;
	}
}

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

 	=PRELOADER (imagesloaded.pkgd.min.js)

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

.js-imageloaded {}

.js-imageloaded.loaded {}

#progress,
#progress * {}

#progress {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	padding: 0;
	display: block;
	overflow: hidden;
	z-index: 999999;
}

#progress .progress-start {
	background-color: #fff;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 999999 opacity: 0;
	-webkit-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
	-moz-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
	-ms-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
	transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;

	display: none;
}

#progress.complete10 .progress-start {
	left: -100%;
}

#progress .progress-loading {
	background-color: #fff;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	z-index: 999999;
}

#progress .progress-loading .logo {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#progress .progress-loading .logo svg,
#progress .progress-loading .logo img {
	width: 185px;
	-webkit-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
	-moz-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
	-ms-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
	transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
}

#progress,
#progress .progress-loading {
	-webkit-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
	-moz-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
	-ms-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
	transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
}

#progress.complete100,
#progress.complete100 .progress-loading {
	left: 0%;
}

#progress.complete100 {
	opacity: 0;
	z-index: -9999;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	@supports (-webkit-touch-callout: none) {
		#progress {
			height: -webkit-fill-available;
		}
	}

	#progress .progress-loading .logo img {
		width: 185px;
	}
}



/* =ANIMATION (jquery.inview.js)
----------------------------------------------------- */
.js-inview {
	transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;

	/*transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
	-webkit-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
	-moz-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
	-ms-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;
	-o-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 0.2s;*/

	transition: 2.4s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-webkit-transition: 2.4s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-moz-transition: 2.4s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-ms-transition: 2.4s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	-o-transition: 2.4s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
}

.js-inview.inview-fadein {
	opacity: 0;
}

.js-inview.inview-fadein.is-show {
	opacity: 1;
}

.js-inview.inview-zoomin {
	opacity: 0;
	transform: scale(1.3);
	-webkit-transform: scale(1.3);
	-moz-transform: scale(1.3);
	-ms-transform: scale(1.3);
	-o-transform: scale(1.3);
	filter: blur(5px);
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-ms-filter: blur(5px);
	-o-filter: blur(5px);
}

.js-inview.inview-zoomin.is-show {
	opacity: 1;
	filter: blur(0);
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	-ms-filter: blur(0);
	-o-filter: blur(0);
	transform: scale(1);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
}

.js-inview.inview-zoom {
	opacity: 0;
	transform: scale(0.9);
	-webkit-transform: scale(0.9);
	-moz-transform: scale(0.9);
	-ms-transform: scale(0.9);
	-o-transform: scale(0.9);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-o-backface-visibility: hidden;
}

.js-inview.inview-zoom.is-show {
	opacity: 1;
	transform: scale(1);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
}

.js-inview.inview-blur {
	opacity: 0;
	filter: blur(100px);
	-webkit-filter: blur(100px);
	-moz-filter: blur(100px);
	-ms-filter: blur(100px);
	-o-filter: blur(100px);
}

.js-inview.inview-blur.is-show {
	opacity: 1;
	filter: blur(0);
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	-ms-filter: blur(0);
	-o-filter: blur(0);
}

.js-inview.inview-floatup {
	transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
	-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
	-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
	-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
	-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;

	opacity: 0;
	transform: translate3d(0px, 200px, 0px);
	-webkit-transform: translate3d(0px, 200px, 0px);
	-moz-transform: translate3d(0px, 200px, 0px);
	-ms-transform: translate3d(0px, 200px, 0px);
	-o-transform: translate3d(0px, 200px, 0px);
}

.js-inview.inview-floatup.is-show {
	opacity: 1;
	transform: translate3d(0px, 0, 0px);
	-webkit-transform: translate3d(0px, 0, 0px);
	-moz-transform: translate3d(0px, 0, 0px);
	-ms-transform: translate3d(0px, 0, 0px);
	-o-transform: translate3d(0px, 0, 0px);
}

.js-inview.inview-floatintoright {
	opacity: 0;
	transform: translate3d(-40px, 0px, 0px);
	-webkit-transform: translate3d(-40px, 0px, 0px);
	-moz-transform: translate3d(-40px, 0px, 0px);
	-ms-transform: translate3d(-40px, 0px, 0px);
	-o-transform: translate3d(-40px, 0px, 0px);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-o-backface-visibility: hidden;
}

.js-inview.inview-floatintoright.is-show {
	opacity: 1;
	transform: translate3d(0px, 0, 0px);
	-webkit-transform: translate3d(0px, 0, 0px);
	-moz-transform: translate3d(0px, 0, 0px);
	-ms-transform: translate3d(0px, 0, 0px);
	-o-transform: translate3d(0px, 0, 0px);
}

.js-inview.inview-floatintoleft {
	opacity: 0;
	transform: translate3d(40px, 0px, 0px);
	-webkit-transform: translate3d(40px, 0px, 0px);
	-moz-transform: translate3d(40px, 0px, 0px);
	-ms-transform: translate3d(40px, 0px, 0px);
	-o-transform: translate3d(40px, 0px, 0px);
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	-o-backface-visibility: hidden;
}

.js-inview.inview-floatintoleft.is-show {
	opacity: 1;
	transform: translate3d(0px, 0, 0px);
	-webkit-transform: translate3d(0px, 0, 0px);
	-moz-transform: translate3d(0px, 0, 0px);
	-ms-transform: translate3d(0px, 0, 0px);
	-o-transform: translate3d(0px, 0, 0px);
}

.js-reveal {}

.js-reveal>*,
.js-reveal>*::after {
	animation-delay: 0.2s;
	animation-iteration-count: 1;
	animation-duration: 600ms;
	animation-delay: 0.6s;
	animation-iteration-count: 1;
	animation-duration: 1200ms;
	animation-fill-mode: both;
	/*animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
	animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1) 0.0s;*/
}

.js-reveal>* {
	position: relative;
	white-space: nowrap;
	cursor: default;
	display: inline-block;
	opacity: 0;
}

.js-reveal>*:not( :last-child) {
	margin-bottom: 5px;
}

.js-reveal.is-show>* {
	animation-name: clip-text;
}

.js-reveal>*::after {
	content: "";
	position: absolute;
	z-index: 999;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: #ff8492;
	background-color: #fff;
	transform: scaleX(0);
	transform-origin: 0 50%;
	pointer-events: none;
}

.js-reveal.is-show>*::after {
	animation-name: text-revealer;
}

@keyframes clip-text {
	0% {
		opacity: 0;
		clip-path: inset(0 100% 0 0);
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
		clip-path: inset(0 0 0 0);
	}
}

@keyframes text-revealer {

	0%,
	50% {
		transform-origin: 0 50%;
	}

	60%,
	100% {
		transform-origin: 100% 50%;
	}

	60% {
		transform: scaleX(1);
	}

	100% {
		transform: scaleX(0);
	}
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.js-reveal {}

	.js-reveal>* {
		white-space: inherit;
	}
}

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

	=HEADER

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

/* =HEADER
----------------------------------------------------- */
#cont {
	padding-top: 0;
}

.header-global {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.header-global,
.header-global * {
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.header-global>.inner {
	padding: 20px 20px;
	align-items: center;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.header-global>.inner .header-left,
.header-global>.inner .header-right {
	display: flex;
	align-items: center;
}

.header-global>.inner .header-left {}

.header-global>.inner .header-right {}

.header-global>.inner .header-left {}

.header-global>.inner .header-left>* {}

.header-global>.inner .header-left .nav-pc {}

.header-global>.inner .header-left .nav-sp {}

.header-global>.inner .header-left .logo {
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin-left: 20px;
	width: 160px;
	max-width: 100%;
	background: url(assets/images/logo-white.webp) no-repeat center;
	background-size: 100% auto;
}

.header-global>.inner .header-right {}

.header-global>.inner .header-right .nav-pc {
	margin-right: 2em;
}

.header-global>.inner .header-right .nav-sp {}

.header-global>.inner .header-right .nav-pc ul.nav-main li a {}

.header-global>.inner .header-right .nav-pc ul.nav-main li a:hover {}

.header-global>.inner .header-right .button-more {}

.header-global>.inner .header-right .button-more:hover {}

/* 画面スクロール時 */
.scrolled .header-global {
	position: fixed;
	background-color: #fff;
}

.scrolled .header-global>.inner .header-left .logo img {}

.scrolled .header-global>.inner .header-left .logo:after {}

.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li,
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #000000;
}

.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li ul {
	background-color: #fff;
}

.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li ul li a {}

.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main>li>a::before {
	background-color: #000;
}

/* トップページのみ */
.top .header-global>.inner .header-left .logo img {
	opacity: 0;
}

.top .header-global>.inner .header-right .nav-pc ul.nav-main li,
.top .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #fff;
}

.top .header-global>.inner .header-right .nav-pc ul.nav-main>li>a::before {
	background-color: #fff;
}

.top .header-global>.inner .header-right .nav-pc ul.nav-main li.has-child {}

.top.scrolled .header-global>.inner .header-left .logo img {
	opacity: 1;
}

.top.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li,
.top.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #000;
}

.top.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main>li>a::before {
	background-color: #000;
}

.top.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li.has-child {}


/* 下層ページ共通
.sub .header-global {
	background-color: #000;
	background-color: #041f39;
	border-bottom: solid 0 rgba(83,91,104,0.1);
}
.sub .header-global>.inner .header-left .logo img {
	opacity: 1;
}
.sub .header-global>.inner .header-left .logo:after {
	color: #fff;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li,
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #fff;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li ul {
	background-color: #000;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a {
	color: #fff;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a:hover {}
 */

@media screen and (min-width: 960px) {
	#cont {
		padding-top: 100px;
	}

	.top #cont {
		padding-top: 0;
	}

	.lp #cont {
		padding-top: 0;
	}

	/* 画面スクロール時 */
	.scrolled .header-global {
		height: auto;
	}

	.scrolled .header-global>.inner {}

	/* 下層ページ共通
	.sub .header-global {
		height: auto;
	}
	.sub .header-global>.inner {
		padding: 15px 30px;
	} */
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	#cont {
		padding-top: 60px;
	}

	.top #cont {
		padding-top: 0;
	}

	.header-global {
		height: 60px;
		background-color: #fff;
	}

	.top .header-global {
		background-color: transparent;
	}

	.header-global>.inner {
		padding: 0 6.25vw;
		padding: 0 15px;
		padding-right: 75px;
		height: 100%;
	}

	.header-global>.inner .header-left {
		width: 100%;
		padding: 0;
	}

	.header-global>.inner .header-right {}

	.header-global>.inner .header-left .logo {
		width: 100px;
		margin-left: 0;
		max-width: 100%;
	}

	.lp .header-global>.inner .header-right .button-more {
		width: 160px;
		padding: 0 1.5em;
		height: 32px;
		line-height: 30px;
		font-size: 1.2rem;
		text-align: center;

		background: none;
		box-shadow: none;
		color: #46403b;
		border-radius: 0;
		border: solid 1px #46403b;
		text-decoration: none;
	}

	.lp .header-global>.inner .header-right .button-more>* {
		background-image: none;
	}

	/* 画面スクロール時 */
	.scrolled .header-global {}
}

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

	=NAVIGATION - PC

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

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

	/* =NAVIGATION - PC
	----------------------------------------------------- */
	.nav-pc {
		margin: 0 0 0 2em;
	}

	.header-global>.inner .header-right .nav-pc {
		text-align: right;
	}

	.nav-pc * {
		-webkit-transition: all ease-out 0.2s;
		-moz-transition: all ease-out 0.2s;
		-ms-transition: all ease-out 0.2s;
		transition: all ease-out 0.2s;
	}

	.nav-pc ul.nav-main {
		letter-spacing: 0;
		font-size: 0;
	}

	.nav-pc ul.nav-main li {
		display: inline-block;
		vertical-align: middle;
		font-size: 1.6rem;
		font-weight: bold;
		letter-spacing: 0.0em;
	}

	.nav-pc ul.nav-main li:not(:last-child) {
		margin: 0 2em 0 0;
	}

	.nav-pc ul.nav-main li a {
		position: relative;
		display: block;
		color: inherit;
		line-height: 1;
		text-decoration: none;
	}

	.nav-pc ul.nav-main li a:hover {
		opacity: 1;
	}

	.nav-pc ul.nav-main>li>a {
		padding: 0.5em 0em;
	}

	.nav-pc ul.nav-main>li>a::before {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		width: 0.0001%;
		height: 2px;
		background-color: #46403b;
		-webkit-transition: all ease-out 0.1s;
		-moz-transition: all ease-out 0.1s;
		-ms-transition: all ease-out 0.1s;
		transition: all ease-out 0.1s;
	}

	.nav-pc ul.nav-main>li>a:hover::before {
		width: 100%;
	}

	/* 子要素にさらにulがある場合 */
	.nav-pc ul.nav-main li {
		position: relative;
	}

	.nav-pc ul.nav-main li.has-child {}

	.nav-pc ul.nav-main li ul {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 20em;
		padding-top: 2em;
		padding: 0.75em;
	}

	.nav-pc ul.nav-main li:hover ul {
		display: block;
	}

	.nav-pc ul.nav-main li ul li {
		display: block;
		padding: 0.75em;
		font-size: 80%;
		text-align: left;
	}

	.nav-pc ul.nav-main li ul li a:hover {
		opacity: 0.5;
	}
}

@media screen and (min-width: 800px) and (max-width: 1439px) {
	.nav-pc ul.nav-main li {
		font-size: 1.5rem;
	}

	.nav-pc ul.nav-main li:not(:last-child) {
		margin: 0 1.75em 0 0;
	}
}

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

	=NAVIGATION - SP

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

@media screen and (min-width: 0px) and (max-width: 959px) {

	/* =NAVIGATION - SP
	----------------------------------------------------- */
	.nav-sp {
		position: fixed;
		z-index: 9992;
		top: 0;
		left: 0;
		bottom: auto;
		width: 80vw;
		height: 100vh;
		padding: 0;
		border-radius: 0;
		background-color: transparent;
		background-color: rgba(255, 255, 255, 1);
		background-color: #f9f6f3;
		box-shadow: 5px 8.66px 120px 0px rgba(0, 0, 0, 0.25);
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		-webkit-transform: translate3d(0, -100%, 0);
		-moz-transform: translate3d(0, -100%, 0);
		-ms-transform: translate3d(0, -100%, 0);
		transform: translate3d(0, -100%, 0);
		-webkit-transition: opacity ease-out 0.25s;
		-moz-transition: opacity ease-out 0.25s;
		-ms-transition: opacity ease-out 0.25s;
		transition: opacity ease-out 0.25s;
		opacity: 0;
	}

	.nav-sp.on {
		opacity: 1;
		-webkit-transform: translate3d(0, 0, 0);
		-moz-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}

	.nav-sp.on .inner {}

	.nav-sp .inner {
		padding: 6.25vw;
		padding-bottom: 12.5vw;
	}

	.nav-sp .inner .logo {
		margin: 0 0 6.25vw;
	}

	.nav-sp ul.nav-main {
		margin: 0 0 0 0;
	}

	.nav-sp ul.nav-main li:not(:last-child) {
		margin: 0 0 1.25em 0;
	}

	.nav-sp ul.nav-main li {
		display: block;
		color: #46403b;
		font-size: 1.4rem;
		letter-spacing: 0em;
	}

	.nav-sp ul.nav-main li a {
		display: block;
		line-height: 1;
		color: inherit;
		text-decoration: none;
	}

	.nav-sp ul.nav-main li a:hover {
		opacity: 0.25;
	}

	.nav-sp ul.nav-main li a.button-more {
		color: #fff;
	}

	.nav-sp ul.nav-main ul {
		margin: 1.25em 0 0 0;
	}

	.nav-sp ul.nav-main ul li {
		margin: 1.25em 0 0 0;
		position: relative;
		padding-left: 1em;
	}

	.nav-sp ul.nav-main ul li:before {
		position: absolute;
		left: 0.25em;
		top: -0.5em;
		content: "-";
		color: #666;
	}

	.nav-sp ul.nav-main ul li a {}

	.nav-sp ul.nav-main li {}

	/* =TOGGLER
	----------------------------------------------------- */
	ul.nav-icon {
		position: fixed;
		z-index: 9999;
		top: 0;
		right: 0;
		margin: 0;
		padding: 0;
		text-align: right;
		font-size: 0;
		letter-spacing: 0;
	}

	ul.nav-icon li {
		display: inline-block;
		vertical-align: top;
		z-index: 9999;
		top: 0;
		right: 6.25vw;
		width: 80px;
		height: 60px;
		border-radius: 0;
		background-color: #000;
		text-align: center;
		-webkit-transition: all ease-out 0.4s;
		-moz-transition: all ease-out 0.4s;
		-ms-transition: all ease-out 0.4s;
		transition: all ease-out 0.4s;
		cursor: pointer;
	}

	ul.nav-icon li:not(:last-child) {
		margin-right: 0;
	}

	ul.nav-icon li a {
		display: block;
		text-decoration: none;
	}

	ul.nav-icon li.toggler {
		padding: 22px 0;
		background-color: transparent;
	}

	.scrolled ul.nav-icon li.toggler {}

	ul.nav-icon li.toggler a.trigger-bars {
		display: inline-block;
	}

	a.trigger-bars,
	a.trigger-bars span {
		box-sizing: border-box;
		display: inline-block;
		-webkit-transition: all ease-out 0.4s;
		-moz-transition: all ease-out 0.4s;
		-ms-transition: all ease-out 0.4s;
		transition: all ease-out 0.4s;
	}

	a.trigger-bars {
		position: relative;
		z-index: 9999;
		width: 28px;
		height: 16px;
		color: #000000;
	}

	a.trigger-bars::after {
		position: absolute;
		width: 200%;
		left: -50%;
		top: 27px;
		display: block;
		letter-spacing: 0em;
		font-size: 1rem;
		font-weight: bold;
		text-transform: uppercase;
		line-height: 1;
	}

	a.trigger-bars span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #fff;
		border-radius: 0;
		-webkit-transition: all ease-out 0.14s;
		-moz-transition: all ease-out 0.14s;
		-ms-transition: all ease-out 0.14s;
		transition: all ease-out 0.14s;
	}

	.scrolled a.trigger-bars span,
	.sub a.trigger-bars span,
	.lp a.trigger-bars span {
		background-color: #000;
	}

	a.trigger-bars span:nth-of-type(1) {
		top: 0;
	}

	a.trigger-bars span:nth-of-type(2) {
		top: 7px;
	}

	a.trigger-bars span:nth-of-type(3) {
		bottom: 0;
	}

	/*ul.nav-icon li.toggler.active { background-color: #fff;}*/
	.active a.trigger-bars {
		color: #000;
	}

	.active a.trigger-bars span {}

	.active a.trigger-bars span:nth-of-type(1) {
		-webkit-transform: translateY(7px) rotate(-45deg);
		transform: translateY(7px) rotate(-45deg);
	}

	.active a.trigger-bars span:nth-of-type(2) {
		opacity: 0;
	}

	.active a.trigger-bars span:nth-of-type(3) {
		-webkit-transform: translateY(-7px) rotate(45deg);
		transform: translateY(-7px) rotate(45deg);
	}
}


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

	=FOOTER

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

.footer-global {
	position: relative;
	z-index: 9990;
}

.footer-global a:not([class]) {
	color: #000;
	text-decoration: none;
}

.footer-global hr:not([class]) {
	height: 2em;
}

.footer-global .footer-area {
	padding: 4.5vw 0 0;
}

.footer-global .footer-area>.inner {
	position: relative;
}

.footer-global .footer-area .footer-left {
	width: 420px;
}

.footer-global .footer-area .footer-right {
	width: 740px;
}

.footer-global .footer-area .footer-left {}

.footer-global .footer-area .footer-left>*:not( :last-child) {}

.footer-global .footer-area .logo {
	margin: 0 0 2em 0;
	width: 205px;
}

.footer-global .footer-area .address {
	margin: 0 0 2em;
	font-size: 1.4rem;
}

/* 横並びver.
.footer-global .footer-area .nav-footer {}

.footer-global .footer-area .nav-footer ul {
	font-size: 0;
	letter-spacing: 0;
}
.footer-global .footer-area .nav-footer ul li {
	display: inline-block;
	vertical-align: top;
	font-size: 1.6rem;
	font-weight: bold;
}
.footer-global .footer-area .nav-footer ul li:not( :last-child ) {
	margin: 0 2em 0 0;
}
.footer-global .footer-area .nav-footer ul li a {}
*/

/* 縦列ver.*/
.footer-global .footer-area .nav-footer {
	text-align: right;
}

.footer-global .footer-area .nav-footer>ul {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 50px;
}

.footer-global .footer-area .nav-footer ul li {
	margin: 0 0 0.15em;
	font-size: 1.4rem;
	font-weight: normal;
	text-align: left;
}

.footer-global .footer-area .nav-footer ul li a {
	text-decoration: none;
}

.footer-global .footer-area .nav-footer ul li a:hover {}

.footer-global .footer-area .nav-footer ul ul {
	margin-top: 0.25em;
}

.footer-global .footer-area .nav-footer ul ul li {
	position: relative;
	padding-left: 1.0em;
}

.footer-global .footer-area .nav-footer ul ul li:before {
	position: absolute;
	left: 0.25em;
	content: "-";
}

/* SNS */
ul.list-sns {
	margin: 0;
	display: block;
	font-size: 0;
	letter-spacing: 0;
}

ul.list-sns li {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.4rem;
	line-height: 1;
}

ul.list-sns li:not( :last-child) {
	margin: 0 2em 0 0;
}

i.icon-twitter {
	display: inline-block;
	background: url(assets/images/icon-sns-twitter.webp) no-repeat center;
	background-size: 100% auto;
	width: 18px;
	height: 18px;
}

i.icon-facebook {
	display: inline-block;
	background: url(assets/images/icon-sns-facebook.webp) no-repeat center;
	background-size: 100% auto;
	width: 8px;
	height: 17px;
}

i.icon-instagram {
	display: inline-block;
	background: url(assets/images/icon-sns-instagram.webp) no-repeat center;
	background-size: 100% auto;
	width: 20px;
	height: 20px;
}

/* COPYRIGHT */
.footer-global .hr-border {}

.footer-global .copyright-area {}

.footer-global .copyright-area .copyright {
	border-top: solid 1px #dcdcdc;
	padding: 40px 0 40px;
	font-size: 1.2rem;
	line-height: 1;
	text-align: left;
}

.footer-global .copyright-area .copyright p {
	margin: 0 0 0.5em;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.footer-global {
		font-size: 1.0rem;
	}

	.footer-global .footer-area,
	.footer-global .copyright-area {
		padding: 8vw 0 0;
		text-align: center;
	}

	.footer-global .copyright-area {
		padding-top: 0;
	}

	.footer-global .footer-area .flex-parent.responsive>*,
	.footer-global .copyright-area .flex-parent.responsive>* {
		width: 100%;
		margin: 0;
	}

	.footer-global .footer-area .footer-left,
	.footer-global .footer-area .footer-right {
		width: 100%;
	}

	.footer-global .footer-area .footer-right {
		display: none;
	}

	.footer-global .footer-area .logo {
		margin: 0 auto 3.125vw;
		padding-bottom: 3.125vw;
		width: 140px;
	}

	.footer-global .footer-area .logo img {}

	.footer-global .footer-area .address {
		font-size: 1.1rem;
	}

	.footer-global .copyright-area .footer-right {
		display: block;
		text-align: center;
	}

	.footer-global .copyright-area .copyright {
		text-align: center;
		font-size: 9px;
	}

	#button-pagetop {
		display: none;
	}
}

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

	=COMMON PARTS

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

/* =SECTION
----------------------------------------------------- */
.anchor {
	visibility: hidden;
	height: 0;
	display: block;
	padding-top: 160px;
	margin-top: -160px;
}

.block:not( :last-child) {
	margin-bottom: 100px;
}

.section {
	padding: 100px 0;
}

hr {
	clear: both;
	border: none;
	height: 50px;
}

hr.sep {
	background-color: #dcdcdc;
	height: 1px;
}

hr.hr-border {
	margin: 2em auto;
	height: 1px;
	background-color: #dcdcdc;
}

.x2 {
	zoom: 0.5;
}

.section-header {
	text-align: center;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.block:not( :last-child) {
		margin: 0 auto 9vw;
	}

	.section {
		padding: 9vw 0;
	}

	hr {
		height: 6.25vw;
	}
}


/* =DECORATION
----------------------------------------------------- */
.bg-theme {}

.bg-black {
	background-color: #000;
}

.bg-white {
	background-color: #fff;
}

.bg-gray {
	background-color: #f7f7f7;
}

.bg-palepink {
	background-color: #fdf5f6;
}

.fc-theme {
	color: #ff8392;
}

.fc-white {
	color: #fff
}

.text-strong {
	font-weight: bold;
}

.frame {
	padding: 2.0em;
}

.radius {
	overflow: hidden;
	border-radius: 10px;
}

/* 汎用ボックス */
.whitebox {
	padding: 80px;
	border-radius: 10px;
	background-color: #fff;
	/*	box-shadow: 5px 8.66px 120px 0px rgba(255, 182, 143, 0.25);*/
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.frame {
		padding: 6.25vw;
	}

	.whitebox {
		padding: 6.25vw;
	}
}


/* wavify.js */
svg.wavify-svg {
	position: absolute;
	z-index: -1;
	bottom: -1px;
	width: 100%;
	height: 16vh;
}

svg.wavify-svg path.wavify-path {}


/* =HEADING
----------------------------------------------------- */
.title-standard {
	margin: 0 0 0.75em;
	font-size: 4.0rem;
	font-weight: 500;
	line-height: 1.25;
}

.title-standard>* {
	display: block;
}

.title-standard .english {
	margin: 0 0 10px;
	font-family: "ubuntu", sans-serif;
	color: #ff8392;
	font-size: 2.0rem;
	font-weight: normal;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.title-standard .japanese {}

.title-standard .message {
	position: relative;
	display: inline-block;
	margin: 25px 0 0;
	padding-right: 15px;
	font-family: "museo-sans", sans-serif;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

.title-standard .message::before {
	content: "";
	position: absolute;
	left: 100%;
	top: auto;
	bottom: 0.75em;
	margin: 0 0;
	width: 100px;
	height: 1px;
	background-color: #46403b;
}

.title-32 {
	margin: 0 0 0.85em;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.9;
}

.title-underline {
	margin: 0 0 0.75em;
	padding: 0 0 0.25em;
	border-bottom: solid 1px #dcdcdc;
	font-size: 4.0rem;
	font-weight: 500;
	line-height: 1.5;
}

.title-24 {
	margin: 0 0 0.35em;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 2.0;
}

.title-24.underline {
	margin-bottom: 1.6em;
	padding-bottom: 0.2em;
	border-bottom: solid 1px #dcdcdc;
}

.title-24>.underline {
	display: inline-block;
	padding-bottom: 0.1em;
	border-bottom: solid 1px #46403b;
}

.title-20 {
	margin: 0 0 0.5em;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 2.0;
	letter-spacing: 0.05em;
}

.title-20.underline {
	margin-bottom: 1.0em;
	padding-bottom: 0.2em;
	border-bottom: solid 1px #dcdcdc;
}

.title-28 {
	margin: 0 0 0.75em;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.6;
}


.title-about {
	margin: 0 0 60px;
}

.title-about>* {
	display: block;
}

.title-about .english {
	margin: 0 0 15px;
	font-family: "museo-sans", sans-serif;
	font-size: 6.0rem;
	font-weight: 900;
	letter-spacing: 0.00em;
	line-height: 1.0;
}

.title-about .japanese {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0.00em;
	line-height: 1.2;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.title-standard {
		font-size: 2.8rem;
	}

	.title-standard .english {
		font-size: 1.6rem;
	}

	.title-standard .message {
		font-size: 2.4rem;
	}

	.title-standard .message::before {
		width: 50px;
	}

	.title-32 {
		font-size: 1.5em;
	}

	.title-underline {
		font-size: 1.4em;
	}

	.title-24 {
		font-size: 1.3em;
	}

	.title-20 {
		font-size: 1.1em;
	}

	.title-28 {
		font-size: 1.2em;
	}

	.title-about {
		margin: 0 0 6.25vw;
	}

	.title-about .english {
		font-size: 3.6rem;
	}

	.title-about .japanese {
		font-size: 1.4rem;
	}
}

/* =BUTTON
----------------------------------------------------- */
.button-more {
	position: relative;
	display: inline-block;
	padding: 1.0em 1.0em 1.0em 1.75em;
	width: 260px;
	line-height: 1.5;
	background-color: #ff8392;
	color: #fff;
	font-size: 1.7rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	border-radius: 2em;
	text-align: left;
	text-decoration: none;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
	box-shadow: 5px 6.66px 20px 0px rgba(208, 116, 126, 0.15);
	box-shadow: 3px 4.66px 25px 0px rgba(255, 132, 146, 0.45);
	box-shadow: 7.5px 12.99px 30px 0px rgba(0, 0, 0, 0.15);
}

.button-more>* {
	display: block;
	background: url(assets/images/icon-arrow-right-button-white.webp) no-repeat right 3px center;
	background-size: 18px auto;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.button-more:hover {
	opacity: 1;
	box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0.0);
}

.button-more:hover>* {
	background-position: right 0 center;
}

.button-more.no-shadow {
	box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0.0);
}

.button-more.no-shadow:hover {
	background-color: #ffa6b1;
}

.button-more.entry {
	background-color: #9bd271;
	color: #fff;
}

/*
	.button-more.yellow>* {
		background-image: url(assets/images/icon-arrow-right-blue.webp);
	}
	.button-more.yellow:hover {}
	.button-more.ghost {
		background-color: transparent;
		border: solid 1px #fff;
		color: #fff;
	}
	.button-more.ghost:hover {
		background-color: rgba(255,255,255,0.3);
	}*/

	.button-more.small {
		padding: 0.75em 2em;
		width: 200px;
		font-size: 1.4rem;
	}


@media screen and (min-width: 960px) {
	.button-more.large {
		width: 400px;
		font-size: 2.4rem;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.button-more {
		width: 270px;
		font-size: 1.6rem;
	}
}


.button-sub {
	position: relative;
	display: inline-block;
	padding: 0.5em 1.0em 0.5em 1.75em;
	width: 200px;
	line-height: 1.5;
	border: solid 1px #ff8392;
	background-color: transparent;
	color: #ff8392;
	font-family: "ubuntu", sans-serif;
	font-size: 1.7rem;
	font-weight: normal;
	letter-spacing: 0.10em;
	border-radius: 2em;
	text-align: left;
	text-transform: uppercase;
	text-decoration: none;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.button-sub>* {
	display: block;
	background: url(assets/images/icon-arrow-right-button-pink.webp) no-repeat right 3px center;
	background-size: 18px auto;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.button-sub:hover {
	opacity: 1;
	box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0.0);
}

.button-sub:hover>* {
	background-position: right 0 center;
}

.button-sub.no-shadow {
	box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0.0);
}

.button-sub.no-shadow:hover {
	background-color: #88c9e7;
	background-color: #fcd5da;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.button-sub {
		width: 150px;
		font-size: 1.4rem;
	}
}



ul.list-button {
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}

ul.list-button li {
	display: inline-block;
	margin: 0 10px 10px 0;
}

ul.list-button li .button-more {}


@media screen and (min-width: 0px) and (max-width: 959px) {
	ul.list-button li {
		display: block;
	}
}


/* =LIST
----------------------------------------------------- */

ul.list-simple li {
	margin: 0 0 0.35em;
	position: relative;
	padding-left: 1.2em;
	line-height: 1.8;
}

ul.list-simple li::before {
	content: "・";
	position: absolute;
	left: 0;
	display: inline-block;
	vertical-align: middle;
	margin: 0 1.25em 0 0;
	color: #ccc;
}

ul.list-circle li {
	margin: 0 0 0.35em;
	position: relative;
	padding-left: 1.2em;
	line-height: 1.8;
}

ul.list-circle li::before {
	content: "● ";
	position: absolute;
	left: 0;
	top: 0.6em;
	display: inline-block;
	vertical-align: middle;
	margin: 0 1.25em 0 0;
	color: #ccc;
	font-size: 0.9rem;
}

ul.list-inline {
	font-size: 0;
	letter-spacing: 0;
}

ul.list-inline li {
	display: inline-block;
	margin: 0 10px 10px 0;
	margin-bottom: 10px;
	font-size: 1.6rem;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}




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

	=FRONTPAGE (TOP)

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

/* =TOP - COMMON PARTS
----------------------------------------------------- */

/* =TOP - FIRSTVIEW (SLIDER)
----------------------------------------------------- */
.top-fv {
	position: relative;
	z-index: 1;
	width: calc(100%);
	height: calc(100vh + 200px);
	margin: 0 auto;
	overflow: hidden;
}

.top-fv::before {}

/* FIRSTVIEW - WAVIFY.JS */
.top-fv .wavify-svg {
	z-index: 2;
	bottom: -1px;
	width: 100vw;
	height: 200px;
}

.top-fv .wavify-svg .wavify-path {
	fill: #fff;
}

/* FIRSTVIEW - OBJECT */
.top-fv .object {
	position: absolute;
	z-index: 1;
}

.top-fv .object img {
	width: 100%;
}

.top-fv .object01 {
	left: -50px;
	top: 27vh;
	width: 69vw;
}

/* FIRSTVIEW - IMAGE */
.top-fv .image {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
}

.top-fv .image img {}

/* FIRSTVIEW - CONTENT */
.top-fv .content {
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	height: 100vh;
}

.top-fv .content .tagline {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	text-align: left;
}

.top-fv .content .tagline .inner {
	position: relative;
}

.top-fv .content .tagline .text {
	margin: 0 0 35px;
	color: #fff;
}

.top-fv .content .tagline .text:last-child {
	margin-bottom: 0;
}

.top-fv .content .tagline .text.js-reveal>*::after {
	background-color: #fff;
}

.top-fv .content .tagline .text01 {
	font-family: "museo-sans", sans-serif;
	font-size: 7.2rem;
	font-weight: 900;
	line-height: 1.05;
}

.top-fv .content .tagline .text02 {
	position: relative;
	display: inline-block;
	padding-right: 10px;
	font-size: 3.2rem;
	font-weight: 900;
	line-height: 1.25;
}

.top-fv .content .tagline .text02::before {
	content: "";
	position: absolute;
	left: 100%;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 0.01%;
	height: 1px;
	background-color: #fff;
	transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-webkit-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-moz-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-ms-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-o-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
}

.top-fv .content .tagline .text02.is-show::before {
	width: 100px;
}

@media screen and (min-width: 960px) {
	.top-fv {
		min-height: 800px;
		max-height: 1000px;
	}

	.top-fv .image {}
}

@media screen and (min-width: 1600px) {
	.top-fv {
		max-height: 100%;
	}

	.top-fv .content .tagline .text01 {
		font-size: 8.0rem;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.top-fv {
		margin: 0 auto 15px;
		width: calc(100vw);
		height: calc(85vh - 0px);
		/*		min-height: calc(100vh - 60px - 55px);*/
		background-color: #f9f6f3;
	}

	.top-fv .wavify-svg {
		height: 150px;
	}

	.top-fv .image {
		width: 100%;
		height: 100%;
	}

	.top-fv .object01 {
		left: -50px;
		top: 29vh;
		width: 109%;
	}

	.top-fv .image .inner {}

	.top-fv .content {
		height: 100%;
	}

	.top-fv .content .tagline .inner {
		padding: 6.25vw;
	}

	.top-fv .content .tagline .text {
		margin: 0 0 20px;
	}

	.top-fv .content .tagline .text01,
	.top-fv .content .tagline .text01>* {}

	.top-fv .content .tagline .text01 {
		font-size: 3.8rem;
	}

	.top-fv .content .tagline .text02 {
		font-size: 2.0rem;
	}
}


/* flexslider.js */
.top-fv .flexslider.zoom-out .slides li {
	overflow: hidden;
}

.top-fv .flexslider.zoom-out .slides li img {
	-webkit-transition: all ease-out 8.0s;
	-moz-transition: all ease-out 8.0s;
	-ms-transition: all ease-out 8.0s;
	transition: all ease-out 8.0s;
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
	opacity: 0.8;
}

.top-fv .flexslider.zoom-out .slides .flex-active-slide img {
	-webkit-transform: scale(1.0);
	-moz-transform: scale(1.0);
	-ms-transform: scale(1.0);
	transform: scale(1.0);
}

/* FLEXSLIDER.CSS - OVERRIDE */
.top-fv .flexslider {
	z-index: 2;
	background-color: transparent !important;
	margin-bottom: 0 !important;
	border: none !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

.top-fv .flexslider,
.top-fv .flexslider .slides {
	height: 100%;
}

.top-fv .flexslider .slides li {
	position: relative;
	width: 100%;
	height: 100%;
}

.top-fv .flexslider .slides li img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* PAGER */
.top-fv .flexslider ol.flex-control-paging {
	counter-reset: number;
	list-style: none;
	bottom: -27px !important;
}

.top-fv .flexslider ol.flex-control-paging li {
	padding: 0 !important;
	margin-bottom: 0 !important;
	vertical-align: middle;
	font-size: 0;
	line-height: 0;
}

.top-fv .flexslider ol.flex-control-paging li:before {
	display: none;
}

.top-fv .flexslider ol.flex-control-paging li a {
	width: 9px !important;
	height: 9px !important;
	background-color: #ccc !important;
	box-shadow: none !important;
}

.top-fv .flexslider ol.flex-control-paging li a.flex-active {
	background-color: #333 !important;
}



/* =TOP - MISSION~PRODUCTS
----------------------------------------------------- */
.top-mission-products {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #f9f3f2;
	background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}

.top-mission-products .our-mission {}

.top-mission-products .our-products {}

/* WAVIFY.JS */
.top-mission-products .our-products .section {
	padding-bottom: 240px;
}

.top-mission-products .wavify-svg {
	bottom: -1px;
	width: 100vw;
	height: 200px;
}

.top-mission-products .wavify-svg .wavify-path {
	fill: #fff;
}

@media screen and (min-width: 960px) {
	.top-mission-products .our-products .section {
		padding-top: 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.top-mission-products .our-products .section {
		padding-bottom: 150px;
	}

	.top-mission-products .wavify-svg {
		height: 150px;
	}
}


/* OUR MISSION */
.our-mission .inner {
	position: relative;
}

.our-mission .inner .object {
	position: absolute;
	z-index: -1;
}

.our-mission .inner .object01 {
	top: -80px;
	left: -130px;
	width: 900px;
}

.our-mission .image-content>.image {
	position: relative;
}

.our-mission .image-content>.content {
	position: relative;
}

.our-mission .title-our-mission {
	position: absolute;
	z-index: 1;
	top: -100px;
	font-family: "museo-sans", sans-serif;
	font-size: 4.8rem;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.05em;
}

.our-mission .title-our-mission .sub {
	position: relative;
	display: block;
	margin: 0 0 1em;
	padding-left: 120px;
	font-family: "ubuntu", sans-serif;
	color: #46403b;
	font-size: 2.0rem;
	font-weight: normal;
	letter-spacing: 0.10em;
	text-transform: uppercase;
	opacity: 0.7;
}

.our-mission .title-our-mission .sub::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 100px;
	height: 1px;
	background-color: #46403b;
	opacity: 0.35;
}

.our-mission .title-our-mission .main {
	display: block;
}

.our-mission .title-our-mission .main .changetheword {
	color: #ff8392;
}

.our-mission .title-our-mission .main .changetheword .js-rotatingtext {}

/* js-rotatingtext */
.js-rotatingtext {
	display: inline-block;
	margin-left: 16px;
	position: absolute;
	width: 100%;
	opacity: 0;
}

.js-rotatingtext .letter {
	display: inline-block;
	position: relative;
	float: left;
	transform: translateZ(25px);
	transform-origin: 50% 50% 25px;
}

.js-rotatingtext .letter.out {
	transform: rotateX(90deg);
	transition: transform 0.32s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.js-rotatingtext .letter.behind {
	transform: rotateX(-90deg);
}

.js-rotatingtext .letter.in {
	transform: rotateX(0deg);
	transition: transform 0.38s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.our-mission .mission-img {
	position: relative;
	padding-top: 160px;
	width: calc(100% + 280px);
	margin-left: -200px;
}

.our-mission .mission-img .gradient {
	position: absolute;
	z-index: -1;
}

.our-mission .mission-img .gradient01 {
	top: -40px;
	left: -330px;
	width: 3255px;
}

.our-mission .mission-text .title {
	margin: 0 0 1.5em;
	font-size: 3.2rem;
	font-weight: normal;
	line-height: 2;
}

.our-mission .mission-text p {
	line-height: 2.5;
}

@media screen and (min-width: 960px) {
	.our-mission .image-content {
		align-items: flex-start;
	}

	.our-mission .image-content>.image {
		width: 540px;
	}

	.our-mission .image-content>.content {
		width: 560px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.our-mission .inner .object01 {
		top: 0;
	}

	.our-mission .title-our-mission {
		position: static;
		letter-spacing: 0;
		font-size: 3.2rem;
	}

	.our-mission .title-our-mission .sub {
		font-size: 1.4rem;
	}

	.our-mission .title-our-mission .main {}

	.our-mission .mission-img {
		padding-top: 0;
		margin-bottom: -80px;
	}

	.our-mission .mission-text .title {
		font-size: 2.4rem;
	}
}


/* OUR PRODUCTS （※下層ページでも共通） */
/* icucoのプロダクト - スライダー (swiper.js) */
.our-products {
	background-color: transparent;
}

.our-products .appeal-netzero {}

.our-products .appeal-netzero .title>* {
	display: inline;
}

.products-lineup {
	align-items: stretch;
}

.products-lineup .lineup {
	height: auto;
	margin-bottom: 40px;
	border-radius: 20px;
	box-shadow: 10px 17.321px 40px 0px rgba(0, 0, 0, 0.1);
	background-color: #fff;
}

.products-lineup .lineup .inner {
	padding: 60px;
}

.products-lineup .lineup .inner .image-content>.image {}

.products-lineup .lineup .inner .image-content>.content {}

.products-lineup .lineup .inner .visual {
	text-align: center;
}

.products-lineup .lineup .inner .numbering {
	position: relative;
	margin: 0 0 35px;
}

.products-lineup .lineup .inner .numbering::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 160px;
	height: 1px;
	margin: auto 0;
	background-color: #ff8392;
}

.products-lineup .lineup .inner .numbering .number {
	display: inline-block;
	padding-left: 200px;
	font-family: "ubuntu", sans-serif;
	color: #ff8392;
	font-size: 2.0rem;
}

.products-lineup .lineup .inner .header {}

.products-lineup .lineup .inner .header .tagline {
	margin: 0 0 20px;
}

.products-lineup .lineup .inner .header .tagline01 {
	font-size: 2.0rem;
}

.products-lineup .lineup .inner .header .tagline01>* {
	background-color: #f0e3dc;
	padding: 0.5em 1em;
	border-radius: 5px;
	line-height: 1.5;
}

.products-lineup .lineup .inner .header .tagline02 {
	font-size: 3.2rem;
	line-height: 1.5;
}

.products-lineup .lineup .inner .header .logo {
	margin: 0 0 20px;
}

.products-lineup .lineup .inner .header .logo img {
	zoom: 0.5;
	max-width: 100%;
}

.products-lineup .lineup .inner .header .text {
	margin: 0 0 30px;
	opacity: 0.7;
}

.products-lineup .lineup .inner .header .button {}


@media screen and (min-width: 960px) {
	.our-products .appeal-netzero {
		width: 780px;
		margin: auto;
	}

	.our-products .appeal-netzero .image-content {
		align-items: center;
	}

	.our-products .appeal-netzero .image-content>.image {
		width: calc(180px);
	}

	.our-products .appeal-netzero .image-content>.content {
		width: calc(100% - 240px);
	}

	.products-lineup .lineup .inner .image-content {
		align-items: center;
	}

	.products-lineup .lineup .inner .image-content>.image {
		width: 48%;
	}

	.products-lineup .lineup .inner .image-content>.content {
		width: 48%;
	}

	.products-lineup .lineup .inner .header {
		position: relative;
		height: 440px;
	}

	.products-lineup .lineup .inner .header .button {
		position: absolute;
		left: 0;
		bottom: 0;
		margin: auto;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.products-lineup .lineup {
		border-radius: 20px;
		box-shadow: none;
	}

	.products-lineup .lineup .inner {
		padding: 6.25vw;
	}

	.products-lineup .lineup .inner .visual img {
		zoom: 0.25;
	}

	.products-lineup .lineup .inner .numbering {
		display: none;
	}

	.products-lineup .lineup .inner .header {
		position: static;
		text-align: center;
		padding-bottom: 60px;
	}

	.products-lineup .lineup .inner .header .button {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 6.25vw;
		margin: auto;
	}

	.products-lineup .lineup .inner .header .tagline01 {
		font-size: 1.1em;
	}

	.products-lineup .lineup .inner .header .tagline02 {
		font-size: 1.3em;
	}

	.products-lineup .lineup .inner .header .logo img {
		zoom: 0.35;
	}

	.products-lineup .lineup .inner .button-more {
		width: 100%;
		max-width: 260px;
		/*		font-size: 1.4rem;*/
	}
}

/* swiper.js */
.our-products .swiper-grandparent {
	position: relative !important;
	overflow: hidden;
	width: 100%;
	padding-bottom: 50px;
	margin-bottom: -50px;
}

/* 左右のスライドを見せるver. （swiper.min.css を上書き） */
.our-products .swiper-parent {
	max-width: 1200px;
}

.our-products .swiper-grandparent .swiper-parent .swiper-container {
	overflow: visible !important;
}

.our-products .loop .row.swiper-wrapper {
	flex-wrap: inherit !important;
	margin-bottom: 0px !important;
}

.our-products .swiper-container {
	/* Prev & Next をフル画面にしたいとき */
	position: static !important;
}

.our-products .swiper-slide {}

.our-products .swiper-slide-active {
	opacity: 1;
}

/* Prev & Next */
.our-products .swiper-button-prev,
.our-products .swiper-container-rtl .swiper-button-next,
.our-products .swiper-button-next,
.our-products .swiper-container-rtl .swiper-button-prev {
	background-size: 100% auto !important;
	top: 0 !important;
	bottom: 0 !important;
	margin: auto !important;
	width: 24px !important;
	height: 100% !important;
}

.our-products .swiper-button-prev,
.our-products .swiper-container-rtl .swiper-button-next {
	left: 3.125vw;
	background-image: url(assets/images/icon-arrow-left-slider.webp) !important;
}

.our-products .swiper-button-next,
.our-products .swiper-container-rtl .swiper-button-prev {
	right: 3.125vw;
	background-image: url(assets/images/icon-arrow-right-slider.webp) !important;
}

/* pagination */
.our-products .swiper-container .swiper-pagination {
	position: static;
	padding: 15px 0 0;
}

.our-products .swiper-container .swiper-pagination-bullet {
	background-color: #ccc !important;
	opacity: 1 !important;
}

.our-products .swiper-container .swiper-pagination-bullet-active {
	background-color: #aaa !important;
}


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

	.our-products .swiper-button-prev,
	.our-products .swiper-container-rtl .swiper-button-next,
	.our-products .swiper-button-next,
	.our-products .swiper-container-rtl .swiper-button-prev {}

}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.our-products .swiper-container {}

	.our-products .swiper-slide {}

	.our-products .swiper-slide-active {
		opacity: 1;
	}

	/* フル画面 ver.
		.our-products .swiper-grandparent { padding: 0 !important; }
		.our-products .swiper-grandparent .wrapper { padding: 0 !important; }
		*/

	/* センタリング ver. */
	.our-products .swiper-grandparent {}

	.our-products .swiper-grandparent .wrapper {
		padding: 0 6.25vw !important;
	}

	.our-products .swiper-grandparent .swiper-parent .swiper-container {
		overflow: hidden !important;
		background-color: #fff;
		border-radius: 10px;
	}


	.our-products .swiper-button-next,
	.our-products .swiper-button-prev {
		/*display: none !important;*/
	}

	/* Prev & Next */
	.our-products .swiper-button-prev,
	.our-products .swiper-container-rtl .swiper-button-next,
	.our-products .swiper-button-next,
	.our-products .swiper-container-rtl .swiper-button-prev {
		top: 0 !important;
		width: 15px !important;
		height: 100% !important;
		margin-top: 0 !important;
	}

	.our-products .swiper-button-prev,
	.our-products .swiper-container-rtl .swiper-button-next {
		left: 20px !important;
		background-size: 100% auto !important;
	}

	.our-products .swiper-button-next,
	.our-products .swiper-container-rtl .swiper-button-prev {
		right: 20px !important;
		background-size: 100% auto !important;
	}
}


/* =TOP - NEWS
----------------------------------------------------- */
.top-news {
	position: relative;
	z-index: 3;
}

/* NEWS専用のループ */
/* 下層NEWS、RECRUIT MEDIAでも使用（ベースはownedmedia.css） */

.loop .type-news {}

.loop .type-news .col {
	margin-bottom: 40px;
}

.loop .type-news .image {
	height: 0;
	padding-bottom: 66.66%;
	position: relative;
	border-radius: 5px;
}

.loop .type-news .image img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.loop .type-news .image img:hover {}

.loop .type-news .header {
	padding: 0;
	margin-top: 15px;
}

.loop .type-news .header>*:not( :last-child) {
	margin-bottom: 15px;
}

.loop .type-news .title {
	font-weight: bold;
}

.loop .type-news .title a {}

.loop .type-news .title a:hover {}

.loop .type-news .meta {}

/* インライン配置 */
.loop .type-news .meta>* {
	display: inline-block;
	vertical-align: middle;
}

.loop .type-news .meta>*:not( :last-child) {}

.loop .type-news .meta .date {}

.loop .type-news .category {}

.loop .type-news .category a {
	background-color: transparent;
	border: none;
	border-radius: 0;
	padding: 0;

	display: inline-block;
	padding-bottom: 5px;
	border-bottom: solid 1px #ff8392;
	color: #ff8392;
}

.loop .type-news .tag {
	display: none;
}

.loop .type-news .tag ul.list-tag li {}

.loop .type-news .content {
	display: none;
}

.loop .type-news .content .text {}


@media screen and (min-width: 960px) {
	.loop .type-news.col-2 {
		margin: 0 -5% 0 0;
	}

	.loop .type-news.col-2 .col {
		width: 45%;
		margin: 0 5% 6% 0;
	}

	.loop .type-news .title {
		min-height: 3.5em;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {

	/* main（ヨコ配置パターン）*/
	.loop {}

	.loop .type-news {}

	.loop .type-news .col {
		width: 100%;
		margin: 0 0 5vw;
		padding: 0 0 5vw;
		border-bottom: solid 1px rgba(0, 0, 0, 0.1);

		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.loop .type-news .col:last-child {
		border-bottom: 0;
	}

	.loop .type-news .image {
		width: 35%;
	}

	.loop .type-news .header {
		width: 60%;
	}

	.loop .type-news .image {
		padding-bottom: 25vw;
	}

	.loop .type-news .header {
		margin-top: 0;
	}

	.loop .header>*:not( :last-child) {
		margin-bottom: 10px;
	}

	.loop .type-news .date {
		font-size: 1.2rem;
	}

	.loop .type-news .category {
		float: none;
	}

	.loop .type-news .title {
		margin-bottom: 10px;
		font-size: 14px;
	}

	.loop .type-news .content {
		display: none;
		font-size: 9px;
	}

	.loop .type-news .tag {}

	.loop ul.list-tag li {
		margin-right: 5px;
		margin-bottom: 5px;
	}

	.loop .tag ul.list-tag li a {
		font-size: 9px;
	}

}

/* =TOP - RECRUIT
----------------------------------------------------- */
.top-recruit {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #f9f3f2;
}

/* WAVIFY.JS */
.top-recruit .section {
	padding-top: 240px;
}

.top-recruit .wavify-svg {
	z-index: 1;
	top: 0;
	bottom: inherit;
	width: 100vw;
	height: 200px;
	transform: rotateX(180deg);
}

.top-recruit .wavify-svg .wavify-path {
	fill: #fff;
}

.top-recruit .inner {
	position: relative;
}

.top-recruit .inner .image-content>.image {
	position: relative;
}

.top-recruit .inner .image-content>.content {
	position: relative;
}

.top-recruit .recruit-img {
	position: relative;
}

.top-recruit .recruit-img .gradient {
	position: absolute;
	z-index: -1;
}

.top-recruit .recruit-img .gradient01 {
	top: -240px;
	left: -680px;
	width: 1458px;
}

.frame-fullwidth {
	width: calc(100% - 80px);
	margin: 40px auto;
	padding: 80px;
	border-radius: 20px;
	background-color: rgba(255, 255, 255, 0.7);
}

.top-recruit .frame-fullwidth {}

.top-recruit .frame-fullwidth .image-content>.image {}

.top-recruit .frame-fullwidth .image-content>.content {}

@media screen and (min-width: 960px) {
	.top-recruit .inner .image-content {
		align-items: center;
	}

	.top-recruit .inner .image-content>.image {
		width: 50%;
	}

	.top-recruit .inner .image-content>.content {
		width: 48%;
	}

	.top-recruit .frame-fullwidth .image-content {
		align-items: flex-start;
	}

	.top-recruit .frame-fullwidth .image-content>.image {
		width: 220px;
	}

	.top-recruit .frame-fullwidth .image-content>.content {
		width: calc(100% - 280px);
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.top-recruit .recruit-img {
		margin: -80px;
		margin-bottom: -40px;
	}

	.top-recruit .recruit-img .gradient01 {
		display: none;
	}

	.top-recruit .inner .image-content>.content {
		text-align: center;
	}

	.frame-fullwidth {
		width: calc(100% - 6.25vw);
		margin: 3.125vw auto;
		padding: 9.375vw 0;
		border-radius: 10px;
	}
}



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

	=SUBPAGES

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

/* =SUBPAGES - BREADCRUMBS
----------------------------------------------------- */
#breadcrumbs {
	line-height: 40px;
	font-size: 85%;
	font-weight: 500;
}

#breadcrumbs,
#breadcrumbs a {}

#breadcrumbs a {
	display: inline-block;
	color: #46403b;
	text-decoration: none;
}

#breadcrumbs a:hover {
	text-decoration: underline;
}

#breadcrumbs .inner {
	padding: 20px 40px;
}

#breadcrumbs p>span {
	font-family: serif;
}

#breadcrumbs p>span>span a,
#breadcrumbs p>span>span .breadcrumb_last {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif;
	display: inline-block;
	margin-left: 1em;
	margin-right: 1em;
}

#breadcrumbs p>span>span>a:first-child {
	margin-left: 0;
	margin-right: 1em;
	padding-left: 24px;
	background: url(assets/images/icon-breadcrumbs-home.webp) no-repeat left center;
	background-size: 13px auto;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	#breadcrumbs .inner {
		padding: 15px 15px;
	}
}

#breadcrumbsnavxt {
	line-height: 40px;
	font-size: 85%;
	font-weight: 500;
}

#breadcrumbsnavxt,
#breadcrumbsnavxt a {}

#breadcrumbsnavxt a {
	display: inline-block;
	color: #46403b;
	text-decoration: none;
}

#breadcrumbsnavxt a:hover {
	text-decoration: underline;
}

#breadcrumbsnavxt .inner {
	padding: 20px 40px;
	font-family: serif;
}

#breadcrumbsnavxt .inner span {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif;
	display: inline-block;
}

#breadcrumbsnavxt .inner>span {
	margin-left: 1em;
	margin-right: 1em;
}

#breadcrumbsnavxt .inner>span:first-child {
	margin-left: 0;
	padding-left: 24px;
	background: url(assets/images/icon-breadcrumbs-home.webp) no-repeat left center;
	background-size: 13px auto;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	#breadcrumbsnavxt .inner {
		padding: 15px 15px;
	}
}


/* =SUBPAGES - FIRSTVEW
----------------------------------------------------- */
.sub-fv {
	position: relative;
	z-index: 1;
	height: auto;
	overflow: inherit;
	margin: 0 40px;
	background-image: -moz-linear-gradient(0deg, rgb(243, 189, 194) 0%, rgb(243, 154, 163) 36%, rgb(243, 198, 142) 71%, rgb(250, 227, 198) 99%, rgb(250, 227, 198) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(243, 189, 194) 0%, rgb(243, 154, 163) 36%, rgb(243, 198, 142) 71%, rgb(250, 227, 198) 99%, rgb(250, 227, 198) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(243, 189, 194) 0%, rgb(243, 154, 163) 36%, rgb(243, 198, 142) 71%, rgb(250, 227, 198) 99%, rgb(250, 227, 198) 100%);
	color: #fff;
	text-align: center;
	border-radius: 20px;
	overflow: hidden;
}

.sub-fv .object {
	position: absolute;
	z-index: 1;
}

.sub-fv .object img {
	zoom: 0.5;
}

.sub-fv .object01 {
	left: -50px;
	top: -10px;
}

.sub-fv .object02 {
	right: 40px;
	top: 40px;
}

.sub-fv .inner {
	position: relative;
	z-index: 2;
}

.sub-fv .inner .title {
	margin-bottom: 0;
}

.title-page {
	margin: 0 0 0.75em;
	font-size: 4.8rem;
	font-weight: bold;
	line-height: 1.25;
}

.title-page .english,
.title-page .japanese {
	display: block;
}

.title-page .english {
	margin: 0 0 10px;
	font-family: "ubuntu", sans-serif;
	font-size: 2.0rem;
	font-weight: normal;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.title-page .japanese {}


.sub-fv.nobg {
	background: none;
	color: inherit;
}

.sub-fv.nobg .object {
	display: none;
}

.sub-fv.nobg .title-page .english {
	color: #ff8392;
}


@media screen and (min-width: 960px) {
	.sub-fv .section {
		padding: 80px 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-fv {
		margin: 0 6.25vw;
		margin: 0 15px;
		border-radius: 10px;
	}

	.sub-fv .object img {
		zoom: 0.25;
	}

	.sub-fv .object02 {
		right: -5px;
		top: 40px;
	}

	.title-page {
		font-size: 2.4rem;
	}

	.title-page .english {
		font-size: 1.6rem;
	}
}


/* =SUBPAGES - PARTS - OTHER JOBS
----------------------------------------------------- */
/*.sub-other-jobs {
	position: relative;
	z-index: 1;
}

@media screen and (min-width: 960px) {
	.sub-other-jobs::before {
		content: "";
		position: absolute;
		z-index: -1;
		left: 0;
		bottom: 0;
		width: 100%;
		height: calc(60%);
		background-color: #f2f2f2;
	}
}
@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-other-jobs {
		background-color: #f2f2f2;
	}
}*/

/* =SUBPAGES - FORM (IFRAME)
----------------------------------------------------- */

/* フォーム（「Account Engagement」を使用） */
.form-template-lp iframe,
.form-template-contact iframe {
	height: 2430px;
}
.form-template-seminar_order iframe {
	height: 1890px;
}
.form-template-entry iframe {
	height: 1330px;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.form-template-lp iframe,
	.form-template-contact iframe {
		height: 3300px;
	}
	.form-template-seminar_order iframe {
		height: 2170px;
	}
	.form-template-entry iframe {
		height: 1440px;
	}
}



/* =SUBPAGES - FORM (PLUG-IN)
----------------------------------------------------- */

/* フォーム（プラグインを使用） */

/* フォーム本体 */
.form-main {
	padding-top: 0;
}

.form-main * {
	line-height: 1.8;
}

.form-main table {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.75;
	text-align: left;
}

.form-main tr,
.form-main th,
.form-main td {
	display: block;
	width: 100%;
	vertical-align: top;
	text-align: left;
	border: none;
	font-weight: 600;
}

.form-main tr {
	margin: 0 0 2em;
}

.form-main tr {}

.form-main th,
.form-main td {
	padding: 0.5em 0;
	font-weight: normal;
}

.form-main th {
	font-size: 1.125em;
}

.form-main input[type="text"],
.form-main input[type="email"],
.form-main input[type="tel"],
.form-main select,
.form-main textarea {
	width: 100%;
	padding: 1.005em;
	border-radius: 5px;
	background-color: transparent;
	border: solid 1px #ccc;
}

.mwform-tel-field input[type="text"],
.mwform-zip-field input[type="text"] {
	display: inline-block;
	vertical-align: unset;
}

/*.form-main .horizontal-item + .horizontal-item {
	margin-left: 0px;
	white-space: nowrap;
}*/
.form-main textarea {
	width: 100%;
}

.form-main select {
	max-width: 250px;
	font-size: inherit;
}

.form-main .vertical label {
	display: block;
}

.form-main ::placeholder {
	color: #aaa;
}

.form-main em {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0.75em 0 0;
	padding: 0.25em 1.0em;
	border-radius: 3px;
	background-color: #ff8392;
	color: #fff;
	font-size: 0.75em;
	font-weight: 500;
	line-height: 1.2;
}

.form-main .error {
	display: block;
	margin: .5em 0 0;
	padding: .5em 1em;
	border: solid 1px #F00;
	background-color: #fbf1f1;
	color: #f00;
	border-radius: 0;
}

.form-main a {}

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

@media screen and (min-width: 0px) and (max-width: 959px) {

	/* MW WP Form */
	.form-main th,
	.form-main td {
		width: 100% !important;
		padding: 5px 0 !important;
		font-size: 1em !important;
		background-color: transparent;
		border: none !important;
	}

	.form-main input,
	.form-main input[type="text"],
	.form-main input[type="email"],
	.form-main textarea,
	.form-main select,
	.form-main input[type*="submit"] {
		font-size: 16px !important;
	}

	.form-main input[type="text"],
	.form-main input[type="email"],
	.form-main textarea {
		padding: 0.75em;
		width: 100%;
	}

	.form-main select {
		padding: 0.75em;
		width: auto;
	}

	.form-main input[type="radio"] {
		padding: 0 !important;
	}

	.form-main input[type*="submit"] {
		width: 100% !important;
	}

	.form-main .horizontal>* {
		display: inline-block;
		vertical-align: middle;
		width: 100%;
		margin: 0 0 1%;
	}

	.form-main .horizontal-half>* {
		margin-bottom: 10px;
	}
}


/* レイアウト調整 */
.form-main .horizontal>br {
	display: none;
}

.form-main .horizontal label {
	padding: 1em;
	line-height: 1;
	vertical-align: middle;
	max-width: 100%;
	border-radius: 3px;
	background-color: transparent;
	border: solid 1px #ccc;
}

.form-main .horizontal label:hover {
	border-color: #f00;
}

.mw_wp_form .horizontal-item+.horizontal-item {
	margin-left: 0 !important;
}

@media screen and (min-width: 960px) {
	.form-main .horizontal {
		font-size: 0;
		letter-spacing: 0;
	}

	.form-main .horizontal>* {
		display: inline-block;
		vertical-align: text-top;
		font-size: 1.5rem;
	}

	.form-main .horizontal.col-3>* {
		width: 32.33%;
		margin: 0 1% 1% 0;
	}

	.form-main .horizontal.col-1>* {
		width: 100%;
		margin: 0 0% 1% 0;
	}

	.form-main .horizontal label {
		padding: 15px 20px;
	}

	.form-main .horizontal-half {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-shrink: 0;
		justify-items: center;
		align-items: center;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.form-main .horizontal-half>* {
		margin-bottom: 0;
		width: 50%;
	}

	.form-main .horizontal-half>*:nth-child(odd) {
		padding-right: 10px;
	}

	.form-main .horizontal.naiyou .horizontal-item:nth-of-type(4) {
		width: 65.66%;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.form-main .horizontal>* {
		display: inline-block;
		vertical-align: middle;
		width: 100%;
		margin: 0 0 1%;
	}

	.form-main .horizontal-half>* {
		margin-bottom: 10px;
	}
}


/* 送信ボタン */
.form-main input[type="submit"] {
	border-radius: 0;
	background: url(assets/images/icon-arrow-right-button-white.webp) no-repeat right 23px center;
	background-size: 18px auto;

	position: relative;
	display: inline-block;
	padding: 1.0em 1.0em 1.0em 1.75em;
	width: 320px;
	line-height: 1.5;
	background-color: #ff8392;
	color: #fff;
	font-size: 1.7rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	border-radius: 2em;
	text-align: left;
	text-transform: uppercase;
	text-decoration: none;
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
	box-shadow: 5px 6.66px 20px 0px rgba(208, 116, 126, 0.15);
	box-shadow: 3px 4.66px 25px 0px rgba(255, 132, 146, 0.45);
	box-shadow: 7.5px 12.99px 30px 0px rgba(0, 0, 0, 0.15);
}

.form-main input[type="submit"]:hover {
	opacity: 1;
	box-shadow: 0 0 0px 0px rgba(0, 0, 0, 0.0);
	background-position: right 20px center;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.form-main input[type="submit"] {
		font-size: 1.0em;
		padding: 0.0em 1.5em;
		height: 60px;
		line-height: 55px;
	}

	.form-main input[type="submit"]::before {}
}



/* =SUBPAGES - COMMON PARTS
----------------------------------------------------- */
.section-header {
	position: relative;
	padding-bottom: 40px;
}

.section-header::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	width: 100px;
	height: 1px;
	background-color: #46403b;
}

.title-message {
	margin: 0 0 25px;
	padding-right: 15px;
	font-family: "museo-sans", sans-serif;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.section-header {}

	.title-message {
		font-size: 2.4rem;
	}
}

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

	=SUBPAGES
		NEWS - ARCHIVE
		NEWS - ARTICLE
		ABOUT
		ABOUT - MISSION
		ABOUT - MESSAGE
		ABOUT - MEMBER
		SERVICE
		COMPANY
		CONTACT
		CONTACT - THANKS
		RECRUIT
		RECRUIT - COLUMN
		RECRUIT - JOBS
		RECRUIT - JOBS - ARTICLE
		RECRUIT - ENTRY
		RECRUIT - ENTRY - THANKS


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


/* =SUBPAGES - NEWS - ARCHIVE
----------------------------------------------------- */
.sub-news {}

.bg-fadein-pink {
	background-color: #f9f3f2;
	background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}

/* カテゴリー・年別絞り込みボタン（※TOPページなどでも使用） */
.news-archive-header {
	font-family: "ubuntu", sans-serif;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.news-archive-header .news-archive-header-inner {
	position: relative;
}

.news-archive-header .title {
	position: absolute;
	left: 0;
	margin: 0 0 15px;
	color: #b2b0af;
	font-size: 1.7rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

ul.list-news-archive {
	position: relative;
	margin: 0 0 2rem;
	padding-left: 40px;
	margin-left: 160px;
	font-size: 0;
	letter-spacing: 0.05em;
}

ul.list-news-archive::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 80%;
	background-color: rgba(0, 0, 0, 0.2);
}

ul.list-news-archive:last-child {
	margin-bottom: 0;
}

ul.list-news-archive li {
	display: inline-block;
	vertical-align: top;
	margin: 0 2em 1em 0;
	font-size: 1.8rem;
}

ul.list-news-archive li a {
	display: block;
	border-bottom: solid 2px transparent;
	color: #b2b0af;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
}

ul.list-news-archive li.active a,
ul.list-news-archive li a[aria-current] {
	border-color: #ff8392;
	color: #ff8392;
}

ul.list-news-archive li a:hover {
	opacity: 1;
	border-color: #ff8392;
	color: #ff8392;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.news-archive-header .title {
		position: static;
		margin: 0 0 15px;
	}

	ul.list-news-archive {
		position: relative;
		margin: 0 0 2rem;
		padding-left: 0;
		margin-left: 0;
	}

	ul.list-news-archive::before {
		display: none;
	}

	ul.list-news-archive li {
		margin: 0 1em 1em 0;
		font-size: 1.5rem;
		font-weight: normal;
	}

	ul.list-news-archive li a {}
}


/* =SUBPAGES - NEWS - DETAIL
----------------------------------------------------- */
.sub-news-detail {}

.sub-news-detail::before {}

/* 記事本文中のスタイルはownedmedia.cssを参照 */

/* 記事終わりのお問い合わせボックス */
.article .contactbox {
	background-color: #f9f6f3;
	padding: 3em 4em;
	border-radius: 5px;
	text-align: left;
}

.article .contactbox .flex-parent {
	align-items: center;
}

.article .contactbox .content {
	font-size: 1.3rem;
}

.article .contactbox .content .title {
	margin: 0 0 0.5em;
	font-size: 1.5em;
	line-height: 1.5;
}

.article .contactbox .button {
	width: 300px;
}

.article .contactbox .button .button-more {
	min-width: inherit;
	width: 100%;
}

.news-article-footer {
	text-align: center;
}

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* シェアボタン */
/* 横並びver. */
ul.list-share {
	margin: 0 0 2rem;
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}

ul.list-share li {
	display: inline-block;
	margin: 0 5px 10px;
	font-size: 1.6rem;
}

/*ul.list-share::before {
	content: "SHARE";
	display: inline-block;
	vertical-align: text-bottom;
	margin: 0 1em 0 0;
	font-family: futura-pt, sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 0.05em;
	opacity: 0.5;
}*/
@media screen and (min-width: 0px) and (max-width: 959px) {
	ul.list-share li {
		margin: 0 3px 5px;
		width: 35px;
	}
}

/* 縦並び・追従ver.
@media screen and (min-width: 960px) {
	.news-article-header {
		position: relative;
	}
	.news-article-header ul.list-share.vertical {
		position: absolute;
		top: 0;
		left: -100px;
	}
	.news-article-header ul.list-share.vertical li {
		display: block;
		margin: 0 0 10px;
	}
}
@media screen and (min-width: 0px) and (max-width: 959px) {
	.news-article-header ul.list-share.vertical {
		text-align: left;
	}
	.news-article-header .title {
		font-size: 1.5em;
	}
}
@media screen and (min-width: 0px) and (max-width: 959px) {
}
 */

/* 関連記事・新着記事 */
.news-article-related {}


/* =SUBPAGES - ABOUT
----------------------------------------------------- */
.sub-about {
	position: relative;
	z-index: 1;
}

.about-lineup {}

.about-lineup .lineup {
	margin-bottom: 300px;
}

.about-lineup .lineup:last-child {
	margin-bottom: 0;
}

.about-lineup .lineup .image-content {
	position: relative;
}

.about-lineup .lineup .image-content::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	width: calc(50% + 200px);
	height: calc(100% + 200px);
	margin: -100px;
	background-color: #fbf2f4;
	border-radius: 10px;
}

.about-lineup .lineup.mission .image-content::before {
	background-color: #fbf2f4;
}

.about-lineup .lineup.message .image-content::before {
	background-color: #effae7;
}

.about-lineup .lineup.member .image-content::before {
	background-color: #f7f1ee;
}

.about-lineup .lineup .image-content>.image,
.about-lineup .lineup .image-content>.content {
	position: relative;
}

.about-lineup .lineup .image-content>.image {
	z-index: 3;
}

.about-lineup .lineup .image-content>.image img {
	border-radius: 10px;
	overflow: hidden;
}

.about-lineup .lineup .image-content>.content {
	z-index: 2;
	padding: 80px 0;
}

.about-lineup .lineup .numbering {
	position: absolute;
	z-index: 2;
	top: -170px;
	left: 0;
	font-family: "ubuntu", sans-serif;
	color: #ff8392;
	font-size: 10.0rem;
	font-weight: 300;
	line-height: 1;
	padding-bottom: 20px;
	border-bottom: solid 1px #ff8392;
}

.about-lineup .lineup .title {
	margin: 0 0 40px;
	line-height: 2.0;
}

@media screen and (min-width: 960px) {
	.about-lineup .lineup .image-content {
		align-items: center;
	}

	.about-lineup .lineup .image-content::before {
		right: 0;
	}

	.about-lineup .lineup .image-content.reverse::before {
		right: auto;
		left: 0;
	}

	.about-lineup .lineup .image-content>.image {
		width: calc(48% + 140px);
		margin-left: -140px;
	}

	.about-lineup .lineup .image-content>.content {
		width: calc(46%);
		margin-right: 0;
	}

	.about-lineup .lineup .image-content.reverse>.image {
		margin-left: inherit;
		margin-right: -140px;
	}

	.about-lineup .lineup .image-content.reverse>.content {
		margin-right: inherit;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.about-lineup .lineup {
		margin-bottom: 9.375vw;
	}

	.about-lineup .lineup .image-content::before {
		width: 100vw;
		height: 70%;
		top: auto;
		bottom: 0;
		margin: 0 -6.25vw;
		border-radius: 0;
	}

	.about-lineup .lineup .image-content>.content {
		padding: 0;
		padding-bottom: 9.375vw;
	}
}

/* CSR 環境保全への取り組み */
/* ※SERVICEページでも共通 */
/* 冒頭部分 */
.sub-csr-intro {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.sub-csr-intro .introduction {
	text-align: center;
}

.sub-csr-intro .introduction .total-result {}

.total-result {}

.total-result .numbering {
	margin: 0 0 10px;
	font-family: "ubuntu", sans-serif;
	color: #ff8392;
	font-weight: 400;
	text-align: center;
}

.total-result .numbering>* {
	display: inline-block;
	vertical-align: text-bottom;
	line-height: 1.0;
}

.total-result .numbering .number {
	font-size: 14.0rem;
	letter-spacing: -0.025em;
}

.total-result .numbering .unit {
	font-size: 10.0rem;
}

.total-result .title {
	margin: 0 0 0.75em;
	font-size: 1.5em;
	line-height: 1.5;
}

.total-result .meta {
	font-size: 1.0em;
	line-height: 1.8;
	opacity: 0.7;
	min-height: 8em;
}

.sub-csr-intro .appeal-netzero {}

.sub-csr-intro .appeal-netzero .title>* {
	display: inline;
	border-bottom: solid 1px #46403b;
}

/* スライダー部分（swiper.js） */
.sub-csr-products {}

.sub-csr-products .section {
	position: relative;
	margin-top: 100px;
	background-color: #d2e5ba;
}

.sub-csr-products .section .object {
	position: absolute;
	top: -170px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
}

.sub-csr-products .section .object img {
	zoom: 0.5;
}

.csr-products-lineup {
	align-items: stretch;
}

.csr-products-lineup .lineup {
	height: auto;
	border-radius: 20px;
	box-shadow: 10px 17.321px 40px 0px rgba(0, 0, 0, 0.1);
	background-color: #fff;
}

.csr-products-lineup .lineup .inner {
	padding: 60px;
	text-align: center;
}

.csr-products-lineup .lineup .inner .visual {
	position: absolute;
	top: -150px;
	left: 0;
	right: 0;
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.csr-products-lineup .lineup .inner .visual img {
	zoom: 0.25;
}

.csr-products-lineup .lineup .inner .total-result {
	margin: 0 0 30px;
	min-height: 380px;
}

.csr-products-lineup .lineup .inner .button-more {
	text-transform: inherit;
}

@media screen and (min-width: 960px) {
	.sub-csr-intro .appeal-netzero .image-content {
		align-items: center;
	}

	.sub-csr-intro .appeal-netzero .image-content>.image {
		width: calc(260px);
	}

	.sub-csr-intro .appeal-netzero .image-content>.content {
		width: calc(100% - 320px);
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-csr-products .section {
		margin-top: 50px;
	}

	.sub-csr-products .section .object {
		position: absolute;
		top: -14vw;
		left: 0;
		right: 0;
		margin: 0 auto;
		text-align: center;
	}

	.sub-csr-products .section .object img {
		zoom: 1;
		width: 92vw;
	}

	.total-result .numbering .number {
		font-size: 8.0rem;
	}

	.total-result .numbering .unit {
		font-size: 5.0rem;
	}

	.total-result .title {}

	.total-result .meta {}

	.csr-products-lineup .lineup .inner {
		padding: 50px 25px 25px;
	}

	.csr-products-lineup .lineup .inner .total-result {
		min-height: 280px;
	}

	.csr-products-lineup .lineup .inner .button-more {
		width: 100%;
		max-width: 270px;
		font-size: 1.4rem;
	}
}

/* swiper.js */
.sub-csr-products .swiper-grandparent {
	position: relative !important;
	overflow: hidden;
	width: 100%;
	padding-top: 200px;
	padding-bottom: 50px;
	margin-bottom: -50px;
}

/* 左右のスライドを見せるver. （swiper.min.css を上書き） */
.sub-csr-products .swiper-parent {
	max-width: 1200px;
}

.sub-csr-products .swiper-grandparent .swiper-parent .swiper-container {
	overflow: visible !important;
}

.sub-csr-products .loop .row.swiper-wrapper {
	flex-wrap: inherit !important;
	margin-bottom: 0px !important;
}

.sub-csr-products .swiper-container {
	/* Prev & Next をフル画面にしたいとき */
	position: static !important;
}

.sub-csr-products .swiper-slide {}

.sub-csr-products .swiper-slide-active {
	opacity: 1;
}

/* Prev & Next */
.sub-csr-products .swiper-button-prev,
.sub-csr-products .swiper-container-rtl .swiper-button-next,
.sub-csr-products .swiper-button-next,
.sub-csr-products .swiper-container-rtl .swiper-button-prev {
	background-size: 100% auto !important;
	top: 0 !important;
	bottom: 0 !important;
	margin: auto !important;
	width: 24px !important;
	height: 100% !important;
}

.sub-csr-products .swiper-button-prev,
.sub-csr-products .swiper-container-rtl .swiper-button-next {
	left: 3.125vw;
	background-image: url(assets/images/icon-arrow-left-slider.webp) !important;
}

.sub-csr-products .swiper-button-next,
.sub-csr-products .swiper-container-rtl .swiper-button-prev {
	right: 3.125vw;
	background-image: url(assets/images/icon-arrow-right-slider.webp) !important;
}

/* pagination */
.sub-csr-products .swiper-container .swiper-pagination {
	position: static;
	padding: 15px 0 0;
}

.sub-csr-products .swiper-container .swiper-pagination-bullet {
	background-color: #ccc !important;
	opacity: 1 !important;
}

.sub-csr-products .swiper-container .swiper-pagination-bullet-active {
	background-color: #aaa !important;
}


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

	.sub-csr-products .swiper-button-prev,
	.sub-csr-products .swiper-container-rtl .swiper-button-next,
	.sub-csr-products .swiper-button-next,
	.sub-csr-products .swiper-container-rtl .swiper-button-prev {}

}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-csr-products .swiper-container {}

	.sub-csr-products .swiper-slide {}

	.sub-csr-products .swiper-slide-active {
		opacity: 1;
	}

	/* フル画面 ver.
		.sub-csr-products .swiper-grandparent { padding: 0 !important; }
		.sub-csr-products .swiper-grandparent .wrapper { padding: 0 !important; }
		*/

	/* センタリング ver. */
	.sub-csr-products .swiper-grandparent {}

	.sub-csr-products .swiper-grandparent .wrapper {
		padding: 0 6.25vw !important;
	}

	.sub-csr-products .swiper-grandparent .swiper-parent .swiper-container {
		background-color: #fff;
		border-radius: 10px;
	}

	/* Prev & Next */
	.sub-csr-products .swiper-button-next,
	.sub-csr-products .swiper-button-prev {}

	.sub-csr-products .swiper-button-prev,
	.sub-csr-products .swiper-container-rtl .swiper-button-next,
	.sub-csr-products .swiper-button-next,
	.sub-csr-products .swiper-container-rtl .swiper-button-prev {
		top: 0 !important;
		width: 15px !important;
		height: 100% !important;
		margin-top: 0 !important;
	}

	.sub-csr-products .swiper-button-prev,
	.sub-csr-products .swiper-container-rtl .swiper-button-next {
		left: 20px !important;
		background-size: 100% auto !important;
	}

	.sub-csr-products .swiper-button-next,
	.sub-csr-products .swiper-container-rtl .swiper-button-prev {
		right: 20px !important;
		background-size: 100% auto !important;
	}
}



/* =SUBPAGES - ABOUT - MISSION
----------------------------------------------------- */
.sub-mission {
	position: relative;
	z-index: 1;
}

.mission-lineup {}

.mission-lineup .lineup {
	position: relative;
	padding-top: 200px;
}

.mission-lineup .lineup:nth-child(odd) {
	background-color: #fbf2f4;
}

.mission-lineup .lineup:last-child {
	background: url(assets/images/bg-gradient01x2.webp) no-repeat left 40vw top 60vh;
	background-size: 2500px auto;
}

.mission-lineup .lineup .wavify-svg {
	z-index: 2;
	top: -1px;
	bottom: inherit;
	width: 100vw;
	height: 200px;
	transform: rotateX(180deg);
}

.mission-lineup .lineup:nth-child(odd) .wavify-svg .wavify-path {
	fill: #fff;
}

.mission-lineup .lineup:nth-child(even) .wavify-svg .wavify-path {
	fill: #fbf2f4;
}


.mission-lineup .lineup .title-32 {
	margin: 0 0 0.85em;
	line-height: 2;
}

@media screen and (min-width: 960px) {
	.mission-lineup .lineup .image-content {
		align-items: center;
	}

	.mission-lineup .lineup .image-content>.image {
		position: relative;
		z-index: 2;
		width: calc(50% + 120px);
		margin-left: -120px;
	}

	.mission-lineup .lineup .image-content>.content {
		position: relative;
		z-index: 3;
		width: calc(50% + 80px);
		margin-left: 80px;
	}

	.mission-lineup .lineup .image-content.reverse>.image {
		margin-left: inherit;
		margin-right: -120px;
	}

	.mission-lineup .lineup .image-content.reverse>.content {
		margin-left: inherit;
		margin-right: -80px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - ABOUT - MESSAGE
----------------------------------------------------- */
.sub-message {
	position: relative;
	z-index: 1;
	overflow: hidden;
	background: url(assets/images/bg-gradient-sub-message.webp) no-repeat left 15% top 100px;
	background-color: #f5faf2;
	background-size: 1600px auto;
}

.sub-message::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-image: -moz-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -webkit-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
	background-image: -ms-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgb(255, 255, 255) 100%);
}

.sub-message .message-cover {
	position: relative;
	width: calc(100% - 80px);
	margin: auto;
	overflow: hidden;
}

.sub-message .message-cover .bg {}

.sub-message .message-cover .bg .handwriting {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 100px;
	height: 100%;
	display: flex;
	align-items: center;
	max-width: 50vw;
}

.sub-message .message-cover .bg .handwriting img {
	zoom: 0.65;
}

.sub-message .message-cover .profile {
	position: absolute;
	left: -10px;
	bottom: 60px;
	background-color: rgba(255, 255, 255, 0.9);
	border-radius: 10px;
	max-width: 40vw;
}

.sub-message .message-cover .profile .inner {
	padding: 25px 50px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	flex-shrink: 0;
	justify-items: center;
	align-items: center;
}

.sub-message .message-cover .profile .logo {
	margin: 0 30px 0 0;
}

.sub-message .message-cover .profile .name-job br {
	display: none;
}

.sub-message .message-cover .profile .name-job .job {
	margin: 0 0 10px;
	line-height: 1.6;
}

.sub-message .message-cover .profile .name-job .name {
	font-size: 3.2rem;
	line-height: 1.0;
}

.frame-profile {
	position: relative;
	padding: 40px;
	background-color: #fff;
	border-radius: 10px;
	font-size: 80%;
}

.frame-profile .frame {
	padding: 40px;
}

.frame-profile .name {
	margin: 0 0 1em;
}

.frame-profile .name>p {
	margin: 0;
}

.frame-profile .name .job {}

.frame-profile .name .japanese {
	font-size: 2.4rem;
	font-weight: bold;
}

.frame-profile .name .japanese .english {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 1.5em;
	color: #ff8392;
	font-size: 1.4rem;
	font-weight: bold;
}

.frame-profile .list-sns {
	margin: 0 0 20px;
}

.frame-profile .list-share {
	position: absolute;
	right: 40px;
	top: 40px;
}

.frame-profile .image-content>.image {}

.frame-profile .image-content>.image img {}

@media screen and (min-width: 960px) {
	.xxx .image-content {
		align-items: center;
	}

	.xxx .image-content>.image {
		width: calc(260px);
	}

	.xxx .image-content>.content {
		width: calc(100% - 320px);
	}

	.frame-profile .image-content>.image {
		width: 180px
	}

	.frame-profile .image-content>.content {
		width: calc(100% - 220px);
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-message .message-cover {
		width: 100%;
	}

	.sub-message .message-cover .bg {
		position: relative;
		height: 0;
		padding-bottom: 66.66%;
		overflow: hidden;
	}

	.sub-message .message-cover .bg>img {
		/*position: absolute;
		object-fit: cover;
		width: 100%;
		height: 100%;*/

		position: absolute;
		left: 0;
		top: 0;
		width: 180%;
		max-width: inherit;
		height: auto;
	}

	.sub-message .message-cover .bg .handwriting {
		top: auto;
		left: auto;
		right: 0;
		bottom: 0;
		padding-bottom: 6.25vw;
		width: 100%;
		height: auto;
		max-width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.sub-message .message-cover .bg .handwriting img {
		width: 90%;
	}

	.sub-message .message-cover .profile {
		position: static;
		width: 100%;
		max-width: 100%;
		text-align: left;
	}

	.sub-message .message-cover .profile .inner {
		padding: 6.25vw;
		display: block;
	}

	.sub-message .message-cover .profile .inner .logo {
		margin: 0 0 15px;
	}

	.sub-message .message-cover .profile .inner .logo img {
		width: 100px;
	}

	.sub-message .message-cover .profile .inner .name-job {}

	.sub-message .message-cover .profile .inner .name-job .name {
		font-size: 2.0rem;
	}

	.message-main .section {
		padding-top: 0;
	}

	.frame-profile {
		text-align: center;
	}

	.frame-profile .image-content>.image img {}

	.frame-profile .list-share {
		position: static;
	}
}


/* =SUBPAGES - ABOUT - MEMBER
----------------------------------------------------- */
/* 固定ページ基礎テンプレート */
/* ※MEMBER、SERVICE、COMPANYで共通 */
.sub-basic-template {
	margin-top: 80px;
	overflow: visible;
}

.sub-basic-template::before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: calc(100%);
	background-color: #f7f1ee;
}

.sub-basic-template .sub-basic-template-header {}

.sub-basic-template .sub-basic-template-header .cover {
	border-radius: 10px;
	overflow: hidden;
}

@media screen and (min-width: 960px) {
	.sub-basic-template .sub-basic-template-header .image-content {
		align-items: center;
	}

	.sub-basic-template .sub-basic-template-header .image-content>.image {
		width: 720px;
		margin-top: -200px;
		margin-right: -160px;
	}

	.sub-basic-template .sub-basic-template-header .image-content>.content {
		width: 500px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-basic-template {
		margin-top: 0;
	}
}


/* ボードメンバー紹介 */
.sub-member {
	position: relative;
	z-index: 1;
}

.sub-basic-template.sub-member::before {
	background-color: #f7f1ee;
}

.member-lineup {}

.member-lineup .lineup {}

.member-lineup .lineup a {
	color: inherit;
	text-decoration: none;
}

.member-lineup .lineup .inner {}

.member-lineup .lineup .inner>* {
	margin: 0 0 15px;
	line-height: 1.6;
}

.member-lineup .lineup .inner>*:last-child {
	margin: 0;
}

.member-lineup .lineup .inner>.thumbnail {
	position: relative;
	margin: 0 0 20px;
	height: 0;
	padding-bottom: 72.0%;
}

.member-lineup .lineup .inner>.thumbnail img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	border-radius: 10px;
	overflow: hidden;
}

.member-lineup .lineup .inner>.job {
	margin: 0 0 10px;
	opacity: 0.5;
}

.member-lineup .lineup .inner>.name {
	margin: 0 0 20px;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.25;
}

.member-lineup .lineup .inner>.name .english {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 1.5em;
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.member-lineup .lineup .inner>.school {
	display: none;
	opacity: 0.5;
}

.member-lineup .lineup .inner>.text {
	font-size: 90%;
}

.member-lineup .lineup .inner>.text,
.member-lineup .lineup .inner>.text p {
	line-height: 1.8;
}

.member-lineup.type-general .lineup .inner>.job,
.member-lineup.type-general .lineup .inner>.school,
.member-lineup.type-general .lineup .inner>.text {
	font-size: 1.2rem;
}

.member-lineup.type-general .lineup .inner>.name {
	font-size: 1.25em;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - SERVICE
----------------------------------------------------- */
.sub-service {
	position: relative;
	z-index: 1;
}

.sub-basic-template.sub-service::before {
	background: url(assets/images/bg-gradient01x2.webp) no-repeat left -20vw top 60vh;
	background-size: 2500px auto;
	background-color: #fff7f6;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* =SUBPAGES - SERVICE - TOUCH
----------------------------------------------------- */
/* --> SERVICE LP */

/* =SUBPAGES - SERVICE - BOOK
----------------------------------------------------- */
/* --> SERVICE LP */

/* =SUBPAGES - SERVICE - EYES
----------------------------------------------------- */
/* --> SERVICE LP */


/* =SUBPAGES - COMPANY
----------------------------------------------------- */
.sub-company {
	position: relative;
	z-index: 1;
}

.sub-basic-template.sub-company::before {
	background-color: #f9f6f3;
}

.sub-company .company-main {
	background-color: #fff;
}

table.table-company {}

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

@media screen and (min-width: 0px) and (max-width: 959px) {

	th {
		font-size: 1.2rem;
		padding: 1em 0.5em;
		width: 80px;
	}

}

/* =SUBPAGES - CONTACT
----------------------------------------------------- */
.sub-contact {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.sub-contact .introduction {
	text-align: center;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* =SUBPAGES - CONTACT - THANKS
----------------------------------------------------- */
.sub-thanks {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.sub-thanks .introduction {
	text-align: center;
}

.sub-other-article {}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - RECRUIT [採用情報]
----------------------------------------------------- */
/* 採用情報 - ファーストビュー */
.sub-recruit-fv {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.sub-recruit-fv {}

.sub-recruit-fv .image {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.sub-recruit-fv .image img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.sub-recruit-fv .section {
	position: relative;
	padding: 100px 0 200px;
}

.sub-recruit-fv .wavify-svg {
	bottom: -1px;
	height: 180px;
}

.sub-recruit-fv .wavify-svg .wavify-path {
	fill: #fff;
}

.sub-recruit-fv .inner {
	position: relative;
}

.sub-recruit-fv .inner .tagline {
	margin: 0 0 50px;
}

.sub-recruit-fv .inner .tagline .text {
	margin: 0 0 15px;
	color: #fff;
}

.sub-recruit-fv .inner .tagline .text:last-child {
	margin-bottom: 0;
}

.sub-recruit-fv .inner .tagline .text01 {
	font-family: "museo-sans", sans-serif;
	font-size: 6.0rem;
	font-weight: 900;
	line-height: 1.05;
}

.sub-recruit-fv .inner .tagline .text02 {
	position: relative;
	display: inline-block;
	padding-right: 10px;
	font-size: 3.2rem;
	font-weight: 900;
	line-height: 1.25;
}

.sub-recruit-fv .inner .tagline .text02::before {
	content: "";
	position: absolute;
	left: 100%;
	top: 0;
	bottom: 0;
	margin: auto 0;
	width: 0.01%;
	height: 1px;
	background-color: #fff;
	transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-webkit-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-moz-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-ms-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
	-o-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1) 1.2s;
}

.sub-recruit-fv .inner .tagline .text02.is-show::before {
	width: 100px;
}

.sub-recruit-fv .inner .handwriting {}

.sub-recruit-fv .inner .handwriting img {}

.sub-recruit-fv .scroll {
	position: absolute;
	z-index: 3;
	bottom: -200px;
	left: 0;
	width: 1px;
	height: 240px;
	margin: 0;
}

.sub-recruit-fv .scroll .scroll-text {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 1px;
	height: 150px;
}

.sub-recruit-fv .scroll .scroll-text::before {
	position: absolute;
	top: -7.5em;
	left: -0.5em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	content: "Scroll";
	color: #fff;
	font-family: "museo-sans", sans-serif;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	line-height: 1;
	text-transform: uppercase;
}

.sub-recruit-fv .scroll .scroll-text::after {
	position: absolute;
	left: 0;
	content: "";
	width: 1px;
	height: 0;
	background-color: #fff;
	-webkit-animation: scrollEffect 6s infinite;
	animation: scrollEffect 6s infinite;
}

@keyframes scrollEffect {
	20% {
		height: 0%;
	}

	35% {
		height: 100%;
	}

	85% {
		height: 100%;
	}

	100% {
		height: 0%;
	}
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-recruit-fv .section {
		padding: 100px 0 150px;
	}

	.sub-recruit-fv .inner .tagline .text01 {
		font-size: 3.8rem;
	}

	.sub-recruit-fv .inner .tagline .text02 {
		font-size: 1.6rem;
	}

	.sub-recruit-fv .scroll {
		display: none;
	}
}

/* 採用情報 - 代表からのメッセージ */
.sub-recruit-message {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.sub-recruit-message .section {
	padding-bottom: 200px;
}

.sub-recruit-message .wavify-svg {
	bottom: -1px;
	height: 180px;
}

.sub-recruit-message .wavify-svg .wavify-path {
	fill: #f9f3f2;
}

.sub-recruit-message .inner {
	position: relative;
}

.sub-recruit-message .inner .object {
	position: absolute;
	z-index: -1;
	margin: 0 -240px;
	width: calc(100% + 240px + 240px);
}

.sub-recruit-message .inner .profile {
	text-align: center;
}

.sub-recruit-message .inner .profile .picture {
	margin: 0 0 20px;
}

.sub-recruit-message .inner .profile .logo {
	margin: 0 0 10px;
}

.sub-recruit-message .inner .profile .job {
	margin: 0 0 10px;
	line-height: 1.6;
}

.sub-recruit-message .inner .profile .name {
	font-size: 3.2rem;
	line-height: 1.0;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-recruit-message .section {
		padding: 0 0 200px;
	}

	.sub-recruit-message.inner .profile {
		text-align: center;
	}

	.sub-recruit-message .inner .profile .picture {}

	.sub-recruit-message .inner .profile .picture img {
		max-width: 75%;
	}
}

/* 採用ページ - 採用コラム */
.sub-recruit-column {
	position: relative;
	z-index: 2;
	background-color: #f9f3f2;
}

.sub-recruit-column .section {
	padding-bottom: 200px;
}

.sub-recruit-column .wavify-svg {
	bottom: -1px;
	height: 180px;
}

.sub-recruit-column .wavify-svg .wavify-path {
	fill: #fff;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-recruit-column .section {
		padding: 0 0 200px;
	}
}

/* 採用情報 - 募集要項一覧（新着3記事） */
/* ※採用情報の下層ページでも共通 */
.sub-recruit-other-jobs {}

.sub-other-jobs {}

.jobs-lineup {}

.jobs-lineup .lineup {
	position: relative;
}

.jobs-lineup .lineup>* {}

.jobs-lineup .lineup a {
	text-decoration: none;
	color: inherit;
}

.jobs-lineup .lineup a:hover {
	opacity: 1;
}

.jobs-lineup .lineup .image {
	overflow: hidden;
	position: relative;
	padding-bottom: 66.66%;
	border-radius: 10px;
}

.jobs-lineup .lineup:first-child::before {
	content: "NEW";
	position: absolute;
	z-index: 1;
	right: -1em;
	top: -1em;
	background-color: #5dccf0;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.10em;
	text-align: center;
	padding: 0.75em 2em;
	width: 70px;
	height: 70px;
	line-height: 70px;
	padding: 0;
	border-radius: 50%;
}

.jobs-lineup .lineup .image img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	height: 100%;
	-webkit-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.6s;
	-moz-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.6s;
	-ms-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.6s;
	transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.6s;
}

.jobs-lineup .lineup a:hover .image img {
	opacity: 1;
	transform: scale(1.05);
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
}

.jobs-lineup .lineup .content {
	padding: 2em 0 0;
	font-size: 1.4rem;
}

.jobs-lineup .lineup .content>* {}

.jobs-lineup .lineup .content .meta {
	margin: 0 0 10px;
	font-size: 1.4rem;
}

.jobs-lineup .lineup .content .meta>* {
	/*display: inline-block;
	vertical-align: middle;
	margin: 0 20px 0 0;*/
	display: block;
}

.jobs-lineup .lineup .content .location {
	margin: 0 0 20px;
	padding-left: 20px;
	background: url(assets/images/icon-marker.webp) no-repeat left center;
	background-size: 13px auto;
	line-height: 1.5;
}

.jobs-lineup .lineup ul.list-tag {
	font-size: 0;
	letter-spacing: 0;
}

.jobs-lineup .lineup ul.list-tag li {
	display: inline-block;
	vertical-align: top;
	margin: 0 10px 0 0;
	line-height: 1.5;
	font-weight: bold;
	text-decoration: none;
	opacity: 0.5;
}

.jobs-lineup .lineup .content .title {
	margin: 0 0 15px;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1.25;
}

.jobs-lineup .lineup .content .text {
	margin: 0;
	background-size: 42px auto;
	font-size: .8em;
}

.jobs-lineup .lineup .content>*:last-child {
	margin-bottom: 0
}


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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-recruit-other-jobs .section {}

	.jobs-lineup.responsive {
		margin-bottom: 0vw;
	}

	.jobs-lineup.responsive>.lineup {
		margin-bottom: 6.25vw;
	}

	.jobs-lineup .lineup .image {
		padding-bottom: 60%;
	}

	.jobs-lineup .lineup .content {
		padding: 4vw 0 0;
	}

	.jobs-lineup .lineup .content .meta {
		font-size: 1.2rem;
	}

	.jobs-lineup .lineup .content .location {
		float: none;
	}

	.jobs-lineup .lineup .content .title {
		font-size: 1.7rem;
	}
}


/* 採用情報 - 応募エントリー */
/* ※採用情報の下層ページでも共通 */
.action-joinus {
	width: calc(100% - 40px - 40px);
	margin: 40px auto;
	border-radius: 20px;
	background-color: #f9f3f2;
	overflow: hidden;
}

.action-joinus {}

.action-joinus .inner {}

.action-joinus .inner .image-content>.image {}

.action-joinus .inner .image-content>.image img {}

.action-joinus .inner .title-about {
	margin-bottom: 2em;
}

@media screen and (min-width: 960px) {
	.action-joinus .section {
		padding: 0;
	}

	.action-joinus .inner .image-content {
		align-items: center;
	}

	.action-joinus .inner .image-content>.image {
		width: 64%;
	}

	.action-joinus .inner .image-content>.content {
		width: 48%;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.action-joinus {
		width: calc(100% - 6.25vw - 6.25vw);
		margin: 6.25vw auto;
		border-radius: 10px;
		text-align: center;
	}

	.action-joinus .inner .image-content>.image img {
		width: calc(100% + 40px + 40px);
		max-width: 100vw;
		margin: -40px -40px -80px;
	}
}

/* =SUBPAGES - RECRUIT - JOBS [募集要項]
----------------------------------------------------- */
.sub-jobs {}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* =SUBPAGES - RECRUIT - JOBS - ARTICLE [募集要項 - 詳細ページ]
----------------------------------------------------- */
.sub-jobs-detail {
	position: relative;
	z-index: 1;
}

/* 募集要項 */
.jobs-header {}

.jobs-header .image-content>.image {}

.jobs-header .image-content>.content {}

.jobs-header .content {}

.jobs-header .content>* {}

.jobs-header .content .meta {
	margin: 0 0 15px;
	font-size: 1em;
}

.jobs-header .content .meta>* {
	display: inline-block;
	vertical-align: top;
}

.jobs-header .content .meta>*:not( :last-child) {
	margin: 0 20px 0 0;
}

.jobs-header .content .location {
	padding-left: 20px;
	background: url(assets/images/icon-marker.webp) no-repeat left center;
	background-size: 10px auto;
}

.jobs-header .content .title {
	margin: 0em 0 0.5em;
	font-size: 4.2rem;
	font-weight: 500;
	line-height: 1.5;
}

.jobs-header .content ul.list-tag {
	font-size: 0;
	letter-spacing: 0;
}

.jobs-header .content ul.list-tag li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em 0 0;
	font-size: 1.4rem;
	font-weight: normal;
	text-decoration: none;
	opacity: 0.5;
}

.jobs-main {}

.frame {
	padding: 3em;
}

.frame:not( :last-child) {
	margin: 0 0 2.0em;
}

.frame-jobs {
	border-radius: 10px;
	background-color: #f9f6f3;
}

.title-jobs {
	margin: 0 0 0.65em;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.8;
}

.title-jobs span {
	display: inline-block;
	border-bottom: solid 1px #000;
}

.title-jobs.white span {
	border-color: #fff;
}

.frame-jobs-summery {
	padding: 3em;
	border-radius: 10px;
	background-color: #333;
	color: #fff;
}

table.table-jobs {}

table.table-jobs tr {
	border-bottom: solid 1px rgba(0, 0, 0, 0.1);
}

table.table-jobs th,
table.table-jobs td {
	border: none;
	letter-spacing: 0;
	vertical-align: middle;
}

table.table-jobs th {}

@media screen and (min-width: 960px) {
	.jobs-header .image-content>.image {
		width: 600px;
	}

	.jobs-header .image-content>.content {
		width: 540px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	table.table-jobs tr {
		display: block;
		padding-bottom: 2em;
		margin-bottom: 2em;
	}

	table.table-jobs th,
	table.table-jobs td {
		display: block;
		width: 100%;
		padding: 0;
	}

	table.table-jobs th {
		padding-bottom: 10px;
	}
}


/* =SUBPAGES - RECRUIT - ENTRY [応募エントリー]
----------------------------------------------------- */
.sub-entry {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

/*.sub-entry .introduction {
	text-align: center;
}*/
@media screen and (min-width: 960px) {}

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - RECRUIT - ENTRY - THANKS [エントリー完了]
----------------------------------------------------- */

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - XXX
----------------------------------------------------- */
.sub-XXX {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}




/* =SUBPAGES - SEMINAR
----------------------------------------------------- */
.sub-seminar-intro {
	position: relative;
	z-index: 1;
	overflow: hidden;
	text-align: center;
}

.title-linethrough {
	margin: 0 0 1em;
	position: relative;
	text-align: center;
	font-size: 2.4rem;
}

.title-linethrough::before {
	content: "";
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	margin: auto 0;
	background-color: #dcdcdc;
}

.title-linethrough span {
	position: relative;
	z-index: 2;
	display: inline-block;
	padding: 0 20px;
	background-color: #fff;
}

ul.list-filter {}

ul.list-filter li {
	display: inline-block;
	margin: 0 4px;
}

ul.list-filter li a {
	display: block;
	border: solid 1px #ff8392;
	background-color: #fff;
	border-radius: 10px;
	padding: 0.75em 2em;
	font-size: 1.1em;
	text-align: center;
	text-decoration: none;
}

ul.list-filter li.active a,
ul.list-filter li.current-cat a,
ul.list-filter li a:hover {
	opacity: 1;
	background-color: #ff8392;
	color: #fff;
}

.sub-seminar-index {
	background: url(assets/images/sub-seminar-bg01.webp) no-repeat center top;
	background-size: cover;
}

/* セミナー記事一覧（下層ページでも共通） */
.seminar-lineup {}

.seminar-lineup .lineup {
	border-radius: 20px;
	box-shadow: 10px 17.321px 40px 0px rgba(0, 0, 0, 0.1);
	background-color: #fff;
}

.seminar-lineup .lineup a {
	text-decoration: none;
}

.seminar-lineup .lineup .inner {
	padding: 40px;
}

.seminar-lineup .lineup .inner .seminar-info {}

/* セミナー情報詳細（記事ページでも共通） */
.seminar-info {}

.seminar-info .date-number {
	margin: 0 0 25px;
	text-align: center;
	font-family: "museo-sans", sans-serif;
	font-weight: bold;
	letter-spacing: 0.08em;
}

.seminar-info .date-number>* {
	margin: 0;
	line-height: 1.1;
}

.seminar-info .date-number .year {
	font-size: 2.0rem;
}

.seminar-info .date-number .month {
	font-size: 5.4rem;
}

.seminar-info .date-number .day {
	font-size: 90%;
	color: #ff8392;
	text-transform: uppercase;
}

.seminar-info .picture {
	display: block;
	margin: 0 0 35px;
}

.seminar-info .header a {
	text-decoration: none;
	color: inherit;
}

.seminar-info .header {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: dotted 1px #46403b;
}

.seminar-info .header .category {
	margin: 0 0 20px;
}

.seminar-info .header .category>* {
	padding: 0.5em 2em;
	border-radius: 2em;
	background-color: #fde2de;
	color: inherit;
	text-decoration: none;
	font-size: 90%;
}

.seminar-info .header .title {
	margin: 0 0 10px;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.6;
}

.seminar-info .header .text {
	font-size: 90%;
	opacity: 0.7;
}

.seminar-info .meta {
	margin: 0 0 25px;
}

.seminar-info .meta>* {
	display: inline-block;
	margin: 0 3em 1em 0;
	padding: 10px 0;
	font-size: 90%;
}

.seminar-info .meta .calendar {
	padding-left: 28px;
	background: url(assets/images/icon-seminar-calendar.webp) no-repeat left center;
	background-size: 17px auto;
}

.seminar-info .meta .location {
	padding-left: 28px;
	background: url(assets/images/icon-seminar-location.webp) no-repeat left center;
	background-size: 15px auto;
}

.seminar-info .button {
	text-align: center;
}

@media screen and (min-width: 960px) {
	ul.list-filter li {
		min-width: 300px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.title-linethrough span {
		font-size: 1.7rem;
	}

	ul.list-filter li {
		margin: 0 3px 6px 0;
	}

	ul.list-filter li a {
		padding: 0.35em 1em;
		font-size: 90%;
	}

	.seminar-info .date-number .year {
		font-size: 1.3rem;
	}

	.seminar-info .date-number .month {
		font-size: 4.0rem;
	}

	.seminar-info .header .title {
		font-size: 1.5em;
	}
}



/* =SUBPAGES - SEMINAR - DETAIL
----------------------------------------------------- */
.sub-seminar-detail {
	position: relative;
	z-index: 1;
	overflow: hidden;
	background: url(assets/images/bg-gradient01.webp) no-repeat center bottom 0%;
	background-size: 3200px auto;
}

/* 記事コンテンツ部分は「NEWS」などと同じフォーマット */
.sub-seminar-detail .article-header {}

.sub-seminar-detail .article-header .seminar-info {}

.sub-seminar-detail .article-header .seminar-info .date-number {
	text-align: left;
}

.sub-seminar-detail .article-header .seminar-info .article-title {
	margin: 30px 0 15px;
}

.sub-seminar-detail .article-content {}

.sub-seminar-detail .article-content h2 {
	margin: 0 0 1em;
	padding: 0 0 0.25em;
	border-bottom: solid 1px #dcdcdc;
	color: #ff8392;
	font-size: 2em;
	font-weight: 500;
}

.sub-seminar-detail .article-content h3 {
	margin: 0 0 1em;
	font-size: 1.5em;
	font-weight: 500;
}

.sub-seminar-detail .article-content h4 {
	margin: 0 0 10px;
	font-size: 1.1em;
	font-weight: 500;
}

.seminar-profile-lineup {}

.seminar-profile-lineup .lineup {
	margin-bottom: 2em;
}

.seminar-profile-lineup .lineup:last-child {
	margin-bottom: 0;
}

.seminar-profile-lineup .lineup .avatar {
	text-align: center;
}

.seminar-profile-lineup .lineup .job {
	margin: 0 0 10px;
	font-size: 0.75em;
	line-height: 1.0;
}

.seminar-profile-lineup .lineup .name {
	margin: 0 0 25px;
	font-size: 1.25em;
	line-height: 1.0;
}

.sub-seminar-detail .article-footer {
	text-align: center;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-seminar-detail {
		background-image: none;
	}

	.sub-seminar-detail .whitebox {
		padding: 0;
		background-color: transparent;
	}

	.seminar-profile-lineup .lineup .job,
	.seminar-profile-lineup .lineup .name {
		text-align: center;
	}
}


/* 開催予定のセミナー（swiper.js） */
.other-seminar {
	background-color: #fdf5f6;
}

a.link-viewall {
	display: inline-block;
	padding-right: 50px;
	background: url(assets/images/icon-arrow-right-viewall.webp) no-repeat right 5px center;
	background-size: 19px auto;
	padding-bottom: 0.35em;
	border-bottom: solid 1px #46403b;
	color: #46403b;
	font-size: 1.2em;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.5;
	text-decoration: none;
}

a.link-viewall:hover {
	border-bottom: solid 1px transparent;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.other-seminar .swiper-slide {
		box-shadow: none;
	}
}


/* swiper.js */
.other-seminar .swiper-grandparent {
	position: relative !important;
	overflow: hidden;
	width: 100%;
	padding-bottom: 50px;
	margin-bottom: -50px;
}

/* 左右のスライドを見せるver. （swiper.min.css を上書き） */
.other-seminar .swiper-parent {
	max-width: 1200px;
}

.other-seminar .swiper-grandparent .swiper-parent .swiper-container {
	overflow: visible !important;
}

.other-seminar .loop .row.swiper-wrapper {
	flex-wrap: inherit !important;
	margin-bottom: 0px !important;
}

.other-seminar .swiper-container {
	/* Prev & Next をフル画面にしたいとき */
	position: static !important;
}

.other-seminar .swiper-slide {}

.other-seminar .swiper-slide-active {
	opacity: 1;
}

/* Prev & Next */
.other-seminar .swiper-button-prev,
.other-seminar .swiper-container-rtl .swiper-button-next,
.other-seminar .swiper-button-next,
.other-seminar .swiper-container-rtl .swiper-button-prev {
	background-size: 100% auto !important;
	top: 0 !important;
	bottom: 0 !important;
	margin: auto !important;
	width: 24px !important;
	height: 100% !important;
}

.other-seminar .swiper-button-prev,
.other-seminar .swiper-container-rtl .swiper-button-next {
	left: 3.125vw;
	background-image: url(assets/images/icon-arrow-left-slider.webp) !important;
}

.other-seminar .swiper-button-next,
.other-seminar .swiper-container-rtl .swiper-button-prev {
	right: 3.125vw;
	background-image: url(assets/images/icon-arrow-right-slider.webp) !important;
}

/* pagination */
.other-seminar .swiper-container .swiper-pagination {
	position: static;
	padding: 15px 0 0;
}

.other-seminar .swiper-container .swiper-pagination-bullet {
	background-color: #ccc !important;
	opacity: 1 !important;
}

.other-seminar .swiper-container .swiper-pagination-bullet-active {
	background-color: #aaa !important;
}


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

	.other-seminar .swiper-button-prev,
	.other-seminar .swiper-container-rtl .swiper-button-next,
	.other-seminar .swiper-button-next,
	.other-seminar .swiper-container-rtl .swiper-button-prev {}

}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.other-seminar .swiper-container {}

	.other-seminar .swiper-slide {}

	.other-seminar .swiper-slide-active {
		opacity: 1;
	}

	/* フル画面 ver.
		.other-seminar .swiper-grandparent { padding: 0 !important; }
		.other-seminar .swiper-grandparent .wrapper { padding: 0 !important; }
		*/

	/* センタリング ver. */
	.other-seminar .swiper-grandparent {}

	.other-seminar .swiper-grandparent .wrapper {
		padding: 0 6.25vw !important;
	}

	.other-seminar .swiper-grandparent .swiper-parent .swiper-container {
		overflow: hidden !important;
	}


	.other-seminar .swiper-button-next,
	.other-seminar .swiper-button-prev {
		/*display: none !important;*/
	}

	/* Prev & Next */
	.other-seminar .swiper-button-prev,
	.other-seminar .swiper-container-rtl .swiper-button-next,
	.other-seminar .swiper-button-next,
	.other-seminar .swiper-container-rtl .swiper-button-prev {
		top: 0 !important;
		width: 20px !important;
		height: 100% !important;
		margin-top: 0 !important;
	}

	.other-seminar .swiper-button-prev,
	.other-seminar .swiper-container-rtl .swiper-button-next {
		left: 14px !important;
		background-size: 100% auto !important;
	}

	.other-seminar .swiper-button-next,
	.other-seminar .swiper-container-rtl .swiper-button-prev {
		right: 14px !important;
		background-size: 100% auto !important;
	}
}

@media screen and (min-width: 960px) {
	.sub-seminar-detail .article-header {}

	.sub-seminar-detail .article-header .seminar-info {
		position: relative;
		padding-left: 180px;
	}

	.sub-seminar-detail .article-header .seminar-info .date-number {
		position: absolute;
		top: 0;
		left: 0;
	}

	.seminar-profile-lineup .lineup .image-content {
		align-items: center;
	}

	.seminar-profile-lineup .lineup .image-content>.image {
		width: 200px;
	}

	.seminar-profile-lineup .lineup .image-content>.content {
		width: 760px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.sub-seminar-detail .article-content h2 {
		font-size: 1.6em;
	}

	.sub-seminar-detail .article-content h3 {
		font-size: 1.25em;
	}

	.sub-seminar-detail .article-content h4 {
		margin: 0 0 10px;
		font-size: 1.0em;
	}
}



/* =SUBPAGES - SEMINAR - APPLY [セミナーお申し込み]
----------------------------------------------------- */
.sub-seminar-apply {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.sub-seminar-apply .introduction {
	text-align: center;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}


/* =SUBPAGES - SEMINAR - APPLY - THANKS [受付完了]
----------------------------------------------------- */
.sub-seminar-apply .thanks {
	text-align: center;
}

.frame-beige {
	background-color: #f9f3f2;
	border-radius: 10px;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}



/* =SUBPAGES - PRIVACY
----------------------------------------------------- */
.sub-privacy {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* =SUBPAGES - SECURITY
----------------------------------------------------- */
.sub-security {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}

/* =SUBPAGES - TERM
----------------------------------------------------- */
.sub-term {
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.company-tabs {}

table.table-company {}

/*230615 Kakisako ()付き*/
#ol-brackets>li {
	list-style: none;
	counter-increment: cnt;
}

#ol-brackets>li::before {
	content: "("counter(cnt) ") ";
}

/*230615 Kakisako カタカナ（ol-brackets）*/
#ol-brackets.list-order-katakana>li::before {
	content: "("counter(number, katakana)")";
}

/*230615 Kakisako リストスタイル*/
#ol-list-style ul>li {
	list-style: inside;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {

	.sub-company-main .company-tabs th,
	.sub-company-main .company-tabs td {
		display: block;
	}

	.sub-company-main .company-tabs th {
		padding-bottom: 5px;
		font-size: 1.2em;
	}

	.sub-company-main .company-tabs td {
		padding-top: 0;
	}

	.sub-company-main .company-tabs hr {
		display: none;
	}

	.sub-company-main .title-gradient {
		margin-bottom: 2em;
	}
}

/* タブ切り替えコンテンツ */
#tabs {
	position: relative;
	z-index: 1;
}

#tabs::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 52px;
	left: 0;
	width: 100vw;
	height: 2px;
	background-color: #eee;
}

/* タブ部分 */
#tabs ul.tab-area {
	margin: 0;
	letter-spacing: 0;
	font-size: 0;
	text-align: center;
}

#tabs ul.tab-area li {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.6rem;
	margin: 0 5px;
}

#tabs ul.tab-area li>* {
	display: block;
	width: 100%;
	padding: 0 2em;
	line-height: 50px;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
	border-bottom: solid 2px transparent;
	background-color: #eee;
	font-weight: normal;
	text-align: center;
	cursor: pointer;
}

#tabs ul.tab-area li:not( :last-child) {}

#tabs ul.tab-area li.active.touch>*,
#tabs ul.tab-area li.touch>*:hover {
	background-color: #ff8492;
	color: #fff;
}

#tabs ul.tab-area li.active.book>*,
#tabs ul.tab-area li.book>*:hover {
	background-color: #5dccf0;
	color: #fff;
}

#tabs ul.tab-area li.active.eyes>*,
#tabs ul.tab-area li.eyes>*:hover {
	background-color: #ffee59;
}

/* タブ内容 */
#tabs .content-area {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 0;
	background-color: transparent;
}

#tabs .content-area.hide {
	display: none;
}

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

	/* For Anchor Link */
	#tabs ul.tab-area li {
		padding-top: 200px;
		margin-top: -200px;
	}

	#tabs ul.tab-area li {
		min-width: 300px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	#tabs {}

	#tabs::before {
		display: none;
		top: 50px;
	}

	#tabs ul.tab-area {
		margin: 0 6.25vw;
		width: auto;
	}

	#tabs ul.tab-area li {
		display: block;
		width: 100%;
		font-size: 1.2rem;
		margin: 0 0% 2% 0;
	}

	#tabs ul.tab-area li.active {}

	#tabs ul.tab-area li>* {
		display: block;
		padding: 0.85em 1.25em;
		line-height: 1.5;
		border-radius: 5px;
	}

	#tabs ul.tab-area li.active>* {
		background-color: #ff8392;
		color: #fff;
	}

	/* For Anchor Link */
	#tabs {}

	#tabs ul.tab-area li {
		padding-top: 200px;
		margin-top: -200px;
		position: relative;
	}

	#tabs ul.tab-area li:nth-child(1) {
		z-index: 3;
	}

	#tabs ul.tab-area li:nth-child(2) {
		z-index: 2;
	}

	#tabs ul.tab-area li:nth-child(3) {
		z-index: 1;
	}
}



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

	=SERVICE LP
		FIRSTVIEW
		BANNER FIXED
		ONAYAMI
		MIERUKA
		ACTION
		FEATURE
		EPISODE
		VOICE
		PRICE
		FLOW
		FAQ
		INFORMATION
		FORM

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

/* =SERVICE LP - FIRSTVEW
----------------------------------------------------- */
.service-lp-fv {
	position: relative;
	z-index: 1;
	width: calc(100%);
	height: calc(100vh);
	margin: 0 auto;
	overflow: hidden;
}

.service-lp-fv::before {}

/* FIRSTVIEW - IMAGE */
.service-lp-fv .image {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	width: 52%;
	height: 100%;
	background-color: #fff;
}

.service-lp-fv .image img {}


/* FIRSTVIEW - CONTENT */
.service-lp-fv .content {
	position: absolute;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: no-repeat;
	background-size: 62% 100%;
}

.service-lp-fv.touch .content {
	background-image: url(assets/images/sub-service-touch-fv-bg-mask.webp);
}

.service-lp-fv.book .content {
	background-image: url(assets/images/sub-service-book-fv-bg-mask.webp);
}

.service-lp-fv.eyes .content {
	background-image: url(assets/images/sub-service-eyes-fv-bg-mask.webp);
}

.service-lp-fv .content .tagline {
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	text-align: left;
}

.service-lp-fv .content .tagline .inner {
	position: relative;
}

.service-lp-fv .content .tagline img {
	zoom: 0.48;
}

.service-lp-fv .content .tagline .text {
	margin: 0 0 35px;
}

.service-lp-fv .content .tagline .text01 {}

.service-lp-fv .content .tagline .text02 {}

.service-lp-fv .content .tagline .text03 {}

.service-lp-fv .content .tagline .text04 {
	margin: 0 0 0;
}

.service-lp-fv .content .tagline .product {
	position: absolute;
	z-index: -1;
}

/* FIRSTVIEW - BANNER */
.service-lp-fv .banner {
	position: absolute;
	z-index: 3;
	bottom: 60px;
	right: 60px;
	width: 400px;
	height: auto;
	margin: 0;
}

.service-lp-fv .banner a {
	display: block;
	background-color: #000;
}

.service-lp-fv .banner a img {
	box-shadow: 7.5px 12.99px 30px 0px rgba(0, 0, 0, 0.2);
	-webkit-transition: all ease-out 0.2s;
	-moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
	transition: all ease-out 0.2s;
}

.service-lp-fv .banner a:hover {
	opacity: 1;
}

.service-lp-fv .banner a:hover img {
	opacity: 0.9;
	box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.0);
}

@media screen and (min-width: 960px) {
	.service-lp-fv {
		min-height: 720px;
		max-height: 900px;
	}

	.service-lp-fv .image {}

	.service-lp-fv.touch .content .tagline .product {
		left: 400px;
		bottom: -50px;
	}

	.service-lp-fv.book .content .tagline .product {
		left: 550px;
		bottom: -50px;
	}

	.service-lp-fv.eyes .content .tagline .product {
		left: 460px;
		bottom: -60px;
	}
}

@media screen and (min-width: 1600px) {
	.service-lp-fv {
		max-height: 100%;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.service-lp-fv {
		margin: 0 auto 15px;
		width: calc(100vw);
		height: calc(100vh);
		height: auto;
		min-height: calc(100vh - 60px - 55px);
		background-color: #f9f6f3;
	}

	.service-lp-fv .image {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 48vh;
	}

	.service-lp-fv .image .inner {}

	.service-lp-fv .content {
		height: auto;
	}

	.lp .service-lp-fv .content {
		position: relative;
		padding-top: 20vh;
		background: url(assets/images/sub-service-common-fv-bg-mask-sp.webp) no-repeat center top 27vh;
		background-size: 100% auto;
	}

	.service-lp-fv .content .tagline .inner {
		padding: 6.25vw 12.5vw;
		padding: 6.25vw 9.75vw;
		padding: 6.25vw;
	}

	.service-lp-fv .content .tagline .text {
		margin: 0 0 20px;
	}

	.service-lp-fv .content .tagline .text01,
	.service-lp-fv .content .tagline .text01>* {}

	.service-lp-fv .content .tagline .text02 {
		margin: 0 0 15px;
	}

	.service-lp-fv .content .tagline .text03 {}

	.service-lp-fv .content .tagline .text04 {
		text-align: center;
	}

	.service-lp-fv .content .tagline .product {
		margin: 0 0 20px;
		position: absolute;
		position: static;
		z-index: 2;
		left: 0;
		right: 0;
		top: 25%;
		bottom: inherit;
		text-align: center;
		text-align: left;
	}

	.service-lp-fv .content .tagline .product img {
		zoom: 0.3;
	}

	.service-lp-fv.touch .content .tagline .product {
		margin-left: -15px;
	}

	.service-lp-fv.book .content .tagline .product img {
		zoom: 0.25;
	}
}


/* flexslider.js */
.service-lp-fv .flexslider.zoom .slides li {
	overflow: hidden;
}

.service-lp-fv .flexslider.zoom .slides li img {
	-webkit-transition: all ease-out 24.0s;
	-moz-transition: all ease-out 24.0s;
	-ms-transition: all ease-out 24.0s;
	transition: all ease-out 24.0s;
}

.service-lp-fv .flexslider.zoom .slides .flex-active-slide img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	transform: scale(1.1);
}

.service-lp-fv .flexslider.zoom-out .slides li {
	overflow: hidden;
}

.service-lp-fv .flexslider.zoom-out .slides li img {
	-webkit-transition: all ease-out 12.0s;
	-moz-transition: all ease-out 12.0s;
	-ms-transition: all ease-out 12.0s;
	transition: all ease-out 12.0s;
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05);
}

.service-lp-fv .flexslider.zoom-out .slides .flex-active-slide img {
	-webkit-transform: scale(1.0);
	-moz-transform: scale(1.0);
	-ms-transform: scale(1.0);
	transform: scale(1.0);
	opacity: 1;
}

/* FLEXSLIDER.CSS - OVERRIDE */
.service-lp-fv .flexslider {
	z-index: 2;
	background-color: transparent !important;
	margin-bottom: 0 !important;
	border: none !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

.service-lp-fv .flexslider,
.service-lp-fv .flexslider .slides {
	height: 100%;
}

.service-lp-fv .flexslider .slides li {
	position: relative;
	width: 100%;
	height: 100%;
}

.service-lp-fv .flexslider .slides li img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

/* PAGER */
.service-lp-fv .flexslider ol.flex-control-paging {
	counter-reset: number;
	list-style: none;
	bottom: -27px !important;
}

.service-lp-fv .flexslider ol.flex-control-paging li {
	padding: 0 !important;
	margin-bottom: 0 !important;
	vertical-align: middle;
	font-size: 0;
	line-height: 0;
}

.service-lp-fv .flexslider ol.flex-control-paging li:before {
	display: none;
}

.service-lp-fv .flexslider ol.flex-control-paging li a {
	width: 9px !important;
	height: 9px !important;
	background-color: #ccc !important;
	box-shadow: none !important;
}

.service-lp-fv .flexslider ol.flex-control-paging li a.flex-active {
	background-color: #333 !important;
}


/* =BANNER FIXED
----------------------------------------------------- */
.banner-fixed {
	position: fixed;
	z-index: 9999;
	bottom: 0;
	right: -1000px;
	margin: 35px;
	-webkit-transition: all ease-out 0.4s;
	-moz-transition: all ease-out 0.4s;
	-ms-transition: all ease-out 0.4s;
	transition: all ease-out 0.4s;
}

.banner-fixed.active {
	right: 0;
}

.banner-fixed .close {
	position: absolute;
	z-index: 2;
	top: -10px;
	right: -10px;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	background: url(assets/images/icon-close.webp) no-repeat center;
	background-color: #fff;
	background-size: 12px auto;
	cursor: pointer;
}

.banner-fixed .banner-fixed-main {
	position: relative;
	z-index: 1;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 7.5px 12.99px 30px 0px rgba(0, 0, 0, 0.2);
}

.banner-fixed .banner-fixed-main .inner {
	position: relative;
	z-index: 1;
}

.banner-fixed .banner-fixed-main a {
	display: block;
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.banner-fixed {
		display: none;
	}
}

/* =SERVICE LP - COMMON PARTS
----------------------------------------------------- */
.title-lp-japanese {
	margin: 0 0 30px;
	font-size: 4.0rem;
	font-weight: 500;
	line-height: 1.25;
	text-align: center;
}

.title-lp-japanese>* {
	display: inline-block;
	padding-bottom: 15px;
	border-bottom: solid 1px #ead9d0;
}

.title-lp-japanese em {
	font-size: 5.4rem;
	font-style: normal;
	color: #ff8392;
}

.title-lp-main {
	margin: 0 0 1.0em;
	font-size: 5.4rem;
	line-height: 1.5;
}

.title-lp-main .english,
.title-lp-main .japanese {
	display: block;
	text-align: center;
}

.title-lp-main .english {
	margin: 0 0 5px;
	font-family: "museo-sans", sans-serif;
	color: #ff8392;
	font-size: 2.0rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.title-lp-main .japanese {
	font-weight: 500;
	letter-spacing: 0.0em;
}

@media screen and (min-width: 960px) {
	.title-japanese.min {
		font-size: 2.8rem;
	}

	.title-english.big {
		margin: 0 0 40px;
		font-size: 7.2rem;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.title-lp-japanese {
		font-size: 2.8rem;
	}

	.title-lp-japanese em {
		font-size: 1.2em;
	}

	.title-lp-main .english {
		font-size: 1.2rem;
	}

	.title-lp-main .japanese {
		font-size: 2.6rem;
	}
}

.section-lp-introduction {
	margin-bottom: 0.5em;
	padding-bottom: 15px;
	font-size: 1.5em;
	border-bottom: solid 1px #ead9d0;
	text-align: center;
}

.section-lp-introduction .title-lp-main {
	margin-bottom: 10px;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.section-lp-introduction {
		font-size: 1.1em;
	}
}

/* =SERVICE LP - ONAYAMI
----------------------------------------------------- */
.service-lp-onayami {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.onayami-lineup {
	position: relative;
	margin: 0 0 60px;
}

.onayami-lineup .lineup {
	background-color: #f9f3f2;
	text-align: center;
	width: 100%;
}

.onayami-lineup .lineup:nth-child(even) {
	background-color: #f4ecea;
}

.onayami-lineup .lineup .inner {
	padding: 35px;
}

.onayami-lineup .lineup .inner .icon {
	height: 100px;
}

.onayami-lineup .lineup .inner .text {
	font-size: 1.1em;
}

.onayami-lineup .lineup .inner .text * {
	line-height: 1.6;
}

.onayami-lineup:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: transparent;
	border-top-color: #f4ecea;
	border-width: 30px;
	border-top-width: 20px;
	border-bottom-width: 20px;
	margin-left: -30px;
}

.kaiketsu-box {
	position: relative;
	border-radius: 10px;
	background-color: #f9f6f3;
}

.kaiketsu-box .header {
	padding: 0.75em;
	background-color: #ff8392;
	color: #fff;
	font-size: 4.0rem;
	text-align: center;
	line-height: 1.25;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}

.kaiketsu-box .inner {
	padding: 40px;
}

.kaiketsu-box .inner .appeal {
	margin: 0 auto 25px;
	max-width: 800px;
	font-size: 2.8rem;
	font-weight: 500;
	align-items: center;
}

.touch .kaiketsu-box .inner .appeal {
	max-width: 800px;
}

.book .kaiketsu-box .inner .appeal {
	max-width: 940px;
}

.eyes .kaiketsu-box .inner .appeal {
	max-width: 800px;
}

.kaiketsu-box .inner .appeal .text {}

.kaiketsu-box .inner .appeal .text p {
	margin-bottom: 15px;
}

.kaiketsu-box .inner .appeal .text p:last-child {
	margin-bottom: 0;
}

.kaiketsu-box .inner .appeal .text * {
	line-height: 1.6;
}

.kaiketsu-box .inner .appeal .product {
	margin: 0 35px 0;
}

.kaiketsu-box .inner .kaiketsu-lineup {
	position: relative;
	align-items: stretch;
}

.kaiketsu-box .inner .kaiketsu-lineup .lineup {
	border-radius: 10px;
	padding: 25px 25px;
	padding-left: 70px;
	background: url(assets/images/icon-check-white.webp) no-repeat left 25px center;
	background-color: #46403b;
	background-size: 30px auto;
	color: #fff;
	font-size: 20px;
}

.kaiketsu-box .inner .kaiketsu-lineup .lineup * {
	line-height: 1.6;
}

.kaiketsu-box:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	z-index: 1;
	pointer-events: none;
	border-color: transparent;
	border-top-color: #f9f6f3;
	border-width: 110px;
	border-top-width: 60px;
	border-bottom-width: 60px;
	margin-left: -110px;
}

.kaiketsu-box .inner .kaiketsu-lineup:after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	z-index: 2;
	pointer-events: none;
	border-color: transparent;
	border-top-color: #f4eeea;
	border-width: 110px;
	border-top-width: 60px;
	border-bottom-width: 60px;
	margin-left: -110px;
}

@media screen and (min-width: 960px) {
	.kaiketsu-box .inner .kaiketsu-lineup .lineup {
		width: calc(33.33% - 10px);
		display: flex;
		align-items: center;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.lp .onayami-lineup .lineup {
		margin-bottom: 0;
	}

	.onayami-lineup:after {
		border-top-color: #f9f3f2;
	}

	.onayami-lineup .lineup .inner .text br {}

	.kaiketsu-box .header {
		font-size: 2.0rem;
	}

	.kaiketsu-box .inner {
		padding: 6.25vw;
	}

	.kaiketsu-box .inner .appeal {
		width: 100%;
		font-size: 1.8rem;
		text-align: center;
	}

	.kaiketsu-box .inner .appeal * {
		line-height: 2.2;
	}

	.kaiketsu-box .inner .appeal .product {
		margin: 0 0 20px;
	}

	.kaiketsu-box .inner .appeal .product img {
		zoom: 0.35;
	}

	.lp .kaiketsu-box .inner .kaiketsu-lineup .lineup {
		margin-bottom: 10px;
		font-size: 1.2em;
	}

	.lp .kaiketsu-box .inner .kaiketsu-lineup .lineup:last-child {
		margin-bottom: 0;
	}

	.kaiketsu-box:after,
	.kaiketsu-box .inner .kaiketsu-lineup:after {
		border-width: 60px;
		border-top-width: 30px;
		border-bottom-width: 30px;
		margin-left: -60px;
	}
}

/* =SERVICE LP - MIERUKA
----------------------------------------------------- */
.service-lp-mieruka {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.service-lp-mieruka .introduction {
	text-align: center;
}

.service-lp-mieruka .introduction .title {
	margin: 0 0 0.5em;
	color: #aaaaaa;
	font-size: 4.0rem;
	font-weight: 400;
}

.service-lp-mieruka .co2 {
	display: inline-block;
	margin: 0 auto;
}

.service-lp-mieruka .co2 .frame {
	padding: 25px;
}

.service-lp-mieruka .mieruka-visual {
	margin: 0 -150px;
}

.service-lp-mieruka .wavify-svg {
	bottom: -1px;
	height: 66vh;
	max-height: 540px;
}


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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.service-lp-mieruka .introduction .title {
		font-size: 2.0rem;
	}

	.service-lp-mieruka .wavify-svg {
		bottom: 0;
		height: 26vh;
	}
}


/* =SERVICE LP - MOVIEW
----------------------------------------------------- */
.service-lp-movie {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #fdf5f6;
}
.wrapper-900 {
	width: 900px;
}
@media screen and (min-width: 0px) and (max-width: 959px) {
	.service-lp-movie iframe{
		height: 50vw;
	}
}

/* =SERVICE LP - ACTION
----------------------------------------------------- */
.service-lp-action {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.01) 99%, rgba(255, 255, 255, 0) 100%);
	background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.01) 99%, rgba(255, 255, 255, 0) 100%);
	background-image: -ms-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.01) 99%, rgba(255, 255, 255, 0) 100%);
	background-color: #c8e9ee;
}

.service-lp-action .logo {
	position: absolute;
	top: 40px;
	left: 40px;
	width: 160px;
}

.service-lp-action .inner {
	position: relative;
}

.service-lp-action .inner .girl {
	position: absolute;
	left: 0;
	bottom: 0;
}

.service-lp-action .inner .content {
	margin-left: auto;
	width: 640px;
	font-size: 2.0rem;
}

.service-lp-action .inner .content p {}

.service-lp-action .inner .content .title {
	margin: 0 0 15px;
	padding: 0 0 10px;
	border-bottom: solid 1px rgba(0, 0, 0, 0.1);
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.6;
}

@media screen and (min-width: 960px) {
	.service-lp-action .section {
		padding: 0;
	}

	.service-lp-action .inner {
		padding: 90px 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.service-lp-action .section {
		padding-bottom: 0;
	}

	.service-lp-action .logo {
		width: 100%;
		left: 0;
		right: 0;
		text-align: center;
	}

	.service-lp-action .logo img {
		width: 80px;
	}

	.service-lp-action .inner {
		padding: 6.25vw 0 0;
	}

	.service-lp-action .inner .girl {
		position: static;
		text-align: center;
	}

	.service-lp-action .inner .girl img {
		max-width: 60%;
	}

	.service-lp-action .inner .content {
		padding: 25px 0;
		width: 100%;
		font-size: 1em;
		text-align: center;
	}

	.service-lp-action .inner .content .title {
		font-size: 2.4rem;
	}
}


/* =SERVICE LP - FEATURE
----------------------------------------------------- */
.service-lp-feature {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.service-lp-feature .introduction {}

.service-lp-feature .title-lp-main .english {
	color: #5dccf0;
}

.feature-intro-lineup {}

.feature-intro-lineup .lineup {
	position: relative;
	text-align: center;
}

.feature-intro-lineup .lineup .numbering {
	position: absolute;
	width: 70px;
	height: 70px;
	border-radius: 50%;
	background-color: #5dccf0;
	color: #fff;
	font-size: 3.2rem;
	font-weight: 400;
	line-height: 70px;
	text-align: center;
}

.feature-intro-lineup .lineup .icon {
	margin: 30px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 200px;
}

.feature-intro-lineup .lineup .content {
	font-size: 90%;
}

.feature-intro-lineup .lineup .content * {
	line-height: 1.8;
}

.feature-intro-lineup .lineup .content br {}

.feature-intro-lineup .lineup .content .title {
	margin: 0 0 15px;
	text-align: center;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: 1.6;
}

.feature-lineup {}

.feature-lineup .lineup {
	margin: 0 0 100px;
}

.feature-lineup .lineup .numbering {
	margin: 0 0 50px;
}

.feature-lineup .lineup .numbering>* {
	display: block;
}

.feature-lineup .lineup .numbering .sub {
	margin: 0 0 25px;
	font-family: "museo-sans", sans-serif;
	color: #5dccf0;
	font-size: 2.0rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.feature-lineup .lineup .numbering .number {
	position: relative;
	font-family: "ubuntu", sans-serif;
	font-size: 8.0rem;
	font-weight: 400;
	line-height: 1.0;
}

.feature-lineup .lineup .numbering .number::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: calc(100% - 1.7em);
	height: 1px;
	background-color: #000;
	margin: auto 0;
}

.feature-lineup .lineup .title {
	margin: 0 0 1em;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.8;
}

.feature-lineup .lineup .image-content>.image {
	text-align: center;
}

@media screen and (min-width: 960px) {
	.feature-intro-lineup .lineup .content .title {
		min-height: 3.5em;
	}

	.feature-intro-lineup .lineup .content #title-touch {
		min-height: 2.0em;
	}

	.feature-intro-lineup.col-4 .lineup .content .title {
		font-size: 2.0rem;
	}

	.feature-intro-lineup.col-4 .lineup .content .title br {
		display: none;
	}

	.feature-intro-lineup.col-3 .lineup .content .title br {}

	.feature-lineup .lineup .image-content {
		align-items: flex-start;
	}

	.feature-lineup .lineup .image-content>.image {
		width: 520px;
		margin: 80px 0 0;
	}

	.feature-lineup .lineup .image-content>.content {
		width: 600px;
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.lp .feature-intro-lineup .lineup {
		width: 85%;
		margin: 0 auto 50px;
	}

	.feature-intro-lineup .lineup .content .title br {}

	.feature-lineup .lineup .numbering {
		margin: 0 0 25px;
	}

	.feature-lineup .lineup .numbering .sub {
		margin: 0 0 10px;
		font-size: 1.2rem;
	}

	.feature-lineup .lineup .numbering .number {
		font-size: 5.4rem;
	}

	.feature-lineup .lineup .numbering .number::after {
		width: calc(100% - 1.5em);
	}

	.feature-lineup .lineup .title {
		margin: 0 0 10px;
		font-size: 2.0rem;
	}
}


/* =SERVICE LP - EPISODE
----------------------------------------------------- */
.service-lp-episode {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #f9f6f3;
}

.service-lp-episode .title-lp-japanese>* {
	display: block;
}

.service-lp-episode .whitebox {}

.service-lp-episode .whitebox .profile {
	text-align: center;
}

.service-lp-episode .whitebox .profile .picture {
	margin: 0 0 20px;
}

.service-lp-episode .whitebox .profile .logo {
	margin: 0 0 10px;
}

.service-lp-episode .whitebox .profile .job {
	margin: 0 0 10px;
	line-height: 1.6;
}

.service-lp-episode .whitebox .profile .name {
	font-size: 3.2rem;
	line-height: 1.0;
}

.service-lp-episode .whitebox .maintext {
	font-size: 1.8rem;
}

.service-lp-episode .whitebox .maintext .title {
	margin: 0 0 1em;
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.8;
}

.service-lp-episode .whitebox .maintext .title>* {
	display: inline;
	border-bottom: solid 1px #46403b;
}

.service-lp-episode .whitebox .maintext p {
	line-height: 1.8;
}

@media screen and (min-width: 960px) {
	.service-lp-episode .image-content {
		align-items: flex-start;
	}

	.service-lp-episode .image-content>.image {
		width: 200px;
	}

	.service-lp-episode .image-content>.content {
		width: calc(100% - 260px);
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.service-lp-episode .whitebox .profile .job {
		font-size: 80%;
	}

	.service-lp-episode .whitebox .profile .name {
		font-size: 1.5em;
	}

	.service-lp-episode .whitebox .maintext {
		font-size: 1em;
	}

	.service-lp-episode .whitebox .maintext .title {
		font-size: 1.3em;
	}
}

/* =SERVICE LP - VOICE
----------------------------------------------------- */
.service-lp-voice {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.voice-lineup {}

.voice-lineup .lineup {
	margin: 0 0 100px;
}

.voice-lineup .lineup:last-child {
	margin-bottom: 0;
}

.voice-lineup .lineup .numbering {
	margin: 0 0 50px;
}

.voice-lineup .lineup .numbering>* {
	display: block;
}

.voice-lineup .lineup .numbering .sub {
	margin: 0 0 25px;
	font-family: "museo-sans", sans-serif;
	color: #979799;
	font-size: 2.0rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.voice-lineup .lineup .numbering .number {
	position: relative;
	font-family: "ubuntu", sans-serif;
	font-size: 8.0rem;
	font-weight: 400;
	line-height: 1.0;
}

.voice-lineup .lineup .numbering .number::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: calc(100% - 120px);
	height: 1px;
	background-color: #ead9d0;
	margin: auto 0;
}

.voice-lineup .lineup .inner {
	padding-left: 120px;
}

.voice-lineup .lineup .profile {
	text-align: center;
}

.voice-lineup .lineup .profile .picture {
	margin: 0 0 20px;
}

.voice-lineup .lineup .profile .picture img {
	width: 200px;
	border-radius: 50%;
	overflow: hidden;
}

.voice-lineup .lineup .profile .job {
	margin: 0 0 10px;
	font-size: 90%;
	line-height: 1.6;
}

.voice-lineup .lineup .profile .name {
	font-size: 2.4rem;
	line-height: 1.2;
}

.voice-lineup .lineup .image-content>.content {
	font-size: 90%;
	font-size: 1em;
}

.voice-lineup .lineup .image-content>.content .title {
	margin: 0 0 1em;
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1.8;
}

@media screen and (min-width: 960px) {
	.voice-lineup .lineup .image-content {
		align-items: flex-start;
	}

	.voice-lineup .lineup .image-content>.image {
		width: 200px;
	}

	.voice-lineup .lineup .image-content>.content {
		width: calc(100% - 260px);
	}
}

@media screen and (min-width: 0px) and (max-width: 959px) {
	.voice-lineup .lineup .numbering {
		margin: 0 0 25px;
	}

	.voice-lineup .lineup .numbering .sub {
		margin: 0 0 10px;
		font-size: 1.2rem;
	}

	.voice-lineup .lineup .numbering .number {
		font-size: 5.4rem;
	}

	.voice-lineup .lineup .numbering .number::after {
		width: calc(100% - 1.5em);
	}

	.voice-lineup .lineup .inner {
		padding-left: 0;
	}

	.voice-lineup .lineup .profile .picture img {
		width: 160px;
	}

	.voice-lineup .lineup .profile .job {
		font-size: 80%;
	}

	.voice-lineup .lineup .profile .name {
		font-size: 1.5em;
	}

	.voice-lineup .lineup .image-content>.content .title {
		font-size: 2.2rem;
		text-align: center;
	}
}

/* =SERVICE LP - PRICE
----------------------------------------------------- */
.service-lp-price {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.wrapper-1080 {
	width: 1080px;
}

.price-appeal-box {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	background-color: #f9f6f3;
}

.price-appeal-box .header {
	padding: 0.75em;
	background-color: #ff8392;
	color: #fff;
	font-size: 4.0rem;
	text-align: center;
	line-height: 1.25;
}

.price-appeal-box .inner {
	padding: 40px;
}

.price-appeal-box .inner .appeal {
	margin: 0 auto;
	max-width: 800px;
	font-size: 2.8rem;
	font-weight: 500;
	text-align: center;
}

.price-appeal-box .inner .appeal .picture {
	margin: 0 0 10px;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.price-appeal-box .header {
		font-size: 2.0rem;
	}

	.price-appeal-box .inner {
		padding: 6.25vw;
	}

	.price-appeal-box .inner .appeal {
		width: 100%;
		font-size: 1.2em;
	}
}

/* =SERVICE LP - FLOW
----------------------------------------------------- */
.service-lp-flow {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

.flow-lineup {}

.flow-lineup .lineup {
	margin-bottom: 50px;
}

.flow-lineup .lineup:last-child {
	margin-bottom: 0;
}

.flow-lineup .lineup .numbering {
	position: relative;
	margin: 0 0 25px;
}

.flow-lineup .lineup .numbering>* {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.0;
}

.flow-lineup .lineup .numbering .sub {
	margin: 0 10px 0 0;
	font-family: "museo-sans", sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.flow-lineup .lineup .numbering .number {
	font-family: "ubuntu", sans-serif;
	font-size: 5.4rem;
	font-weight: 400;
}

.flow-lineup .lineup .numbering::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: calc(100% - 160px);
	height: 1px;
	background-color: #000;
	margin: auto 0;
}

.flow-lineup .lineup .numbering {}

.flow-lineup .lineup .content {
	font-size: 95%;
}

.flow-lineup .lineup .content * {
	line-height: 1.7;
}

.flow-lineup .lineup .icon {
	margin: 0 0 20px;
	text-align: center;
}

.flow-lineup .lineup .content .title {
	text-align: center;
	margin: 0 0 20px;
	font-size: 2.4rem;
	line-height: 1.5;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.lp .flow-lineup .lineup {
		width: 85%;
		margin: 0 auto 50px;
	}

	.flow-lineup .lineup .numbering .sub {
		font-size: 1.8rem;
	}

	.flow-lineup .lineup .numbering .number {
		font-size: 3.2rem;
	}

	.flow-lineup .lineup .numbering::after {
		width: calc(100% - 110px);
	}

	.flow-lineup .lineup .icon {}

	.flow-lineup .lineup .icon img {
		zoom: 1;
		width: 160px;
	}

	.flow-lineup .lineup .content .title {
		font-size: 1.5em;
	}
}

/* =SERVICE LP - FAQ
----------------------------------------------------- */
.service-lp-faq {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #f9f6f3;
}

.service-lp-faq .title-lp-main .english {
	color: #5dccf0;
}

.title-faq-category {
	margin-bottom: 20px;
	background-color: #ebe7e6;
	border-radius: 10px;
	padding: 0.75em 1em;
	font-size: 2.4rem;
	line-height: 1.5;
}

.faq-lineup {}

.faq-lineup:not( :last-child) {
	margin-bottom: 40px;
}

.faq-lineup .lineup {
	border-radius: 10px;
	background-color: #fff;
}

.faq-lineup .lineup:not( :last-child) {
	margin-bottom: 20px;
}

.faq-lineup .lineup .header,
.faq-lineup .lineup .content {
	position: relative;
	padding: 20px 70px;
}

.faq-lineup .lineup .header::before,
.faq-lineup .lineup .content::before {
	content: "Q";
	position: absolute;
	top: 0;
	left: 0.85em;
	bottom: 0;
	margin: auto;
	height: 40px;
	line-height: 40px;
	font-family: ubuntu, sans-serif;
	color: #a79f99;
	font-size: 3.2rem;
	font-weight: bold;
}

.faq-lineup .lineup .content::before {
	content: "A";
	content: "";
}

.faq-lineup .lineup .header {
	background: url(assets/images/icon-accordion-open-blue.webp) no-repeat right 1.5em center;
	background-size: 26px auto;
	font-size: 2.0rem;
}

.faq-lineup .lineup .header.js-acc-header-on {
	background-image: url(assets/images/icon-accordion-close-blue.webp);
}

.faq-lineup .lineup .content {
	border-top: solid 1px #dcdcdc;
	padding-bottom: 25px;
	color: #555;
}

.faq-lineup .lineup .content::before {
	top: 0;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	.top-faq .section {
		border-bottom: 0;
		padding-bottom: 8vw;
		padding-bottom: 0;
	}

	.top-faq .action3 {
		margin-top: 0;
		bottom: 0;
	}

	.faq-lineup .lineup:not( :last-child) {
		margin-bottom: 10px;
	}

	.faq-lineup .lineup .header,
	.faq-lineup .lineup .content {
		position: relative;
		padding: 15px 50px;
	}

	.faq-lineup .lineup .header::before,
	.faq-lineup .lineup .content::before {
		font-size: 2.4rem;
	}

	.faq-lineup .lineup .header {
		background-position: right 1em center;
		background-size: 16px auto;
		font-size: 1.5rem;
	}

	.faq-lineup .lineup .header * {
		line-height: 1.5;
	}

	.title-faq-category {
		font-size: 1.3em;
	}
}

/* =SERVICE LP - INFORMATION
----------------------------------------------------- */
.service-lp-information {
	position: relative;
	z-index: 2;
	overflow: hidden;
}

/* information */
ul.list-information {}

ul.list-information li {
	margin: 0 0 1em;
	padding: 0 0 1em;
	border-bottom: solid 1px #ead9d0;
	display: flex;
	justify-content: space-between;
}

ul.list-information li:last-child {
	margin: 0;
}

ul.list-information li .date,
ul.list-information li .category,
ul.list-information li .text {
	display: inline-block;
}

ul.list-information li .date {
	width: 11%;
}

ul.list-information li .category {
	width: 11%;
}

ul.list-information li .text {
	width: 78%;
}

ul.list-information li .date {
	font-family: "ubuntu", sans-serif;
	font-weight: bold;
	letter-spacing: 0.08em;
	opacity: 0.5;
}

ul.list-information li .category a {
	background-color: #00953f;
	width: 100%;
	padding: 0.35em 1em;
	text-align: center;
	border-radius: 20px;
	color: #fff;
	font-size: 1.2rem;
	font-weight: bold;
	text-decoration: none;
}

ul.list-information li .text {
	font-size: 1.05em;
	font-weight: 500;
}

ul.list-information li .text a {
	display: block;
	padding-right: 45px;
	background: url(assets/images/icon-arrow-right-information-pink.webp) no-repeat right 15px center;
	background-size: 19px auto;
	color: inherit;
	text-decoration: none;
}

ul.list-information li .text a:hover {
	text-decoration: underline;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {
	ul.list-information li {
		display: block;
	}

	ul.list-information li .date,
	ul.list-information li .category,
	ul.list-information li .text {
		width: auto;
	}

	ul.list-information li .text {
		display: block;
		width: 100%;
	}
}


/* =SERVICE LP - FORM
----------------------------------------------------- */
.service-lp-form {
	position: relative;
	z-index: 2;
	overflow: hidden;
	background-color: #f9f6f3;
}

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

@media screen and (min-width: 0px) and (max-width: 959px) {}