@charset "utf-8";
/*!
Theme Name: pc-will
Version: 0.0.1
*/

/* Don't overwrite this file. Compile "/assets/main.scss" to "/assets/dist/main.css" */
/* From http://codex.wordpress.org/CSS */

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;400;500;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

html { overflow-x: hidden; }
body { 
	-webkit-text-size-adjust: 100%;
	font-family: "M PLUS 1p", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin: 0;
	overflow: hidden;
	color: #333;
}
body.home { 
/*	width: 100%;
	background-image: url(image/main_bg.jpg);
	background-attachment: fixed;
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat; */
    width: 100%;
    position: relative;
}

.video-bg { 
    width: 100%;
	height: 100%;
	position: fixed;
    top: 0;
    left: 0;
	background: rgb(9, 15, 24, .7);
	z-index: -2;
}

body.home video {
    width: 100%;
	height: 100%;
	position: fixed;
    top: 0;
    left: 0;
    object-fit: cover;
	z-index: -3;
}

body { 
	width: 100%;
	background-image: url(image/header_bg.jpg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: contain;
}

h1,h2,h3,h4,h5,h6 { margin-bottom: 0!important; }
#main { margin-top: 0; }
#single .container,#page .container { max-width: 1200px!important; }
img { user-drag: none; -webkit-user-drag: none; -moz-user-select: none; }
.container { max-width: 1320px!important; }
.container-full { width: 100vw; position: relative; left: 50%; transform: translateX(-50%); }
.container.single-wrap,.container.archive-wrap { background: #fff; padding: 60px; margin-top: 0; min-height: 50vh; }
.row { margin-left: 0; margin-right: 0; }


.single-wrap h2,.single-wrap h3,.single-wrap h4,.single-wrap h5,.single-wrap h6 { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-style: normal; font-weight: 400; }
.single-wrap h2 { font-weight: 500; position: relative; display: inline-block; margin-bottom: 10px!important; }
.single-wrap h2::before {
  content: '';
  position: absolute;
  bottom: -5px;
  width: 6.0rem;
  height: 2px;
  background-color: #212F45;
}
.single-wrap h3 { background: #212F45; color:#fff; margin-bottom: 10px!important; display: inline-block; padding: 7px 30px; }
.single-wrap h4 { margin-bottom: 8px!important; border-bottom: 2px dashed #212F45; display: inline-block; padding: 8px 20px; }
.single-wrap h5 { margin-bottom: 8px!important; border-bottom: 1px solid #212F45; padding-bottom: 6px; }
.single-wrap h5::before { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#036EB8; margin-right: 0.5rem; }
.single-wrap h6 { margin-bottom: 8px!important; border-left: 4px solid #212F45; border-right: 4px solid #212F45; padding: 6px; display: inline-block; }
.post-date { background: #212f45; color: #fff; border-radius: 25px; padding: 4px 16px; display: inline-block; margin-bottom: 20px; }
.post-date::before { content: '\f133'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-right: 6px; }

/* 共通パーツ */
.topBtn {
		opacity: 0;
		position: fixed;
		bottom: 50px;
		left: 0;
		background: #045eb8;
		color: #fff;
		font-weight: 500;
		padding: 1.8rem;
		z-index: 9999;
}
.topBtn:hover { padding: 1.8rem 1.8rem 1.8rem 2.8rem; transition: 0.8s; }
.font300 { font-weight: 300; }
.font400 { font-weight: 400; }
.font500 { font-weight: 500; }
.font700 { font-weight: 700; }
.fontS { font-size: 75% !important; }
.noto { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 400; font-style: normal; }
.fs-6 { font-size: 0.8rem!important; }
.mt-5 { margin-top: 3.0rem; }
.mt-10 { margin-top: 5.0rem; }
.bold { font-weight: 700!important; }
.icon i { margin-right: 4px; }
.w100 { width: 100%; }
.w290 { min-width: 290px; }
.h100 { height: 100%; }
.no-wrap { white-space: nowrap; }
.download-bt a { display: inline-block; color: #fff; background: #dc143c; padding:1.0rem 3.0rem; border-radius: 6px; }
.download-bt a:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.gyou-1 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; overflow: hidden; }
.gyou-2 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }
.gyou-3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }
.bg-00 { background: #fff; }
.bg-01 { background: #f5f5f5; }
.bg-02 { background: #2e8b57; }
.bg-03 { background: #212f45; }
.bg-04 { background: #dce4ee; }
.bg-05 { background: #bee0ce; }
.bg-06 { background: #bccf54; }
.bg-07 { background: #1e90ff; }
.bg-08 { background: #000; }
.bg-09 { background: #fff5f5; }
.mt-8 { margin-top:3.0rem!important; }
.text-wrap-01 { font-size: 0.9rem; padding: 0.3rem; }
.text-vwrap { line-height: 2.0rem; }
.text-space { letter-spacing: 0.5rem; }
.text-stroke {
 text-shadow:
       2px  2px 1px #fff,
      -2px  2px 1px #fff,
       2px -2px 1px #fff,
      -2px -2px 1px #fff,
       2px  0px 1px #fff,
       0px  2px 1px #fff,
      -2px  0px 1px #fff,
       0px -2px 1px #fff; 
}
.red { color: #dc143c; }
.green { color: #5A7800; }
.white { color: #fff; }
.blue { color: #036EB8; }
.black { color: #333; }
.orange { color: #ff6347; }
.img100 { width:100%; height: auto; }
.over-img { overflow: hidden; }
.over-img img { height: 100%; width: 100%; object-fit: cover; }
.v-center { display:flex; align-items:center; }
.vh-center { display:flex; align-items:center; justify-content:center; }
.v-top { vertical-align: top; }
.v-bottom { vertical-align: bottom; }
.full-width { margin: 0 calc(50% - 50vw); }
.zoom-over:hover { transform:scale(1.1,1.1); transition:1s all; }
.shadow { box-shadow: 0 .15rem .5rem rgba(0, 0, 0, .5) !important; }
.t-shadow { text-shadow: 2px 2px #cce9ff; }
.blur{
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
}
.border-a { border-left: 6px solid #d8d8d8; padding-left:0.6rem; }
.border-b { border-left: 6px solid #036EB8; padding-left:0.6rem; }
.nowrap { white-space: nowrap; }
.not-found { padding: 22% 0; }
.not-found p:first-of-type { font-size: 2.1rem; }
.not-found a { background: #0d6efd; color: #fff; padding: 10px 40px; border-radius: 10px; }
a.pdf:before { content: '\f1c1'; font-family: 'Font Awesome 6 Free'; font-weight: 900; padding-right: 6px; } 
.over-text { overflow: hidden; white-space: nowrap; width: 100%; text-overflow: ellipsis; }
.not-page { min-height: 60vh!important; }
.zoom-img { position: relative; }
.zoom-img::after { position: absolute; content: '\f00e'; font-family: 'Font Awesome 6 Free'; font-weight: 900; color: rgb(255, 255, 255, 0.5); bottom: 4px; left: 8px; }

.link-bt { position:relative; display: inline-block; background: #036EB8; color:#fff; border: 1.5px solid #036EB8; border-radius: 6px; text-align: center; padding: 0.6rem 2.4rem 0.6rem 0.6rem; }
.link-bt:after { position: absolute; right: 0.8rem; top: 50%; transform: translateY(-50%); font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:rgba(255, 255, 255, .5); font-size: 1.2rem; }
.link-bt:hover { background: #fff; color: #036EB8; transition: 0.8s; }
.link-bt:hover:after { color: #036EB8; transition: 0.8s; }

.link-bt-nb { display: inline-block; color:#333; }
.link-bt-nb:after { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#036EB8; margin-left:0.5rem; }
.link-bt-nb:hover { color: #036EB8; }


/* パンくずリスト */
.breadcrumbs { margin-bottom: 0; }
.breadcrumbs-wrap { background: #fff; padding-top: 15px; }
.breadcrumbs-home { margin-right: 0.6rem; }
ul.breadcrumbs { display: flex; flex-wrap: wrap; list-style: none; padding:0; }
ul.breadcrumbs li:not(:last-child)::after { content: "＞"; margin: 0 .6em; }
ul.breadcrumbs li a { color: #036EB8; }

/* ページネーション */
.pagination { display: flex; justify-content: center; margin-top:60px; }
.page-numbers { font-size: 1.3rem; }
a.page-numbers,.page-numbers.current {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 36px;
		height: 36px;
		border-radius: 50%;
		background-color: #045eb8;
		color: #fff;
		text-align: center;
		font-size: 15px;
		font-weight: bold;
}
.page-numbers.current { background: #d8d8d8; color: #333; }

/* ポストナビゲーション */
.container .post-navigation { padding-bottom: 20px; }
.post-navigation a { font-size: 1.6rem; background: #036EB8; color:#fff; border: 2px solid #036EB8; padding: 0 1.2rem; border-radius: 6px; }
.post-navigation a:hover { background: #fff; color:#036EB8; border: 2px solid #036EB8; transition: 0.4s; }


/* ヘッダーナビ */
.navbar { position: absolute; width: 100%; top: 0; padding: 0; }
.navbar-bt-top,.navbar-bt { position: absolute; right:19px; top:20px; z-index:99; }
.navbar-toggler {
		position: relative;
		width: 70px;
		height: 70px;
		background: #045eb8;
		border-radius: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		border: 4px solid #fff;
}
.navbar-toggler:focus { outline: none; }
.navbar-toggler .navbar-toggler-icon {
		width: 40px;
		background-image: url('data:image/svg+xml;charset=UTF8,<svg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path stroke="rgba(255, 255, 255, 1)" stroke-width="2" stroke-linecap="round" d="M4 7h22M4 15h22M4 23h22"/></svg>');
}
.navbar-toggler.active .navbar-toggler-icon {
  background-image: url('data:image/svg+xml;charset=UTF8,<svg viewBox="0 0 30 30" xmlns="http://www.w3.org/2000/svg"><path stroke="rgba(255, 255, 255, 1)" stroke-width="2" stroke-linecap="round" d="M7 7l16 16M7 23L23 7"/></svg>');
}
.btn-close { font-size: 1.8rem; margin-top:20px; }
.offcanvas-header { margin-top: 16px; }
.offcanvas { background: #053150; }
.offcanvas-body::-webkit-scrollbar { display:none; }
.offcanvas-body { scrollbar-width: none; -ms-overflow-style: none; }
.offcanvas-body li,.offcanvas-body a { color: #fff; font-size: 1.25rem; padding: 0.35rem 0; }
.offcanvas-body a:hover { padding-left: 8px; border-bottom :1px solid #fff; transition: 0.8s; }
.offcanvas-backdrop { height: 100%; }

/* ヘッダ */
.hero-wrap { position: relative; height: 100vh; }
.container { position: relative; height: 100%; }
.header-logo-wrap { position: absolute; left: 30px; top: 30px;}
.header-logo-wrap h1 { line-height: 1.0rem; }

.hero-catch { position:absolute; bottom: 10%; }
.main-catch { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight:700; color :#fff; font-size: 3.5em; line-height: 1.25em; text-shadow: 5px 5px 0px rgba(33, 47, 69, 1); }
.sub-catch { font-family: "Noto Sans JP", sans-serif; font-optical-sizing: auto; font-weight: 600; font-style: normal; color: #fff; font-size: 1.8rem; letter-spacing: 0.2rem; text-shadow: 2px 3px 3px rgba(0, 0, 0, 0.4); }
.recruit-bt { position: absolute; bottom: 30px; right: 16px; }
.recruit-bt a { border: 1.5px solid #fff; padding: 10px 60px; color: #fff; border-radius: 25px; }
.recruit-bt a:hover { background: #212f45; transition: 0.8s; }

/* フロント info */
#info-front { padding: 40px 0; background: rgba(255, 255, 255, 0.2); backdrop-filter: blur(10px); color: #fff; }
.info-front-heading h2 { font-size: 2.75rem; }
.info-wrap { padding: 0px 100px; }
.info-link-bt { color: #fff; }
.info-link-bt:after { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#fff; margin-left:0.3rem; }
.info-link-bt:hover { padding-left: 10px; transition: 0.6s; }
.info-thumb { aspect-ratio: 3/2 ;}
.info-thumb img { object-fit: cover; width: 100%; height: 100%; }
.info-item { margin-bottom: 2.0rem; }
.info-date { border-bottom: 1px solid #fff; padding-bottom: 0.8rem; }
.info-title { padding-top: 0.8rem; display: inline-block; }
.info-item a { color: #fff; }
.info-title a:hover { color: #036EB8; }
.info-title:hover { padding-left: 20px; transition: 0.6s; }
.info-empty { text-align: center; padding: 15% 0; }


/* フロント service */
#service-front { padding: 40px 0; background: #fff; }
.service-body-wrap { padding: 20px; }
.service-body-info { margin-top: 20px; }
.service-front-heading p:first-child { font-weight: 500; font-size: 1.3rem; color: #fff; text-align: center; }
.service-front-heading p { color: #fff; }
.service-front-heading h2 { font-size: 2.75rem; }
.service-img-wrap { aspect-ratio: 3/2 ;}
.service-img-wrap img { object-fit: cover; width: 100%; height: 100%; }
.service-link { width: 50%; text-align: center; padding: 15px 10px ; }
.service-link a { width:100%; display: inline-block; color: #212F45; padding-right:30px; }
.service-link a:hover { padding-right: 0px; transition: 0.8s; }
.service-link-bt { position: relative; }
.service-link span { position: absolute;  right:0 ; }
.service-link-wrap-1 { border-top: 1px dashed #333; margin-top: 40px; }
.service-link-wrap-2 { border-top: 1px dashed #333; border-bottom: 1px dashed #333; }


/* フロント factory & diy partner */
#factory-front { padding: 200px 0 0 0; background: rgba(33, 47, 69, 0.3); }
.factory-front-heading h2 { font-size: 2.75rem; color: #fff; }
.factory-front { background: #212F45 }
.factory-front-inner { padding: 40px 0; color: #fff; }
.factory-select-inner { height: 100%; background: #162133; }
.factory-img-wrap { aspect-ratio: 3/2 ; padding-right: 20px; }
.factory-img-wrap img { object-fit: cover; width: 100%; height: 100%; }
.factory-body-inner h3 { font-size: 1.35rem; padding: 10px 0; }
.factory-body-inner { padding: 20px; }
a.factory-link {  display: inline-block; border-left: 1px solid #fff; border-right: 1px solid #fff; color: #fff; padding: 8px 0; text-align: center; width: 100%; }
a.factory-link:hover { background: rgba(0, 0, 0, 0.4); transition: 0.8s; }

/* フロント contact */
#contact-front { padding: 60px 0; background: rgba(33, 47, 69, 0.3); }
.contact-front-heading h2 { font-size: 2.75rem; color: #fff; text-align: center; }
.contact-front-heading p { text-align: center; color: #fff; }
.contact-front-info { color: #fff; text-align: center; padding: 60px 0; }
.contact-front-link a { text-align: center; color: #fff; height: 100%; width: 100%; border: 1px solid #fff; padding: 20px; display: inline-block; }
.contact-front-link a:hover { background: #212f45; transition: 0.8s; }


/* 固定ページヘッダー&見出し */
.page-head-wrap {
	width: 100%;
	height: 350px;
/*	background-image: url(image/header_bg.jpg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover; */
}
.page-head-title { height: 350px; display: flex; justify-content: start; align-items: center; padding: 40px 0 0 100px; }
.page-head-wrap h1 {
	position: relative;
	display: inline-block;
	font-size: 2.5rem;
	font-weight: 500;
	color: #fff;
	letter-spacing: 0.25rem;
}
.page-head-wrap .single-title h1 { font-size: 1.8rem; }

.catimg-wrap { text-align: center; }
.catimg-wrap img { max-width: 600px; }

.content-page .title-wrap h3{ border-bottom: 3px solid #036EB8; padding: 0 0 0.5rem 0; margin:0; }
.content-page .title-sub { font-size: 1.6rem; font-weight: 700; color: #ff6347; font-style: italic; }
.content-page .title-body { background: #036EB8; padding: 2.0rem; color: #fff; }

/* 投稿ページ */
.custom-block:not(:first-child) { margin-top: 1.5rem; }
.post-img {
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #000;
}

/* 会社概要ページ */
.company-profile table { width: 100%; border: 1px solid #212F45;}
.company-profile tr { border-bottom: 1px solid #212F45; }
.company-profile th { font-weight: normal; min-width: 8rem; padding: 8px; background: rgb(33, 47, 69, 0.1); }
.company-profile td { padding: 8px; }
.company-profile td p { margin-bottom: 0; background: #212F45; color: #fff; padding: 4px 12px; display: inline-block; border-radius: 25px; }
.company-profile td p:not(:first-child) { margin-top: 15px; }
.gmap { width: 100%; aspect-ratio: 2/1; position: relative; margin-top: 1.0rem; }
.gmap iframe { width: 100%; height: 100%; border-radius: 10px; } 
.gmap p { position: absolute; top: 0; right: 0; background: #212F45; color: #fff; padding: 6px 16px; border-radius: 0 10px 0 10px;}

/* 法人・個人サービスページ */
.section { padding: 40px 0; }
.page-contact { padding: 0 15px 60px 15px; background: rgba(33, 47, 69, 1); border-radius: 10px; }
.page-contact p { text-align: center; color: #fff; padding: 60px 0; }
.section h3 {  }
.round-box { border: 2px solid #212F45; height: 100%;padding: 15px; border-radius: 8px; }
.round-box h4 { font-size: 1.2rem; padding: 0; }
.round-box h4:before { font-family: "Font Awesome 6 Free"; content: "\f04b"; font-weight: 700; margin-right:0.2rem; }
.page-contact-link { height: 100%; }
.page-contact-link a { text-align: center; color: #fff; height: 100%; width: 100%; border: 1px solid #fff; padding: 20px; display: inline-block; }
.page-contact-link a:hover { background: rgba(0, 0, 0, 0.4); transition: 0.8s; }


/* 求人ページ */
.job-info-wrap { margin-top: 40px; border: 1px solid #212F45; padding: 20px; border-radius: 10px; }
.job-title p { background: #212F45; color: #fff; padding: 8px; }
.job-body p { padding: 8px; background: rgb(33, 47, 69, 0.1); }
.job-title p:last-child,.job-body p:last-child { margin-bottom: 0; }
.no-list { height: 40vh; font-weight: bold; }

/* アーカイブページ */
.year-select { background: rgba(3,110,184,0.1); height: 100%; padding: 1.5rem 1.0rem; }
.year-select p { font-size: 1.2rem; font-weight: 500; color: #036EB8;  }
.year-select p:before { font-family: "Font Awesome 6 Free"; content: "\f073"; font-weight: 700; color:#036EB8; margin-right:0.2rem; }
.year-select ul { padding: 0; }
.year-select li { list-style: none; }
.year-select li a { color: #036EB8; font-size: 1.1rem; }
.year-select li a:before { font-family: "Font Awesome 6 Free"; content: "\f138"; font-weight: 700; color:#036EB8; margin-right:0.2rem; }
.year-select li a:hover { padding-left: 10px; transition: 0.6s; }

.archive-wrap { margin-top: 2.0rem; margin-bottom: 2.0rem; }
.archive-item { border-bottom: 2px dotted #036EB8; padding: 0.9rem 1.1rem; }
.archive-item a { display: inline-block; color: #333; }
.archive-item a:hover { padding-left: 10px; color: #036EB8; transition: 0.6s; }
.archive-item h2 { font-size: 1.1rem; margin-bottom: 0; }
.archive-item h2:before { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; color:#333; margin-right:0.2rem; }
.archive-item h2:hover:before { color: #036EB8; }

/* フォーム共通 */
.contact-form-head { text-align: center; }
.contact-form-head p:first-child { font-size: 1.2rem; font-weight: 500; }
.contact-number { font-size: 1.2rem; font-weight: 700; color:#036EB8; }
.contact-number i { margin-right:0.3rem; }

.form80 { width: 79.3%; }
.form50 { width: 49.3%; }
.form30 { width: 30.5%; }
.form20 { width: 20.0%; }
.form10 { width: 10.5%; }
.form-entry-item { border: none; pointer-events : none; width:100%; }
.form-section:first-child { border-top: 1px solid #d8d8d8; }
.form-section { background: #f5f5f5; border-bottom: 1px solid #d8d8d8; }
.form-section .error { display:block !important; }
.req { font-size: 0.6rem; padding: 3px 5px; background: red; color: #fff; border-radius: 4px; margin-left : 6px; vertical-align: middle; }
.form-head { padding: 0.8rem; }
.form-body { background: #fff; padding: 1.2rem 0.8rem; }
.form-head p,.form-body p { margin: 0; }
.form-control::placeholder { color: #a9a9a9; }
.mwform-checkbox-field-text { margin-right: 1.2rem; }
p.form-area { font-weight:normal; margin: 0.5rem 0 0.5rem 0; }
.form-control { border:2.0px solid #c0c0c0; }
.form-link a { text-decoration: underline; }
.send-check { margin-right: 1.5rem; }
.form-error-ex span::before { content: "※"; }
.form-error-ex span.mwform-file-delete::before { content: ""; }
.mw_wp_form_confirm .msg-hidden { display: none; }
.hidden-height { min-height: 1.4rem; }

#autozip { display: none!important; }
.back-bt { color: #fff; background: #008080; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.back-bt:hover { background: #8fb3b3; transition: 0.8s; color: #008080; }
.send-bt { color: #fff; background: #dc143c; padding:1.0rem 1.0rem; margin-top:1.0rem; border:none; border-radius: 6px; }
.send-bt:hover { background: #db8495; transition: 0.8s; color: #dc143c; }
.thanks { padding: 10% 0; }
.thanks a { background: #0d6efd; color: #fff; padding: 10px 40px; border-radius: 10px; }

/* ポリシーページ */
.policy-head { background: #212f45; padding: 2.0rem; color: #fff; }
.policy-title { margin-top: 1.5rem; font-weight: 700; color:#212f45; }
.policy-body { padding-left: 1.0rem; }
.policy-list { margin: 1.0rem 0; }
.policy-list li { margin-bottom: 0.3rem; }
.policy-add { margin-top: 5.0rem; }

/* サイトマップページ */
.sitemap ul { margin: 1.5rem 0; list-style: none; }
.sitemap-list li { line-height: 1.75rem; }
.sitemap-list li a:before  { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; margin-right:0.4rem; }
.sitemap-list li a:hover { margin-left: 10px; transition: 0.8s; }

/* フッター */
#footer { background: #162133; }
.footer-inner { padding: 60px 0; }
.footer-logo-wrap { text-align: center; }
.footer-logo { width: 100%; }
.phone_number { font-size: 1.85rem; font-weight: 900; }
.end-menu { padding-top: 50px; }
.end-menu a { font-size: 0.8rem; color: #fff; margin-left: 1.0rem; }
.end-menu a:before { font-family: "Font Awesome 6 Free"; content: "\f054"; font-weight: 700; color:#fff; margin-right:0.2rem; }
.end-menu a:hover { opacity: 0.3; transition: 0.8s; }
.copyright { background: #212F45; color: #fff; padding: 1.0rem 15px; text-align: center; }


/* SP調整 */
@media screen and (max-width: 991px) {
html { zoom: 90%; }
.page-head-wrap,.page-head-title { height: 300px; }
.info-wrap { padding: 0 50px; }
.service-body-wrap { padding: 8px; }
}

@media screen and (max-width: 769px) {
html { zoom: 80%; }
body { background-image: url(image/header_bg_SP.jpg); }
.offcanvas-body li,.offcanvas-body a { font-size: 1.45rem; }
.page-head-title { padding-left: 20px; }
.page-head-wrap h1 { font-size: 1.85rem; }
.sp-br { display: none; }
.container.single-wrap,.container.archive-wrap { padding: 15px; }
.info-wrap { padding: 0 15px; }
.service-body-info { margin-top: 0; }
.service-body-wrap { padding: 0; }
.form80,.form50,.form30,.form20 { width: 100%; }
.footer-logo { width: 70%; }
}

@media screen and (max-width: 575px) {
.sub-catch { font-size: 1.5rem; }
.info-thumb { aspect-ratio: 1 / 1; }
.service-img-wrap { aspect-ratio: 1 / 1; }
.service-link-wrap-1 { margin-top: 20px ; }
.gmap { aspect-ratio: 1/1; }
}

@media screen and (max-width: 450px) {
.info-wrap { padding: 0 10px; }
}

@media screen and (min-width: 576px) {
.xs-br { display:none; }
}