@charset "utf-8";


/* base
1rem = 1em = 10px
------------------------------------------------------------ */
body,
html {
	height: 100%;
}
body,
form * {
	background: #fff;
	color: #000;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-feature-settings: "palt" 1;
	line-break: strict;
	letter-spacing: 0.046875rem;
	font-weight: 400;
	font-style: normal;
}
h2,
h3,
h4,
em {
	font-weight: 700 !important;
}
p {
	text-align: justify;
	text-justify: inter-character;
}
a {
	color: #000;
	text-decoration: underline;
}
a.red {
	color: #c00;
	text-decoration: underline;
}
a:hover {
	color: #000;
	text-decoration: none;
}
a.red:hover {
	color: #c00;
	text-decoration: none;
}
img {
	font-size: 0;
	line-height: 0;
}
hr.h2 {
	border: 0;
	height: 0.2rem;
	width: 9rem;
}
hr.h3 {
	border: 0;
	height: 0.1rem;
	width: 4.5rem;
}
hr.black {
	background-color: #000;
}
hr.center {
	margin-left: auto;
	margin-right: auto;
}
::selection {
	background: #000;
	color: #fff;
}
@media (min-width: 768px) {
i.break:after {
	content: "\A";
	white-space: pre;
}
i.break-bak:after {
	content: "";
}
.pcShow {
	display: block;
}
.spShow {
	display: none;
}
}
@media (max-width: 767px) {
html {
	font-size: 48%;
}
i.break:after {
	content: "";
}
i.break-bak:after {
	content: "\A";
	white-space: pre;
}
.pcShow {
	display: none;
}
.spShow {
	display: block;
}
}


/* font setting
------------------------------------------------------------ */
.font-roboto,
.en {
	font-family: 'Roboto', sans-serif;
}


/* a-underlineAnimation (multiple lines)
------------------------------------------------------------ */
a.underlineAnimationMultiple {
	text-decoration: none;
}
a.underlineAnimationMultiple span {
	background-image: linear-gradient(90deg, #000, #000);
	background-repeat: no-repeat;
	background-position: left bottom;
	background-size: 0 0.2rem;
	transition: background-size 0.1875s;
	padding-bottom: 0.3rem;
}


/* touchEvent settings
------------------------------------------------------------ */
a.underlineAnimationMultiple:hover span.hamburgerNavMain {
	background-size: 100% 0.2rem;
}
header div.line a.link-hover:hover {
	opacity: 0.6;
}
nav.hamburgerNav div.wrap ul.sns li a.link-hover:hover {
	opacity: 0.6;
}
footer ul.sns a.link-hover:hover {
	opacity: 0.6;
}
.content div.detail a.detail.link-hover:hover img {
	transform: translateX(9%);
}
.content.top div.detailSlide div.item > a.link-hover div:hover {
	opacity: 0.6;
}
.content.top div.faqSlide div.item > a.link-hover div:hover {
	opacity: 0.6;
}
.content.top div.professionalSlide div.item > a.link-hover div:hover {
	opacity: 0.6;
}
.content.top div.staffSlide div.item > a.link-hover div:hover {
	opacity: 0.6;
}
.content p.line a.link-hover:hover {
	opacity: 0.6;
}
div.bannerFreeTrial a.link-hover:hover {
	opacity: 0.6;
}
div.banner3campaign a.link-hover:hover {
	opacity: 0.6;
}


/* lazysizes
------------------------------------------------------------ */
.lazyload {
	opacity: 0;
}
.lazyloaded {
	opacity: 1;
}


/* header / mvTop
------------------------------------------------------------ */
header.mvTop {
	width: 100%;
	height: 91.5svh;
}
header.mvTop section.topMvSlick {
	width: 100%;
	height: 91.5svh;
}
header.mvTop section div {
	width: 100%;
	height: 91.5svh;
	position: relative;
}
header.mvTop section div img {
	width: 100%;
	height: 91.5svh;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
header.mvTop section div p {
	position: absolute;
	z-index: 3;
}
@media (min-width: 768px) {
header.mvTop section div p {
	bottom: 21svh;
	right: 6vw;
}
}
@media (max-width: 767px) {
header.mvTop section div p {
	width: 100%;
	bottom: 12svh;
	text-align: center;
	color: #fff !important;
}
}


/* header / mvTop-slick
------------------------------------------------------------ */
section.topMvSlick {
	opacity: 0;
	transition: opacity 0.9s;
}
section.topMvSlick.slick-initialized {
	opacity: 1;
}
section.topMvSlick div img {
	width: 100%;
	height: auto;
}
section.topMvSlick .slick-dots {
	bottom: initial !important;
	margin-top: 3svh;
}
section.topMvSlick .slick-dots li {
	width: 4.5rem !important;
}
section.topMvSlick .slick-dots li button:before {
	font-size: 1.8rem !important;
	opacity: 0.3 !important;
}
section.topMvSlick .slick-dots li button:hover:before,
section.topMvSlick .slick-dots li button:focus:before {
	opacity: 1 !important;
}
section.topMvSlick .slick-dots li.slick-active button:before {
	opacity: 1 !important;
}


/* header / 2nd
------------------------------------------------------------ */
header.second {
	position: relative;
	width: 100%;
	height: 36svh;
}
header.second section {
	width: 100%;
	height: 36svh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
header.second section div {
	width: 100%;
	height: 36svh;
}
header.second section div img {
	width: 100%;
	height: 36svh;
	object-fit: cover;
}


/* header / h1
------------------------------------------------------------ */
header.mvTop h1.logosymbolTop {
	position: fixed;
	z-index: 21;
}
header.second h1.logosymbolSecond {
	position: fixed;
	z-index: 21;
}
@media (min-width: 768px) {
header.mvTop h1.logosymbolTop {
	top: 3svh;
	left: 3vw;
}
header.mvTop h1.logosymbolTop img {
	width: 14.25vw;
	height: auto;
}
header.second h1.logosymbolSecond {
	top: 3svh;
	left: 3vw;
}
header.second h1.logosymbolSecond img {
	width: 14.25vw;
	height: auto;
}
}
@media (max-width: 767px) {
header.mvTop h1.logosymbolTop {
	top: 3svh;
	left: 6vw;
}
header.mvTop h1.logosymbolTop img {
	width: 34.5vw;
	height: auto;
}
header.second h1.logosymbolSecond {
	top: 3svh;
	left: 6vw;
}
header.second h1.logosymbolSecond img {
	width: 34.5vw;
	height: auto;
}
}


/* header / LINE
------------------------------------------------------------ */
header div.line a {
	display: block;
	color: #fff;
	text-decoration: none;
	background-color: #00b900;
	border-radius: 1.2rem;
	transition: all 0.1875s;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
}
@media (min-width: 768px) {
header div.line {
	margin-right: 3rem;
	margin-top: -0.375rem;
}
header div.line a {
	padding: 0.9rem 2.1rem;
}
header div.line span {
	margin-left: 0.9rem;
}
}
@media (max-width: 767px) {
header div.line {
	margin-right: 3rem;
	margin-top: -0.375rem;
}
header div.line a {
	padding: 0.75rem;
}
}


/* header / hamburger
------------------------------------------------------------ */
header div.hamburger div.menu-trigger,
header div.hamburger div.menu-trigger span {
	display: inline-block;
	transition: all 0.1875s;
	box-sizing: border-box;
}
header div.hamburger div.menu-trigger {
	position: relative;
	cursor: pointer;
}
header div.hamburger div.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #000;
}
header div.hamburger div.menu-trigger span:nth-of-type(1) {
	top: 0;
}
header div.hamburger div.menu-trigger span:nth-of-type(2) {
	top: 50%;
	transform: translateY(-50%);
}
header div.hamburger div.menu-trigger span:nth-of-type(3) {
	bottom: 0;
}
header div.hamburger div.menu-trigger.scroll span {
	background-color: #000;
}
header div.hamburger div.menu-trigger.active span:nth-of-type(2) {
	opacity: 0;
}
header div.hamburger div.menu-trigger.active span {
	background-color: #000;
}
@media (min-width: 768px) {
header div.hamburger div.menu-trigger {
	width: 4.8vw;
	height: 3.3vw;
}
header div.hamburger div.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(1.575vw) rotate(-45deg);
}
header div.hamburger div.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-1.575vw) rotate(45deg);
}
}
@media (max-width: 767px) {
header div.hamburger div.menu-trigger {
	width: 12vw;
	height: 8.25vw;
}
header div.hamburger div.menu-trigger.active span:nth-of-type(1) {
	transform: translateY(3.8vw) rotate(-45deg);
}
header div.hamburger div.menu-trigger.active span:nth-of-type(3) {
	transform: translateY(-3.8vw) rotate(45deg);
}
}


/* header / hamburger-LINE
------------------------------------------------------------ */
header div.hamburgerLine {
	position: fixed;
	z-index: 31;
	display: flex;
	align-items: center;
}
@media (min-width: 768px) {
header div.hamburgerLine {
	top: 3.3svh;
	right: 3vw;
}
}
@media (max-width: 767px) {
header div.hamburgerLine {
	top: 3.15svh;
	right: 6vw;
}
}


/* footer
------------------------------------------------------------ */
footer {
	background-color: #f3f3f3;
	color: #000;
}
footer ul.sns a {
	color: #000;
	text-decoration: none;
	transition: all 0.1875s;
}
footer ul.sns {
	text-align: center;
}
footer ul.sns li {
	display: inline-block;
	vertical-align: middle;
}
footer ul.sns li:last-child {
	margin-right: 0;
}
@media (min-width: 768px) {
footer {
	padding-top: 6rem;
	padding-bottom: 7.5rem;
}
footer ul.sns li {
	margin-right: 1.8rem;
}
footer ul.legal {
	text-align: center;
}
footer ul.legal li {
	display: inline-block;
	vertical-align: middle;
	margin-right: 2.1rem;
}
footer ul.legal li:last-child {
	margin-right: 0;
}
}
@media (max-width: 767px) {
footer {
	padding-top: 6rem;
	padding-bottom: 18rem;
}
footer ul.sns li {
	margin-right: 1.2rem;
}
footer ul.legal {
	text-align: center;
}
footer ul.legal li {
	margin-top: 1.5rem;
}
footer ul.legal li:first-child {
	margin-top: 0;
}
}


/* hamburgerNavigation
------------------------------------------------------------ */
nav.hamburgerNav {
	display: none;
	background: #fff;
	height: 100%;
	width: 100%;
	z-index: 10;
	position: fixed;
	top: 0;
	left 0;
	overflow: auto;
}
nav.hamburgerNav div.wrap ul li a {
	text-decoration: none;
}
nav.hamburgerNav div.wrap ul.sns {
	display: flex;
	justify-content: flex-start;
}
nav.hamburgerNav div.wrap ul.sns li {
	margin-right: 2.4rem;
}
nav.hamburgerNav div.wrap ul.sns li:last-child {
	margin-right: 0;
}
nav.hamburgerNav div.wrap ul.sns li a {
	transition: all 0.1875s;
}
@media (min-width: 768px) {
nav.hamburgerNav div.wrap {
	margin-top: 24rem;
	margin-bottom: 7.5rem;
	margin-left: 3vw;
}
}
@media (max-width: 767px) {
nav.hamburgerNav div.wrap {
	margin-top: 21rem;
	margin-bottom: 6rem;
	margin-left: 6vw;
}
}


/* content / base
------------------------------------------------------------ */
.content p img {
	width: 100%;
	height: auto;
}
@media (min-width: 768px) {
.content .pcCenter {
	text-align: center;
}
.content.second {
	width: 51vw;
	margin-left: auto;
	margin-right: auto;
}
}
@media (max-width: 767px) {
.content.second {
	padding-left: 6vw;
	padding-right: 6vw;
}
}


/* content / top / title
------------------------------------------------------------ */
.content.top section.topTitle h2.topTitleEn,
.content.top section.topTitle h2.topTitleJa,
.content.top section.topTitle p.topTitleCopy {
	text-align-last: justify;
}
.content.top section.topTitle h2.topTitleEn,
.content.top section.topTitle h2.topTitleJa {
	font-weight: 200 !important;
}
.content.top section.topTitle p.topTitleCopy {
	font-weight: 700 !important;
}
.content.top section.topTitle span.titleRed {
	color: #d9281b;
}
.content.top section.topTitle span.titleBlue {
	color: #066ab2;
}
.content.top section.topTitle span.titleGreen {
	color: #1ba74f;
}
.content.top section.topTitle span.titleYellow {
	color: #f5ba18;
}
.content.top section.topTitle span.titleCyan {
	color: #1fa4dd;
}
.content.top section.topTitle span.titlePurple {
	color: #67338f;
}
@media (min-width: 768px) {
.content.top section.topTitle {
	width: 90rem;
	margin-left: auto;
	margin-right: auto;
}
}
@media (max-width: 767px) {
.content.top section.topTitle {
	padding-left: 6vw;
	padding-right: 6vw;
}
}


/* content / top / message
------------------------------------------------------------ */
@media (max-width: 767px) {
.content.top section.message {
	padding-left: 6vw;
	padding-right: 6vw;
}
}


/* content / top / mvv
------------------------------------------------------------ */
.content.top section.mvv div.layout {
	position: relative;
}
.content.top section.mvv div.layout > div.first,
.content.top section.mvv div.layout > div.second,
.content.top section.mvv div.layout > div.third {
	position: absolute;
	mix-blend-mode: multiply;
}
.content.top section.mvv div.mission,
.content.top section.mvv div.vision,
.content.top section.mvv div.value {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.content.top section.mvv div.mission {
	background-image: url("../images/image_bgMvv-001.jpg");
	aspect-ratio: 545 / 508;
}
.content.top section.mvv div.vision {
	background-image: url("../images/image_bgMvv-002.jpg");
	aspect-ratio: 711 / 729;
}
.content.top section.mvv div.value {
	background-image: url("../images/image_bgMvv-003.jpg");
	aspect-ratio: 678 / 679;
}
.content.top section.mvv div.mission div.wrapper,
.content.top section.mvv div.vision div.wrapper,
.content.top section.mvv div.value div.wrapper {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
@media (min-width: 768px) {
.content.top section.mvv div.layout {
	width: 84rem;
	aspect-ratio: 84 / 66;
	margin-left: auto;
	margin-right: auto;
}
.content.top section.mvv div.layout div.first {
	top: 0;
	left: 1.5rem;
}
.content.top section.mvv div.layout div.second {
	top: 4.5rem;
	right: 0;
}
.content.top section.mvv div.layout div.third {
	top: 24rem;
	left: 7.2rem;
}
.content.top section.mvv div.layout div.mission {
	width: 33rem;
}
.content.top section.mvv div.layout div.vision {
	width: 48rem;
}
.content.top section.mvv div.layout div.value {
	width: 42rem;
}
}
@media (max-width: 767px) {
.content.top section.mvv > p {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top section.mvv div.layout {
	width: 100%;
	aspect-ratio: 9 / 16.5;
	overflow: hidden;
}
.content.top section.mvv div.layout div.first {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.content.top section.mvv div.layout div.second {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.content.top section.mvv div.layout div.third {
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.content.top section.mvv div.layout div.mission {
	width: 66vw;
}
.content.top section.mvv div.layout div.vision {
	width: 78vw;
}
.content.top section.mvv div.layout div.value {
	width: 66vw;
}
}


/* content / top / provide
------------------------------------------------------------ */
.content.top section.provide div.layout {
	position: relative;
}
.content.top section.provide div.layout > div.first,
.content.top section.provide div.layout > div.second,
.content.top section.provide div.layout > div.third {
	position: absolute;
	mix-blend-mode: multiply;
}
.content.top section.provide div.one,
.content.top section.provide div.two,
.content.top section.provide div.three {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.content.top section.provide div.one {
	background-image: url("../images/image_bgProvide-001.jpg");
	aspect-ratio: 558 / 542;
}
.content.top section.provide div.two {
	background-image: url("../images/image_bgProvide-002.jpg");
	aspect-ratio: 558 / 542;
}
.content.top section.provide div.three {
	background-image: url("../images/image_bgProvide-003.jpg");
	aspect-ratio: 558 / 542;
}
.content.top section.provide div.one div.wrapper,
.content.top section.provide div.two div.wrapper,
.content.top section.provide div.three div.wrapper {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
@media (min-width: 768px) {
.content.top section.provide div.layout {
	width: 90rem;
	aspect-ratio: 90 / 32;
	margin-left: auto;
	margin-right: auto;
}
.content.top section.provide div.layout div.first {
	top: 0;
	left: 0;
}
.content.top section.provide div.layout div.second {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.content.top section.provide div.layout div.third {
	top: 0;
	right: 0;
}
.content.top section.provide div.layout div.one {
	width: 33rem;
}
.content.top section.provide div.layout div.two {
	width: 33rem;
}
.content.top section.provide div.layout div.three {
	width: 33rem;
}
}
@media (max-width: 767px) {
.content.top section.provide > p {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top section.provide div.layout {
	width: 100%;
	aspect-ratio: 9 / 16.5;
}
.content.top section.provide div.layout div.first {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.content.top section.provide div.layout div.second {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.content.top section.provide div.layout div.third {
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}
.content.top section.provide div.layout div.one {
	width: 75vw;
}
.content.top section.provide div.layout div.two {
	width: 75vw;
}
.content.top section.provide div.layout div.three {
	width: 75vw;
}
}


/* content / top / detail
------------------------------------------------------------ */
.content.top section.detail div.detailSlide {
	overflow: hidden;
}
.content.top section.detail div.detailSlide div.item > a {
	text-decoration: none;
}
.content.top section.detail div.detailSlide div.item > a div {
	background-color: #fff;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
	margin: 1.8rem;
	transition: all 0.375s;
}
.content.top section.detail div.detailSlide div.item > a div p.thumb img {
	width: 100%;
}
@media (min-width: 768px) {
.content.top section.detail {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.content.top section.detail div.text {
	margin-left: 9vw;
}
.content.top section.detail div.detailSlide {
	width:63vw;
}
.content.top section.detail div.detailSlide div.item > a div {
	width: 39rem;
	border-radius: 2.1vw;
	padding-bottom: 2.7vw;
}
.content.top section.detail div.detailSlide div.item > a div p.thumb img {
	padding-left: 2.7vw;
}
.content.top section.detail div.detailSlide div.item > a div h3 {
	padding-left: 1.5vw;
	padding-top: 1.5vw;
}
.content.top section.detail div.detailSlide div.item > a div p.summary {
	padding-left: 1.5vw;
}
}
@media (max-width: 767px) {
.content.top section.detail div.text {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top section.detail div.detailSlide {
	margin-top: 3rem;
}
.content.top section.detail div.detailSlide div.item > a div {
	border-radius: 4.2vw;
	padding-bottom: 5.4vw;
}
.content.top section.detail div.detailSlide div.item > a div p.thumb img {
	padding-left: 5.4vw;
}
.content.top section.detail div.detailSlide div.item > a div h3 {
	padding-left: 3.6vw;
	padding-top: 3.6vw;
}
.content.top section.detail div.detailSlide div.item > a div p.summary {
	padding-left: 3.6vw;
}
}


/* content / top / news-topics
------------------------------------------------------------ */
@media (max-width: 767px) {
.content.top section.news-topics {
	padding-left: 6vw;
	padding-right: 6vw;
}
}


/* content / top / faq
------------------------------------------------------------ */
.content.top section.faq div.faqSlide {
	overflow: hidden;
}
.content.top section.faq div.faqSlide div.item > a {
	text-decoration: none;
}
.content.top section.faq div.faqSlide div.item > a div {
	background-color: #fff;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
	margin: 1.8rem;
	transition: all 0.375s;
}
.content.top section.faq div.faqSlide div.item > a div p.thumb img {
	width: 100%;
}
@media (min-width: 768px) {
.content.top section.faq {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.content.top section.faq div.text {
	margin-left: 9vw;
}
.content.top section.faq div.faqSlide {
	width:63vw;
}
.content.top section.faq div.faqSlide div.item > a div {
	width: 39rem;
	border-radius: 2.1vw;
	padding-bottom: 2.7vw;
}
.content.top section.faq div.faqSlide div.item > a div p.thumb img {
	padding-left: 2.7vw;
}
.content.top section.faq div.faqSlide div.item > a div h3 {
	padding-left: 1.5vw;
	padding-top: 1.5vw;
}
.content.top section.faq div.faqSlide div.item > a div p.summary {
	padding-left: 1.5vw;
}
}
@media (max-width: 767px) {
.content.top section.faq div.text {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top section.faq div.faqSlide {
	margin-top: 3rem;
}
.content.top section.faq div.faqSlide div.item > a div {
	border-radius: 4.2vw;
	padding-bottom: 5.4vw;
}
.content.top section.faq div.faqSlide div.item > a div p.thumb img {
	padding-left: 5.4vw;
}
.content.top section.faq div.faqSlide div.item > a div h3 {
	padding-left: 3.6vw;
	padding-top: 3.6vw;
}
.content.top section.faq div.faqSlide div.item > a div p.summary {
	padding-left: 3.6vw;
}
}


/* content / top / professional
------------------------------------------------------------ */
.content.top div.professionalSlide {
	overflow: hidden;
}
.content.top div.professionalSlide div.item > a {
	text-decoration: none;
}
.content.top div.professionalSlide div.item > a div {
	background-color: #fff;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
	margin: 1.8rem;
	transition: all 0.375s;
}
.content.top div.professionalSlide div.item > a div p.thumb img {
	width: 100%;
}
@media (min-width: 768px) {
.content.top div.professionalSlide div.item > a div {
	border-radius: 2.1vw;
	padding-bottom: 1.2vw;
}
.content.top div.professionalSlide div.item > a div p.thumb img {
	border-radius: 2.1vw 2.1vw 0 0;
}
.content.top div.professionalSlide div.item > a div h3,
.content.top div.professionalSlide div.item > a div p.title {
	padding-left: 2.1vw;
	padding-right: 2.1vw;
}
}
@media (max-width: 767px) {
.content.top section.professional > p {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top div.professionalSlide div.item > a div {
	border-radius: 4.2vw;
	padding-bottom: 3.6vw;
}
.content.top div.professionalSlide div.item > a div p.thumb img {
	border-radius: 4.2vw 4.2vw 0 0;
}
.content.top div.professionalSlide div.item > a div h3,
.content.top div.professionalSlide div.item > a div p.title {
	padding-left: 4.2vw;
	padding-right: 4.2vw;
}
}


/* content / top / staff
------------------------------------------------------------ */
.content.top div.staffSlide {
	overflow: hidden;
}
.content.top div.staffSlide div.item > a {
	text-decoration: none;
}
.content.top div.staffSlide div.item > a div {
	background-color: #fff;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
	margin: 1.8rem;
	transition: all 0.375s;
}
.content.top div.staffSlide div.item > a div p.thumb img {
	width: 100%;
}
@media (min-width: 768px) {
.content.top div.staffSlide div.item > a div {
	border-radius: 2.1vw;
	padding-bottom: 1.2vw;
}
.content.top div.staffSlide div.item > a div p.thumb img {
	border-radius: 2.1vw 2.1vw 0 0;
}
.content.top div.staffSlide div.item > a div h3,
.content.top div.staffSlide div.item > a div p.title {
	padding-left: 2.1vw;
	padding-right: 2.1vw;
}
}
@media (max-width: 767px) {
.content.top section.staff > p {
	padding-left: 6vw;
	padding-right: 6vw;
}
.content.top div.staffSlide div.item > a div {
	border-radius: 4.2vw;
	padding-bottom: 3.6vw;
}
.content.top div.staffSlide div.item > a div p.thumb img {
	border-radius: 4.2vw 4.2vw 0 0;
}
.content.top div.staffSlide div.item > a div h3,
.content.top div.staffSlide div.item > a div p.title {
	padding-left: 4.2vw;
	padding-right: 4.2vw;
}
}


/* content / top / news-topics
------------------------------------------------------------ */
@media (min-width: 768px) {
.content.top section.news-topics {
	padding-left: 9vw;
	padding-right: 9vw;
}
.content.top section.news-topics dl.news-topics div {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
.content.top section.news-topics dl.news-topics div dt {
	width: 15rem;
}
}
@media (max-width: 767px) {
.content.top section.news-topics {
	padding-left: 6vw;
	padding-right: 6vw;
}
}


/* content / second / base
------------------------------------------------------------ */
@media (min-width: 768px) {
.content.second dl.outline div {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	width: 51vw;
	margin-left: auto;
	margin-right: auto;
}
.content.second dl.outline div dt {
	width: 20%;
}
.content.second dl.outline div dd {
	width: 80%;
}
}


/* content / second / faq
------------------------------------------------------------ */
.content dl.faq div {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
@media (min-width: 768px) {
.content.second dl.faq div {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.content.second dl.faq div dt {
	width: 4.5rem;
}
.content.second dl.faq div dd {
	width: calc(100% - 4.5rem);
}
}
@media (max-width: 767px) {
.content.second dl.faq div {
	width: 100%;
}
.content.second dl.faq div dt {
	width: 4.5rem;
}
.content.second dl.faq div dd {
	width: calc(100% - 4.5rem);
}
}


/* content / second / professional
------------------------------------------------------------ */
@media (min-width: 768px) {
.content.second div.professional {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	width: 82.5rem;
	margin-left: auto;
	margin-right: auto;
}
.content.second div.professional div.profile {
	width: 33rem;
}
.content.second div.professional div.profile p.photo img {
	width: 33rem;
	height: auto;
}
.content.second div.professional div.voice {
	width: 45rem;
}
}
@media (max-width: 767px) {
.content.second div.professional div.voice {
	margin-top: 4.5rem;
}
}


/* content / second / staff
------------------------------------------------------------ */
@media (min-width: 768px) {
.content.second div.staff {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 51vw;
	margin-left: auto;
	margin-right: auto;
}
.content.second div.staff div.photo {
	width: 24vw;
}
.content.second div.staff div.photo img {
	width: 24vw;
	height: auto;
}
.content.second div.staff div.profile {
	width: 24vw;
}
}
@media (max-width: 767px) {
.content.second div.staff div.profile {
	margin-top: 4.5rem;
}
}


/* button
------------------------------------------------------------ */
.content div.center {
	display: flex;
	justify-content: center;
}
.content div.right {
	display: flex;
	justify-content: flex-end;
}
.content div.detail a.detail,
.content div.detail.dimm {
	display: flex;
	align-items: center;
	text-decoration: none;
}
.content div.detail a.detail img {
	transition: all 0.375s;
}
.content div.detail a.detail img,
.content div.detail.dimm img {
	height: 2.1rem;
	width: auto;
	margin-right: 1.8rem;
}


/* button / line
------------------------------------------------------------ */
.content p.line {
	text-align: center;
}
.content p.line a {
	display: block;
	color: #fff;
	text-decoration: none;
	background-color: #00b900;
	border-radius: 1.2rem;
	transition: all 0.1875s;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
}
.content p.line span {
	margin-left: 0.9rem;
}
@media (min-width: 768px) {
.content p.line a {
	width: 36vw;
	margin-left: auto;
	margin-right: auto;
	padding: 1.2rem 2.4rem;
}
}
@media (max-width: 767px) {
.content p.line a {
	width: 100%;
	padding: 0.9rem;
}
}


/* google map
------------------------------------------------------------ */
section.content div.gmap {
	width: 100%;
}
section.content div.gmap iframe {
	width: 100%;
}
@media (min-width: 768px) {
section.content div.gmap iframe {
	height: 45rem;
}
}
@media (max-width: 767px) {
section.content div.gmap iframe {
	height: 39rem;
}
}


/* slick / school
------------------------------------------------------------ */
section.content section.schoolSlick {
	opacity: 0;
	transition: opacity 0.9s;
}
section.content section.schoolSlick.slick-initialized {
	opacity: 1;
}
section.content section.schoolSlick p {
	width: 100%;
}
section.content section.schoolSlick p img {
	width: 100%;
	height: auto;
}
section.content section.schoolSlick .slick-dots {
	bottom: initial !important;
	margin-top: 1.5rem;
}
section.content section.schoolSlick .slick-dots li {
	width: 3rem !important;
}
section.content section.schoolSlick .slick-dots li button:before {
	font-size: 1.5rem !important;
	opacity: 0.3 !important;
}
section.content section.schoolSlick .slick-dots li button:hover:before,
section.content section.schoolSlick .slick-dots li button:focus:before {
	opacity: 1 !important;
}
section.content section.schoolSlick .slick-dots li.slick-active button:before {
	opacity: 1 !important;
}



/* bg-visual
------------------------------------------------------------ */
div.contentTop {
	position: relative;
	width: 100%;
	overflow: hidden;
}
div.bgTop-a,
div.bgTop-b,
div.bgTop-c,
div.bgTop-d,
div.bgTop-e,
div.bgTop-f {
	z-index: -10;
	position: absolute;
}
@media (min-width: 768px) {
div.bgTop-a {
	top: 12%;
	left: 63%;
}
div.bgTop-a img {
	width: 48rem;
	height: auto;
}
div.bgTop-b {
	top: 19.5%;
	left: 7.5%;
}
div.bgTop0-b img {
	width: 51rem;
	height: auto;
}
div.bgTop-c {
	top: 49.5%;
	left: -3%;
}
div.bgTop-c img {
	width: 60rem;
	height: auto;
}
div.bgTop-d {
	top: 63.75%;
	left: 63%;
}
div.bgTop-d img {
	width: 48rem;
	height: auto;
}
div.bgTop-e {
	top: 77.25%;
	left: 2.25%;
}
div.bgTop-e img {
	width: 54rem;
	height: auto;
}
div.bgTop-f {
	top: 90.75%;
	left: 72%;
}
div.bgTop-f img {
	width: 60rem;
	height: auto;
}
}
@media (max-width: 767px) {
div.bgTop-a,
div.bgTop-b,
div.bgTop-c,
div.bgTop-d,
div.bgTop-e,
div.bgTop-f {
	display: none;
}

/* div.bgTop-a {
	top: 13.5%;
	left: 63%;
}
div.bgTop-a img {
	width: 48rem;
	height: auto;
}
div.bgTop-b {
	top: 21.75%;
	left: 7.5%;
}
div.bgTop0-b img {
	width: 51rem;
	height: auto;
}
div.bgTop-c {
	top: 57%;
	left: -3%;
}
div.bgTop-c img {
	width: 60rem;
	height: auto;
}
div.bgTop-d {
	top: 63.75%;
	left: 57%;
}
div.bgTop-d img {
	width: 48rem;
	height: auto;
}
div.bgTop-e {
	top: 75%;
	left: 2.25%;
}
div.bgTop-e img {
	width: 54rem;
	height: auto;
}
div.bgTop-f {
	top: 90%;
	left: 60%;
}
div.bgTop-f img {
	width: 60rem;
	height: auto;
} */
}


/* banner / trial
------------------------------------------------------------ */
div.bannerFreeTrial a,
div.banner3campaign a {
	display: block;
	z-index: 9;
	position: fixed;
}
div.bannerFreeTrial a img,
div.banner3campaign a img {
	width: 33rem;
	height: auto;
	border-radius: 1.2rem;
	box-shadow: 0 0.3rem 1.2rem 0 rgba(0, 0, 0, 0.3);
}
@media (min-width: 768px) {
div.bannerFreeTrial a,
div.banner3campaign a {
	bottom: 3.3svh;
	right: 3vw;
}
}
@media (max-width: 767px) {
div.bannerFreeTrial a,
div.banner3campaign a {
	bottom: 3.15svh;
	left: 50%;
	transform: translateX(-50%);
}
}


/* ws calendar
------------------------------------------------------------ */
div.wsCalendar {
	width: 100%;
}
table.wsCalendar {
	border-collapse: collapse;
}
table.wsCalendar th {
	font-weight: 400;
	background-color: #f6f6f6;
}
table.wsCalendar th,
table.wsCalendar td {
	border: solid 1px #eee;
	width: calc(100% / 7);
	padding: 0.9rem;
}
table.wsCalendar td p.class {
	font-weight: 700;
}
@media (min-width: 768px) {
table.wsCalendar {
	width: 100%;
}
}
@media (max-width: 767px) {
div.wsCalendar {
	overflow-x: scroll;
}
table.wsCalendar {
	width: 93rem;
}
}
