/*
 Theme Name: レッドネクスト
 Theme URI:    https://understrap.com
 Description:  Understrap Child Theme
 Author:       the Understrap Contributors
 Author URI:   https://github.com/understrap/understrap-child/graphs/contributors
 Template:     understrap
 Version:      1.1.0
 License: GNU General Public License v2 or later
 License URI: http://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  understrap-child
 Tags: one-column, custom-menu, featured-images, theme-options, translation-ready
 GitHub Theme URI: understrap/understrap-child
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

:root {
	--bs-font-sans-serif: 'Noto Sans JP', sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji" !important;
}

body {font-family: 'Noto Sans JP' , sans-serif;letter-spacing: 1px;}
body a {transition: .2s;color: #333;font-weight: bold;text-decoration: none;}
body a:hover {color: #eee;}
a:hover img {opacity:.8;}
p {margin-bottom: 0;}
p + p {margin-top: 1.8em;}
body.single .entry-content p {margin-bottom:1rem;}
body.single .entry-content p + p {margin-top:0;}
i > img {height: 1em;}
section {padding: 80px 0;position: relative;}

.box {position:relative;}
dt.req::after {display: none;}
.fz-more {font-size: 1.2em;}
.hl	{background: linear-gradient(transparent 60%, #ffff66 60%);display: inline;}
.btn.wire {border-radius: 0 !important;padding: 20px 40px !important;width: 100%;max-width: 380px;font-weight: 700 !important;letter-spacing: 2px;font-size: 1.2em !important;margin: 40px auto 0;display: block !important;border: 2px solid #4aa0c5;color: #4aa0c5;}
.btn.wire:hover {background-color: #4aa0c5;color: #fff;}
.btn.wire.w-100 {max-width: 100%;}
.btn.wire.inv {color: #fff;border-color: #fff;}
.btn.wire.inv:hover {color: #4aa0c5;background: #fff;}

.navbar-toggler { position: fixed;right: 30px;padding: 5px;z-index: 999;background-color: #fff !important;}
.navbar-toggler-icon {background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");}
.btn-close {background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;filter:none !important;}
.navbar-brand a {font-family: 'Noto Sans JP',sans-serif;text-decoration: none;font-size: 1.2em;}
.navbar-nav .nav-link {font-weight: bold;}
.nav-buttons {position: fixed;left: 0;bottom: 0;width: 100%;display:flex;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);background-color: #fff;}
.nav-buttons a {padding: 10px;font-size: 1em;display:block;width:100%;}	
.navbar .h1, .navbar h1 {line-height: .5;}

.offcanvas {background-color: #eaeaea;text-align: center;}

.copyright {margin-top: 40px;background: #2d62a3;color: #fff;padding: 20px;}

header .btn {display: flex;align-items: center;justify-content: center; transition: .2s;font-weight: 700;color: #fff;border-radius: 0;height: 60px;width: 250px;font-size: 1.3em;}
header .btn i {margin-right: .5em;}
header .btn-tel {background-color: #3e3a39;}
header .btn-mail {background-color: #2d62a3;}
header .btn:hover {opacity: .8;color: #fff;}

.header-desc {
	background: #e6e6e6;
	padding: 10px 28px;
	font-size: 14px;
}

.footer-contact {
	background: #2d62a3;
	color: #fff;
	font-weight: 700;
	padding: 40px 0;
}
.footer-contact .catch{
	background: #4aa0c5;
	font-size: 1.4em;
	line-height: 1.3;
}
.footer-tel {margin: 0;padding: 40px 0 0;}
.footer-tel dt {font-size: 1.1em;}
.footer-tel a {
	color: #fff;
	font-size: 2em;
	text-decoration: none;
	font-size: 60px;
	line-height: 1;
}
.btn.btn-footer {
	position: relative;
	background: none;
	border-radius: 40px;
	border: 2px solid #fff;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0 20px 10px;
	font-weight: 700;
	font-size: 1.2em;
	letter-spacing: -1px;
	color: #fff;
}
.btn-footer i {
	width: 1.5em;
/*	filter: brightness(0) invert(0);*/
	font-size: 1.4em;
	margin: -5px 10px 0;
}
.btn.btn-footer:hover {
	background: #fff;
	color: #000;
	border-color: #000;
}
.btn.btn-footer:hover i {
	filter: brightness(0) invert(0);
}
.footer-slash .ttl-slash {
	font-size: 30px;
	padding: 20px 40px;
	line-height: 1.4;
}
.footer-slash .ttl-slash::before, .footer-slash .ttl-slash::after {
	height: 90px;
	top: 24px;
}
.site-footer {
	padding-top: 50px;
}
.list-link {
	list-style-type:none;
	display: inline-block;
	vertical-align: top;
	margin: 0;
}
.list-link li {
	margin-bottom: .5em;
}

/* top */
.mainvis {
	position:relative;
}
.mainvis .left {
	background: #4aa0c5;
}
.mainvis .main-slide img {width: 100%;}

/* sub */
.navbar-brand {padding: 0;}
.page-content .search-form .submit { width: 5em;padding: 10px;}

.table-simple {
	width: 100%;
}
.table-simple th,.table-simple td {
	padding: 15px 20px;
	border: 1px solid #ccc;
}
.table-simple th {
	background-color: #c7a58c;
	border-color: #888;
}

.ttl-slash {
	position: relative;
	padding: 1rem 1.5rem;
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
	display: inline-block;
}
.ttl-slash::before,
.ttl-slash::after {
	content: '';
	position: absolute;
	top: 1rem;
	height: 1.8rem;
}
.ttl-slash::before {border-left: solid 3px;left: 0;transform: rotate(-30deg);}
.ttl-slash::after {border-right: solid 3px;right: 0;transform: rotate(30deg);}

.ttl-img {
	margin-bottom: 40px;
}

.front-about {margin: 80px 0;}
.front-about::before {
	content: '';
	display: block;
	background: #f0f0f0;
	position: absolute;
	top: 0;bottom: 0;
	width: 70%;
}
.front-about .wrap {
	position: relative;
	padding-left: 50%;
}
.front-about .txt h4 {
	font-size: 40px;
	letter-spacing: 3px;
	line-height: 1.4;
	margin-bottom: .8em;
}
.front-about .txt p {
	font-size: 1.4em;
	letter-spacing: 3px;
}
.front-about .ttl-img {padding: 0 60px;}
.front-about .txt {
	background: #2d62a3;
	color: #fff;
	padding: 40px 60px;
}
.front-about .txt .list-check {
	font-size: 24px;
	font-weight: 700;
}

.list-check {
	list-style: none;
	padding: 0;
	margin: 1em 0;
}
.list-check li {
	position: relative;
	padding-left: 30px;
	background: transparent url('images/i_check.svg') 0 3px no-repeat;
	margin: 5px 0;;
	background-size: 1em auto;
}

.front-reason {
	background: #4aa0c5;
}
.front-reason .ttl-reason {
	text-align: center;
	margin-top: -60px;
	background: transparent url('images/front_reason_pic.png') 8% 0 no-repeat;
	padding: 60px 60px 160px;
	background-size: auto 105%;
}
.set-reason .box {
	background: #fff;
	box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.1);
	text-align: center;
	height: 100%;
	padding: 30px;
	padding-top: 140px;
}
.set-reason .box i {
	background: #f3fafb;
	position: absolute;
	top: -60px;
	left: 50%;
	transform: translateX(-50%);
	width: 180px;
	height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	font-size: 100px;
}
.set-reason.ex .col-lg-4:nth-of-type(3) .box i {font-size: 120px;}
.set-reason .box .ttl {
	color: #2d62a3;
	font-weight: 700;
	margin-bottom: .8em;
}

.service-caption {
	color: #2d62a3;
	background: #fef4e0;
	text-align: center;
	max-width: 800px;
	width: 90%;
	padding: 20px;
	padding-top: 50px;
	margin: 40px auto;
	font-weight: 600;
	position: relative;
	margin-top: 180px;
}
.service-caption img {
	position: absolute;
	top: -140px;
	width: 50%;
	transform: translateX(-50%);
}
.service-link {
	max-width: 800px;
	width: 90%;
	margin: 0 auto;
}


.list-work {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	padding: 0;margin: 0;
	list-style: none;
	gap:40px
}
.list-work img {
	object-fit: cover;
	aspect-ratio: 1;
	width: 100%;height: auto;
}
.list-work .sub {margin: 20px 0;}

.set-voice {
	padding: 0;
	list-style: none;
	gap:50px
}
.set-voice .box {
	border: 1px solid #333;
	text-align: center;
	font-weight: 700;
	padding: 40px;
	padding-top: 100px;
	margin-top: 50px;
}
.set-voice .pic {
	position: absolute;
	background: #fff;
	padding: 10px 20px;
	left: 50%;top: -70px;
	transform: translateX(-50%);
}

.dl-qa {margin: 0;}
.dl-qa dt,.dl-qa dd {
	margin: 0;
	padding: 36px 30px 36px 120px;
}
.dl-qa dt {background: #f3fafb url('images/faq_q.png') 40px 15px no-repeat;}
.dl-qa dd {background: #fff url('images/faq_a.png') 40px 15px no-repeat;}

.front-area {
	background: #f3fafb;
	padding: 40px 0;
}
.front-area .ttl {
	font-size: 24px;
	line-height: 1.4;
	margin-bottom: 1em;
	font-weight: 800;
	letter-spacing: 2px;
}
.front-area p {
	font-weight: 700;
}

.list-news {
	margin: 0 auto;padding: 0;
	list-style: none;
	max-width: 800px;
}
.list-news li {
	padding: 20px;
	display: grid;
	grid-template-columns: 9em 1fr;
}
.list-news a {color: #333;text-decoration: none;font-weight: 400;}

.set-company {
	gap:30px;
	margin-bottom: 50px;
	background: #f3fafb;
}
.set-company .txt {
	padding-right: 30px;
}


/* archive */
.entry-meta, .entry-meta .updated,.entry-meta .byline {display: none;}
.npcatch {list-style: none;padding-left: 0;}
#npcatch figure {margin-bottom: 0;}
.npcatch .date {font-size: .8em;}
.widget-area .widget + .widget {border-top: 1px solid #333;padding-top: 30px;margin-top: 30px;}
body.archive .page-header .page-title {font-size: 0;}
article + article {margin-top: 20px;padding-top: 40px;border-top: 1px solid #333;}
.understrap-read-more-link {float: right;padding: 5px;max-width: 300px;}
article::after {clear: both;display: block;content: '';}
.site-main {margin-bottom: 40px;}
.wp-block-search__button {padding: 8px;width: 5em;background-color: #f74444;border-color: #f74444;}
.wp-block-search__button:hover {border-color: #f74444;background-color: transparent;color: #f74444;}

body:not(.archive) .entry-title,body.archive .page-header .page-title span {color: #2d62a3;font-weight: 900;font-size: 40px;margin-bottom: 1em;	padding: 20px 20px 30px;letter-spacing: 4px;border-bottom: 10px solid #f0f0f0;}
body:not(.archive) .entry-title:first-letter,body.archive .page-header .page-title span:first-letter {color: #000;}
body.archive .page-header .page-title span {display: block;}
body.page .entry-title {text-align: center;}
.post-navigation {margin-top: 40px;border-top: 1px solid #333;padding-top: 20px;}

/* sub */
.ttl-txt {
	color: #2d62a3;
	font-weight: 700;
	letter-spacing: 5px;
	margin-bottom: 1.5em;
}
.ttl-txt .sub{
	display: block;
	letter-spacing: 1px;
	font-size: .8em;
	margin-top: .3em;
	font-weight: 400;
	color: #000;
}
* + .ttl-txt {
	margin-top: 3em;
}

.table-col2 {
	margin: 0 auto;
	width: 100%;
}
.table-col2 th, .table-col2 td {
	padding: 15px;
}
.table-col2 tr:nth-of-type(2n - 1) {
	background: #f3fafb;
}
.company-map {
	display: block;
	margin: 50px auto;
/*	max-width: 790px;*/
	width: 100%;
}

.list-word {
  list-style: none;
  margin: 0 auto;
	padding: 0;
}
.list-word li {
  display: inline-block;
  line-height: 1.+;
}
.list-word li:not(:last-child)::after{
  content: '/';
  margin: 0 10px;
}
.list-word li.pref {
	display: block;
	font-weight: 700;
}
.list-word li:has(+ .pref)::after, .list-word li.pref::after {content: none;}
.set-area {
	background: #f3fafb;
	padding: 60px;
}
.list-word li:has(+ .pref) {margin-bottom: 1em;}
#post-20 .table-col2 th {white-space: nowrap}

.set-service .col-lg-4 {padding-bottom: 40px;}
.set-service .box {
	height: 100%;
	padding: 0 30px 30px;
	border: 5px solid #4aa0c5;
}
.set-service .box .ttl {
	background: #4aa0c5;
	color: #fff;
	margin: 0 -30px 20px;
	padding: 15px 10px;
	font-weight: 700;
	text-align: center;
	font-size: 24px;
}
.set-service .box p {
	margin: 1.5em 0;
}
.set-service .box .ex {
	background: #f0f0f0;
	padding: 10px;
	font-size: .9em;
	position: relative;
}
.set-service .box .ex::before {
	content: '\304A\53D6\308A\6271\3044\30E1\30FC\30AB\30FC';
	display: block;
	font-weight: bold;
	margin-bottom: .3em;
}

.service-price {
	position: relative;
	text-align: center;
}
.service-price::before {
	content: '';
	display: block;
	background: #4aa0c5;
	width: 100vw;
	position: absolute;
	z-index: -1;
	top: 0;bottom: 0;
	left: 50%;transform: translateX(-50%);
}
.plus {
	margin: 0 auto 40px;
	list-style: none;
	padding: 0;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
}
.plus .box {
	counter-increment: num;
	background: #fff;
	box-shadow: 10px 10px 10px rgba(0, 0, 0, 0.05);
	color: #2d62a3;  
	aspect-ratio:1;
	display: grid;
	place-content: center;
	width: 8em;
	font-weight: 700;
	letter-spacing: 2px;
	font-size: 1.2em;
}
.plus .box::before {
	content: counter(num);
	position: absolute;
	opacity: .1;
	font-size: 90px;
	inset:0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-bottom: 15px;
}
.plus .pls {
	font-size: 2em;
	margin: .5em;
	font-weight: 700;
}
.service-price .fz-more {
	font-weight: 700;
	font-size: 1.4em;
	color: #fff;
}
.service-price .wrap {
	position: relative;
	border: 3px solid  #fff;
	max-width: 810px;
	margin: 90px auto 0;
	padding: 60px 20px 30px;
	border-radius: 5px;
}
.service-price i {
	background: #4aa0c5;
	display: block;
	position: absolute;
	top: -50px;
	left: 50%;
	translate: -50% 0;
	width: 123px;
}
.service-price i img {height: 90px;}
.service-price .fz-more .price {
	font-size: 1.2em;
	display: block;
	margin: 5px auto -10px;
}
.service-price .fz-more .price .num {
	color: #fff57c;
	font-size: 1.4em;
}
.service-price .fz-more + p {
	margin-bottom: -10px;
}

.service-flow {
	position: relative;
	padding-top: 150px;
}
.service-flow::before {
	content: '';
	display: block;
	background: #f0f0f0;
	position: absolute;
	top: 80px;
	right: 0;
	width: 40%;
	aspect-ratio: 1/1;
	height: auto;
	z-index: -1;
}

.list-flow {
	padding: 0;
	margin: 0;
	width: 95%;
}
.list-flow li {
	position: relative;
	margin-top: 40px;
	background: #fff;
	padding: 30px;
	list-style: none;
	counter-increment: num;
	box-shadow: 5px 5px 10px 10px rgba(0, 0, 0, 0.05);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
}
.list-flow li + li::after {
	content: '\25BC';
	display: block;
	position: absolute;
	top: -80px;
	left: 50%;
	transform: translateX(-50%) scaleY(.4);
	color: #fff;
	font-size: 60px;
}
.list-flow .ttl::before {
	content: counter(num);
	font-size: 40px;
	font-weight: 900;
	line-height: 1;
	color: #2d62a3;
	margin-right: .5em;
	
}
.list-flow .ttl {
	width: 100%;
	letter-spacing: 1px;
	padding: 5px 15px 15px;
}
.list-flow .pic {width: 40%;}
.list-flow .txt{
	padding: 20px;
	position: relative;
	width: 60%;
}

.list-flow .set-btn {
	gap:30px;
}
.list-flow .set-btn .btn {
	padding: 15px;
	background: #4aa0c5;
	border: 2px solid #4aa0c5;
	color: #fff;
	font-size: 1.2em;
	border-radius: 0;
	transition: .2s;
	display: block;
	margin-top: 15px;
}
.list-flow .set-btn .btn i {
	margin-right: .5em;
}
.list-flow .set-btn .btn:hover {
	opacity: .8;
}
.set-reason-title {
	display: grid;
	grid-template-columns: 3fr 1fr;
	align-items: center;
	gap:30px;
	padding: 0 50px;
	color: #000;
	background: #f0f0f0;
	border: 10px solid #4aa0c5;
	position: relative;
}
.set-reason-title::before {
	content: '';
	display: block;
	background: #fff;
	opacity: .5;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 34%;
	height: auto;
	z-index: 1;
}
.set-reason-title .ttl {
	font-weight: 900;
	line-height: 1.6;
	position: relative;
	z-index: 1;
}
.set-reason-title .pic {padding-top: 30px;}

.set-reason.ex {
	margin-bottom: 100px;
}
.set-reason.ex .box {
	margin-top: 30px;
	border: 1px solid #f0f0f0;
	text-align: left;
	padding: 30px;
	padding-left: 240px;
	min-height: 240px;
}
.set-reason.ex i {
	position: absolute;
	top: auto;
	left: 30px;
	transform: translateX(0);
	background: none;
}
.set-reason.ex p {margin-bottom: 0;}
.set-voice.ex {
	margin-top: 40px;
}
.ttl-obi {
	background: #2d62a3;
	padding: 20px;
	color: #fff;
	text-align: center;
	margin-bottom: 1.5em;
}
.set-voice.ex {}
.set-voice.ex .box {
	border: 5px double #2d62a3;
	position: relative;
}
.set-voice.ex .box::after {
	content: '';
	background: #f3fafb;
	position: absolute;
	left: 10px;top: 10px;
	bottom: -15px;right: -15px;
	z-index: -1;
}
.set-voice.ex .pic {
	overflow: hidden;
	border-radius: 50%;
}

.dl-contact dt:not([class]) label::before {content: '\4EFB\610F';color: #fff;background: #ccc;font-weight: 400;font-size: .8em;padding: 2px 5px;margin-right: 8px;}
.req label::before {content: '\5FC5\9808';color: #fff;background: #4aa0c5;font-weight: 400;font-size: .8em;padding: 2px 5px;margin-right: 8px;}

.box-contact-btn input[type=submit].btn-submit {
	background: #2d62a3;
	color: #fff;
	border-radius: 0;
	border: 2px solid #2d62a3;
	padding: 15px;
	font-size: 1.1em;
	letter-spacing: 3px;
}
.box-contact-btn input[type=submit].btn-submit:hover {
	background: #fff;
	color: #2d62a3;
	border-color: #2d62a3;
}
.wrap-policy {
	max-width: 870px;
	margin: 0 auto;
}
.wrap-policy h3 {
	margin: 50px 0 .6em;
	color: #000;
}
.set-map {
	padding: 30px;
	max-width: 600px;
	margin: 0 auto;
	background: #f8f8f8;
}
.set-map .list-link {
	width: 100%;
	padding: 0;
}
.set-map li {margin: 0;}
.set-map a {
	display: block;
	text-align: center;
	padding: 15px;
}
.set-map a:hover {color: #4aa0c5;}

/* PC↑ */
@media (min-width: 992px) {
/* 	a[href^='tel'] {pointer-events: none;} */
	.navbar {padding: 30px;}
  .half {display: grid;grid-template-columns: 1fr 1fr;}
	
	.navbar {padding-top: 0 !important;padding-bottom: 0 !important;padding-right: 0;}
	.navbar>.container-fluid {padding-right: 0;}
	
	
	.mainvis .left {display: flex}
	.mainvis .right {width: 50vw;}
	.front-about .pic {position: absolute;left: 0;top: 50px;bottom: 50px;right: 50%;}
	.front-about .pic img {width: 100%;height: 100%;object-fit: cover;}
	.front-area .txt {padding-left: 40px;}
	.btn.btn-footer {justify-self: flex-end;margin-top: 50px;}
	
	.footer-nav {text-align: right;}
	.list-link {text-align: left;width: 220px;}
	
	.table-col2 th,.table-col2 td {padding: 20px;}
	.table-col2 th {padding-left: 60px;}
	.table-col2 td {padding-right: 90px;}
	#post-20 .table-col2 th {min-width: 260px;}
	.set-area {display: flex;}
	.set-area .wrap-ttl {min-width: 400px;margin-right: 30px;}

	.set-service .box {padding-bottom: 7em;}
	.set-service .box .ex {position: absolute;left: 20px;bottom: 20px;right: 20px;}
	.set-service .box .ttl {height: 88px;display: grid;place-content: center;}
	
	.set-reason.ex + .ttl-obi {margin-top: 150px;}
	.entry-content .wpcf7 {max-width: 800px;}
	.dl-contact {display: grid;grid-template-columns: 12em 1fr;}
	.dl-contact dt,.dl-contact dd {padding: 16px 5px;border-top: 1px solid #eee;margin: 0;}
	.dl-contact p {margin-bottom: 0 !important;}
	.post-24 .dl-qa dd {margin-bottom: 50px;}
	.set-news {justify-content: space-between}
	.set-news .pic img {width: 300px;}
}
@media (min-width: 992px) and (max-width: 1199.8px){
	header .btn {
		border-radius: 50px;
		width: 60px;
		display: inline-flex;
	}
	header .btn i {margin-right: 0;}
	.header-tel {margin-right: 80px;padding: 20px;}
}

/* tablet↓ */
@media (max-width: 991.8px) {
	.nav-buttons {position: fixed;left: 0;bottom: 0;width: 100%;display:flex;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);background-color: #fff;}
	.nav-buttons a {padding: 10px;font-size: 1em;display:block;width:100%;}	
	.half {grid-template-columns: 1fr;}
	.site-header-container {padding-left: 50px;}
	.site-footer-copyright {padding-bottom: 70px;}
	header .btn {width: 100%;}
	.copyright {margin-bottom: 80px;}
	.mainvis .left {text-align: center !important;}
	.mainvis .right > img {width: 100%;max-height: 500px;object-fit: cover;}
	.front-about .wrap {padding-left: 0;}
	.front-about .pic {text-align: right;padding-left: 20%;}
	.front-about .txt {text-align: center;}
	.front-about .txt .list-check {text-align: left;display: inline-block;}
	.front-about::before {bottom: auto;height: 70vw;}
	.front-about {padding-bottom: 0;margin-bottom: 0;}
	.front-about .txt h4 {font-size: 30px;}
	.front-reason .ttl-reason {padding-bottom: 90px;}
	.front-reason .set-reason {margin-top: -10px !important;margin-bottom: -80px !important;}
	.set-reason .col-lg-4 {margin-bottom: 80px;}
	.set-voice .pic img{width: 80px;}
	.set-voice .pic {top: -40px;}
	.set-voice .box {padding-top: 80px;}
	.front-area .pic {text-align: center;margin-bottom: 40px;}
	.footer-tel {text-align: center;margin-bottom: 30px;}
	.footer-nav {margin-top: 50px;}
	.list-link {padding: 0;display: block;text-align: center;}
	.list-flow .pic, .list-flow .txt {width: 100%;}
	.list-flow .pic {max-width: 80%;margin: 0 auto;}
	.list-flow .txt {padding: 20px 0 0;}
	.service-flow::before {width: 70%;}
	.set-reason-title {grid-template-columns: 1fr;padding: 0 20px;}
	.set-reason-title .ttl {padding-top: 20px;}
	.set-reason-title .pic {position: relative;z-index: 1;text-align: right;padding-left: 60%;padding-top: 0;}
	.set-area .pic {margin-bottom: 30px;}
	.set-news .pic img {max-width: 300px;display: block;margin: 50px auto 0;width: 50%;}
	.set-company .txt {padding: 20px;}
	.plus .pls {margin: 10px;font-size: 1.2em;}
}

/* ExtraLarge */
@media (min-width: 1200px) {
	.navbar-light .navbar-nav .nav-link {text-align: left;padding: 20px 10px !important;display: flex;align-items: flex-start;;justify-content: center;flex-direction: column;height: 120px;min-width: 100px;letter-spacing: 1px;}
	.navbar-light .navbar-nav .nav-link::after {content: attr(data-desc);font-size: .8em;letter-spacing: 0;}
	.navbar-light .navbar-nav .nav-link:hover {background: #2d62a3;color: #fff !important;}
	.navbar-expand-xl .offcanvas {margin-left: auto;}
	.front-about {margin: 120px 0;}
	.set-reason .box .ttl {font-size: 42px;}
	.list-work {gap:80px}
	.btn.btn-footer {padding: 25px 30px 25px 30px;letter-spacing: 2px;border-radius: 50px;font-size: 20px;}
	body:not(.archive) .entry-title,body.archive .page-header .page-title span {padding: 40px 40px 50px;}
	.set-reason-title {margin-bottom: 60px;}
}
@media (min-width: 1400px) {
	.btn.btn-footer {padding: 25px 50px 25px 50px;}
}

/* mobile */
@media (max-width: 575.8px) {
	body {font-size: 16px;}
	section {padding:40px 0;}
	.slick-slider {overflow: hidden;}
	
	.table-simple.sp-col tr,.table-simple.sp-col th,.table-simple.sp-col td {display: block;width: 100%;}
	.table-simple.sp-col th {border-bottom: none;font-size: .9em;padding: 9px 20px;}
	.table-simple.sp-col td {border-top: none;}
	.front-about .txt {padding: 20px;}
	.ttl-slash {font-size: 1.3em;}
	.ttl-slash::before,.ttl-slash::after {height: 2.5em;}
	.front-about .txt h4 {font-size: 24px;}
	.front-about .txt p {font-size: 1em;}
	.set-reason .box i {width: 80px;height: 80px;font-size: 50px !important;}
	.front-reason .set-reason .box i {top: -20px;}
	.set-reason .box {padding-top: 80px;}
	.front-reason .ttl-reason {padding-bottom: 40px;}
	.front-reason .set-reason .col-lg-4 {margin-bottom: 40px;}
	.front-reason .set-reason {margin-bottom: -40px !important;}
	.set-reason.ex .box i {left: 20px;}
	.set-reason.ex .box i img {height: 50px !important;}
	.set-reason.ex .box {padding-left: 120px;}
	.list-work {grid-template-columns: 1fr}
	.dl-qa dt, .dl-qa dd {padding: 20px 10px 20px 80px;background-position: 15px;background-size: 50px}
	.front-area .ttl {font-size: 18px;}
	.list-news li {grid-template-columns: 1fr;}
	.footer-slash {padding: 0 20px;}
	.footer-slash .ttl-slash {font-size: 18px;padding: 10px 15px;}
	.footer-slash .ttl-slash::before, .footer-slash .ttl-slash::after {height: 60px;top: 10px;}
	.footer-contact .catch {font-size: 1.1em;}
	.footer-tel a {font-size: 40px;}
	.btn.btn-footer {font-size: 14px;}
	body:not(.archive) .entry-title, body.archive .page-header .page-title span {font-size: 30px;}
	.set-area {padding: 30px;}
	.table-col2 {font-size: .9em;}
	.service-caption {margin-top: 60px;}
	.service-caption img {top: -40px;width: 160px;}
	.ttl-img img{height: 60px;}
	.plus {flex-direction: column;}
	.plus .box {aspect-ratio:auto;padding: 30px 15px;width: 10em;}
	.service-price .fz-more .price {font-size: 1em;}
}
