/*!
Theme Name: linora
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: linora
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

linora is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

a {
	background-color: transparent;
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}
b,
strong {
	font-weight: bolder;
}

code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

img {
	border-style: none;
}

button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

button,
input {
	overflow: visible;
}


button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

textarea {
	overflow: auto;
}

[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

details {
	display: block;
}

summary {
	display: list-item;
}

template {
	display: none;
}

[hidden] {
	display: none;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	color: #800080;
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.updated:not(.published) {
	display: none;
}



.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}






















/*----------------------------------------*/
* {
  box-sizing: border-box;
  letter-spacing: -0.03rem;
}
html {
  line-height: 1.6;
  color: #000000;
  font-size: 18px;
  letter-spacing: 0.05em;
  font-weight: 500;
  font-style: normal;
}
@media screen and (max-width: 1300px) {
html {
  font-size: 15px;
}
}
@media screen and (max-width: 400px) {
html {
  font-size: 12px;
}
}
body {
  margin: 0;
  background: #fff;
  color: #000;
}
li {
  list-style: none;
}
a,
a:hover,
a:visited {
  color: #000000;
  text-decoration: none;
  background-color: transparent;
}
a:link,
a:active,
a:hover,
a:focus {
    outline: none!important;
    -moz-outline-style: none;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
dl,
dt,
dd {
  margin: 0;
  padding: 0;
}
.fa:hover {
  filter: brightness(0.8);
  transition: filter 0.2s linear;
}
img {
  vertical-align: top;
}
.bold {
  font-weight: 700;
}

input[type="text"]::placeholder,
select::placeholder,
input[type="email"]::placeholder,
input[type="tel"]::placeholder,
input[type="text"]::placeholder,
textarea::placeholder {
  color: #ccc;
}
[type="checkbox"] {
  width: 24px;
  height: 24px;
  position: relative;
  top: 4px;
}













/* 20px */
.f1 {
  font-size: 1.11rem;
}




/* 16px */
.f16 {
  font-size: 0.888rem;
}




/* 21px */
.f21 {
  font-size: 1.16666rem;
}

/* 24px */
.f2 {
  font-size: 1.333rem;
}

/* 40px */
.f8 {
  font-size: 2.22rem;
}
@media screen and (max-width: 768px) {
.f8 {
  font-size: 1.5rem;
}
}

.t-left {
  text-align: left;
}
.t-right {
  text-align: right;
}

.l-width {
  padding-left: 14%;
  padding-right: 14%;
}
@media screen and (max-width: 1300px) {
.l-width {
  padding-left: 8%;
  padding-right: 8%;
}
}
@media screen and (max-width: 768px) {
.l-width {
  padding-left: 20px;
  padding-right: 20px;
}
}
@media screen and (max-width: 400px) {
.l-width {
  padding-left: 20px;
  padding-right: 20px;
}
}
.lm-width {
  padding-left: 13%;
  padding-right: 13%;
}
@media screen and (max-width: 1300px) {
.lm-width {
  padding-left: 8%;
  padding-right: 8%;
}
}
@media print, screen and (max-width:768px) {
.lm-width {
  padding-left: 20px;
  padding-right: 20px;
}
}

/* padding */
.tp20 {
  padding-top: 200px;
}
@media print, screen and (max-width:768px) {
.tp20 {
  padding-top: 80px;
}
}

.tp10 {
  padding-top: 100px;
}
@media print, screen and (max-width:768px) {
.tp10 {
  padding-top: 40px;
}
}
.tp7 {
  padding-top: 70px;
}
@media print, screen and (max-width:768px) {
.tp7 {
  padding-top: 30px;
}
}
.tp5 {
  padding-top: 50px;
}
@media print, screen and (max-width:768px) {
.tp5 {
  padding-top: 20px;
}
}
.tp3 {
  padding-top: 30px;
}
@media print, screen and (max-width:768px) {
.tp3 {
  padding-top: 10px;
}
}

.bp20 {
  padding-bottom: 200px;
}
@media print, screen and (max-width:768px) {
.bp20 {
  padding-bottom: 80px;
}
}
.bp10 {
  padding-bottom: 100px;
}
@media print, screen and (max-width:768px) {
.bp10 {
  padding-bottom: 40px;
}
}
.bp7 {
  padding-bottom: 70px;
}
@media print, screen and (max-width:768px) {
.bp7 {
  padding-bottom: 30px;
}
}
.bp5 {
  padding-bottom: 50px;
}
@media print, screen and (max-width:768px) {
.bp5 {
  padding-bottom: 20px;
}
}
.bp3 {
  padding-bottom: 30px;
}
@media print, screen and (max-width:768px) {
.bp3 {
  padding-bottom: 10px;
}
}













@media screen and (min-width: 769px) {
.sp {
  display: none;
}
}
@media screen and (max-width: 768px) {
.pc {
  display: none;
}
}

/* ■ヘッダー */

.site-header {
  position: fixed;
  z-index: 10;
  top: 0;
  height: 100px;
  background: #ffffff;
  width: 100%;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  
  
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(rgba(255, 255, 255, 0.8))) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.8) 100%) 0% 0% no-repeat padding-box;  
}
.site-header.sticky {
  background: transparent -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(rgba(255, 255, 255, 0.8))) 0% 0% no-repeat padding-box;
  background: transparent linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0.8) 100%) 0% 0% no-repeat padding-box;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  height: 75px;
}
@media screen and (max-width: 915px) {
.site-header {
  height: 60px;
}
}
@media screen and (max-width: 915px) {
.site-header.sticky {
  height: 50px;
}
}
.scroll-header {
//  opacity: 0;
  //top: -30px;
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
}
.header-inner {
  margin: 0 0 0 68px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
}
.site-header ul {
  padding: 0;
  margin: 0;
}
@media screen and (max-width: 1300px) {
.header-inner {
  margin: 0 0 0 40px;
}
}
@media screen and (max-width: 915px) {
.header-inner {
  margin: 0 20px;
}
}
.header-logo {
  width: 160px;
  height: 47px;
  position: absolute;
  left: 0;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (max-width: 1300px) {
.header-logo {
  width: 140px;
}
}
@media screen and (max-width: 915px) {
.header-logo {
  width: 120px;
  height: 35px;
}
}
@media screen and (max-width: 915px) {
.site-header.sticky .header-logo {
  width: 100px;
  height: 29px;
}
}
.header-logo p,
.header-logo h1 {
  margin: 0;
}
.header-logo img {
  max-width: 100%;
  vertical-align: top;
}
.site-header .nav-menu {
  font-size: 16px;
  line-height: 1;
  margin: 0;
  margin: 0 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1300px) {
.site-header .nav-menu {
  font-size: 14px;
}
}
@media screen and (max-width: 915px) {
.site-header .nav-menu {
  display: none;
}
}
.site-header .nav-menu > li {
  float: left;
  margin: 0 20px;
  font-style: normal;
  font-weight: 500;
  position: relative;
}
@media screen and (max-width: 1000px) {
.site-header .nav-menu > li {
  margin: 0 10px;
}
}
.site-header .nav-menu > li a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  display: inline-block;
  font-weight: 700;
  text-align: center;
  padding: 10px 8px;
}
.site-header .nav-menu > li a small {
  display: block;
  font-size: 10px;
  margin-top: 10px;
  text-align: center;
  font-weight: bold;
  line-height: 1.5;
  font-weight: 700;
  font-style: normal;
}
.site-header .sub-menu {
  margin: 0;
  padding: 0;
  position: absolute;
  display: none;
  top: 60px;
  left: 50%;
  -webkit-transform: translate(-50%, 0%);
  transform: translate(-50%, 0%);
  text-align: center;
  white-space: nowrap;
}
.site-header .sub-menu li a {
  padding: 1rem 1rem 0.8rem;
  min-width: 100px;
  background: rgba(255, 255, 255, 0.8);
}


.header-linkbox {
  background: #0F4C81;
  color: #fff;
  height: 100px;
  display: -ms-grid;
  display: grid;
  width: 160px;
  place-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
    transition-delay: 0s;
  -webkit-transition-delay: 0.15s;
  transition-delay: 0.15s;
  text-align: center;
  line-height: 1.3;
  border-bottom: 1px solid #fff;
  border-left: 1px solid #fff;
}
.site-header.sticky .header-linkbox {
/*  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  border-left: 1px solid rgba(0, 0, 0, 0.1);*/
}

@media screen and (max-width: 1300px) {
.header-linkbox {
  font-size: 14px;
  width: 120px;
}
}
@media screen and (max-width: 915px) {
.header-linkbox {
  display: none;
}
}
.site-header.sticky .header-linkbox {
  height: 75px;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
}
.header-linkbox.box-l {
  background-image: linear-gradient(90deg, #2a5c81, #297681);
}
.header-linkbox.box-r {
  background-image: linear-gradient(90deg, #297681, #279280);
}
.font-en {
  font-weight: 700;
  font-style: normal;
}
.header-linkbox:hover,
.header-linkbox:visited {
  color: #fff;
}
.font-ja {
  font-weight: 700;
  font-style: normal;
}
.header-linkbox small {
  font-size: 10px;
  text-align: center;
}
.spmenu-btn {
  width: 50px;
  height: 50px;
  position: absolute;
  top: auto;
  right: 0;
  cursor: pointer;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  display: none;
}
@media screen and (max-width: 915px) {
.spmenu-btn {
  display: flex;
  align-items: center;
  justify-content: center;
}
.spmenu-btn .btn-inner {
  width: 28px;
  height: 14px;
  position: relative;
  transition: 0.3s;
}
.spmenu-btn .btn-inner:hover {
  height: 20px;
}
.spmenu-btn i {
  width: 28px;
  height: 1px;
  background: #000;
  position: absolute;
}
.spmenu-btn .btn-inner::before {
  content: "";
  width: 100%;
  height: 1px;
  background: #000000;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.spmenu-btn .btn-inner::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #000000;
  position: absolute;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
}
.sp-menu {
  position: absolute;
  top: 0;
  background: rgba(255, 255, 255, 0.95);
  left: 0;
  margin: 0;
  width: 100%;
  min-height: 100vh;
  opacity: 0;
  transition: 0.5s;
  pointer-events: none;
  padding: 100px 20px 20px;
  z-index: -1;
  overflow-y: scroll;
  height: 100vh;
}
@media print, screen and (min-width:916px) {
.sp-menu {
  display: none;
}
}
.site-header.sticky .sp-menu {

}
.sp-menu.menu-open {
  pointer-events: auto;
  opacity: 1;
}
body.spmenu-on {
  overflow: hidden;
}
.sp-menu .spnav-menu {
  padding-bottom: 20px;
}
.sp-menu ul {
  width: 230px;
}
.sp-menu li {
  padding-bottom: 15px;
}
.sp-menu li > a {
  font-size: 18px;
  padding-bottom: 0;
  width: 100%;
  position: relative;
  font-weight: 700;
  line-height: 1.2;
  width: 100%;
  display: inline-block;
}
.sp-menu li small {
  display: block;
  font-size: 10px;
}
.sp-menu li > a::after {
  content: "";
  height: 10px;
  width: 10px;
  clip-path: polygon(0 7%, 7% 0, 57% 50%, 7% 100%, 0 93%, 43% 50%, 0 7%);
  content: '';
  background-color: #000;
  position: absolute;
  right: 2px;
  top: 0.4em;
}

@keyframes moveAndRotateTop {
0% {
  top: 0;
  transform: none;
}
50% {
  top: 43%;
  transform: none;
}
100% {
  top: 46%;
  transform: rotate(45deg);
}
}
@keyframes moveAndRotateBottom {
0% {
  bottom: 0;
  transform: none;
}
50% {
  bottom: 43%;
  transform: none;
}
100% {
  bottom: 46%;
  transform: rotate(-45deg);
}
}
@keyframes fadeOutMiddle {
0% {
  opacity: 1;
}
100% {
  opacity: 0;
}
}
@keyframes moveBackTop {
0% {
  top: 46%;
  transform: rotate(45deg);
}
50% {
  top: 40%;
  transform: none;
}
100% {
  top: 0;
  transform: none;
}
}
@keyframes moveBackBottom {
0% {
  bottom: 46%;
  transform: rotate(-45deg);
}
50% {
  bottom: 40%;
  transform: none;
}
100% {
  bottom: 0;
  transform: none;
}
}
@keyframes fadeInMiddle {
0% {
  opacity: 0;
}
100% {
  opacity: 1;
}
}
/* 開くとき */
body.spmenu-on .spmenu-btn.animation .btn-inner::before {
  animation: moveAndRotateTop 0.4s forwards ease;
}
body.spmenu-on .spmenu-btn.animation .btn-inner::after {
  animation: moveAndRotateBottom 0.4s forwards ease;
}
body.spmenu-on .spmenu-btn.animation i {
  animation: fadeOutMiddle 0.2s forwards ease;
}
/* 閉じるとき */
body:not(.spmenu-on) .spmenu-btn.animation .btn-inner::before {
  animation: moveBackTop 0.3s forwards ease;
}
body:not(.spmenu-on) .spmenu-btn.animation .btn-inner::after {
  animation: moveBackBottom 0.3s forwards ease;
}
body:not(.spmenu-on) .spmenu-btn.animation i {
  animation: fadeInMiddle 0.3s forwards ease;
}
.spmenu-bottom {
  padding: 0px 0px 30px;
  display: grid;
  gap: 10px;
}
.spmenu-bottom .link-box {
  padding: 26px 12px 26px 16px;
  color: #fff;
}
.spmenu-bottom .link-box.top {
  background-image: linear-gradient(90deg, #2a5c81, #279280);
}
.spmenu-bottom .link-box.bottom {
  background-image: linear-gradient(90deg, #2a5c81, #279280);
}
.sp-menu .link-title {
  margin: 0;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 915px) {
.sp-menu .link-box small {
  display: block;
  font-size: 10px;
  padding-top: 12px;
  line-height: 1.7;
}
}




/* ■ページ共通 */
.site-main {
  margin-top: 100px;
}
@media screen and (max-width: 915px) {
.site-main {
  margin-top: 60px;
}
}

.page-header .en {
  font-size: 3rem;
  font-weight: bold;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}
.page-header .jp {
  font-size: 1.1rem;
  display: block;
}



.page-header {
  text-align: center;
}
.page-header .en {
  font-size: 3rem;
  font-weight: bold;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
}


.p-title {
  font-weight: 700;
  font-style: normal;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 1rem 68px;
  font-size: 1rem;
}
@media screen and (max-width: 1100px) {
.p-title {
  padding: 1rem 40px 0;
}
}
@media screen and (max-width: 768px) {
.p-title {
  line-height: 1.5;
}
}
@media screen and (max-width: 400px) {
.p-title {
  line-height: 1.2;
  padding: 1rem 20px 20px;
}
}




/* 共通パーツ帯 */
.sec-band .box-list {
  display: flex;
}
@media screen and (max-width: 768px) {
.sec-band .box-list {
  flex-direction: column;
}
}
@media screen and (min-width: 769px) {
.sec-band .link-box {
  width: 50%;
}
}
.sec-band .link-box a {
  color: #fff;
  display: block;
  height: 100%;
  padding: 0 20px;
}


.sec-band .link-box:first-child {
  background-color: #1a3e4f;
}
.sec-band .link-box:last-child {
  background-color: #3099a1;
}
.sec-band .box-inner {
  width: 100%;
  max-width: 385px;
  margin: 0 auto;
  position: relative;
  padding: 40px 0 110px;
}
@media screen and (max-width: 768px) {
.sec-band .box-inner {
  padding: 40px 0 20px;
}
}
.sec-band .link-title .en {
  font-size: 1.2rem;
  font-weight: 900;
  display: block;
  line-height: 1;
}
.sec-band .link-title small {
  display: block;
}
.sec-band p {
  font-size: 16px;
  font-size: 0.9rem;
}
.sec-band .movable-arrow {
  position: absolute;
  right: 0;
}
@media screen and (max-width: 768px) {
.sec-band .movable-arrow {
  bottom: 0;
  top: 0;
  margin: auto;
}
}

.sec-band .movable-arrow .inner::before {
  border: 1px solid #fff;
}
.sec-band .movable-arrow .iarrow::before,
.sec-band .movable-arrow .iarrow::after {
  background-color: #fff;
}

/* ■GUIDE BOXテンプレート */

@media print, screen and (max-width:768px) {
.sec-guidebox .sec-inner {
  padding: 40px 0 40px;
}
}

@media print, screen and (min-width:550px) {
.sec-guidebox .box-list {
  display: flex;
  justify-content: flex-start;
  gap: 3%;
  padding: 0 14%;
}
}
@media screen and (max-width: 1300px) {
.sec-guidebox .box-list {
  padding: 0 8%;
}
}
@media print, screen and (max-width:768px) {
.sec-guidebox .box-list {
  padding: 0 20px;
}
}
@media print, screen and (min-width:550px) {
.sec-guidebox .carousel .slide-item {
  transform: none;
  width: 47%;
  display: flex;
  flex-direction: column
}
}
@media print, screen and (min-width:768px) {
.sec-guidebox .carousel .box-item:first-child {
  margin-left: 20px;
}
}
@media print, screen and (min-width:550px) {
.sec-guidebox .carousel .img-box {
  padding: 0;
  box-shadow: none;
}
}
.sec-guidebox .box-item .img-box {
  position: relative;
}
.sec-guidebox .box-item .img-box img {
  filter: brightness(0.7);
}
.sec-guidebox .box-item .img-box .f-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.3vw;
}
@media print, screen and (max-width:768px) {
.sec-guidebox .box-item .img-box .f-title {
  font-size: 1.9vw;
}
}
@media print, screen and (max-width:549px) {
.sec-guidebox .box-item .img-box .f-title {
  font-size: 3vw;
}
}
.sec-guidebox .box-item .box-linkbtn.box {
  margin-top: auto;
}


/* ■パンくず */
.breadcrumb {
  font-size: 0.666rem;
  font-weight: 600;
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
.breadcrumb {
  margin-top: 3vw;
}
}
.breadcrumb ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0px 68px 0;
  margin: 0;
  white-space: nowrap;
  overflow-x: auto;
}
@media screen and (max-width: 1100px) {
.breadcrumb ol {
  padding: 0px 40px 0;
}
}
@media screen and (max-width: 768px) {
.breadcrumb ol {
  padding: 0px 20px 20px;
}
}
@media screen and (max-width: 400px) {
.breadcrumb ol {
  padding: 0px 20px 20px;
}
}
.breadcrumb ol li:not(:last-child)::after {
  content: '＞';
  margin: 0 6px;
}
.breadcrumb a,
.breadcrumb span,
.breadcrumb ol li:not(:last-child)::after {
  color: #858585;
}


/* ■トップページ */
/* 共通 */


.sec-title.t1 {
  font-weight: 900;
  font-style: normal;
  letter-spacing: 0.08em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
.sec-title.t1 {
  line-height: 1.5;
}
}
@media screen and (max-width: 400px) {
.sec-title.t1 {
  line-height: 1.2;
}
}
.sec-title.t1 span {
  font-size: 2.6rem;
  display: block;
  padding-bottom: 1rem;
  white-space: nowrap;
  position: relative;
}
@media screen and (max-width: 768px) {
.sec-title.t1 span {
  padding-bottom: 0.5rem;
  white-space: normal;
}
}
@media screen and (max-width: 400px) {
.sec-title.t1 span {
  white-space: normal;
}
}
.sec-title.t1 small {
  display: block;
  font-size: 1rem;
  color: #000;
  padding: 5px;
  border-left: 6px solid #31b6a0;
  padding: 7px 10px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
.sec-title.t1 small {
  border-left: 4px solid #31b6a0;
  padding: 5px 10px;
  font-size: 0.8rem;
}
}
@media screen and (max-width: 400px) {
.sec-title.t1 small {
  font-size: 0.9rem;
}
}

.sec-lead.t1 {
  letter-spacing: 0.1em;
  padding: 0 0 0 20px;
}
@media screen and (max-width: 768px) {
.sec-lead.t1 {
  padding: 0;
}
}



/* ●MV */
.page-top .sec-mv .swiper-wrap {
  height: calc(100svh - 100px);
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 915px) {
.page-top .sec-mv .swiper-wrap {
  height: calc(100svh - 60px);
}
}


.page-top .sec-mv .swiper {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 0;
  background: #eee;
  font-size: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-top .sec-mv .swiper.is-active {
  -webkit-animation: parentSlider2 1s cubic-bezier(0.94, 0, 0.31, 1) forwards;
  animation: parentSlider2 1s cubic-bezier(0.94, 0, 0.31, 1) forwards;
  z-index: 1;
}
.page-top .sec-mv .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.page-top .sec-mv .swiper-slide img {
  max-width: unset;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  position: absolute;
}
@-webkit-keyframes parentSlider2 {
  0% {
    opacity: 1;
    z-index: 3;
    clip-path: inset(0% 0% 0% 100%);
  }
  99% {
    z-index: 3;
    clip-path: inset(0% 0% 0% 0%);
  }
  100% {
    opacity: 1;
    z-index: 2;
  }
}
@keyframes parentSlider2 {
  0% {
    opacity: 1;
    z-index: 3;
    clip-path: inset(0% 0% 0% 100%);
  }
  99% {
    z-index: 3;
    clip-path: inset(0% 0% 0% 0%);
  }
  100% {
    opacity: 1;
    z-index: 2;
  }
}

.page-top .sec-mv .center-btn {
  position: absolute;
  left: 0;
  right: 0;
  width: 300px;
  margin: auto;
  bottom: 150px;
  z-index: 3;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .center-btn {
  width: 230px;
  bottom: 15%;
}
}
.page-top .sec-mv .center-btn a {
  display: block;
  text-align: center;
  background-image: linear-gradient(90deg, #214f60, #268482);
  border-radius: 50px;
  color: #fff;
  overflow: hidden;
  padding: 11px 0 18px;
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .center-btn a {
  padding: 5px 0 14px;
}
}
.page-top .sec-mv .center-btn a span {
  font-size: 26px;
  display: block;
}
.page-top .sec-mv .center-btn a small {
  font-size: 12px;
  display: block;
}

.page-top .sec-mv .catchcopy {
  position: absolute;
  left: 0;
  top: calc(50% - 40px);
  z-index: 3;
  width: calc(100% - 100px);
  margin: auto;
  right: 0;
  color: #fff;
  font-weight: 500;
  text-shadow: 2px 4px 11px rgba(0,0,0,0.8);
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .catchcopy {
  width: calc(100% - 30px);
  text-shadow: 2px 4px 11px rgba(0,0,0,0.8);
  top: 26%;
}
}
.page-top .sec-mv .catchcopy > span {
  display: block;
}

.page-top .sec-mv .catchcopy .box {
  display: inline-block;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .catchcopy .box {
  line-height: 1.2;
}
}
.catchcopy .dummy-txt {
  opacity: 0;
}
.page-top .sec-mv .catchcopy .jp {
  font-size: 40px;
}
@media screen and (max-width: 1800px) {
.page-top .sec-mv .catchcopy .jp {
  font-size: 2.22vw;
}
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .catchcopy .jp {
  font-size: 27px;
}
}
.page-top .sec-mv .catchcopy .en {
  font-size: 22px;
  margin-top: 18px;
}
@media screen and (max-width: 1800px) {
.page-top .sec-mv .catchcopy .en {
  font-size: 1.22vw;
  margin-top: 1vw;
}
}
@media screen and (max-width: 768px) {
.page-top .sec-mv .catchcopy .en {
  font-size: 16px;
}
}
.catchcopy .txt {
  transform: translateY(100%);
  transition-duration: 1s;
  transition-delay: 0s;
  position: absolute;
  left: 0;
}
.catchcopy.on .txt {
  transform: translateY(0);
}


/* ●バナー */

@media screen and (min-width: 550px) {
.page-top .sec-banner .banner-list {
  display: flex;
  justify-content: space-between;
  gap: 8%;
}
}
@media screen and (max-width: 549px) {
.page-top .banner-item:first-child {
  margin-bottom: 2%;
}
}


/* ■カルーセルスライダー共通 */
.carousel .slick-slider {
  margin-top: -20px;
}
.carousel .slick-track {
  margin: 20px auto 20px;
}
.carousel .slide-item {
  height: auto;
  -webkit-transition: all 1s;
  transition: all 1s;
  -webkit-transform: scale(0.85);
  transform: scale(0.85);
  position: relative;
}
.carousel .slide-item.slick-current {
  -webkit-transform: scale(1);
  transform: scale(1);
}
.carousel .slide-item[aria-hidden="true"] {
  position: relative;
  right: -2vw;
  transition: all 1s;
}
@media screen and (max-width: 550px) {
.carousel .slide-item[aria-hidden="true"] {
  right: auto;
}
}
.carousel .slide-item.slick-current + .slide-item + .slide-item {
  position: relative;
  left: -2vw;
}
.carousel .slick-prev,
.carousel .slick-next {
  z-index: 2;
  top: 0;
  bottom: 0;
  margin: auto;
}
.carousel .slick-prev {
  left: 60px;
}
.carousel .slick-next {
  right: 60px;
}
@media screen and (max-width: 768px) {
.carousel .slick-prev {
  left: 30px;
}
.carousel .slick-next {
  right: 30px;
}
}
.carousel .slick-prev::before,
.carousel .slick-next::before {
  content: '';
  position: absolute;
  top: 0;
  width: 42px;
  height: 42px;
  bottom: 0;
  right: 0;
  margin: auto;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
.carousel .slick-prev::before,
.carousel .slick-next::before {
  width: 30px;
  height: 30px;
}
}
.carousel .slick-prev::before {
  left: 0;
  background-image: linear-gradient(-45deg, #3473a0, #30af9f);
}
.carousel .slick-next::before {
  right: 0;
  background-image: linear-gradient(-45deg, #3473a0, #30af9f);
}
.carousel .slick-prev::after,
.carousel .slick-next::after {
  content: '';
  position: absolute;
  top: 0px;
  width: 15px;
  height: 15px;
  bottom: 0;
  margin: auto;
  z-index: 3;
  background-color: #fff;
}
.carousel .slick-prev::after {
  left: 13px;
  width: 15px;
  height: 15px;
  clip-path: polygon(0 50%, 86.6% 0, 86.6% 100%);
}
.carousel .slick-next::after {
  right: 10px;
  width: 15px;
  height: 15px;
  clip-path: polygon(0 0, 86.6% 50%, 0 100%);
}
@media screen and (max-width: 768px) {
.carousel .slick-prev::after {
  left: 7px;
}
.carousel .slick-next::after {
  right: 5px;
}
}
.carousel .img-box {
  position: relative;
  padding: 0.4vw;
  box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.3);
}

.carousel .slide-item .mask img {
filter: brightness(0.8);
}
.carousel .slide-item.slick-current .img-box {
  box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.5);
}

/* Q&A */
.page-top .faq-link {
  color: #295e81;
}


/* ■リンクボタン共通 */
.box-linkbtn a {
  margin: 0 0 0 auto;
  display: block;
  width: 400px;
  max-width: 100%;
  padding: 22px 0 22px 40px;
  position: relative;
}
.box-linkbtn.box a {
  border: 1px solid #000;
}
.box-linkbtn a::before {
  content: '';
  width: 100%;
  height: 100%;
  left: -1px;
  top: -1px;
  display: block;
  position: absolute;
  background-image: linear-gradient(90deg, #2a5c81, #279280);
  opacity: 0;
  transition: 0.3s;
  height: calc(100% + 2px);
  width: calc(100% + 2px);
}
.box-linkbtn a:hover::before {
  opacity: 1;
}
.box-linkbtn .btn-label {
  z-index: 1;
  position: relative;
  transition: 0.3s;
}
.box-linkbtn a:hover .btn-label {
  color: #fff;
}
.box-linkbtn .movable-arrow {
  position: absolute;
  right: 20px;
  top: 0;
  bottom: 0;
  margin: auto;
}


/* 可動矢印だけ */
.movable-arrow {
  width: 58px;
  height: 34px;
}
.movable-arrow .inner {
  width: 100%;
  height: 100%;
  position: relative;
}
.movable-arrow .inner::before {
  position: absolute;
  content: '';
  width: 34px;
  height: 34px;
  border: 1px solid #000;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  border-radius: 50%;
  transition: 0.3s;
}
.movable-arrow .iarrow {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 40px;
  right: 16px;
  display: block;
  transition: 0.5s;
}
a:hover .iarrow {
  right: 5px;
}
.movable-arrow .iarrow::before {
  content: '';
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  height: 1px;
  transition: 0.3s;
  display: block;
  background-color: #000;
}
.movable-arrow .iarrow::after {
  content: '';
  position: absolute;
  width: 7px;
  height: 9px;
  background-color: #000;
  clip-path: polygon(0 7%, 7% 0, 57% 50%, 7% 100%, 0 93%, 43% 50%, 0 7%);
  right: -4px;
  top: 0;
  bottom: 0;
  margin: auto;
  transition: 0.3s;
}
/* ホバー時 */
.box-linkbtn a:hover .iarrow::before,
.box-linkbtn a:hover .iarrow::after {
  background-color: #fff;
}
.box-linkbtn a:hover .movable-arrow .inner::before {
  border: 1px solid #fff;
}
































/* ●IDEAS - 提案例紹介 */

.page-top .sec-ideas .f-title {
  position: absolute;
  display: block;
  text-align: center;
  width: 100%;
  color: #fff;
  font-weight: 600;
  font-size: 20px;
  bottom: 10%;
}
@media screen and (max-width: 915px) {
.page-top .sec-ideas .f-title {
  font-size: 2vw;
}
}
@media screen and (max-width: 549px) {
.page-top .sec-ideas .f-title {
  font-size: 4vw;
}
}
.page-top .sec-ideas .sub-title {
  margin-top: 16px;
  display: block;
  font-weight: 600;
  text-align: center;
  font-size: 1rem;
}
.page-top .sec-ideas .box-linkbtn.box {
  margin: 70px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-ideas .box-linkbtn.box {
  margin: 30px auto 0;
}
}


/* ●INTERVIEW - 導入ストーリー */
.page-top .sec-interview .box-linkbtn.box {
  margin: 70px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-interview .box-linkbtn.box {
  margin: 30px auto 0;
}
}
.page-top .sec-interview .company-name {
  display: block;
  text-align: center;
  margin-top: 20px;
  font-size: 1.1rem;
}

/* ●事業概要 */
.page-top .sec-overview .sec-inner {
  background-color: #f5f5f5;
}
.page-top .sec-overview .top-img {
  display: flex;
  justify-content: center;
}
.page-top .sec-overview .top-img img {
  aspect-ratio: 133/100;
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.page-top .sec-overview .flow-txt {
  font-size: 13px;
  padding: 10px 2% 0 0;
  gap: 1.5%;
  display: flex;
}
.page-top .sec-overview .flow {
  padding: 0 14%;
}
@media print, screen and (max-width:1300px) {
.page-top .sec-overview .flow {
  padding: 0 8%;
}
}
@media print, screen and (max-width:768px) {
.page-top .sec-overview .flow {
  padding: 0 0 0 20px;
  overflow-x: auto;
  overflow-y: hidden;
}
}
@media screen and (max-width: 400px) {
.page-top .sec-overview .flow {
  padding: 0 0 0 20px;
}
}
.page-top .sec-overview .scroll-wrap {
  width: 100%;
}
@media print, screen and (max-width:768px) {
.page-top .sec-overview .scroll-wrap {
  min-width: 1300px;
  padding-right: 20px;
}
}
.page-top .sec-overview .scroll-wrap img {
  display: block;
  min-width: 100%;
}
@media print, screen and (max-width:768px) {
.page-top .sec-overview .scroll-wrap img {
  margin-right: 20px;
}
}
.page-top .sec-overview .box-linkbtn.box {
  margin: 120px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-overview .box-linkbtn.box {
  margin: 60px auto 0;
}
}



/* ●Q&A */

.page-top .sec-faq .faq-item,
.page-faq .sec-faq .faq-item {
  margin-bottom: 25px;
  border-radius: 10px;
  transition: 0.3s;
  box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
}
.page-top .sec-faq .faq-item.on,
.page-faq .sec-faq .faq-item.on {
  background: #F5F5F5;
}
.page-top .sec-faq .faq-item dt,
.page-faq .sec-faq .faq-item dt {
  position: relative;
  cursor: pointer;
  padding: 32px;
  font-weight: 500;
}
@media print, screen and (max-width:768px) {
.page-top .sec-faq .faq-item dt,
.page-faq .sec-faq .faq-item dt {
  padding: 18px 12% 18px 18px;
}
}
.page-top .sec-faq .faq-item dd,
.page-faq .sec-faq .faq-item dd {
  margin: 0;
  padding: 0 30px 30px;
  line-height: 1.75;
  display: none;
}
@media print, screen and (max-width: 768px) {
.page-top .sec-faq .faq-item dd,
.page-faq .sec-faq .faq-item dd {
  padding: 0 18px 18px 18px;
}
}
.page-top .sec-faq .faq-item dt::before,
.page-faq .sec-faq .faq-item dt::before {
  content: '';
  position: absolute;
  clip-path: polygon(0 7%, 7% 0, 57% 50%, 7% 100%, 0 93%, 43% 50%, 0 7%);
  right: 3%;
  top: 18px;
  bottom: 0;
  margin: auto;
  width: 20px;
  height: 18px;
  background-color: #000;
  transform: rotate(90deg);
  transition: 0.5s;
}
@media print, screen and (max-width:768px) {
.page-top .sec-faq .faq-item dt::before,
.page-faq .sec-faq .faq-item dt::before {
  top: 2vw;
  width: 16px;
  height: 13px;
}
}
.page-top .sec-faq .faq-item.on dt::before,
.page-faq .sec-faq .faq-item.on dt::before {
  transform: rotate(270deg);
  top: 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-faq .faq-item.on dt::before,
.page-faq .sec-faq .faq-item.on dt::before {
  top: -2vw;
}
}
.page-top .sec-faq .box-linkbtn.box {
  margin: 120px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-faq .box-linkbtn.box {
  margin: 60px auto 0;
}
}




/* ●トップページ WORK+PLACE */
@media print, screen and (min-width:550px) {
.page-top .sec-workplace .workplace-list {
  display: flex;
  justify-content: flex-start;
  gap: 1%;
}
}
@media print, screen and (min-width:550px) {
.page-top .sec-workplace .carousel .slide-item {
  transform: none;
  width: 32.666%;
}
}
@media print, screen and (min-width:768px) {
.page-top .sec-workplace .carousel .workplace-item:first-child {
  margin-left: 20px;
}
}
@media print, screen and (min-width:550px) {
.page-top .sec-workplace .carousel .img-box {
  padding: 0;
  box-shadow: none;
}
}
.page-top .sec-workplace .box-item .img-box {
  position: relative;
}
.page-top .sec-workplace .box-item .img-box img {
  filter: brightness(0.7);
}
.page-top .sec-workplace .box-item .img-box .b-title {
  font-size: 1.5vw;
}
@media print, screen and (max-width:768px) {
.page-top .sec-workplace .box-item .img-box .b-title {
  font-size: 1.9vw;
}
}
@media print, screen and (max-width:549px) {
.page-top .sec-workplace .box-item .img-box .b-title {
  font-size: 3vw;
}
}
.page-top .sec-workplace .box-linkbtn.box {
  margin: 120px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-workplace .box-linkbtn.box {
  margin: 60px auto 0;
}
}
.page-top .sec-workplace .img-box img {
  aspect-ratio: 5 / 3;
  object-fit: cover;
  width: 100%;
  height: auto;
}


/* ●トップページ news */
.page-top .sec-news .sec-inner {
  background-color: #f5f5f5;
}
.page-top .sec-news .news-list {
  padding: 16px 0 70px 20px;
}
@media print, screen and (max-width:768px) {
.page-top .sec-news .news-list {
  padding: 16px 0 0;
}
}
.page-top .sec-news .news-item {
  border-bottom: 1px solid #ccc;
}
.page-top .sec-news .news-item:first-child {
  border-top: 1px solid #ccc;
}
.page-top .sec-news .news-item dl {
  display: flex;
  align-items: center;
}
.page-top .sec-news .news-date {
  font-size: 1rem;
  width: 220px;
  padding: 30px 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-news .news-date {
  width: 90px;
  padding: 20px 0;
}
}
.page-top .sec-news .news-title {
  width: calc(100% - 220px);
  font-size: 1rem;
  font-weight: 500;
  padding: 30px 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-news .news-title {
  width: calc(100% - 90px);
  padding: 20px 0;
}
}
.page-top .sec-news .box-linkbtn.box {
  margin: 100px auto 0;
}
@media print, screen and (max-width:768px) {
.page-top .sec-news .box-linkbtn.box {
  margin: 40px auto 0;
}
}








/* ●提案例・導入ストーリー・お役立ち資料親ページ */
.page-ideas .sec-lead.t2,
.page-interview .sec-lead.t2,
.page-guide-box .sec-lead.t2 {
  text-align: center;
}
.page-ideas .post-list,
.page-interview .post-list,
.page-guide-box .post-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.page-ideas .post-list,
.page-interview .post-list {
  gap: 70px;
}
.page-guide-box .post-list {
  gap: 80px 30px;
}
@media print, screen and (max-width:768px) {
.page-ideas .post-list,
.page-interview .post-list,
.page-guide-box .post-list {
  gap: 20px;
  margin-left: 4px;
}
}

@media print, screen and (max-width:500px) {
.page-guide-box .post-list {
  grid-template-columns: 1fr;
  gap: 40px;
}
}

.page-guide-box .img-box {
  position: relative;
}
.page-ideas .img-box img,
.page-interview .img-box img,
.page-guide-box .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.page-ideas .post-item .img-box img,
.page-interview .post-item .img-box img {
  aspect-ratio: 650/407;
}
.page-guide-box .post-item .img-box img {
  aspect-ratio: 659/467;
}
.single-workplace .last-item {
  width: 50%;
  margin: 0 auto;
}
@media print, screen and (max-width:580px) {
.single-workplace .last-item {
  width: 100%;
}
}
.page-ideas .last-item .box-inner,
.page-ideas .last-item .box-inner .img-box,
.page-interview .last-item .box-inner, 
.page-interview .last-item .box-inner .img-box,
.single-workplace .last-item .box-inner, 
.single-workplace .last-item .box-inner .img-box {
  height: 100%;
  width: 100%;
  position: relative;
}
.page-ideas .last-item .img-box img,
.page-interview .last-item .img-box img,
.single-workplace .last-item .img-box img {
  filter: brightness(0.7);
}
.page-guide-box .img-box img {
  filter: brightness(0.7);
}
.page-guide-box .post-item .img-box .f-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.2vw;
}
@media print, screen and (max-width:500px) {
.page-guide-box .post-item .img-box .f-title {
  font-size: 2.6vw;
}
}
.page-ideas .last-item .overlay,
.page-interview .last-item .overlay,
.single-workplace .last-item .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 10px 0 46px;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 420px;
  margin: 0 auto;
  right: 0;
}
@media print, screen and (max-width:1500px) {
.page-ideas .last-item .overlay,
.page-interview .last-item .overlay,
.single-workplace .last-item .overlay {
  max-width: 90%;
}
}
@media print, screen and (max-width: 768px) {
.page-ideas .last-item .overlay,
.page-interview .last-item .overlay,
.single-workplace .last-item .overlay {
  padding: 10px 0 10px;
}
}
.page-ideas .last-item .box-bottom,
.page-interview .last-item .box-bottom,
.single-workplace .last-item .box-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page-ideas .last-item .box-bottom .left-txt,
.page-interview .last-item .box-bottom .left-txt,
.single-workplace .last-item .box-bottom .left-txt {
  font-weight: 700;
  font-size: 2rem;
}
@media print, screen and (max-width: 1300px) {
.page-ideas .last-item .box-bottom .left-txt,
.page-interview .last-item .box-bottom .left-txt,
.single-workplace .last-item .box-bottom .left-txt {
  font-size: 1.5rem;
}
}
@media print, screen and (max-width: 768px) {
.page-ideas .last-item .box-bottom .left-txt,
.page-interview .last-item .box-bottom .left-txt,
.single-workplace .last-item .box-bottom .left-txt {
  font-size: 3vw;
}
}
.page-ideas .last-item .movable-arrow .inner::before,
.page-interview .last-item .movable-arrow .inner::before,
.single-workplace .last-item .movable-arrow .inner::before {
  border: 1px solid #fff;
}
.page-ideas .last-item .movable-arrow .iarrow::before,
.page-ideas .last-item .movable-arrow .iarrow::after,
.page-interview .last-item .movable-arrow .iarrow::before,
.page-interview .last-item .movable-arrow .iarrow::after,
.single-workplace .last-item .movable-arrow .iarrow::before,
.single-workplace .last-item .movable-arrow .iarrow::after {
  background-color: #fff;
}
.page-ideas .top-txt p,
.page-interview .top-txt p {
  font-size: 1.11rem;
}
@media print, screen and (max-width:1400px) {
.page-ideas .top-txt p,
.page-interview .top-txt p {
  font-size: 1.43vw;
}
}
@media print, screen and (max-width: 768px) {
.page-ideas .top-txt p,
.page-interview .top-txt p {
  font-size: 1.83vw;
}
}
.page-ideas .post-item .img-box,
.page-interview .post-item .img-box {
  position: relative;
}
.page-ideas .case-num {
  position: absolute;
  left: -40px;
  top: -40px;
  width: 80px;
  height: 80px;
  background-image: linear-gradient(45deg, #1e6691, #33a78f);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: bold;
  line-height: 22px;
}
@media print, screen and (max-width:768px) {
.page-ideas .case-num {
  width: 50px;
  height: 50px;
  left: -16px;
  top: -16px;
  line-height: 15px;
}
}
.page-ideas .case-num .case,
.page-ideas .case-num .num {
  display: block;
  text-align: center;
  color: #fff;
}
.page-ideas .case-num .case {
  font-size: 0.9rem;
}
.page-ideas .case-num .num {
  font-size: 1.166rem;
}
.page-ideas .post-title,
.page-interview .post-title {
  font-size: 1.166rem;
  padding-top: 10px;
  font-weight: 700;
}
@media print, screen and (max-width:768px) {
.page-ideas .post-title,
.page-interview .post-title {
  padding-top: 4px;
}
}
.page-ideas .sub-title,
.page-interview .sub-title {
  font-size: 1rem;
  display: block;
  padding-top: 6px;
}
@media print, screen and (max-width:768px) {
.page-ideas .sub-title,
.page-interview .sub-title {
  padding-top: 0;
  margin-bottom: 20px;
  font-size: 0.9rem;
}
}
.page-guide-box .description {
  margin: 20px auto 20px;
}
@media print, screen and (max-width:768px) {
.page-guide-box .description {
  margin: 10px auto 10px;
}
}
@media print, screen and (max-width:768px) {
.page-guide-box .box-linkbtn a {
  padding: 5% 0 5% 5%;
  font-size: 2.5vw;
}
}
@media print, screen and (max-width:500px) {
.page-guide-box .box-linkbtn a {
  font-size: 1rem;
}
}
.page-guide-box .box-linkbtn .movable-arrow {
  right: 3%;
}



/* ●提案例・interview個別ページ */
.single-ideas .site-main,
.single-interview .site-main {
  margin-top: 0;
}
.single-ideas .ideas-header .img-box,
.single-interview .interview-header .img-box {
  position: relative;
}
.single-ideas .ideas-header img,
.single-interview .interview-header img {
  filter: brightness(0.7);
  width: 100%;
  height: 100vh;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
.single-ideas .ideas-header img,
.single-interview .interview-header img {
  aspect-ratio: 1/1;
  height: 100%;
}
}
.single-ideas .ideas-header .overlay,
.single-interview .interview-header .overlay {
  top: 0;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.single-ideas .ideas-header .case-num {
  width: 80px;
  height: 80px;
  background-image: linear-gradient(45deg, #1e6691, #33a78f);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: bold;
  line-height: 22px;
}
@media screen and (max-width: 768px) {
.single-ideas .ideas-header .case-num {
  width: 50px;
  height: 50px;
  font-size: 13px;
  line-height: 1.2;
  padding-top: 8px;
}
}
.single-ideas .ideas-header .case-num .case,
.single-ideas .ideas-header .case-num .num {
  display: block;
  text-align: center;
  color: #fff;
}
.single-ideas .ideas-header .page-ideas .case-num .case {
  font-size: 0.9rem;
}
.single-ideas .ideas-header .page-ideas .case-num .num {
  font-size: 1.166rem;
}

.single-ideas .ideas-header .overlay .inner,
.single-interview .interview-header .overlay .inner {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  padding-bottom: 4.5vw;
}
@media screen and (max-width: 768px) {
.single-ideas .ideas-header .overlay .inner,
.single-interview .interview-header .overlay .inner {
  padding-bottom: 2.5vw;
}
}
.single-ideas .ideas-header .overlay .inner .sub-title {
  margin: 0 0 10px 16px;
}
.single-interview .interview-header .overlay .inner .sub-title {
  margin: 0 0 10px 0;
}
@media screen and (max-width: 768px) {
.single-ideas .ideas-header .overlay .inner .sub-title,
.single-interview .interview-header .overlay .inner .sub-title {
  margin: 0 0 1vw 2vw;
}
}
.single-ideas .ideas-header .overlay .inner h1,
.single-interview .interview-header .overlay .inner h1 {
  width: 100%;
  margin-top: 10px;
  font-size: 1.888rem;
}
@media screen and (max-width: 768px) {
.single-ideas .ideas-header .overlay .inner h1,
.single-interview .interview-header .overlay .inner h1 {
  font-size: 3.2vw;
  margin-top: 1vw;
}
}
.single-ideas .sec-beforeafter h2 {
  margin: 0;
}
.single-ideas .sec-beforeafter h2 .en {
  font-size: 46px;
  font-weight: 900;
  display: block;
  line-height: 1;
}
@media screen and (max-width: 768px) {
.single-ideas .sec-beforeafter h2 .en {
  font-size: 34px;
}
}
.single-ideas .before-list,
.single-ideas .after-list {
  display: flex;
  flex-wrap: wrap;
}

.single-ideas .before-list dt,
.single-ideas .after-list dt {
  width: 80px;
}
@media screen and (max-width: 768px) {
.single-ideas .before-list dt,
.single-ideas .after-list dt {
  width: 45px;
}
}
@media screen and (max-width: 768px) {
.single-ideas .before-list img,
.single-ideas .after-list img {
  width: 36px;
}
}
.single-ideas .before-list .material-symbols-outlined {
  font-size: 60px;
  color: #31b6a0;
}
.single-ideas .after-list .material-symbols-outlined {
  font-size: 60px;
  color: #0372a1;
}
@media screen and (max-width: 768px) {
.single-ideas .before-list .material-symbols-outlined,
.single-ideas .after-list .material-symbols-outlined {
  font-size: 36px;
}
}

.single-ideas .before-list dd,
.single-ideas .after-list dd {
  width: calc(100% - 80px);
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
.single-ideas .before-list dd,
.single-ideas .after-list dd {
  width: calc(100% - 45px);
  padding-bottom: 20px;
}
}
.single-ideas .before-list h3,
.single-ideas .after-list h3 {
  line-height: 1;
  margin: 10px auto 30px;
  font-size: 1.888rem;
}
.single-ideas .before-list h3 {
  color: #31b6a0;
}
.single-ideas .after-list h3 {
  color: #0372a1;
}
@media screen and (max-width: 768px) {
.single-ideas .before-list h3,
.single-ideas .after-list h3 {
  font-size: 20px;
  margin: 10px 0 0;
}
}
.single-ideas .detail {
  border-top: 1px solid #707070;
}
.single-ideas .detail-list {
  display: flex;
  flex-wrap: wrap;
  padding: 0 4%;
}
@media screen and (max-width: 768px) {
.single-ideas .detail-list {
  padding: 0;
}
}
.single-ideas .detail-list dt {
  width: 300px;
}
@media screen and (max-width: 768px) {
.single-ideas .detail-list dt {
  width: 100px;
}
}
.single-ideas .detail-list dd {
  width: calc(100% - 300px);
  padding: 0 0 26px;
}
@media screen and (max-width: 768px) {
.single-ideas .detail-list dd {
  width: calc(100% - 100px);
  padding: 0 0 12px 8px;
}
}

/* ●Work+Place投稿ページ */
.single-workplace .site-main {
  margin-top: 0;
}
.single-workplace .workplace-header .img-box {
  position: relative;
}
.single-workplace .workplace-header img {
  filter: brightness(0.7);
  width: 100%;
  height: 100vh;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
.single-workplace .workplace-header img {
  aspect-ratio: 1/1;
  height: 100%;
}
}
.single-workplace .workplace-header .overlay {
  top: 0;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
.single-workplace .workplace-header .overlay .inner {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  padding-bottom: 4.5vw;
}
@media screen and (max-width: 768px) {
.single-workplace .workplace-header .overlay .inner {
  padding-bottom: 2.5vw;
}
}
.single-workplace .workplace-header .overlay .inner .workplace-categories {
  margin: 0 0 0 50px;
}
@media screen and (max-width: 768px) {
.single-workplace .workplace-header .overlay .inner .workplace-categories {
  margin: 0 0 0 2vw;
  font-size: 1rem;
}
}
.single-workplace .workplace-header .overlay .inner h1 {
  width: 100%;
  margin-top: 10px;
  font-size: 1.888rem;
}
@media screen and (max-width: 768px) {
.single-workplace .workplace-header .overlay .inner h1 {
  font-size: 3.2vw;
  margin-top: 1vw;
}
}
@media screen and (min-width: 769px) {
.single-workplace .workplace-header .overlay time {
  font-size: 24px;
}
}
.single-workplace .entry-content h2 {
  background-image: linear-gradient(90deg, #2a5c81, #279180);
  color: #fff;
  padding: 0.2em 0.6em;
  margin-top: 2rem;
}
.single-workplace .entry-content h3 {
  border-left: 10px solid #2a5c81;
  padding: 0.2em 0.6em;
  font-size: 1.3rem;
  color: #2a5c81;
  margin: 2rem auto 1rem;
}
.single-workplace .entry-content h4 {
  display: inline-block;
  position: relative;
  padding: 0.2em 0.4em 0.5em;
  font-size: 1.2rem;
  color: #2a5c81;
  margin: 1.5rem auto 0.2rem;
}
.single-workplace .entry-content h4::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background-image: linear-gradient(90deg, #2a5c81, #279180);
  color: #2a5c81;
  margin: 1.5rem auto 0.2rem;
}
.single-workplace .entry-content h5 {
  font-size: 1.2rem;
  color: #2a5c81;
  margin: 1.5rem auto 0.2rem;
}
.single-workplace .entry-content h6 {
  font-size: 1.1rem;
  color: #2a5c81;
  margin: 1.5rem auto 0.2rem;
}









/* 提案例個別・WORK+PLACE共通 */
.contact-box {
  max-width: 650px;
  margin: 0 auto;
  height: 100%;
}
.contact-box .box-inner,
.contact-box .box-inner .img-box {
  height: 100%;
  width: 100%;
  position: relative;
}
.contact-box .img-box img {
  filter: brightness(0.7);
}
.contact-box .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 10px 0 46px;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 420px;
  margin: 0 auto;
  right: 0;
}
@media print, screen and (max-width:1500px) {
.contact-box .overlay {
  max-width: 90%;
}
}
@media print, screen and (max-width: 768px) {
.contact-box .overlay {
  padding: 10px 0 10px;
}
}
.contact-box .box-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.contact-box .box-bottom .left-txt {
  font-weight: 700;
  font-size: 2rem;
}
@media print, screen and (max-width: 1300px) {
.contact-box .box-bottom .left-txt {
  font-size: 1.5rem;
}
}
@media print, screen and (max-width: 768px) {
.contact-box .box-bottom .left-txt {
  font-size: 3vw;
}
}
.contact-box .movable-arrow .inner::before {
  border: 1px solid #fff;
}
.contact-box .movable-arrow .iarrow::before,
.contact-box .movable-arrow .iarrow::after {
  background-color: #fff;
}


/* ●newsアーカイブ */
.sec-news.news-archive .post-list {
  margin: 0 0 40px;
}
.sec-news.news-archive .news-item {
  border-bottom: 1px solid #ccc;
}
.page-top .sec-news.news-archive .news-item:first-child {
  border-top: 1px solid #ccc;
}
.sec-news.news-archive .news-item dl {
  display: flex;
  align-items: center;
}
.sec-news.news-archive .news-date {
  font-size: 1rem;
  width: 220px;
  padding: 28px 0 28px 46px;
}
@media print, screen and (max-width:768px) {
.sec-news.news-archive .news-date {
  width: 90px;
  padding: 16px 0;
}
}
@media print, screen and (max-width:400px) {
.sec-news.news-archive .news-date {
  width: 65px;
}
}
.sec-news.news-archive .news-title {
  width: calc(100% - 220px);
  font-size: 1rem;
  font-weight: 500;
  padding: 28px 0;
}
@media print, screen and (max-width:768px) {
.sec-news.news-archive .news-title {
  width: calc(100% - 90px);
  padding: 20px 0;
}
}
@media print, screen and (max-width:400px) {
.sec-news.news-archive .news-title {
  width: calc(100% - 65px);
}
}
.sec-news.news-archive .box-linkbtn.box {
  margin: 100px auto 0;
}
@media print, screen and (max-width:768px) {
.sec-news.news-archive .box-linkbtn.box {
  margin: 40px auto 0;
}
}

/* ●workplaceアーカイブ */
.post-type-archive-workplace .sec-workplace .sec-lead,
.tax-workplace_category .sec-workplace .sec-lead {
  text-align: center;
}
.post-type-archive-workplace.paged .sec-workplace .sec-lead,
.tax-workplace_category.paged .sec-workplace .sec-lead {
  display: none;
}

.sec-workplace.workplace-archive .workplace-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 70px;
}
@media print, screen and (max-width:1300px) {
.sec-workplace.workplace-archive .workplace-list {
  gap: 5vw 5.5vw;
}
}
@media print, screen and (max-width:768px) {
.sec-workplace.workplace-archive .workplace-list {
  gap: 20px 20px;
}
}
.sec-workplace.workplace-archive .workplace-list .post-thumb img {
  aspect-ratio: 650/410;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sec-workplace.workplace-archive .workplace-list .workplace-categories {
  margin-top: 6px;
}
.sec-workplace.workplace-archive .workplace-list .workplace-categories li {
  margin-right: 16px;
  display: inline-block;
}
.sec-workplace.workplace-archive .workplace-list .workplace-categories a {
  font-size: 0.777em;
  color: #999;
}
.sec-workplace.workplace-archive .workplace-list .workplace-item .workplace-title {
  margin: 0;
}
.sec-workplace.workplace-archive .workplace-list .workplace-item .workplace-date {
  text-align: right;
  color: #999;
}

/* ●ideasアーカイブ・INTERVIEWアーカイブ */
.post-type-archive-ideas .sec-ideas .sec-lead,
.tax-ideas_category .sec-ideas .sec-lead,
.post-type-archive-interview .sec-interview .sec-lead,
.tax-interview_category .sec-interview .sec-lead {
  text-align: center;
}
.post-type-archive-ideas.paged .sec-ideas .sec-lead,
.tax-ideas_category.paged .sec-ideas .sec-lead,
.post-type-archive-ideas.paged .sec-ideas .sec-lead,
.tax-ideas_category.paged .sec-ideas .sec-lead {
  display: none;
}

.sec-ideas.ideas-archive .ideas-list,
.sec-interview.interview-archive .interview-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 70px;
}
@media print, screen and (max-width:1300px) {
.sec-ideas.ideas-archive .ideas-list,
.sec-interview.interview-archive .interview-list {
  gap: 5vw 5.5vw;
}
}
@media print, screen and (max-width:768px) {
.sec-ideas.ideas-archive .ideas-list,
.sec-interview.interview-archive .interview-list {
  gap: 20px 20px;
}
}
.sec-ideas.ideas-archive .ideas-list .post-thumb img,
.sec-interview.interview-archive .interview-list .post-thumb img {
  aspect-ratio: 650/410;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sec-ideas.ideas-archive .ideas-list .ideas-categories,
.sec-interview.interview-archive .interview-list .interview-categories {
  margin-top: 6px;
}
.sec-ideas.ideas-archive .ideas-list .ideas-categories li,
.sec-interview.interview-archive .interview-list .interview-categories li {
  margin-right: 16px;
  display: inline-block;
}
.sec-ideas.ideas-archive .ideas-list .ideas-categories a,
.sec-interview.interview-archive .interview-list .interview-categories a {
  font-size: 0.777em;
  color: #999;
}
.sec-ideas.ideas-archive .ideas-list .ideas-item .ideas-title,
.sec-interview.interview-archive .interview-list .interview-item .interview-title {
  margin: 0;
}
.sec-ideas.ideas-archive .ideas-list .ideas-item .ideas-date,
.sec-interview.interview-archive .interview-list .interview-item .interview-date {
  text-align: right;
  color: #999;
}

/* news・workplace共通 */
.archive-catlink {
  padding: 28px 0;
  text-align: center;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  display: flex;
  justify-content: center;
  gap: 2vw 0.5vw;
  flex-wrap: wrap;
}
.archive-catlink a {
  padding: 0px 14px;
  display: inline-block;
  border-radius: 12px;
}
.archive-catlink a.current {
  background-color: #000;
  color: #fff;
  pointer-events: none;
}
.no-post {
  text-align: center;
}
.post-categories {
  min-height: 30px;
}
.navigation.post-navigation {
  padding: 24px 0;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070;
}
@media print, screen and (max-width:768px) {
.navigation.post-navigation {
  padding: 10px 0;
}
}
.navigation.post-navigation .nav-links {
  justify-content: space-between;
}
.navigation.post-navigation .nav-next {
  margin-left: auto;
}
.navigation.post-navigation .nav-links a {
  padding: 6px 10px;
  transition: 0.3s;
}
.navigation.post-navigation .nav-links a:hover {
  background-color: #ececec;
}

/* INTERVIEW導入ストーリー投稿ページ */
.single-interview .sec-interview .img-box img {
  width: 100%;
}
.single-interview .sec-interview h2 {
  font-size: 1rem;
  color: #31b6a0;
  padding: 30px 0 30px;
}
@media print, screen and (max-width:768px) {
.single-interview .sec-interview h2 {
  padding: 10px 0 10px;
}
}
.single-interview .sec-interview h2::before {
  content: '';
  display: inline-block;
  width: 40px;
  height: 2px;
  background-color: #31b6a0;
  margin-right: 6px;
  position: relative;
  bottom: 6px;
}
@media print, screen and (max-width:400px) {
.single-interview .sec-interview h2::before {
  width: 26px;
  height: 1px;
  bottom: 4px;
}
}
.single-interview .sec-interview p {
  padding-bottom: 30px;
}
@media print, screen and (max-width:768px) {
.single-interview .sec-interview p {
  padding-bottom: 10px;
}
}
.single-interview .sec-interview p .name {
  color: #0372a1;
  font-weight: 700;
  margin-right: 10px;
}


/* ●プラポリページ */
.page-privacy-policy .sec-privacypolicy li {
  padding: 6px 0;
}
@media screen and (max-width: 768px) {
.page-privacy-policy .sec-privacypolicy li {
  padding: 0;
}
}

/* ●セキュリティページ */
.page-security .sec-security li {
  padding: 6px 0;
}
@media screen and (max-width: 768px) {
.page-security .sec-security li {
  padding: 0;
}
}

/* ●お問い合わせ完了ページ・メンテナンス受付完了ページ */
.page-contact-completion .page-header h1,
.page-maintenance-completion .page-header h1 {
  font-size: 1.888rem;
  text-align: left;
}
.sec-completion .sec-inner {
  text-align: left;
}
.sec-completion .sec-inner h2 {
  color: #31b6a0;
}
.sec-completion .tel-link {
  font-size: 4rem;
  font-weight: 900;
  letter-spacing: 2px;
  color: #0372a1;
  pointer-events: none;
}
@media print, screen and (max-width:500px) {
.sec-completion .tel-link {
  font-size: 3rem;
}
}
@media print, screen and (max-width:768px) {
.sec-completion .tel-link {
  pointer-events: auto;
}
}
.sec-completion .tel-link span {
  accent-color: 700;
  font-size: 2rem;
  pointer-events: none;
}
.page-contact-completion .sec-title.t1 span,
.page-maintenance-completion .sec-title.t1 span {
  font-weight: 700;
  font-size: 1.888rem;
}

/* ■GUIDE BOX個別ページ */
.parent-pageid-107 .page-header h1 {
  text-align: left;
  margin: 1em auto 0;
}
.parent-pageid-107 .two-column {
  display: flex;
  justify-content: space-between;
  gap: 2%;
}
@media print, screen and (max-width:1000px) {
.parent-pageid-107 .two-column {
  flex-direction: column;
}
}
.parent-pageid-107 .two-column > div {
  width: 49%;
}
@media print, screen and (max-width:1000px) {
.parent-pageid-107 .two-column > div {
  width: 100%;
}
}
.parent-pageid-107 .sec-form h2 {
  font-size: 1.1rem;
}
.parent-pageid-107 .wpcf7-form p,
.page-contact .wpcf7-form p,
.page-after-support .wpcf7-form p {
  margin: 0;
}
.parent-pageid-107 .wpcf7-form dl,
.page-contact .wpcf7-form dl,
.page-after-support .wpcf7-form dl {
  display: flex;
  flex-wrap: wrap;
  border-bottom: 1px solid #707070;
}
.page-contact.confirm-page .wpcf7-form dl,
.page-after-support.confirm-page .wpcf7-form dl {
  border: none;
}
@media print, screen and (max-width:580px) {
.page-contact .wpcf7-form dl,
.page-after-support .wpcf7-form dl {
  border: none;
}
}

















.parent-pageid-107 .wpcf7-form dt,
.parent-pageid-107 .wpcf7-form dd {
  width: 50%;
  padding: 22px 10px;
  border-top: 1px solid #707070;
  font-weight: 500;
}
.page-contact .wpcf7-form dt,
.page-after-support .wpcf7-form dt {
  width: 450px;
}
.page-contact .wpcf7-form dd,
.page-after-support .wpcf7-form dd {
  width: calc( 100% - 450px );
}
.page-contact .wpcf7-form dt,
.page-contact .wpcf7-form dd,
.page-after-support .wpcf7-form dt,
.page-after-support .wpcf7-form dd {
  padding: 22px 40px 22px 40px;
  border-top: 1px solid #707070;
  font-weight: 500;
}
@media print, screen and (max-width:1000px) {
.page-contact .wpcf7-form dt,
.page-contact .wpcf7-form dd,
.page-after-support .wpcf7-form dt,
.page-after-support .wpcf7-form dd {
  padding: 22px 10px;
  width: 50%;
}
}
@media print, screen and (max-width:580px) {
.parent-pageid-107 .wpcf7-form dt,
.parent-pageid-107 .wpcf7-form dd,
.page-contact .wpcf7-form dt,
.page-contact .wpcf7-form dd,
.page-after-support .wpcf7-form dt,
.page-after-support .wpcf7-form dd {
  width: 100%;
  border: none;
}
.parent-pageid-107 .wpcf7-form dt,
.page-contact .wpcf7-form dt,
.page-after-support .wpcf7-form dt {
  padding: 8px 10px 8px;
  background-color: #fbfbfb;
}
.parent-pageid-107 .wpcf7-form dd,
.page-contact .wpcf7-form dd,
.page-after-support .wpcf7-form dd {
  padding: 8px 0 8px;
  margin-bottom: 10px;
}
.page-after-support.confirm-page .wpcf7-form dd {
  padding: 8px 10px 8px;
}
.page-after-support .last-dt {
  display: none;
}
}
.parent-pageid-107 .wpcf7-form .dt-inner,
.page-contact .wpcf7-form .dt-inner,
.page-after-support .wpcf7-form .dt-inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media print, screen and (max-width:580px) {
.parent-pageid-107 .wpcf7-form .dt-inner,
.page-contact .wpcf7-form .dt-inner,
.page-after-support .wpcf7-form .dt-inner {
  justify-content: flex-start;
  gap: 15px;
}
}
.parent-pageid-107 .wpcf7-form .item-name,
.page-contact .wpcf7-form .item-name,
.page-after-support .wpcf7-form .item-name {
  font-size: 1rem;
}
.parent-pageid-107 .wpcf7-form .required,
.parent-pageid-107 .wpcf7-form .optional,
.page-contact .wpcf7-form .required,
.page-contact .wpcf7-form .optional,
.page-after-support .wpcf7-form .required,
.page-after-support .wpcf7-form .optional {
  line-height: 1;
  padding: 9px 2px 12px 0;
  border-radius: 20px;
  color: #666;
  width: 56px;
  text-align: center;
  min-width: 56px;
}
@media print, screen and (max-width:580px) {
.parent-pageid-107 .wpcf7-form .required,
.parent-pageid-107 .wpcf7-form .optional,
.page-contact .wpcf7-form .required,
.page-contact .wpcf7-form .optional,
.page-after-support .wpcf7-form .required,
.page-after-support .wpcf7-form .optional {
  padding: 3px 0 7px;
}
}
.parent-pageid-107 .wpcf7-form .required,
.page-contact .wpcf7-form .required,
.page-after-support .wpcf7-form .required {
  background-color: #f7e2e2;
}
.parent-pageid-107 .wpcf7-form .optional,
.page-contact .wpcf7-form .optional,
.page-after-support .wpcf7-form .optional {
  background-color: #ccc;
}
.parent-pageid-107 .wpcf7-form input[type="text"],
.parent-pageid-107 .wpcf7-form select,
.parent-pageid-107 .wpcf7-form input[type="email"],
.parent-pageid-107 .wpcf7-form input[type="tel"],
.page-contact .wpcf7-form input[type="text"],
.page-contact .wpcf7-form select,
.page-contact .wpcf7-form input[type="email"],
.page-contact .wpcf7-form input[type="tel"],
.page-contact .wpcf7-form textarea,
.page-after-support .wpcf7-form input[type="text"],
.page-after-support .wpcf7-form select,
.page-after-support .wpcf7-form input[type="email"],
.page-after-support .wpcf7-form input[type="tel"],
.page-after-support .wpcf7-form textarea {
  padding: 6px 14px 9px;
  display: block;
  border-color: #707070;
  border-radius: 0;
  width: 100%;
  color: #000;
  background-color: #fff;
}
.page-contact .wpcf7-form input[type="tel"],
.page-after-support .wpcf7-form input[type="tel"] {
  display: inline-block;
  margin-right: 20px;
}
.page-contact .tel-note,
.page-after-support .tel-note {
  display: inline-block;
}
.page-contact .wpcf7-form select.form-industry,
.page-contact .wpcf7-form input[type="tel"],
.page-after-support .wpcf7-form select.form-industry,
.page-after-support .wpcf7-form input[type="tel"] {
  max-width: 200px;
}
.page-contact .wpcf7-form select.form-purpose,
.page-after-support .wpcf7-form select.form-purpose {
  max-width: 300px;
}
.page-contact .wpcf7-form textarea,
.page-after-support .wpcf7-form textarea {
  line-height: 1.4;
}
.parent-pageid-107 .wpcf7-form .wpcf7-list-item {
  display: block;
  margin: 6px 0;
}
.parent-pageid-107 .wpcf7-form .wpcf7-not-valid-tip {
  font-size: 0.9rem;
}
.parent-pageid-107 .wpcf7-form .form-consent {
  margin: 24px auto 0;
  display: block;
}
.page-contact .consent-box,
.page-after-support .consent-box {
  text-align: center;
}
.parent-pageid-107 .wpcf7-form dt small {
  display: inline-block;
}
.parent-pageid-107 .wpcf7-form .note {
  margin-top: 26px;
}
.page-contact .file-sel,
.page-after-support .file-sel {
  display: inline-block;
}
/* バリデーションチェック発火用チェックボックス（非表示） */
.parent-pageid-107 .wpcf7-form .form-dummy,
.page-contact .wpcf7-form .form-dummy,
.page-after-support .wpcf7-form .form-dummy {
  display: none;
}
.parent-pageid-107 .page-header p {
  margin: 0;
  text-align: left;
}
.parent-pageid-107 .wpcf7-form-control.wpcf7-submit,
.parent-pageid-107 .wpcf7-spinner,
.parent-pageid-107 .wpcf7-response-output,
.page-contact .wpcf7-form-control.wpcf7-submit,
.page-contact .wpcf7-spinner,
.page-contact .wpcf7-response-output,
.page-after-support .wpcf7-form-control.wpcf7-submit,
.page-after-support .wpcf7-spinner,
.page-after-support .wpcf7-response-output {
  display: none;
}
/* フォーム確認ページ  */ 
body.parent-pageid-107:not(.confirm-page) .fc,
body.page-contact:not(.confirm-page) .fc,
body.page-after-support:not(.confirm-page) .fc {
  display: none;
}
/* フォーム確認ページ */
.parent-pageid-107.confirm-page .fi,
.page-contact.confirm-page .fi,
.page-after-support.confirm-page .fi {
  display: none;
}
.parent-pageid-107 .confirm-btn,
.page-contact .confirm-btn,
.page-after-support .confirm-btn {
  display: flex;
  justify-content: center;
  gap: 18px;
}
.parent-pageid-107 .confirm-btn > div,
.page-contact .confirm-btn > div,
.page-after-support .confirm-btn > div {
  display: inline-block;
}
.parent-pageid-107.confirm-page .two-column > div {
  width: 100%;
}
.parent-pageid-107.confirm-page .wpcf7-form dt {
  width: 330px;
}
@media print, screen and (max-width:580px) {
.parent-pageid-107.confirm-page .wpcf7-form dt {
  width: 130px;
  padding: 16px 0 6px;
}
}
.parent-pageid-107.confirm-page .wpcf7-form dd {
  width: calc(100% - 330px);
  color: #555;
}
.page-contact.confirm-page .wpcf7-form dd,
.page-after-support.confirm-page .wpcf7-form dd {
  color: #555;
}
@media print, screen and (max-width:580px) {
.parent-pageid-107.confirm-page .wpcf7-form dd {
  width: calc(100% - 130px);
  padding: 16px 0 6px;
}
}
@media print, screen and (max-width:580px) {
.parent-pageid-107.confirm-page .wpcf7-form dl {
  border: none;
}
}
@media print, screen and (max-width:580px) {
.parent-pageid-107.confirm-page .confirm-btn {
  gap: 10px;
}
}
@media print, screen and (max-width:1000px) {
.parent-pageid-107.confirm-page .box-linkbtn a,
.page-contact.confirm-page .box-linkbtn a,
.page-after-support.confirm-page .box-linkbtn a {
  width: 250px;
}
}
@media print, screen and (max-width:580px) {
.parent-pageid-107.confirm-page .box-linkbtn a,
.page-contact.confirm-page .box-linkbtn a,
.page-after-support.confirm-page .box-linkbtn a {
  width: 160px;
  padding: 22px 0 22px 16px;
}
}
@media print, screen and (max-width:380px) {
.parent-pageid-107.confirm-page .box-linkbtn a,
.page-contact.confirm-page .box-linkbtn a,
.page-after-support.confirm-page .box-linkbtn a {
  width: 140px;
  padding: 22px 0 22px 10px;
}
}
@media print, screen and (max-width:380px) {
.parent-pageid-107.confirm-page .box-linkbtn .movable-arrow,
.page-contact.confirm-page .box-linkbtn .movable-arrow,
.page-after-support.confirm-page .box-linkbtn .movable-arrow {
  right: 12px;
}
}
.parent-pageid-107 .sec-form .img-box {
  position: relative;
}
.parent-pageid-107 .sec-form .img-box img {
  filter: brightness(0.7);
}
.parent-pageid-107 .sec-form .img-box .f-title {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 1.4vw;
}
@media print, screen and (max-width:1300px) {
.parent-pageid-107 .sec-form .img-box .f-title {
  font-size: 1.6vw;
}
}
@media print, screen and (max-width:1000px) {
.parent-pageid-107 .sec-form .img-box .f-title {
  font-size: 3.1vw;
}
}
@media print, screen and (max-width:768px) {
.parent-pageid-107 .sec-form .img-box .f-title {
  font-size: 3.7vw;
}
}
body.page-contact.confirm-page .breadcrumb > ol > li:last-child::after,
body.page-after-support.confirm-page .breadcrumb > ol > li:last-child::after {
  content: ' ＞ 確認画面';
  color: #858585;
}
.page-contact .form-file,
.page-after-support .form-file {
  display: none;
}
.page-contact .custom-file,
.page-after-support .custom-file {
  display: inline-block;
  background-color: #ccc;
  color: #000;
  padding: 6px 20px;
  cursor: pointer;
}
.page-contact #file-name,
.page-after-support #file-name {
  margin-left: 10px;
  font-size: 1rem;
  display: inline-block;
}
.page-contact .file-note,
.page-after-support .file-note {
  margin-right: 40px;
}
.page-contact .box-linkbtn a,
.page-after-support .box-linkbtn a {
  margin: 0 auto;
}

.page-after-support .date-box {
  display: flex;
  gap: 16px;
}
@media print, screen and (max-width:1800px) {
.page-after-support .date-box {
  gap: 9px;
  flex-direction: column;
}
}
.page-after-support .wpcf7-form input[type="text"].form-datepicker {
  width: 130px;
}




/* ■ダウンロードページ・お問い合わせ・メンテナンス受付完了ページ共通 */
.page-guidebox-download .page-header h1 {
  text-align: left;
  margin: 1em auto 0;
}
.page-guidebox-download .box-linkbtn.box a {
  margin: 0 auto 0 0;
}
.page-guidebox-download .slide-item .box-linkbtn a,
.page-contact-completion .slide-item .box-linkbtn a,
.page-maintenance-completion .slide-item .box-linkbtn a {
  width: 100%;
}
@media print, screen and (max-width:549px) {
.page-guidebox-download .slide-item .box-linkbtn.box,
.page-contact-completion .slide-item .box-linkbtn.box,
.page-maintenance-completion .slide-item .box-linkbtn.box {
  display: none;
}
}




/* ■404ページ */
.sec-notfound {
  text-align: center;
}


/* ■ページトップボタン */
#to_top {
  width: 60px;
  height: 60px;
  position: fixed;
  right: 3rem;
  bottom: 4.5rem;
  z-index: 10;
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
}
@media print, screen and (max-width:768px) {
#to_top {
  right: 1rem;
}
}
#to_top.on {
  opacity: 1;
  pointer-events: auto;
}
#to_top a {
  position: relative;
  display: block;
  border-radius: 50%;
  border: solid 1px #000000;
  background-color: #000;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
#to_top img {
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
}



/* ■ご相談はこちらサイド固定ボタン */
#contact_btn {
  width: 120px;
  height: 135px;
  position: fixed;
  right: -120px;
  bottom: 26%;
  z-index: 10;
  transition: 0.3s;
}
#contact_btn.on {
  right: 0;
}
@media print, screen and (max-width:1000px) {
#contact_btn {
  width: 47px;
  height: 190px;
}
}
#contact_btn a {
  display: flex;
  border-radius: 10px 0 0 10px;
  background-image: linear-gradient(60deg, #3472a0, #30b19f);
  width: 100%;
  height: 100%;
  text-decoration: none;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
@media print, screen and (max-width:1000px) {
#contact_btn a {
  writing-mode: vertical-rl;
  flex-direction: row;
  padding: 10px;
}
}
#contact_btn img {
  display: block;
  width: 54px;
}
#contact_btn span {
  text-align: center;
  margin-top: 8px;
  font-weight: 500;
  color: #fff;
  font-size: min(1.2vw, 16px);
  line-height: 1.4;
}
@media print, screen and (max-width:1000px) {
#contact_btn span {
  margin-top: 12px;
  font-size: 15px;
  letter-spacing: 1px;
}
}
@media print, screen and (max-width:1000px) {
#contact_btn span br {
  display: none;
}
}

/* ■トップページの右サイド固定リンクBOX */
#internallink-box {
  width: 230px;
  height: auto;
  position: fixed;
  right: -230px;
  bottom: 52%;
  z-index: 10;
  background-color: #000;
  padding: 24px 36px 24px 36px;
  border-radius: 30px 0 0 30px;
  transition: 0.3s;
}
#internallink-box.on {
  right: 0;
}
@media print, screen and (max-width:768px) {
#internallink-box {
  display: none;
}
}
#internallink-box a {
  color: #fff;
  font-size: 0.8rem;
  font-weight: 500;
  line-height: 2;
  display: inline-block;
}

/* ページネーション */
.pagination {
  text-align: center;
}
.pagination > span, .pagination > a {
  padding: 4px 15px;
  display: inline-block;
}
@media print, screen and (max-width:500px) {
.pagination > span,
.pagination > a {
  padding: 4px 9px;
}
}
.pagination .current {
  background-color: #f4f4f4;
}

.slider-a .swiper-slide:nth-of-type(2) img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}
.slider-b .swiper-slide:nth-of-type(2) img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
}

.slider-a .swiper-slide:nth-of-type(3) img {
//  width: 150%;
}


.slider-a .swiper-slide:nth-of-type(1).is-active img {
  animation: slideImg 5s linear both;
}
.slider-a .swiper-slide:nth-of-type(2).is-active img {
  animation: slideImg2 5s linear both;
}
.slider-a .swiper-slide:nth-of-type(3).is-active img {
  animation: slideImg3 5s linear both;
}



.slider-b .swiper-slide:nth-of-type(1).is-active img {
  animation: slideImg 5s linear both;
}
.slider-b .swiper-slide:nth-of-type(2).is-active img {
  animation: slideImg2 5s linear both;
}
.slider-b .swiper-slide:nth-of-type(3).is-active img {
  animation: slideImg3 5s linear both;
}



@-webkit-keyframes slideImg {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}

@keyframes slideImg {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@keyframes slideImg {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
}
@-webkit-keyframes slideImg2 {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes slideImg2 {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes slideImg3 {
  0% {
    width: calc(100% + 100px);
    -webkit-transform: translateX(0px);
            transform: translateX(0px);
  }

  100% {
    width: calc(100% + 100px);
    -webkit-transform: translateX(-60px);
            transform: translateX(-60px);
  }
}









.fade-up {
  opacity: 0;
  transform: translateY(50px); /* 下から浮かび上がるイメージ */
  transition: opacity 1s ease, transform 1s ease;
}

.fade-up.is-active {
  opacity: 1;
  transform: translateY(0);
}
