/*!
Theme Name: WARACRO
Theme URI: https://waraku18.com/
Author: WARACRO
Author URI: https://waraku18.com/
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: waracro
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.

WARACRO 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/
*/

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
	scroll-behavior: smooth;
}

body {
	font-size: 1.6rem;
	font-family: 'Montserrat', 'Noto Sans JP', sans-serif;
	line-height: 1.5;
}

h1 {
	font-size: 5rem;
}

h2 {
	font-size: 3.2rem;
}

h3 {
	font-size: 2.4rem;
}

h4 {
	font-size: 2rem;
}

h5 {
	font-size: 1.8rem;
}

p {
	line-height: 1.7;
}

a {
	color: #000;
	text-decoration: none;
}

a:hover {
	color: #00c8ff;
}

img {
	max-width: 100%;
	height: auto;
}

video {
	max-width: 100%;
}

ul {
	list-style: none;
}

.br-sp {
	display: none;
}

/* Navigation
--------------------------------------------- */
.main-navigation-pc {
	display: block;
	width: 54%;
	margin-right: 50px;
}

.main-navigation-pc ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation-pc 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-pc ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation-pc ul ul li:hover > ul,
.main-navigation-pc ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation-pc ul ul a {
	width: 200px;
}

.main-navigation-pc ul li:hover > ul,
.main-navigation-pc ul li.focus > ul {
	left: auto;
}

.main-navigation-pc li {
	position: relative;
}

.main-navigation-pc a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation-pc.toggled ul {
	display: block;
}

.menu-toggle {
	display: none;
}

.main-navigation-pc 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;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

.wrapper {
	overflow: hidden;
}

.site-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.site-branding {
	width: 240px;
	margin: 15px 0 10px 30px;
}

.main-navigation-sp {
	display: none;
}

.main-navigation-pc ul {
	justify-content: flex-end;
	align-items: center;
}

.main-navigation-pc li {
	margin-left: 50px;
}

/* .main-navigation-pc li:last-child {
display: none;
} */

.main-navigation-pc li a {
	font-weight: 600;
}

.main-navigation-pc li a:hover {
	color: #00c8ff;
}

/* .main-navigation-pc li:last-child a {
padding: 44px 20px 12px;
background: #121212;
color: #fff;
position: relative;
}

.main-navigation-pc li:last-child a::before {
content: '\f0e0';
font-family: 'Font Awesome 5 Free';
font-weight: 900;
position: absolute;
font-size: 2rem;
top: 12px;
left: 50%;
transform: translateX(-50%);
}

.main-navigation-pc li:last-child a:hover {
background: #32bccb;
} */

/* .main-visual {
position: relative;
height: 600px;
display: flex;
justify-content: center;
align-items: center;
} */

/* .main-visual {
position: relative;
z-index: 2;
padding-top: 30px;
} */

/* .main-visual_img {
max-width: 600px;
margin-left: auto;
margin-right: 5%;
display: block;
} */

.float01 {
	/*   animation: float 3s infinite ease-in-out .8s alternate; */
	animation: float 4s infinite;
	/*   transition: 1.5s ease-in-out; */
}

@keyframes float {
	0% {
		transform: translateY(0);
	}

	50% {
		transform: translateY(-20px);
	}

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

.main-visual {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 50px 0;
}

.main-visual_img {
	position: absolute;
	top: 0;
	height: 100%;
	width: 100%;
}

.main-visual_img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.main-visual_img.sp {
	display: none;
}

.main-visual_img_01 {
	position: absolute;
	top: 40%;
	right: 10%;
	transform: translateY(-50%);
	width: 6%;
	z-index: 1;
}

.main-visual_img_01.slidein.is-animated {
	/*   animation: slideIn 3s cubic-bezier(0.25, 1, 0.5, 1) 1 forwards; */
	animation: slideIn 3s forwards;
}

@keyframes slideIn {
	0% {
		transform: translateY(-400px);
	}

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

.main-visual_text {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10%;
}

.main-visual_text h1 {
	font-size: 5rem;
	line-height: 1.3;
	color: #020202;
	/* text-shadow: 5px 5px 0px #020202; */
}

.main-visual_text h1 span {
	background-color: #fff;
	box-shadow: 7px 7px 0px #020202;
	padding: 2px 10px;
	display: inline-block;
	margin-bottom: 20px;
}

/* 下層ページヘッダー */
.sub-main {
	position: relative;
	height: 400px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.sub-main_text h1 {
	font-size: 7rem;
}

.sub-main_text.single h1 {
	font-size: 5rem;
}

.sub-main_text.search-none h1 {
	text-align: center;
}

.sub-main_text.search-none p {
	position: relative;
	top: 30px;
}

.sub-main_img_01 {
	position: absolute;
	top: 20%;
	right: 10%;
	transform: translateY(-50%);
	width: 6%;
	z-index: 1;
}

.sub-main_img_01.slidein.is-animated {
	animation: slideIn 3s forwards;
}

.inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
}

.section_title {
	margin-bottom: 30px;
}

.section_title h2 {
	font-size: 3.2rem;
}

.image_cover {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	top: 0;
	left: 0;
}

.article {
	padding: 60px 0;
}

.article .inner {
	max-width: 720px;
}

/* .article .inner_title {
margin-bottom: 50px;
}

.article_inner_box {
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
margin-bottom: 10px;
}

.article_inner_box_item {
width: 30%;
background: #ECECEC;
margin-bottom: 40px;
}

.article_inner_box_item:not(:nth-child(3n)) {
margin-right: 5%;
}

.article_inner_box_item_img {
margin-bottom: 10px;
}

.article_inner_box_item time {
padding: 0 20px;
margin-bottom: 10px;
display: block;
}

.article_inner_box_item h3 {
margin-bottom: 10px;
padding: 0 20px;
}

.article_inner_button a {
width: 240px;
display: block;
text-align: center;
padding: 20px 0;
font-weight: 600;
border: 2px #000 solid;
position: relative;
overflow: hidden;
}

.article_inner_button a span {
position: relative;
}

.article_inner_button a:before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: '';
-webkit-transition: all .5s ease-in-out;
transition: all .5s ease-in-out;
-webkit-transform: translateX(-100%);
transform: translateX(-100%);
background: #000;
}

.article_inner_button a:hover:before {
-webkit-transform: translateX(0%);
transform: translateX(0%);
}

.article_inner_button a:hover {
border: 2px #32bccb solid;
color: #fff;
} */

.purpose {
	background-image: none;
	background-position: center;
	background-size: cover;
	padding: 60px 0;
	color: #fff;
	position: relative;
}

.greeting {
	padding: 70px 0;
}

.greeting .section_title {
	text-align: center;
}

.greeting_box_img {
	margin: 0 auto 30px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.greeting_box_img_item {
	width: 22%;
}

.greeting_box_img_item img {
	border-radius: 20px;
}

.greeting_box_img_item h3 {
	text-align: center;
}

.greeting_box_img_item span {
	font-size: 16px;
	font-weight: normal;
	display: block;
}

.greeting_box p {
	text-align: center;
	margin-bottom: 30px;
}

.profile {
	padding: 40px 0;
}

.profile .inner {
	max-width: 720px;
}

.profile_box {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.profile_box_text {
	width: 54%;
}

.profile_box_text ul {
	margin-bottom: 20px;
}

.profile_box_text li {
	margin-bottom: 5px;
}

.profile_box_text_button a {
	width: 200px;
	display: block;
	background-color: #00c8ff;
	color: #fff;
	text-align: center;
	padding: 10px 0;
}

.profile_box_text_button a:hover {
	opacity: 0.8;
}

.profile_box_img {
	width: 40%;
}

.profile_box_img img {
	border-radius: 50%;
}

.matches {
	padding: 40px 0;
}

.matches_box {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.matches_box_text {
	width: 54%;
}

.matches_box_text p {
	margin-bottom: 20px;
}

.matches_box_text_button a {
	width: 200px;
	display: block;
	background-color: #32bccb;
	color: #fff;
	text-align: center;
	padding: 10px 0;
}

.matches_box_text_button a:hover {
	opacity: 0.8;
}

.matches_box_img {
	width: 40%;
}

.matches_box_img img {
	border-radius: 20px;
}

.about {
	padding: 60px 0;
	z-index: 0;
	position: relative;
}

.about_inner_box {
	display: flex;
	justify-content: space-between;
	background: #fff;
	margin-bottom: 50px;
}

.about_inner_box_title {
	width: 30%;
}

.about_inner_box_text {
	width: 70%;
}

.about_inner_box_text dl {
	display: flex;
	border-bottom: 1px #020202 solid;
	padding: 20px 0;
}

.about_inner_box_text dl:last-child {
	border-bottom: none;
}

.about_inner_box_text dt {
	width: 150px;
	flex-shrink: 0;
}

.contact {
	padding: 0 0 120px;
}

.contact_inner_box {
	background: #00c8ff;
	color: #fff;
	padding: 50px;
	border-radius: 20px;
}

.contact_inner_box_text_text {
	margin-bottom: 70px;
}

.contact_inner_box_text_form dl {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.contact_inner_box_text_form dt {
	padding-top: 20px;
}

.contact_inner_box_text_form dt span {
	background: #e60012;
	padding: 3px;
	margin-left: 10px;
	font-size: 1.3rem;
}

.contact_inner_box_text_form dd {
	width: 78%;
}

.contact_inner_box_text_form dd input {
	width: 100%;
	padding: 20px;
	font-size: 1.6rem;
	background: #ececec;
	border: none;
	border-radius: 3px;
}

.contact_inner_box_text_form dd textarea {
	width: 100%;
	padding: 20px;
	font-size: 1.6rem;
	background: #ececec;
	border: none;
	border-radius: 3px;
	/* 	font-family: 'Montserrat', 'Noto Sans JP', sans-serif; */
}

.contact_inner_box_text_form ::placeholder {
	color: #ccc;
}

.contact_inner_box_text_button {
	width: 78%;
	margin-left: auto;
}

input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}

.contact_inner_box_text_button input {
	width: 240px;
	padding: 24px 0;
	font-size: 1.6rem;
	background: #333;
	color: #fff;
	/* 	font-family: 'Montserrat', 'Noto Sans JP', sans-serif; */
	font-weight: 600;
	border-bottom: 7px #121212 solid;
	border-radius: 5px;
	transition: all 0.6s;
}

.contact_inner_box_text_button input:hover {
	border-bottom: 2px #121212 solid;
	margin-top: 5px;
	background: #121212;
}

.contact_inner_box_img {
	width: 50%;
	text-align: center;
	position: absolute;
	top: -60px;
	right: 0;
}

.contact_inner_box_img img {
	width: 30%;
}

/* アーカイブ */
.site-main .archive {
	padding: 60px 0;
}

.archive_inner_box {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.archive_inner_box_main {
	width: 70%;
	/* 	margin-bottom: 70px; */
}

.archive_inner_box_main_flex {
	display: flex;
	flex-wrap: wrap;
}

.archive_inner_box_main_item {
	width: 47%;
	background: #f2f2f2;
	margin-bottom: 40px;
}

.archive_inner_box_main_item:not(:nth-child(2n)) {
	margin-right: 6%;
}

.archive_inner_box_main_item_img {
	margin-bottom: 10px;
	aspect-ratio: 3 / 2;
	vertical-align: bottom;
}

.archive_inner_box_main_item time {
	padding: 0 20px;
	margin-bottom: 10px;
	display: block;
	color: #949494;
    font-size: 1.4rem;
}

.archive_inner_box_main_item h3 {
	margin-bottom: 10px;
	padding: 0 20px;
	font-size: 2rem;
}

.post-categories {
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	padding: 0 20px 10px;
}

.post-categories li {
	margin-right: 10px;
	margin-bottom: 10px;
}

.post-categories a {
	display: inline-block;
	padding: 2px 12px;
	background: #00c8ff;
	color: #fff;
	border-radius: 20px;
	font-size: 1.4rem;
}

.post-categories a:hover {
	padding: 1px 11px;
	background: #fff;
	color: #00c8ff;
	border: 1px #00c8ff solid;
}

/* シングルページ */
.entry-content {
	margin-bottom: 100px;
	line-height: 2;
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	margin: 2em 0 0.8em;
	line-height: 1.5;
}

.entry-content h2 {
	background: #333;
	padding: 10px 20px;
	color: #fff;
}

.entry-content h3 {
	font-size: 2rem;
	position: relative;
	padding-left: 20px;
}

.entry-content h3:before {
	content: "";
	position: absolute;
	width: 10px;
	background: #00c8ff;
	height: 24px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.entry-content p {
	margin-bottom: 0.8em;
}

.entry-content a {
	text-decoration: underline;
}

.entry-content ol,
.entry-content ul {
	padding-left: 1em;
	list-style: revert;
}

.entry-content li {
	margin-bottom: 0.8em;
}

blockquote {
    position: relative;
    padding: 35px 15px 10px 15px;
    box-sizing: border-box;
    font-style: italic;
    background: #f5f5f5;
    color: #777777;
    border-left: 4px solid #9dd4ff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 10px;
    left: 15px;
    content: "\f10d";
    font-family: FontAwesome;
    color: #9dd4ff;
    font-size: 28px;
    line-height: 1;
    font-weight: 900;
}

blockquote p {
    padding: 0;
    margin: 7px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

.sub-main.single_page {
	height: initial;
	padding: 50px 0;
}

.sub-main.single_page .sub-main_inner_text {
	width: 100%;
}

.sub-main.single_page .sub-main_inner_text h1 {
	font-size: 4rem;
}

.site-main .single {
	padding: 60px 0;
}

.single_inner_box {
	display: flex;
	justify-content: space-between;
}

.single_inner_box_main {
	width: 70%;
}

.entry-meta {
	margin-bottom: 10px;
	color: #949494;
}

.post-categories.single-categories {
	padding: 0;
}

.cat-links {
	margin-bottom: 30px;
	display: inline-block;
}

.cat-links a {
	display: inline-block;
	padding: 2px 12px;
	background: #00c8ff;
	color: #fff;
	border-radius: 20px;
	font-size: 1.4rem;
	margin-right: 10px;
	margin-bottom: 10px;
}

.nav-links {
    font-size: 1.2rem;
}

.wp-block-code {
	border: 2px solid;
	padding: 20px;
}

@media screen and (max-width: 768px) {
	.sub-main.single_page {
        padding: 20px 0;
    }
	.sub-main.single_page .sub-main_inner_text h1 {
    	font-size: 2rem;
	}
	.entry-content h2 {
		padding: 5px 10px;
		font-size: 2rem;
	}
	.entry-content h3 {
		font-size: 1.8rem;
	}
}

/* サイドバー */
.widget-area {
	width: 25%;
}

.site-main .widget-area section {
	padding: 0;
	background: #f2f2f2;
	padding: 20px;
}

.widget_categories {
	background: #f0f1f6;
	padding: 20px;
}

.widget:not(:last-child) {
	margin-bottom: 30px;
}

.widget-area h3 {
	margin-bottom: 12px;
	font-size: 1.8rem;
	font-weight: 500;
}

.widget li {
	list-style: none;
}

.widget li:not(:last-child) {
	margin-bottom: 10px;
}

@media screen and (max-width: 768px) {
	.widget:not(:last-child) {
		margin-bottom: 20px;
	}
}

/* 検索フォーム */
.wp-block-search__label {
	display: none;
}
.wp-block-search__input {
	width: 100%;
	background: none;
	/*    color: #fff; */
	border-radius: 50px;
	padding: 8px 16px;
}
.wp-block-search__button {
	width: 42px;
	flex-shrink: 0;
	cursor: pointer;
	border: none;
	border-radius: 50px;
}
.wp-block-search__button:hover {
	background-color: #fff !important;
	border: 1px #32bccb solid;
}
.wp-block-search__button:hover svg {
	fill: #32bccb !important;
}

/* ページネーション */

.pagination ul {
	list-style: none;
	display: flex;
	justify-content: center;
	width: 70%;
}

.pagination li {
	margin: 5px;
}

.page-numbers {
	padding: 5px 10px;
}

.pagination li a:hover {
	background-color: #00c8ff;
	color: #fff;
}

.page-numbers.current {
	background-color: #00c8ff;
	color: #fff;
}

.breadcrumb {
	padding: 50px 0;
}

.site-main .breadcrumb .inner {
	max-width: 1200px;
    margin: 0 auto;
}

.breadcrumb ul {
	display: flex;
	flex-wrap: wrap;
}

.breadcrumb li {
	list-style: none;
	margin-bottom: 10px;
	font-size: 1.2rem;
	color: #c3c6d2;
}

.breadcrumb li:not(:last-child) {
	margin-right: 10px;
}

.breadcrumb li:not(:last-child):after {
	content: ">";
}

.breadcrumb li:not(:last-child) a {
	padding-right: 10px;
	color: #8c8f9a;
}

@media screen and (max-width: 768px) {
	.breadcrumb {
		padding: 20px 0;
	}
}

/* フッター */
.site-footer {
	padding: 12px 0;
}

.footercopy-text {
	text-align: center;
}

@media screen and (max-width: 1200px) {
	.site-main .inner {
		padding: 0 20px;
	}
	.service_inner_box_item:last-child {
		width: calc(100% - 40px);
	}
}

@media screen and (max-width: 768px) {
	body {
		font-size: 1.4rem;
	}
	.pc {
		display: none;
	}
	.br-sp {
		display: block;
	}

	.site-branding {
		width: 150px;
		margin: 20px 0 0 20px;
	}

	.main-navigation-pc {
		display: none;
	}

	.main-navigation-sp {
		display: block;
	}

	/*　ハンバーガーメニューボタン　*/
	.menu-toggle {
		display: block;
		position: fixed;
		z-index: 4;
		right: 0;
		top: 0;
		width: 55px;
		height: 55px;
		cursor: pointer;
		text-align: center;
		background: #121212;
	}

	.menu-toggle span {
		display: block;
		position: absolute;
		width: 20px;
		height: 2px;
		left: 0;
		right: 0;
		margin: auto;
		background: #fff;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}

	.menu-toggle span:nth-child(1) {
		top: 18px;
	}

	.menu-toggle span:nth-child(2) {
		top: 26px;
	}

	.menu-toggle span:nth-child(3) {
		top: 34px;
	}

	/* スマホメニューを開いてる時のボタン */
	.menu-toggle.active span:nth-child(1) {
		top: 26px;
		background: #fff;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	.menu-toggle.active span:nth-child(2),
	.menu-toggle.active span:nth-child(3) {
		top: 26px;
		background: #fff;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	/* メニュー背景　*/
	.main-navigation-sp .menu-global-nav-container {
		position: fixed;
		z-index: 3;
		top: 0;
		right: 0;
		color: #fff;
		background: #121212;
		width: 70%;
		transform: translateX(100%);
		transition: all 0.6s;
		height: 100%;
		display: flex;
		align-items: center;
	}

	.main-navigation-sp .menu-global-nav-container ul {
		margin: 0 auto;
		padding: 0;
	}

	.main-navigation-sp .menu-global-nav-container ul li {
		list-style-type: none;
		padding: 0;
		width: 100%;
		transition: 0.4s all;
		font-size: 2rem;
	}

	.main-navigation-sp .menu-global-nav-container ul li:last-child {
		padding-bottom: 0;
	}

	.main-navigation-sp .menu-global-nav-container ul li a {
		display: block;
		color: #fff;
		padding: 10px 0;
		text-decoration: none;
		font-weight: 600;
	}

	/* クリックでjQueryで追加・削除 */
	.main-navigation-sp .menu-global-nav-container.active {
		opacity: 100;
		transform: translateX(0%);
	}

	/*   .main-visual_img {
	width: 80%;
	margin-right: auto;
	border-radius: 0 30px 30px 0;
} */

	.main-visual_img.pc {
		display: none;
	}

	.main-visual_img.sp {
		display: block;
	}

	.main-visual_img_01 {
		position: absolute;
		top: 31%;
		right: 20%;
		width: 14%;
	}

	.main-visual_text h1 {
		font-size: 2.4rem;
	}

	.main-visual_text h1 span {
		box-shadow: 5px 5px 0px #020202;
		padding: 2px 7px;
		margin-bottom: 10px;
	}

	.sub-main_img_01 {
		top: 31%;
		right: 20%;
		width: 14%;
	}

	.sub-main_text {
		padding: 0 20px;
	}

	.sub-main_text h1 {
		font-size: 4rem;
	}

	.sub-main_text.single h1 {
		font-size: 3rem;
	}

	.inner_title h2 {
		font-size: 3rem;
	}

	.inner_title p {
		font-size: 1.4rem;
	}

	.description h2 {
		font-size: 2rem;
	}

	.service {
		padding: 70px 0 40px;
		margin-top: -40px;
	}

	.service_inner_box_item {
		display: block;
		margin-bottom: 50px;
	}

	.service_inner_box_item:not(:first-child) {
		margin-top: 0;
	}

	.service_inner_box_item:last-child {
		position: relative;
		width: 100%;
	}

	.service_inner_box_item_img {
		width: 100%;
	}

	.service_inner_box_item_text {
		width: 100%;
	}

	.service_inner_box_item_text_title {
		font-size: 2rem;
	}

	.article {
		padding: 60px 0 20px;
	}

	.article .inner_title {
		margin-bottom: 30px;
	}

	.article_inner_box {
		display: block;
	}

	.article_inner_box_item {
		width: 100%;
		margin-bottom: 40px;
	}

	.article_inner_button a {
		width: 100%;
		padding: 16px 0;
	}

	.greeting_box p {
		text-align: left;
		margin: 0 auto 30px;
	}

	.greeting_box_img {
		margin: 0 auto 30px;
		display: block;
	}

	.greeting_box_img_item {
		width: 80%;
		margin: 0 auto 30px;
	}

	.profile_box {
		flex-direction: column-reverse;
	}

	.profile_box_text {
		width: 100%;
	}

	.profile .section_title {
		text-align: center;
	}

	.profile_box_img {
		width: 100%;
		max-width: 240px;
		margin-bottom: 30px;
	}

	.profile_box_text_button a {
		width: 100%;
	}

	.matches_box {
		flex-direction: column;
	}

	.matches_box_text {
		width: 100%;
	}

	.matches .section_title {
		text-align: center;
	}

	.matches_box_img {
		width: 80%;
		margin-bottom: 30px;
	}

	.about_inner_box {
		display: block;
		padding: 20px;
	}

	.about_inner_box_title {
		width: 100%;
	}

	.about_inner_box_text {
		width: 100%;
	}

	.about_inner_box_text dt {
		width: 100px;
	}

	.contact {
		padding: 0 0 60px;
	}

	.contact_inner_box {
		padding: 20px 20px 120px;
	}

	.contact_inner_box_text_text {
		margin-bottom: 30px;
	}

	.contact_inner_box_text_form dl {
		display: block;
	}

	.contact_inner_box_text_form dt {
		margin-bottom: 10px;
		padding-top: 0;
	}

	.contact_inner_box_text_form dd {
		width: 100%;
	}

	.contact_inner_box_text_button {
		width: 100%;
		text-align: center;
	}

	.contact_inner_box_text_button input {
		padding: 20px 0;
	}

	.contact_inner_box_text_button input:hover {
		padding: 18px 0;
	}

	.wpcf7-spinner {
		display: block;
		margin: 0 auto;
	}

	.contact_inner_box_img {
		width: 100%;
		top: initial;
		bottom: -60px;
	}

	.contact_inner_box_img img {
		width: 100px;
	}

	.archive_inner_box {
		display: block;
	}

	.archive_inner_box_main {
		display: block;
		width: 100%;
	}

	.archive_inner_box_main_item {
		width: 100%;
	}

	.archive_inner_box_main_item:not(:nth-child(2n)) {
		margin-right: 0;
	}

	.widget-area {
		width: 100%;
	}

	.single_inner_box {
		display: block;
	}

	.single_inner_box_main {
		width: 100%;
	}

	.post-navigation .nav-links {
		flex-direction: column;
        gap: 10px;
	}

	.post-navigation .nav-next {
		text-align: initial;
	}

	.pagination ul {
		width: 100%;
	}

	.breadcrumb {
		padding: 20px;
	}
}
/* ヘッダー */
html {
	margin-top: 0 !important;
}
header.site-header {
	width: 100%;
	position: absolute;
	z-index: 2;
}
header.site-header .main-navigation-pc li a {
	font-weight: 500;
	color: #fff;
}
@media screen and (max-width: 768px) {
	header.site-header .site-branding {
		height: 55px;
		margin: 0 0 0 20px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	header.site-header .site-branding a {
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
}
/* FV */
.main-visual {
	display: block;
	padding: 120px 0 50px;
	position: relative;
}
.main-visual::before {
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.3);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.main-visual_video {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	min-height: 100%;
	min-width: 100%;
	vertical-align: bottom;
}
.main-visual_box {
	max-width: 1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	position: relative;
	z-index: 1;
}
.main-visual .main-visual_text {
	width: 49%;
	color: #fff;
	position: initial;
	transform: initial;
}
.main-visual .main-visual_text h1 {
	margin: 30px 0;
	margin-right: calc(50% - 50vw);
	font-family: "Noto Sans JP", sans-serif;
	color: #fff;
	width: 100vw;
}
.main-visual .main-visual_img_box {
	width: 49%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 20px;
}
.main-visual .main-visual_img_box img {
	width: 30%;
	max-width: 150px;
}
@media screen and (min-width: 1441px) {
	.main-visual {
		padding: 10% 0 5%;
	}
}
@media screen and (max-width: 1200px) {
	.main-visual_box {
		padding: 0 20px;
	}
}
@media screen and (max-width: 768px) {
	.main-visual_box {
		flex-direction: column;
	}
	.main-visual .main-visual_text {
		width: 100%;
		margin-bottom: 30px;
	}
	.main-visual .main-visual_img_box {
		width: 100%;
		justify-content: center;
		gap: 2%;
	}
	.main-visual .main-visual_img_box img {
		width: 32%;
	}
}
/* トップページ */
.site-main .br-sp {
	display: none;
}
.site-main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}
.site-main .inner {
	max-width: initial;
	margin: initial;
	position: initial;
}
.site-main .site-main_inner {
	max-width: 1200px;
	margin: 0 auto;
}
.site-main .member {
	padding: 100px 0;
	background-color: #ededed;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}
.site-main .member .inner {
	max-width: 1200px;
	margin: 0 auto;
}
.site-main .section_title h2 {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 4rem;
}
.site-main .section_title h2 span {
	color: #00c8ff;
	font-family: "Montserrat", sans-serif;
	font-weight: bold;
	font-size: 15rem;
}
.site-main .member .section_title h2 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.site-main .member .member_box {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.site-main .member .member_box_item {
	width: 15%;
	margin: 0 auto;
	text-align: center;
}
.site-main .member .member_box_item_img {
	margin-bottom: 20px;
}
.site-main .member .member_box_item_img img {
	border-radius: 9999px;
}
.site-main .member .member_box_item_position {
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.5;
	font-size: 1.6rem;
}
.site-main .member .member_box_item_name {
	font-size: 2rem;
}
.site-main .service {
	padding: 100px 0 150px;
}
.site-main .service .inner {
	position: relative;
}
.site-main .service .section_title {
	text-align: center;
	margin-bottom: 50px;
}
.site-main .service .section_title_span {
	color: #00c8ff;
	font-family: "Montserrat", sans-serif;
	font-weight: bold;
	font-size: 15rem;
	position: absolute;
	top: -220px;
	left: 0;
	transform: rotate(90deg);
	transform-origin: 0% 100%;
	z-index: -1;
}
.site-main .service .service_flex-box {
	/*   width: calc(100% - 100px); */
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-left: 50px;
}
.site-main .service .service_box_item:first-of-type {
	width: 53%;
}
.site-main .service .service_box_item:last-of-type {
	width: 43%;
}
.site-main .service .service_box_item:last-of-type .service_box_item_title {
	margin-bottom: 30px;
}
.site-main .service .service_text {
	padding-left: 200px;
	font-size: 1.8rem;
}
.site-main .comparison_section {
	padding: 50px 0 100px;
}
.site-main .comparison_section .service_comparison {
	margin-bottom: 100px;
}
.site-main .comparison_section .service_comparison_title,
.site-main .comparison_section .service_difference_title {
	text-align: center;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 3rem;
	margin-bottom: 30px;
}
.site-main .comparison_section .service_comparison_text,
.site-main .comparison_section .service_difference_text {
	font-size: 1.8rem;
	margin-bottom: 30px;
}
.site-main .comparison_section .service_difference_img {
	max-width: 1024px;
	margin: 0 auto;
}
.service_comparison_table {
	width: 100%;
	margin-top: 100px;
	border-collapse: collapse;
}
.service_comparison_table th,
.service_comparison_table td {
	width: 20%;
	padding: 20px 25px;
	border-bottom: 1px solid #e4e4e4;
	line-height: 1.4;
	vertical-align: middle;
}
.table_item_box .table_item_box_text {
	font-size: 1.2rem;
}
@media screen and (max-width: 1024px) {
	.service_comparison_table th,
	.service_comparison_table td {
		padding: 20px 2%;
	}
}
.service_comparison_table th {
	font-size: 16px;
	font-weight: 500;
	text-align: left;
	padding-left: 60px;
}
@media screen and (max-width: 1024px) {
	.service_comparison_table th {
		padding-left: 0;
	}
}
@media screen and (max-width: 568px) {
	.service_comparison_table th {
		font-size: 1.4rem;
		padding-right: 1%;
	}
}
@media screen and (max-width: 568px) {
	.service_comparison_table td .table_dri_item {
		width: 25%;
	}
}
.service_comparison_table td {
	border-left: 1px solid #e4e4e4;
}
.service_comparison_table td:nth-of-type(2) {
	border-left: none;
}
.service_comparison_table .table_head th {
	padding: 30px 0;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
}
.service_comparison_table .table_head .table_dri_title {
	padding-top: 0;
	position: relative;
	border: 3px solid #00c8ff;
	background-color: #00c8ff;
}
.service_comparison_table .table_head .table_dri_title::before {
	content: "";
	display: block;
	position: absolute;
	top: -39px;
	left: -3px;
	width: calc(100% + 2px);
	height: 40px;
	border: 2px solid #00c8ff;
	background-color: #00c8ff;
}
.service_comparison_table .table_head .table_dri_title span {
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.service_comparison_table .table_head .table_others_title {
	background-color: #bbb;
}
.service_comparison_table .table_head .table_others_title:nth-of-type(4),
.service_comparison_table .table_head .table_others_title:nth-of-type(5) {
	border-left: 2px solid #fff;
}
.service_comparison_table .table_dri_item {
	border-left: 3px solid #00c8ff;
	border-right: 3px solid #00c8ff;
	background-color: #f3fcff;
}
.service_comparison_table tr:last-of-type .table_dri_item {
	border-bottom: 3px solid #00c8ff;
}
.table_item_box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.table_item_box .table_item_box_img {
	width: 38px;
	height: 38px;
	margin-right: 10px;
}
@media screen and (max-width: 1024px) {
	.table_item_box .table_item_box_img {
		margin: 0 auto 5px;
	}
}
.table_item_box .table_item_box_img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}
.table_item_box .table_item_box_text {
	flex: 1;
}
@media screen and (max-width: 1024px) {
	.table_item_box .table_item_box_text {
		flex: none;
		width: 100%;
		text-align: center;
	}
}
.service_comparison_table .table_dri_item img {
	filter: invert(54%) sepia(73%) saturate(1171%) hue-rotate(155deg)
		brightness(100%) contrast(109%);
}
.service_comparison_table .table_others_item img {
	filter: invert(100%) sepia(1%) saturate(634%) hue-rotate(246deg)
		brightness(90%) contrast(73%);
}
.table_item_box_img.teble_batsu {
	width: 30px;
	height: 30px;
}
.site-main .onayami {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding: 80px 0;
	background-color: #ccc;
}
.site-main .onayami .inner {
	max-width: 1200px;
	margin: 0 auto;
}
.site-main .onayami .section_title {
	text-align: center;
	margin-bottom: 50px;
}
.site-main .onayami h3 {
	display: inline-block;
	padding: 2px 50px;
	font-family: "Noto Sans JP", sans-serif;
	color: #fff;
	font-size: 3.2rem;
	background-color: #333;
}
.site-main .onayami .onayami_img_pc {
	margin-bottom: 40px;
}
.site-main .onayami .onayami_img_sp {
	display: none;
}
.site-main .onayami .onayami_text {
	max-width: 775px;
	margin: 0 auto;
	text-align: center;
	font-weight: bold;
	font-size: 2.4rem;
}
.site-main .digital-consul {
	width: 100vw;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding: 100px 0;
	background-color: rgba(0, 0, 0, 0.8);
	position: relative;
}
.site-main .digital-consul::before {
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../../uploads/2024/04/service_digital_02.jpg);
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.site-main .digital-consul .inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}
.site-main .digital-consul .section_title h2 {
	text-align: center;
	color: #fff;
}
.site-main .digital-consul .section_title_span {
	color: #00c8ff;
	font-family: "Montserrat", sans-serif;
	font-weight: bold;
	font-size: 15rem;
	position: absolute;
	top: 0;
	right: -88%;
	transform: rotate(90deg);
	transform-origin: 0% 0%;
	z-index: -1;
}
.site-main .digital-consul .section_title_span.view-sp {
	display: none;
}
.site-main .digital-consul .digital-consul_text {
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 1.8rem;
	margin-bottom: 50px;
}
.site-main .digital-consul .digital-consul_img {
	width: 70%;
	margin: 0 auto 50px;
}
.site-main .digital-consul .digital-consul_box_item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 50px;
	padding: 25px 25px 25px 20px;
	background-color: rgba(0, 0, 0, 0.3);
	margin-bottom: 20px;
}
.site-main .digital-consul .digital-consul_box_item:last-of-type {
	margin-bottom: initial;
}
.site-main .digital-consul .digital-consul_box_item p {
	color: #fff;
	font-weight: bold;
	font-size: 1.6rem;
}
.site-main .digital-consul .digital-consul_box_item a {
	flex-shrink: 0;
	width: 350px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2rem;
	background-color: #ededed;
	box-shadow: 7px 7px 0 #00c8ff;
	position: relative;
	transition: 0.3s ease;
}
.site-main .digital-consul .digital-consul_box_item a::before {
	content: "";
	width: 20px;
	height: 20px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	background-color: #333333;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
}
.site-main .digital-consul .digital-consul_box_item a:hover {
	transform: translate(6px, 6px);
	box-shadow: 1px 1px 0 #00c8ff;
	color: #000;
}
.site-main .contact {
	padding: 80px 0;
}
.site-main .contact .inner {
	width: 70%;
	max-width: 750px;
	margin: 0 auto;
}
.site-main .about {
	padding: 225px 0 50px;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	background-color: #ededed;
}
.site-main .about .inner {
	max-width: 1200px;
	margin: 0 auto;
}
.site-main .about .section_title {
	position: relative;
}
.site-main .about .section_title span {
	width: 900px;
	position: absolute;
	top: -225px;
	left: 0;
}
.site-main .about .about_inner_box {
	background-color: initial;
	margin-bottom: initial;
}
.site-main .about .about_inner_box_title {
	width: 30%;
}
.site-main .about .about_inner_box_text dl {
	padding: 20px 5%;
}
.site-main .about .about_inner_box_text dt {
	font-weight: bold;
}
.site-main .about .about_inner_box_text dl:last-child {
	border-bottom: 1px #020202 solid;
}
@media screen and (max-width: 1200px) {
	.site-main .service .section_title_span {
		top: -250px;
	}
	.site-main .service .service_flex-box {
		width: calc(100% - 50px);
	}
	.site-main .digital-consul .section_title_span {
		right: -1075px;
	}
	.site-main .digital-consul .digital-consul_img {
		width: 80%;
	}
}
@media screen and (max-width: 980px) {
	.site-main .service .section_title_span {
		font-size: 12rem;
		top: -180px;
	}
	.site-main .section_title h2 span {
		font-size: 12rem;
	}
}
@media screen and (max-width: 768px) {
	.site-main .br-sp {
		display: block;
	}
	.site-main .member {
		padding: 50px 0;
	}
	.site-main .member .section_title h2 {
		flex-direction: column-reverse;
		line-height: 1.2;
	}
	.site-main .section_title h2 {
		font-size: 2.5rem;
	}
	.site-main .section_title h2 span {
		font-size: 7rem;
	}
	.site-main .member .member_box {
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.site-main .member .member_box_item {
		width: 48%;
		margin: initial;
		margin-bottom: 30px;
	}
	.site-main .member .member_box_item:nth-of-type(odd) {
		margin-right: 4%;
	}
	.site-main .service {
		margin-top: initial;
		padding: 50px 0;
	}
	.site-main .service .section_title_span {
		font-size: 9rem;
		top: -100px;
	}
	.site-main .service .service_flex-box {
		width: initial;
		flex-direction: column;
		margin: 0 auto;
	}
	.site-main .service .service_box_item:first-of-type {
		width: 100%;
		margin-bottom: 30px;
	}
	.site-main .service .service_box_item:last-of-type {
		width: 100%;
	}
	.site-main .comparison_section {
		padding: 50px 0;
		overflow: hidden;
	}
	.site-main .comparison_section .inner {
		overflow: hidden;
	}
	.site-main .comparison_section .service_comparison {
		margin-bottom: 50px;
		overflow: hidden;
	}
	.site-main .comparison_section .service_comparison_table_box {
		overflow-x: scroll;
	}
	.site-main .service_comparison_table {
		margin-top: 50px;
	}
	.site-main .comparison_section .service_comparison_title,
	.site-main .comparison_section .service_difference_title {
		font-size: 2.2rem;
		margin-bottom: 20px;
	}
	.site-main .comparison_section .service_comparison_text,
	.site-main .comparison_section .service_difference_text {
		font-size: 1.6rem;
	}
	.service_comparison_table .table_head .table_dri_title span {
		top: 22px;
	}
	.service_comparison_table .table_head th {
		font-size: 1.6rem;
	}
	.service_comparison_table th {
		min-width: 110px;
	}
	.service_comparison_table td {
		min-width: 150px;
	}
	.site-main .onayami {
		padding: 50px 0;
	}
	.site-main .onayami .section_title {
		margin-bottom: 40px;
	}
	.site-main .onayami h3 {
		padding: 2px 20px;
		font-size: 2.2rem;
	}
	.site-main .onayami .onayami_img_pc {
		display: none;
	}
	.site-main .onayami .onayami_img_sp {
		display: block;
		margin-bottom: 30px;
	}
	.site-main .onayami .onayami_text {
		text-align: left;
		font-size: 1.8rem;
	}
	.site-main .digital-consul {
		padding: 50px 0;
	}
	.site-main .digital-consul .section_title_span.view-pc {
		display: none;
	}
	.site-main .digital-consul .section_title_span.view-sp {
		display: block;
	}
	.site-main .digital-consul .section_title_span {
		font-size: 9rem;
		top: 5px;
		right: -650px;
	}
	.site-main .digital-consul .digital-consul_img {
		width: 100%;
	}
	.site-main .digital-consul .section_title {
		position: relative;
	}
	.site-main .digital-consul .digital-consul_box_item {
		padding: 25px 25px 30px 20px;
		flex-direction: column;
		gap: 30px;
	}

	.site-main .digital-consul .digital-consul_box_item a {
		width: 100%;
		font-size: 1.8rem;
	}
	.site-main .digital-consul .digital-consul_box_item a::before {
		width: 15px;
		height: 15px;
		right: 5%;
	}
	.site-main .contact .inner {
		width: 100%;
		max-width: 750px;
		margin: 0 auto;
	}
	.site-main .about {
		padding: 100px 0 50px;
	}
	.site-main .about .about_inner_box {
		padding: initial;
	}
	.site-main .about .section_title span {
		font-size: 6rem;
		top: -80px;
	}
}
/* フッター */
footer.site-footer {
	padding: 30px 0 15px;
	background-color: #2c2c2c;
}
footer.site-footer .site-footer_box {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 50px;
}
footer.site-footer .main-navigation-pc li a {
	font-weight: 500;
	color: #fff;
}
footer.site-footer .footercopy-text {
	font-weight: 400;
	color: #fff;
}
@media screen and (max-width: 768px) {
	footer.site-footer .site-footer_box {
		align-items: flex-start;
		flex-direction: column;
	}
	footer.site-footer .site-branding {
		height: 55px;
		margin: 0 0 30px 20px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	footer.site-footer .site-branding a {
		width: 100%;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	footer.site-footer .main-navigation-pc {
		display: block;
	}
	footer.site-footer .main-navigation-pc ul {
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: column;
	}
	footer.site-footer .main-navigation-pc li {
		margin-left: 20px;
	}
	footer.site-footer .main-navigation-pc li:not(:last-of-type) {
		margin-bottom: 20px;
	}
}
/* その他ページ */
.site-main .br-sp {
	display: none;
}
.site-main img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: bottom;
}
.sub-main {
	position: initial;
	height: 400px;
	display: block;
	justify-content: initial;
	align-items: initial;
	background-color: #00c8ff;
}
.sub-main .sub-main_inner {
	max-width: 1200px;
	height: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.sub-main .sub-main_inner_img {
	margin-top: 50px;
	width: 30%;
}
.sub-main .sub-main_inner_text {
	width: 70%;
}
.sub-main .sub-main_inner_text h1 {
	text-align: center;
	color: #fff;
	font-family: "Montserrat", sans-serif;
	font-size: 15rem;
}
.site-main .site-main_inner {
	max-width: initial;
}
.site-main section {
	padding: 75px 0;
}
.site-main section .inner {
	max-width: 1200px;
	margin: 0 auto;
}
@media screen and (max-width: 1200px) {
	.sub-main_inner {
		padding: 0 20px;
	}
	.sub-main .sub-main_inner_text h1 {
		font-size: 12rem;
	}
}
@media screen and (max-width: 980px) {
	.sub-main .sub-main_inner_text h1 {
		font-size: 10rem;
	}
}
@media screen and (max-width: 768px) {
	.site-main .br-sp {
		display: block;
	}
	.site-main .br-pc {
		display: none;
	}
	.sub-main {
		height: initial;
	}
	.sub-main .sub-main_inner {
		flex-direction: column;
	}
	.sub-main .sub-main_inner_img {
		width: 50%;
	}
	.sub-main .sub-main_inner_text {
		width: 100%;
	}
	.sub-main .sub-main_inner_text h1 {
		font-size: 7rem;
	}
	.site-main section {
		padding: 50px 0;
	}
}
/* サービスページ */
.service_page .three_service .section_title h2 {
	text-align: center;
	font-size: 3.2rem;
}
.service_page .three_service .three_service_box_text {
	margin-bottom: 35px;
}
.service_page .three_service .three_service_box_link {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
}
.service_page .three_service .three_service_box_link a {
	width: 30%;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2rem;
	background-color: #ededed;
	box-shadow: 7px 7px 0 #00c8ff;
	position: relative;
	transition: 0.3s ease;
}
.service_page .three_service .three_service_box_link a::before {
	content: "";
	width: 20px;
	height: 20px;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
	background-color: #333333;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
}
.service_page .three_service .three_service_box_link a:hover {
	transform: translate(6px, 6px);
	box-shadow: 1px 1px 0 #00c8ff;
	color: #000;
}
.service_page section.digital {
	background-color: #ededed;
}
.service_page .digital .section_title h2 {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.service_page .digital .digital_box_explain {
	margin-bottom: 35px;
}
.service_page .digital .digital_box_main_img {
	margin-bottom: 75px;
}
.service_page .service_page_osusume {
	max-width: 720px;
	margin: 0 auto 70px;
}
.service_page .service_page_osusume_box {
	padding: 20px 5%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	text-align: center;
	color: #fff;
	background-color: #4e4e4e;
	margin-bottom: 30px;
}
.service_page .service_page_osusume_box h4 {
	font-size: 3.2rem;
	margin-bottom: 15px;
}
.service_page .service_page_osusume_box ul {
	text-align: left;
	font-weight: bold;
	font-size: 2rem;
}
.service_page .service_page_osusume_box ul li {
	padding-left: 25px;
	margin-bottom: 5px;
	position: relative;
}
.service_page .service_page_osusume_box ul li::before {
	content: "";
	width: 16px;
	height: 7px;
	border-left: 3px solid #00c8ff;
	border-bottom: 3px solid #00c8ff;
	transform: rotate(-45deg);
	position: absolute;
	top: 8px;
	left: 0;
}
.service_page .digital .digital_box_step {
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: 60px 0;
	background-image: url(../../uploads/2023/12/service_digital_02-scaled.jpg);
	background-size: cover;
	position: relative;
}
.service_page .digital .digital_box_step::before {
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.8);
	position: absolute;
	top: 0;
	left: 0;
}
.service_page .digital .digital_box_step_inner {
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	color: #fff;
}
.service_page .digital .digital_box_step_inner_inner {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 20px;
}
.service_page .digital .digital_box_step_inner h4 {
	text-align: center;
	font-weight: 500;
	margin-bottom: 40px;
}
.service_page .digital .digital_box_step_inner_box {
	padding: 30px 5% 30px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-left: 2px solid #fff;
	border-right: 2px solid #fff;
	position: relative;
}
.service_page .digital .digital_box_step_inner_box::before {
	content: "";
	width: calc(50% - 30px);
	height: 2px;
	background-color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
}
.service_page .digital .digital_box_step_inner_box::after {
	content: "";
	width: calc(50% - 30px);
	height: 2px;
	background-color: #fff;
	position: absolute;
	bottom: 0;
	left: calc(50% + 30px);
}
.service_page .digital .digital_box_step_inner_box_triangle {
	content: "";
	width: 46px;
	height: 46px;
	border: 2px solid;
	border-color: #fff #fff transparent transparent;
	transform: rotate(135deg);
	position: absolute;
	bottom: -22px;
	left: 0;
	right: 0;
	margin: auto;
}
.service_page .digital .digital_box_step_inner_box:first-of-type {
	border-top: 2px solid #fff;
}
.service_page .digital .digital_box_step_inner_box_number {
	width: 15%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	font-weight: bold;
}
.service_page .digital .digital_box_step_inner_box_number p:first-of-type {
	line-height: 1.2;
	font-family: "Montserrat", sans-serif;
	font-size: 3.2rem;
}
.service_page .digital .digital_box_step_inner_box_number p:last-of-type {
	line-height: 1.2;
	font-family: "Montserrat", sans-serif;
	font-size: 6rem;
}
.service_page .digital .digital_box_step_inner_box_text {
	width: 60%;
	margin-right: 5%;
}
.service_page .digital .digital_box_step_inner_box_text h5 {
	margin-bottom: 10px;
}
.service_page .digital .digital_box_step_inner_box_img {
	width: 20%;
}
.service_page .digital h3 {
	margin: 60px auto 50px;
	text-align: center;
	font-size: 3.2rem;
}
.service_page .digital_box_intro {
	max-width: 1024px;
	margin: 0 auto 70px;
}
.service_page .digital_box_intro:last-of-type {
	margin-bottom: initial;
}
.service_page .all-in-one h3 {
	text-align: center;
	font-size: 3.2rem;
	margin-bottom: 50px;
}
.service_page .digital_box_intro dl,
.service_page .custom-made_box_intro dl,
.service_page .all-in-one_box_intro dl {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	flex-wrap: wrap;
	font-size: 1.8rem;
}
.service_page .digital_box_intro dt,
.service_page .custom-made_box_intro dt,
.service_page .all-in-one_box_intro dt {
	padding: 20px;
	width: 20%;
	margin-right: 5px;
	font-weight: bold;
	color: #fff;
	background-color: #00c8ff;
	margin-bottom: 5px;
}
.service_page .digital_box_intro dd,
.service_page .custom-made_box_intro dd,
.service_page .all-in-one_box_intro dd {
	padding: 20px;
	width: calc(80% - 5px);
	background-color: #fff;
	margin-bottom: 5px;
}
.service_page .digital_box_intro dd li,
.service_page .custom-made_box_intro dd li,
.service_page .all-in-one_box_intro dd li {
	padding-left: 1em;
	text-indent: -1em;
}
.service_page .custom-made .section_title h2 {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-direction: column;
	line-height: 1.2;
	margin-bottom: 50px;
}
.service_page .custom-made .section_title h2 span {
	font-size: 14rem;
}
.service_page .custom-made h4.custom-made_box_explain {
	text-align: center;
	font-size: 2.4rem;
	margin-bottom: 20px;
}
.service_page .custom-made p.custom-made_box_explain {
	margin-bottom: 50px;
}
.service_page .custom-made .custom-made_box_flow_general {
	margin-bottom: 50px;
}
.service_page .custom-made .custom-made_box_flow_ojt {
	margin-bottom: 90px;
}
.service_page .custom-made .custom-made_box_general,
.service_page .custom-made .custom-made_box_ojt {
	padding-left: 20px;
	font-size: 2.4rem;
	margin-bottom: 20px;
	position: relative;
}
.service_page .custom-made .custom-made_box_general::before,
.service_page .custom-made .custom-made_box_ojt::before {
	content: "";
	width: 7px;
	height: 80%;
	background-color: #333;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}
.service_page .custom-made .custom-made_box_ojt::before {
	background-color: #00c8ff;
}
.service_page .custom-made .custom-made_box_flow {
	display: flex;
	justify-content: flex-start;
	align-items: stretch;
	gap: 8%;
}
.service_page .custom-made .custom-made_box_flow_box {
	width: 19%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
	position: relative;
}
.service_page
.custom-made
.custom-made_box_flow_general
.custom-made_box_flow_box:not(:last-of-type):before {
	content: "";
	width: 22px;
	height: 29px;
	clip-path: polygon(0 0, 0% 100%, 75% 50%);
	background-color: #ccc;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -27%;
}
.service_page
.custom-made
.custom-made_box_flow_ojt
.custom-made_box_flow_box:not(:last-of-type):before {
	content: "";
	width: 22px;
	height: 29px;
	clip-path: polygon(0 0, 0% 100%, 75% 50%);
	background-color: #d8f7ff;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: -27%;
}
.service_page .custom-made .custom-made_box_flow_box_img {
	width: 80%;
	flex-shrink: 0;
	margin: 0 auto 20px;
}
.service_page .custom-made .custom-made_box h3 {
	text-align: center;
	font-size: 3.2rem;
	margin-bottom: 50px;
}
.service_page .custom-made .custom-made_box_intro {
	max-width: 1024px;
	margin: 0 auto 70px;
}
.service_page .custom-made .custom-made_box_intro:last-of-type {
	margin-bottom: initial;
}
.service_page .custom-made_box_intro dd {
	background-color: #f2f2f2;
}
.service_page section.all-in-one {
	background-color: #ededed;
}
.service_page .all-in-one .section_title {
	margin-bottom: 60px;
}
.service_page .all-in-one .section_title h2 {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}
.service_page .all-in-one .all-in-one_box_explain {
	margin-bottom: 50px;
}
.service_page .all-in-one h4 {
	text-align: center;
	font-size: 2.4rem;
	margin-bottom: 50px;
}
.service_page .all-in-one .service_page_osusume_box h4 {
	font-size: 3.2rem;
	margin-bottom: 15px;
}
.service_page .all-in-one .all-in-one_box_explain_img {
	max-width: 1024px;
	margin: 0 auto 70px;
}
.service_page .all-in-one .all-in-one_box_intro {
	max-width: 1024px;
	margin: 0 auto 70px;
}
.service_page .all-in-one .all-in-one_box_intro:last-of-type {
	margin-bottom: initial;
}
.service_page .price .section_title {
	margin-bottom: 80px;
}
.service_page .price .section_title h2 {
	width: fit-content;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 25px;
	position: relative;
}
.service_page .price .section_title h2::before {
	content: "";
	width: 45%;
	height: 5px;
	background-color: #00c8ff;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.service_page .price h3 {
	text-align: center;
	font-size: 3.2rem;
	margin-bottom: 30px;
}
.service_page .price h3:first-of-type {
	margin-bottom: 20px;
}
.service_page .price .price_box_explain {
	text-align: center;
	font-weight: bold;
	font-size: 2.4rem;
	margin-bottom: 20px;
}
.service_page .price .price_box_box {
	margin-bottom: 90px;
}
.service_page .price .price_box_box_item {
	max-width: 1024px;
	margin: 0 auto;
	padding: 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #f2f2f2;
	position: relative;
}
.service_page .price .price_box_box_item::before {
	content: "";
	width: 2px;
	height: 80%;
	background-color: #707070;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 40%;
}
.service_page .price .price_box_box_item:not(:last-of-type) {
	margin-bottom: 55px;
}
.service_page .price .price_box_box_item_plan {
	width: 39%;
}
.service_page .price .price_box_box-digital .price_box_box_item:first-of-type {
	box-shadow: 7px 7px 0 #00ebff;
}
.service_page .price .price_box_box-digital .price_box_box_item:nth-of-type(2) {
	box-shadow: 7px 7px 0 #00d8ff;
}
.service_page .price .price_box_box-digital .price_box_box_item:last-of-type {
	box-shadow: 7px 7px 0 #00c8ff;
}
.service_page .price .price_box_box-custom-made .price_box_box_item {
	box-shadow: 7px 7px 0 #00a7ff;
}
.service_page .price .price_box_box-all-in-one .price_box_box_item {
	box-shadow: 7px 7px 0 #0089ff;
}
.service_page .price .price_box_box_item_title {
	font-weight: bold;
	font-size: 2.4rem;
}
.service_page .price .price_box_box_item_price {
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.2;
	margin-bottom: 10px;
}
.service_page .price .price_box_box_item_price span {
	font-size: 7rem;
}
.service_page .price .price_box_box_item_explain {
	font-weight: bold;
	font-size: 1.8rem;
}
.service_page .price .price_box_box_item_explain_note {
	padding-left: 1em;
	text-indent: -1em;
	font-weight: bold;
	font-size: 1.8rem;
}
.service_page .price .price_box_box_item_text {
	width: 59%;
	font-size: 1.6rem;
}
.service_page .price .price_box_box-all-in-one {
	margin-bottom: initial;
}
@media screen and (max-width: 1200px) {
	.service_page .custom-made .section_title h2 span {
		font-size: 11rem;
	}
	.service_page .three_service .three_service_box_link a {
		padding: 20px 30px 20px 20px;
		font-size: 1.6rem;
	}
	.service_page .three_service .three_service_box_link a::before {
		width: 18px;
		height: 18px;
		right: 5%;
	}
}
@media screen and (max-width: 980px) {
	.service_page .section_title h2 span {
		font-size: 9rem;
	}
	.service_page .custom-made .section_title h2 span {
		font-size: 8rem;
	}
}
@media screen and (max-width: 768px) {
	.service_page .three_service .section_title h2 {
		font-size: 2rem;
	}
	.service_page .three_service .three_service_box_link {
		flex-direction: column;
	}
	.service_page .three_service .three_service_box_link a {
		width: 100%;
	}
	.service_page .three_service .three_service_box_link a:not(:last-of-type) {
		margin-bottom: 25px;
	}
	.service_page .digital .section_title h2 {
		flex-direction: column-reverse;
	}
	.service_page .section_title h2 span {
		font-size: 4.2rem;
	}
	.service_page .digital .digital_box_main_img {
		margin-bottom: 50px;
	}
	.service_page .service_page_osusume_box h4 {
		font-size: 2.4rem;
	}
	.service_page .service_page_osusume_box ul {
		font-size: 1.8rem;
	}
	.service_page .service_page_osusume_box ul li::before {
		width: 14px;
		height: 6px;
		top: 7px;
	}
	.service_page .digital .digital_box_step_inner_box {
		padding: 20px 20px 40px;
		flex-direction: column;
	}
	.service_page .digital .digital_box_step_inner_box:not(:first-of-type) {
		padding-top: 50px;
	}
	.service_page .digital .digital_box_step_inner_box_number {
		width: 100%;
		margin-bottom: 10px;
	}
	.service_page .digital .digital_box_step_inner_box_number p:first-of-type {
		font-size: 2.2rem;
	}
	.service_page .digital .digital_box_step_inner_box_number p:last-of-type {
		font-size: 5rem;
	}
	.service_page .digital .digital_box_step_inner_box_text {
		order: 3;
		width: 100%;
		margin-right: initial;
	}
	.service_page .digital .digital_box_step_inner_box_img {
		width: 100%;
		margin-bottom: 20px;
	}
	.service_page .digital h3 {
		margin: 50px auto 30px;
		font-size: 2.4rem;
	}
	.service_page .digital_box_intro {
		width: 100%;
		margin: 0 auto 50px;
	}
	.service_page .digital_box_intro dl,
	.service_page .custom-made_box_intro dl,
	.service_page .all-in-one_box_intro dl {
		font-size: 1.4rem;
	}
	.service_page .digital_box_intro dt,
	.service_page .custom-made_box_intro dt,
	.service_page .all-in-one_box_intro dt {
		padding: 10px;
		width: 30%;
	}
	.service_page .digital_box_intro dd,
	.service_page .custom-made_box_intro dd,
	.service_page .all-in-one_box_intro dd {
		padding: 10px;
		width: calc(70% - 5px);
	}
	.service_page .custom-made .section_title h2 span {
		font-size: 3.9rem;
	}
	.service_page .custom-made h4.custom-made_box_explain {
		text-align: left;
		font-size: 1.8rem;
	}
	.service_page .custom-made .custom-made_box_general,
	.service_page .custom-made .custom-made_box_ojt {
		font-size: 2rem;
	}
	.service_page .custom-made .custom-made_box_flow {
		flex-direction: column;
	}
	.service_page .custom-made .custom-made_box_flow_box {
		width: 100%;
	}
	.service_page .custom-made .custom-made_box_flow_box:not(:last-of-type) {
		margin-bottom: 100px;
	}
	.service_page .custom-made .custom-made_box_flow_box_img {
		width: 50%;
	}
	.service_page
	.custom-made
	.custom-made_box_flow_general
	.custom-made_box_flow_box:not(:last-of-type):before,
	.service_page
	.custom-made
	.custom-made_box_flow_ojt
	.custom-made_box_flow_box:not(:last-of-type):before {
		top: initial;
		right: 0;
		left: 0;
		margin: auto;
		bottom: -65px;
		transform: rotate(90deg);
	}
	.service_page .custom-made .custom-made_box h3 {
		font-size: 2.4rem;
		margin-bottom: 30px;
	}
	.service_page .custom-made .custom-made_box_intro {
		width: 100%;
		margin: 0 auto 50px;
	}
	.service_page .all-in-one .section_title h2 span {
		font-size: 4.2rem;
	}
	.service_page .all-in-one .section_title {
		margin-bottom: 30px;
	}
	.service_page .all-in-one h4 {
		text-align: center;
		font-size: 2rem;
		margin-bottom: 30px;
	}
	.service_page .all-in-one .service_page_osusume_box h4 {
		font-size: 2.4rem;
		margin-bottom: 15px;
	}
	.service_page .all-in-one .all-in-one_box_explain_img {
		width: 100%;
		margin: 0 auto 50px;
	}
	.service_page .all-in-one h3 {
		font-size: 2.4rem;
		margin-bottom: 30px;
	}
	.service_page .all-in-one .all-in-one_box_intro {
		width: 100%;
		margin: 0 auto 50px;
	}
	.service_page .price .section_title {
		margin-bottom: 50px;
	}
	.service_page .price .section_title h2 {
		padding-bottom: 15px;
		font-size: 2.5rem;
	}
	.service_page .price h3 {
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
	.service_page .price h3:first-of-type {
		margin-bottom: 5px;
	}
	.service_page .price .price_box_explain {
		font-size: 2rem;
	}
	.service_page .price .price_box_box {
		flex-direction: column;
		margin-bottom: 60px;
	}
	.service_page .price .price_box_box-all-in-one {
		margin-bottom: initial;
	}
	.service_page .price .price_box_box_item {
		flex-direction: column;
	}
	.service_page .price .price_box_box_item::before {
		content: initial;
	}
	.service_page .price .price_box_box_item_plan {
		width: 100%;
		margin-bottom: 40px;
		position: relative;
	}
	.service_page .price .price_box_box_item_plan::before {
		content: "";
		width: 100%;
		height: 2px;
		background-color: #707070;
		position: absolute;
		bottom: -20px;
		right: 0;
		left: 0;
		margin: auto;
	}
	.service_page .price .price_box_box_item_text {
		width: 100%;
	}
	.service_page
	.price
	.price_box_box-digital
	.price_box_box_item:not(:last-of-type) {
		margin-bottom: 40px;
	}
	.service_page .price .price_box_box_item_title {
		font-size: 1.8rem;
	}
	.service_page .price .price_box_box_item_price {
		font-size: 2.2rem;
	}
	.service_page .price .price_box_box_item_price span {
		font-size: 5rem;
	}
	.service_page .price .price_box_box_item_explain,
	.service_page .price .price_box_box_item_explain_note {
		font-size: 1.6rem;
	}
}
/* よくある質問ページ */
.sub-main.faq_page {
	background-color: #0089ff;
}
.faq_page .section_title {
	margin-bottom: 75px;
}
.faq_page .section_title h2 {
	text-align: center;
}
.faq_page .faq_section_box:not(:last-of-type) {
	margin-bottom: 50px;
}
.faq_page .faq_section_box_q {
	padding-left: 55px;
	margin-bottom: 15px;
}
.faq_page .faq_section_box_q_text {
	font-weight: bold;
	color: #0089ff;
	font-size: 2rem;
	position: relative;
}
.faq_page .faq_section_box_q_text::before {
	content: "Q";
	width: 40px;
	height: 34px;
	padding-bottom: 6px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 2.8rem;
	background-color: #0089ff;
	position: absolute;
	top: -4px;
	left: -55px;
}
.faq_page .faq_section_box_a {
	padding: 20px 30px 20px 55px;
	background-color: #ededed;
}
.faq_page .faq_section_box_a_text {
	position: relative;
}
.faq_page .faq_section_box_a_text::before {
	content: "A";
	width: 38px;
	height: 38px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	color: #333;
	font-size: 2.4rem;
	position: absolute;
	top: -6px;
	left: -45px;
}
.faq_page .faq_link {
	text-decoration: underline;
	color: #0089ff;
}
@media screen and (max-width: 768px) {
	.faq_page .section_title {
		margin-bottom: 45px;
	}
	.faq_page .faq_section_box_q {
		padding-left: 45px;
		margin-bottom: 10px;
	}
	.faq_page .faq_section_box_q_text {
		font-size: 1.6rem;
	}
	.faq_page .faq_section_box_q_text::before {
		width: 34px;
		height: 28px;
		font-size: 2.2rem;
		top: -5px;
		left: -45px;
	}
	.faq_page .faq_section_box_a {
		padding: 10px 15px 10px 45px;
	}
	.faq_page .faq_section_box_a_text {
		font-size: 1.4rem;
	}
	.faq_page .faq_section_box_a_text::before {
		width: 34px;
		height: 34px;
		font-size: 2rem;
		top: -6px;
		left: -35px;
	}
}
/* お問い合わせ */
.sub-main.contact_page {
	background-color: #4e4e4e;
}
.contact_page .section_title {
	margin-bottom: 70px;
}
.contact_page .section_title h2 {
	text-align: center;
}
.contact_page .contact_section_text {
	max-width: 720px;
	margin: 0 auto 40px;
}
.contact_page .wpcf7 {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 90px;
	background-color: #ededed;
}
.contact_page .faq_section_form .faq_section_form_title {
	font-weight: bold;
	margin-bottom: 5px;
}
.contact_page .faq_section_form .icon--must {
	margin-left: 5px;
	color: #ff0000;
}
.contact_page .faq_section_form .faq_section_form_item {
	width: 100%;
	margin-bottom: 20px;
}
.contact_page .faq_section_form .faq_section_form_item:last-of-type {
	margin-bottom: 40px;
}
.contact_page .faq_section_form .faq_section_form_flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.contact_page .faq_section_form .faq_section_form_flex_item {
	width: 48%;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
}
.contact_page .faq_section_form .input-l {
	width: 100%;
	padding: 10px;
	border: none;
}
.contact_page
.faq_section_form
.faq_section_form_title
p
span.faq_section_form_title_kinds {
	padding-left: 20px;
	font-size: 1.4rem;
}
.contact_page .faq_section_form .radio-bottom {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	flex-direction: column;
}
.contact_page .faq_section_form .wpcf7-list-item {
	margin: 0;
	font-size: 1.4rem;
}
.contact_page .faq_section_form .textarea-l {
	width: 100%;
	padding: 10px;
	border: none;
}
.contact_page .Form-Submit {
	width: 240px;
	height: 60px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #4e4e4e;
}
.contact_page .Form-Submit p {
	width: 100%;
	height: 100%;
}
.contact_page .Form-Submit p input {
	width: 100%;
	height: 100%;
	font-weight: bold;
	color: #fff;
	font-size: 1.6rem;
	background-color: initial;
}
.contact_page .wpcf7-list-item-label {
	cursor: pointer;
	display: flex;
	font-weight: bold;
}
.contact_page input[type="radio"] {
	/* 	opacity: 0;
	position: absolute; */
}
.contact_page .wpcf7-list-item-label::before {
	content: "";
	width: 1em;
	height: 1em;
	margin-top: auto;
	margin-bottom: auto;
	margin-right: 5px;
	border: 1px solid #ccc;
	border-radius: 100%;
	background: #fff;
}
.contact_page input[type="radio"]:checked + .wpcf7-list-item-label::before {
	background-color: #4e4e4e;
	box-shadow: inset 0 0 0 3px #fff;
}
.contact_page
.faq_section_form
.wpcf7-list-item:first-of-type
.wpcf7-list-item-label::before,
.contact_page
.faq_section_form
.wpcf7-list-item:nth-of-type(2)
.wpcf7-list-item-label::before,
.contact_page
.faq_section_form
.wpcf7-list-item:nth-of-type(3)
.wpcf7-list-item-label::before,
.contact_page
.faq_section_form
.wpcf7-list-item:nth-of-type(4)
.wpcf7-list-item-label::before {
	margin-right: 15px;
}
@media screen and (max-width: 768px) {
	.page .sub-main.contact_page .sub-main_inner_text h1 {
		font-size: 5rem;
	}
	.contact_page .section_title {
		margin-bottom: 30px;
	}
	.contact_page .contact_section_text {
		margin-bottom: 20px;
	}
	.contact_page .wpcf7 {
		padding: 30px 20px;
	}
}

/* 20240601 */
/* トップページ */
.site-main h2,
.site-main h3,
.site-main h4,
.site-main h5 {
	font-family: "Noto Sans JP", sans-serif;
}
.site-main .about_dri-consul {
	padding: 100px 0 50px;
}
.site-main .about_dri-consul .section_title {
	text-align: center;
	margin-bottom: 50px;
}
.site-main .about_dri-consul_box {
	text-align: center;
}
.site-main .about_dri-consul_box_h4 {
	margin-bottom: 50px;
}
.site-main .about_dri-consul_box h4 {
	padding: 5px 10px;
	display: inline;
	line-height: 2;
	color: #fff;
	font-size: 3rem;
	background-color: #007eff;
	margin-bottom: 10px;
}
.site-main .about_dri-consul_box_h3 {
	margin-bottom: 60px;
}
.site-main .about_dri-consul_box h3 {
	display: inline;
	font-weight: normal;
	font-size: 3rem;
	border-bottom: 5px solid #007eff;
}
.site-main .about_dri-consul_box h3 span {
	font-weight: bold;
	margin-right: 10px;
}
.site-main .about_dri-consul_box_item {
	max-width: 900px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.site-main .about_dri-consul_box_item_img {
	width: 40%;
}
.site-main .about_dri-consul_box_item_text {
	width: 56%;
	text-align: left;
	font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
	.site-main .about_dri-consul_box h4 {
		line-height: 2.2;
		font-size: 1.8rem;
	}
	.site-main .about_dri-consul_box h3 {
		font-size: 2rem;
	}
	.site-main .about_dri-consul_box_item {
		flex-direction: column;
	}
	.site-main .about_dri-consul_box_item_img {
		width: 100%;
		margin-bottom: 20px;
	}
	.site-main .about_dri-consul_box_item_text {
		width: 100%;
		font-size: 1.4rem;
	}
}
.site-main .service .section_title_span {
	/*   top: -270px; */
	line-height: 1;
}
@media screen and (max-width: 1200px) {
	.site-main .service .section_title_span {
		top: -250px;
	}
}
@media screen and (max-width: 980px) {
	.site-main .service .section_title_span {
		top: -180px;
	}
}
@media screen and (max-width: 768px) {
	.site-main .service .section_title_span {
		top: -200px;
	}
}
.site-main .service {
	padding-bottom: 250px;
}
@media screen and (max-width: 768px) {
	.site-main .service {
		padding-bottom: 50px;
	}
}
.site-main .comparison_section {
	padding-bottom: 50px;
}
.site-main .three-features {
	padding: 50px 0;
}
.site-main .three-features_title {
	text-align: center;
	font-size: 3rem;
	margin-bottom: 50px;
}
.site-main .three-features_box_item:not(:last-of-type) {
	margin-bottom: 50px;
}
.site-main .three-features_box_item h4 {
	padding-left: 1em;
	text-indent: -1em;
	color: #00c8ff;
	font-size: 3rem;
	margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
	.site-main .three-features_title {
		font-size: 2.2rem;
	}
	.site-main .three-features_box_item h4 {
		font-size: 2rem;
	}
}
.site-main .available_services {
	padding: 50px 0;
}
.site-main .available_services_title {
	text-align: center;
	font-size: 3rem;
	margin-bottom: 50px;
}
.site-main .available_services_catch-copy {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 50px;
}
.site-main .available_services_catch-copy {
	font-weight: normal;
}
.site-main .available_services_box_item {
	margin-bottom: 50px;
}
.site-main .available_services_box_item h5 {
	color: #00c8ff;
	font-size: 3rem;
	margin-bottom: 10px;
}
.site-main .available_services_box_item p {
	font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
	.site-main .available_services_title {
		font-size: 2.2rem;
	}
	.site-main .available_services_catch-copy {
		font-size: 1.8rem;
	}
	.site-main .available_services_box_item h5 {
		font-size: 2rem;
	}
	.site-main .available_services_box_item p {
		font-size: 1.6rem;
	}
}
/* 20240601 */
/* サービスページ */
.service_page h2,
.service_page h3,
.service_page h4,
.service_page h5 {
	font-family: "Noto Sans JP", sans-serif;
}
.service_page .composition {
	padding: 50px 0;
}
.service_page .composition_box h3 {
	text-align: center;
	font-size: 3.2rem;
	margin-bottom: 50px;
}
.service_page .composition_box p {
	margin-bottom: 20px;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.service_page .composition_box h3 {
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
	.service_page .composition_box_img {
		overflow-x: scroll;
	}
	.service_page .composition_box_img img {
		min-width: 700px;
		height: auto;
	}
}
.service_page .achievements {
	padding: 50px 0;
}
.service_page .achievements_box h3 {
	text-align: center;
	font-size: 3.2rem;
	margin-bottom: 50px;
}
.service_page .achievements_box p {
	margin-bottom: 20px;
}
.service_page .achievements_box_img_sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.service_page .achievements_box h3 {
		font-size: 2.4rem;
		margin-bottom: 20px;
	}
	.service_page .achievements_box_img_pc {
		display: none;
	}
	.service_page .achievements_box_img_sp {
		display: block;
	}
}
.service_page .three_service_img_pc {
	margin-bottom: 100px;
}
.service_page .three_service_img_sp {
	display: none;
}
.service_page .three_service_text {
	margin-bottom: 50px;
	text-align: center;
}
.service_page .three_service_img_scroll {
	margin: 0 auto;
	margin-bottom: 100px;
	max-width: 1000px;
}
@media screen and (max-width: 768px) {
	.service_page .three_service_text {
		margin-bottom: 20px;
		text-align: left;
	}
	.service_page .three_service_img_pc {
		display: none;
	}
	.service_page .three_service_img_sp {
		display: block;
		margin-bottom: 50px;
	}
	.service_page .three_service_img_scroll {
		/*     overflow-x: scroll; */
		margin-bottom: 50px;
	}
	.service_page .three_service_img_scroll img {
		/*     width: auto;
		height: 250px; */
	}
}
.service_page .service_page_osusume_flex_osusume_text {
	margin-bottom: 50px;
}
.service_page p.service_page_osusume_flex_osusume_title {
	width: fit-content;
	font-size: 2.4rem;
	border-bottom: 5px solid #00c8ff;
	margin-bottom: 20px;
}
.service_page .service_page_osusume_flex_box {
	display: flex;
	justify-content: space-between;
	align-items: stretch;
	margin-bottom: 100px;
}
.service_page .service_page_osusume_flex_box_item {
	width: 24%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.service_page .service_page_osusume_flex_box_item_top {
	height: 100px;
	padding: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	background-color: #00c8ff;
}
.service_page .service_page_osusume_flex_box_item_top span {
	font-size: 14px;
}
.service_page .service_page_osusume_flex_box_item_bottom {
	flex-grow: 1;
	padding: 10px;
	border-right: 5px solid #00c8ff;
	border-left: 5px solid #00c8ff;
	border-bottom: 5px solid #00c8ff;
	background-color: #fff;
}
@media screen and (max-width: 768px) {
	.service_page p.service_page_osusume_flex_osusume_title {
		font-size: 2rem;
	}
	.service_page .service_page_osusume_flex_box {
		flex-wrap: wrap;
		margin-bottom: 20px;
	}
	.service_page .service_page_osusume_flex_box_item {
		width: 48%;
		margin-bottom: 30px;
	}
	.service_page .service_page_osusume_flex_box_item:nth-of-type(odd) {
		margin-right: 4%;
	}
	.service_page .service_page_osusume_flex_box_item_top {
		height: 120px;
		text-align: left;
	}
	.service_page .service_page_osusume_flex_box_item_top span {
		font-size: 12px;
	}
}
.service_page .digital_box_step_inner_box_flow_box,
.service_page .digital_box_propulsion_box {
	/*   margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw); */
	padding: 50px 0;
	/*   background-color: #fff; */
}
.service_page .digital_box_step_inner_box_flow_box .inner,
.service_page .digital_box_propulsion_box .inner {
	max-width: 1200px;
	margin: 0 auto;
}
.service_page .digital_box_step_inner_box_flow_text,
.service_page .digital_box_propulsion_box_text {
	margin-bottom: 20px;
}
.digital_box_propulsion_box_img {
	max-width: 1000px;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.service_page .digital_box_step_inner_box_flow_img,
	.service_page .digital_box_propulsion_box_img {
		overflow-x: scroll;
	}
	.service_page .digital_box_step_inner_box_flow_img img {
		min-width: 700px;
		height: auto;
	}
	.service_page .digital_box_propulsion_box_img img {

	}
}
.service_page .digital_box_intro,
.service_page .custom-made .custom-made_box_intro,
.service_page .all-in-one .all-in-one_box_intro {
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.service_page .digital_box_intro_text {
	margin-bottom: 20px;
}
.service_page .digital_box_intro dl,
.service_page .custom-made_box_intro dl,
.service_page .all-in-one_box_intro dl {
	width: 49%;
	font-size: 1.4rem;
}
.service_page .digital_box_intro dt,
.service_page .custom-made_box_intro dt,
.service_page .all-in-one_box_intro dt {
	/*   padding: 20px; */
}
.service_page .digital_box_intro dd,
.service_page .custom-made_box_intro dd,
.service_page .all-in-one_box_intro dd {
	/*   padding: 20px; */
}
.service_page .digital_box_intro .digital_box_intro_img,
.service_page .custom-made_box_intro .digital_box_intro_img,
.service_page .all-in-one_box_intro .digital_box_intro_img {
	width: 49%;
}
@media screen and (max-width: 768px) {
	.service_page .digital_box_intro,
	.service_page .custom-made .custom-made_box_intro,
	.service_page .all-in-one .all-in-one_box_intro {
		flex-direction: column;
		gap: 20px;
	}
	.service_page .digital_box_intro dl,
	.service_page .custom-made_box_intro dl,
	.service_page .all-in-one_box_intro dl {
		width: 100%;
	}
	.service_page .digital_box_intro .digital_box_intro_img,
	.service_page .custom-made_box_intro .digital_box_intro_img,
	.service_page .all-in-one_box_intro .digital_box_intro_img {
		width: 100%;
	}
}
.service_page .custom-made_box_scroll_img {
	margin-bottom: 100px;
}
.custom-made_box_img02 {
	max-width: 1000px;
	margin: 0 auto 100px;
}
@media screen and (max-width: 768px) {
	.service_page .custom-made_box_scroll_img {
		margin-bottom: 50px;
	}
	.service_page .custom-made_box_img02 {
		overflow-x: initial;
	}
	.service_page .custom-made_box_img02 img {
		min-width: initial;
	}
}
.service_page .all-in-one_box_explain_scroll_img {
	margin-bottom: 100px;
}
.service_page .all-in-one_box_explain_scroll_img_sp {
	display: none;
}
@media screen and (max-width: 768px) {
	.service_page .all-in-one_box_explain_scroll_img {
		margin-bottom: 50px;
	}
	.service_page .all-in-one_box_explain_scroll_img_pc {
		display: none;
	}
	.service_page .all-in-one_box_explain_scroll_img_sp {
		display: block;
	}
}
.service_page .price_flow_title {
	margin-top: 100px;
}
.service_page .price_flow_text {
	margin-bottom: 20px;
}
.service_page .price_flow_box {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 50px;
	border: 5px solid #00c8ff;
}
.service_page .price_flow_box_item {
	width: 18%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-direction: column;
	position: relative;
}
.service_page .price_flow_box_item:not(:last-of-type)::before {
	content: "";
	width: 19px;
	height: 19px;
	border-top: 2px solid #00c8ff;
	border-right: 2px solid #00c8ff;
	position: absolute;
	top: 75px;
	transform: rotate(45deg);
	right: -8%;
}
/* .service_page .price_flow_box_item:first-of-type::before {
content: "1週間";
width: 100px;
position: absolute;
top: 20px;
right: -90px;
}
.service_page .price_flow_box_item:nth-of-type(2)::before {
content: "2週間〜1か月";
width: 100px;
position: absolute;
top: 20px;
right: -70px;
}
.service_page .price_flow_box_item:nth-of-type(3)::before {
content: "1週間〜2週間";
width: 100px;
position: absolute;
top: 20px;
right: -70px;
}
.service_page .price_flow_box_item:nth-of-type(4)::before {
content: "1か月";
width: 100px;
position: absolute;
top: 20px;
right: -90px;
} */
.service_page .price_flow_box_item:not(:last-of-type)::after {
	content: "";
	width: 110%;
	height: 2px;
	background-color: #00c8ff;
	position: absolute;
	top: 84px;
	left: 50%;
	/*   transform: translateY(-50%); */
	z-index: -1;
}
.service_page .price_flow_box_item > span {
	position: absolute;
	right: -16%;
	top: 10px;
}
.service_page .price_flow_box_item:nth-child(2) > span,
.service_page .price_flow_box_item:nth-child(3) > span {
	right: -31%;
}
.service_page .price_flow_box_item_icon {
	width: 50px;
	margin-bottom: 10px;
	position: relative;
}
.service_page .price_flow_box_item_num {
	width: 50px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 3rem;
	border-radius: 9999px;
	background-color: #00c8ff;
	margin-bottom: 10px;
	position: relative;
}
.service_page .price_flow_box_item h4 {
	color: #00c8ff;
	margin-bottom: 10px;
}
@media screen and (max-width: 980px) {
	.service_page .price_flow_box_item > span {
		writing-mode: vertical-rl;
		text-orientation: upright;
	}
	.service_page .price_flow_box_item:nth-child(2) > span, .service_page .price_flow_box_item:nth-child(3) > span {
		right: -16%;
		top: -47px;
	}
	/*   .service_page .price_flow_box_item:first-of-type::before {
	writing-mode: vertical-rl;
	text-orientation: upright;
	right: -20px;
}
	.service_page .price_flow_box_item:nth-of-type(2)::before {
	writing-mode: vertical-rl;
	text-orientation: upright;
	top: -40px;
	right: -20px;
}
	.service_page .price_flow_box_item:nth-of-type(3)::before {
	writing-mode: vertical-rl;
	text-orientation: upright;
	top: -40px;
	right: -20px;
}
	.service_page .price_flow_box_item:nth-of-type(4)::before {
	writing-mode: vertical-rl;
	text-orientation: upright;
	right: -20px;
} */
	.service_page
	.price_flow_box_item:not(:last-of-type)
	.price_flow_box_item_num::after {
		right: -60px;
	}
}
@media screen and (max-width: 768px) {
	.service_page .price_flow_box {
		padding: 40px 20px;
		align-items: flex-end;
		flex-direction: column;
	}
	.service_page .price_flow_box_item {
		width: 100%;
	}
	.service_page .price_flow_box_item:not(:last-of-type) {
		margin-bottom: 50px;
	}
	.service_page .price_flow_box_item:first-of-type::before,
	.service_page .price_flow_box_item:nth-of-type(2)::before,
	.service_page .price_flow_box_item:nth-of-type(3)::before,
	.service_page .price_flow_box_item:nth-of-type(4)::before {
		/*     width: 10px;
		height: 200px;
		top: 100px;
		left: -25%; */
	}
	.service_page .price_flow_box_item:not(:last-of-type)::before {
		top: initial;
		transform: rotate(135deg);
		right: initial;
		left: 14px;
		bottom: -20%;
	}
	.service_page .price_flow_box_item:not(:last-of-type)::after {
		/*     content: initial; */
		content: "";
		width: 2px;
		height: 138%;
		background-color: #00c8ff;
		position: absolute;
		top: 122%;
		left: 24px;
		transform: translateY(-50%);
		z-index: -1;
	}
	.service_page .price_flow_box_item > span {
		right: inherit;
		left: -14px;
		top: initial;
		bottom: -28%;
	}
	.service_page .price_flow_box_item:nth-child(2) > span {
		right: initial;
		top: initial;
		bottom: -41%;
	}
	.service_page .price_flow_box_item:nth-child(3) > span {
		right: initial;
		top: initial;
		bottom: -55%;
	}
	.service_page .price_flow_box_item_num {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
	}
	.service_page
	.price_flow_box_item:not(:last-of-type)
	.price_flow_box_item_num::after {
		/*     content: initial; */
	}
	.service_page .price_flow_box_item_num span {
		position: relative;
	}
	.price_flow_box_item > p {
		margin-left: 60px;
	}
	/*   .service_page
	.price_flow_box_item:not(:last-of-type)
	.price_flow_box_item_num
	span::before {
	content: "";
	width: 3px;
	height: 220px;
	background-color: #00c8ff;
	position: absolute;
	bottom: -220px;
	right: 0;
	left: 0;
	margin: auto;
}
	.service_page
	.price_flow_box_item:last-of-type
	.price_flow_box_item_num
	span::before {
	content: "";
	width: 50px;
	height: 100px;
	background-color: #fff;
	position: absolute;
	bottom: -103px;
	left: -25px;
	margin: auto;
}
	.service_page
	.price_flow_box_item:not(:last-of-type)
	.price_flow_box_item_num
	span::after {
	content: "";
	width: 15px;
	height: 15px;
	border-top: 3px solid #00c8ff;
	border-right: 3px solid #00c8ff;
	position: absolute;
	bottom: -110px;
	transform: rotate(135deg);
	right: 0;
	left: -7px;
	margin: auto;
} */
}

/* Googleフォーム */
.contact_page form {
	max-width: 900px;
	margin: 0 auto;
	padding: 40px 90px;
	background-color: #ededed;
}
.form_item label {
	margin-bottom: 5px;
	display: block;
}
.icon--must {
	margin-left: 5px;
	color: #ff0000;
}
.form_item input, .form_item textarea {
	width: 100%;
	margin-bottom: 20px;
	padding: 10px;
	border: none;
}
.contact_page input[type="radio"] {
	width: auto;
	margin-bottom: 0px;
}
.form_item.radio {
	margin-bottom: 20px;
}
.form_item.radio div {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 10px;
}
.form_item.radio div > label {
	display: inline-block;
	margin-left: 10px;
	margin-bottom: 0;
}
.form_item button {
	width: 240px;
	height: 60px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #4e4e4e;
	color: #fff;
	font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
	.contact_page form {
		padding: 30px 20px;
	}
	.contact_page input[type="radio"] {
		/* 		position: relative;
		top: 3px; */
	}
}

/* 404ページ */
.sub-main.page404 .sub-main_inner_text {
    width: 100%;
}

.sub-main.page404 .sub-main_inner_text h1 {
	font-size: 10rem;
}

.page404 .single_inner_box {
    display: block;
}

.page404 .single_inner_box p {
	text-align: center;
	margin: 0 auto 70px;
	font-size: 2rem;
}

.page404 .article_inner_button a {
	margin: 0 auto;
	width: 240px;
	display: block;
	text-align: center;
	padding: 20px 0;
	background: #00c8ff;
	color: #fff;
}

@media screen and (max-width: 768px) {
	.sub-main.page404 .sub-main_inner_text {
    padding: 40px 0;
}
	.sub-main.page404 .sub-main_inner_text h1 {
		font-size: 4rem;
	}
	.page404 .single_inner_box p {
		font-size: 1.6rem;
	}
	.page404 .article_inner_button a {
		width: 200px;
		padding: 15px 0;
	}
}

/* 静的サイト化後のアクセシビリティ・狭幅画面向け補正 */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	position: fixed !important;
	top: 8px;
	left: 8px;
	z-index: 9999;
	width: auto;
	height: auto;
	padding: 12px 16px;
	clip: auto;
	background: #fff;
	color: #222;
}

@media screen and (max-width: 768px) {
	.sub-main .sub-main_inner_text h1 {
		font-size: clamp(3rem, 16vw, 6rem);
	}
}
