/*
Theme Name: Twenty Twelve
Theme URI: https://wordpress.org/themes/twentytwelve/
Author: the WordPress team
Author URI: https://wordpress.org/
Description: The 2012 theme for WordPress is a fully responsive theme that looks great on any device. Features include a front page template with its own widgets, an optional display font, styling for post formats on both index and single views, and an optional no-sidebar page template. Make it yours with a custom menu, header image, and background.
Version: 4.7
Tested up to: 6.7
Requires at least: 3.5
Requires PHP: 5.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: blog, one-column, two-columns, right-sidebar, custom-background, custom-header, custom-menu, editor-style, featured-images, flexible-header, footer-widgets, full-width-template, microformats, post-formats, rtl-language-support, sticky-post, theme-options, translation-ready, block-patterns
Text Domain: twentytwelve

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* =Notes
--------------------------------------------------------------
This stylesheet uses rem values with a pixel fallback. The rem
values (and line heights) are calculated using two variables:

$rembase:     14;
$line-height: 24;

---------- Examples

* Use a pixel value with a rem fallback for font-size, padding, margins, etc.
	padding: 5px 0;
	padding: 0.357142857rem 0; (5 / $rembase)

* Set a font-size and then set a line-height based on the font-size
	font-size: 16px
	font-size: 1.142857143rem; (16 / $rembase)
	line-height: 1.5; ($line-height / 16)

---------- Vertical spacing

Vertical spacing between most elements should use 24px or 48px
to maintain vertical rhythm:

.my-new-div {
	margin: 24px 0;
	margin: 1.714285714rem 0; ( 24 / $rembase )
}

---------- Further reading

http://snook.ca/archives/html_and_css/font-size-with-rem
http://blog.typekit.com/2011/11/09/type-study-sizing-the-legible-letter/


/* =Reset
-------------------------------------------------------------- */

/*
.montserrat-<uniquifier> {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.yuji-boku-regular {
  font-family: "Yuji Boku", serif;
  font-weight: 400;
  font-style: normal;
}

.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}
 */



@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap');
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-style:normal;
font-weight: normal;
font-size: 100%;
vertical-align: baseline;
font-family: "Noto Sans JP", Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto ,"Yu Gothic" , "YuGothic" ,  "Hiragino Kaku Gothic Pro" , "Meiryo UI" , Meiryo , "MS PGothic" , sans-serif;
	
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

html{
	overflow-y: scroll;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

input, textarea{
	margin: 0;
	padding: 0;
}

ol, ul{
	list-style:none;
}


ul.flex,.flex{
	display:-webkit-box;
	display:-ms-box;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	-moz-box-lines:multiple;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

table{
	border-collapse: collapse; 
	border-spacing:0;
	width:100%;
}

caption, th{
	text-align: left;
}

a:focus {
	outline:none;
}

.clear:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

* html .clear {
	height: 1px;
}

.both{
	clear:both;
}

.inline_block {  
	display: inline-block;  
	*display: inline;  
	*zoom: 1;  
}
*{
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
}
a{
	text-decoration:none;
	color:#525252;
}
p a:hover {
	color:#FFA331;
}
body {
	overflow:hidden;
	background:#f2f2f2
}
div, a, p, h1, h2, h3, h4, h5, h6, span, th, td, li, time, footer, button, label, strong, em, b{
	color:#525252;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:16px;
}
b{font-weight:bold;}
img{
	width: 100%;
	display: block;
	height: auto;
}
.grecaptcha-badge {
    position: absolute;
    z-index: -100;
    visibility: hidden;
}
.wpcf7 form .wpcf7-response-output {
    border: none!important;
}
section[class^="index_"]{
}
.width {
	width:80%;
	margin:0 auto;
}
p{
	margin-bottom:10px;
	letter-spacing:1px;
	font-weight:500;
}
section a, section span, section b, section strong {
	font-size:100%;
}
.mt10 {margin-top:10%!important;}
.mt8 {margin-top:8%!important;}
.mt5 {margin-top:5%!important;}
.mt3 {margin-top:3%!important;}
.mt0 {margin-top:0%!important;}
.mb0 {margin-bottom:0%!important;}
.mb3 {margin-bottom:3%!important;}
.mb5 {margin-bottom:5%!important;}
.mb8 {margin-bottom:8%!important;}
.mb10 {margin-bottom:10%!important;}

.pt10 {padding-top:10%!important;}
.pt8 {padding-top:8%!important;}
.pt5 {padding-top:5%!important;}
.pt3 {padding-top:3%!important;}
.pt0 {padding-top:0%!important;}
.pb0 {padding-bottom:0%!important;}
.pb3 {padding-bottom:3%!important;}
.pb5 {padding-bottom:5%!important;}
.pb8 {padding-bottom:8%!important;}
.pb10 {padding-bottom:10%!important;}

div.float {
    margin: 3% auto;
}
.float p.floatr {
    float: right;
    margin: 0 0 10px 3%;
    width: 47%;
}
.float p.floatl {
    float: left;
    margin: 0 3% 10px 0;
    width: 47%;
}

.center {
	text-align:center!important;
}
.right {
	text-align:right!important;
}
.left {
	text-align:left!important;
}
span.ib {
	display:inline-block!important;
}
span.bu {
	border-bottom:1px solid;
	font-weight:500;
	font-size:100%;
}
span.bo {
	font-size:100%;
	font-weight:600;
}
span.bbig{
	font-weight:bold!important;
	font-size:120%!important;
}
span.yb {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(0%, #FFFAC6));
    background: -o-linear-gradient(transparent 60%, #FFFAC6 0%);
    background: linear-gradient(transparent 60%, #FFFAC6 0%);
}

.fadein{
	opacity:0;
	-webkit-transition : all 3s;
	-o-transition : all 3s;
	transition : all 3s;
}
.downup .fadein {
	opacity : 0;
	-webkit-transform : translate(0, 50px);
	    -ms-transform : translate(0, 50px);
	        transform : translate(0, 50px);
	-webkit-transition : all 800ms;
	-o-transition : all 800ms;
	transition : all 800ms;
}
.updown .fadein {
	opacity : 0;
	-webkit-transform : translate(0, -50px);
	    -ms-transform : translate(0, -50px);
	        transform : translate(0, -50px);
	-webkit-transition : all 800ms;
	-o-transition : all 800ms;
	transition : all 800ms;
}
.fadeinrl .fadein {
	opacity : 0;
	-webkit-transform : translate(80px, 0);
	    -ms-transform : translate(80px, 0);
	        transform : translate(80px, 0);
	-webkit-transition : all 800ms;
	-o-transition : all 800ms;
	transition : all 800ms;
}
.fadeinlr .fadein {
	opacity : 0;
	-webkit-transform : translate(-80px, 0);
	    -ms-transform : translate(-80px, 0);
	        transform : translate(-80px, 0);
	-webkit-transition : all 800ms;
	-o-transition : all 800ms;
	transition : all 800ms;
}
.fadein.scrollin {
	opacity : 1;
	-webkit-transform : translate(0, 0);
	    -ms-transform : translate(0, 0);
	        transform : translate(0, 0);
}


@-webkit-keyframes fadein {
	from {opacity: 0;}
	to {opacity: 1;}
}

@keyframes fadein {
	from {opacity: 0;}
	to {opacity: 1;}
}
@-webkit-keyframes fadeinrl {
	from {
		opacity: 0;
		-webkit-transform: translateX(20px);
		        transform: translateX(20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}
@keyframes fadeinrl {
	from {
		opacity: 0;
		-webkit-transform: translateX(20px);
		        transform: translateX(20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}
@-webkit-keyframes fadeinlr {
	from {
		opacity: 0;
		-webkit-transform: translateX(-20px);
		        transform: translateX(-20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}
@keyframes fadeinlr {
	from {
		opacity: 0;
		-webkit-transform: translateX(-20px);
		        transform: translateX(-20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}
@-webkit-keyframes fadeinbt {
	from {
		opacity: 0;
		-webkit-transform: translateY(20px);
		        transform: translateY(20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@keyframes fadeinbt {
	from {
		opacity: 0;
		-webkit-transform: translateY(20px);
		        transform: translateY(20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@-webkit-keyframes fadeintb {
	from {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@keyframes fadeintb {
	from {
		opacity: 0;
		-webkit-transform: translateY(-20px);
		        transform: translateY(-20px);
	}
	to {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}

ul[class^="col2_"] > li {
    width: 48%;
    margin-right: 4%;
    margin-bottom: 3%;
}
ul[class^="col3_"] > li {
    width: 30%;
    margin-right: 5%;
    margin-bottom: 3%;
}
ul[class^="col2_"] > li:nth-child(even), ul[class^="col3_"] > li:nth-child(3n){
    margin-right: 0;
}

/*----------------------------
 * ローディング画面 
 * ----------------------*/
/* ローディングスクリーンのスタイル */
.my_loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100vw;
    height: 100vh;
	height: 100svh;
    background-color: #000;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
	animation: my_fadeOutBackground 6s 1.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
	pointer-events: none;
}
/* 上下ボーダー（共通） */
.my_loading::before,
.my_loading::after {
    content: "";
    position: absolute;
    left: 0;
    width: 100%;
	height: 5px; /* ボーダー太さ */
    background: linear-gradient(
        90deg,
        #C94A00,
        #FD7E2B,
        #FFD1A3,
        #FD7E2B,
        #C94A00
    );
    background-size: 200% 100%;
	animation: border_slide 6s linear infinite;
}

/* 上ボーダー */
.my_loading::before {
    top: env(safe-area-inset-top);
}

/* 下ボーダー */
.my_loading::after {
    bottom: env(safe-area-inset-bottom);
	animation-direction: reverse;
}

/* 横移動アニメーション */
@keyframes border_slide {
    0% {
        background-position: 0% 50%;
    }
    100% {
        background-position: 200% 50%;
    }
}

.my_loading img {
    opacity: 0;
    animation: my_logo_fade 3.5s 0.1s forwards;
    width: 250px; /* ロゴのサイズ（パソコン） */
}

@media screen and (max-width: 959px) {
    .my_loading img {
        width: 200px; /* ロゴのサイズ（スマホ） */
    }
}

/* 背景のフェードアウトアニメーション */
@keyframes my_fadeOutBackground {
	0% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
	50% {
        opacity: 1;
        transform: translate3d(0, 100svh, 0);
    }
    100% {
        opacity: 0;
        transform: translate3d(0, 100svh, 0);
        visibility: hidden;
        pointer-events: none;
    }
}

/* ロゴのフェードイン・フェードアウトアニメーション */
@keyframes my_logo_fade {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    30% {
        opacity: 1;
        transform: translateY(0);
    }
	70% {
        opacity: 1;
        transform: translateY(0);
    }
    100% {
        opacity: 0;
    }
}

/*------------------------------------*\
    ヘッダー＆フッダー00
\*------------------------------------*/
header {
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	position:absolute;
	z-index:99;
	top:0;
	right:0;
	padding-left:10%;
}
header div a.logo {
	display:block;
	width:180px;
}
.g_nav ul {
	display:flex;
}
.g_nav ul li {
    margin-left: 15px;
}
.g_nav ul li a {
	font-size:14px;
	font-weight:bold;
	letter-spacing:0.5px;
	position:relative;
    text-align: center;
}
.g_nav ul li:nth-of-type(1) a {
	margin:0;
}
.g_nav ul li a:after {
	content:'';
	display:block;
	opacity:0;
	width:110%;
	height:2px;
	background-color:#FF7921;
	position:absolute;
	bottom:-7px;
	left:-5%;
	transition:all 0.3s;
}
.g_nav ul li a:hover:after {
	opacity:1;
}
.g_nav ul li:last-of-type a {
	color:#fff;
	padding: 0 5px;
	position:relative;
	z-index:1;
	transition:all .3s;
	width:93px;
	display:block;
}
.g_nav ul li:last-of-type a:before {
	content:'';
	background-color:#FD7E2B;
	height:50px;
	width:calc(100% - 2px);
	display:block;
	position:absolute;
	bottom:-7px;
	left:0;
	z-index:-1;
	border:#FD7E2B 1px solid;
	transition:all .3s;
}
.g_nav ul li:last-of-type a:hover {
	color:#FD7E2B;
}
.g_nav ul li:last-of-type a:hover:before {
	background-color:#fff;
}
.g_nav ul li:last-of-type a:after {
	display:none;
}
.g_nav ul li a span {
    display: block;
    font-size: 80%;
}
.g_nav ul li:last-of-type a span {
    color: #fff;
}
.g_nav ul li:last-of-type a:hover span {
	color:#FD7E2B;
}
#masthead.m_fixed {
	left: 0;
	position: fixed;
	top: 0;
	background:#fff;
	padding:8px 0 8px 10%;
	box-shadow:rgba(0,0,0,.5)0 4px 4px;
}
#masthead.m_fixed .g_nav ul li:last-of-type a:before {
	height: 69px;
    bottom: -19px;
	transition:unset;
}

@media screen and (max-width:1100px) {
    header div a.logo {
        width: 155px;
    }
    .g_nav ul li a {
        font-size: 13px;
    }
    #masthead.m_fixed .g_nav ul li:last-of-type a:before {
        height: 61px;
        bottom: -16px;
        transition: unset;
    }
}

.sp_nav,
.toggle_btn,
#mask {
	display:none;
}
.footer {
	padding:40px 15px 15px 0px;
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/footer1-scaled.webp);
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
	z-index:1;
}
.footer:before {
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 1) 30%, rgba(0, 0, 0, 0.5) 70%);
	z-index:-1;
}
.site-info {
	width:80%;
	margin:0 auto 20px;
}
.f_logo {
	display:block;
	width:200px;
	margin-bottom:20px;
}
.f_about li {
	color:#fff;
	font-size:16px;
	letter-spacing:0.5px;
	font-weight:500;
	margin-bottom:5px;
}
.f_about li:nth-of-type(1) {
	font-weight:700;
	margin-bottom:10px;
	font-size:20px;
}
.f_about li a {
	color:#fff;
	font-size:16px;
	letter-spacing:0.5px;
	font-weight:500;
}
.f_about li a:hover {
	color:#FF7921;
}
.f_nav {
	margin-top:30px;
	display:flex;
}
.f_nav li a {
	margin-left:15px;
	font-size:14px;
	font-weight:bold;
	letter-spacing:0.5px;
	position:relative;
	color:#fff;
}
.f_nav li:nth-of-type(1) a {
	margin:0;
}
.f_nav li a:after {
	content:'';
	display:block;
	opacity:0;
	width:110%;
	height:2px;
	background-color:#FF7921;
	position:absolute;
	bottom:-7px;
	left:-5%;
	transition:all 0.3s;
}
.f_nav li a:hover:after {
	opacity:1;
}
.copy {
	text-align:right;
	color:#fff;
	font-size:14px;
	font-weight:bold;
	margin-bottom:0;
}
.page_top {
	position:fixed;
	bottom:50px;
	right:10px;
	width:50px;
	height:50px;
	border:1px solid #FF7921;
	z-index:99;
}
.page_top p {
	margin:0;
}
.page_top p img {
	width:100%;
	height:100%;
	object-fit:cover;
}
#sb_instagram #sbi_load .sbi_follow_btn a span {
	color:#fff;
}






/*------------------------------------*\
    トップページ00
\*------------------------------------*/
.mv {
	width:calc(100% - 93px);
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/mv2-scaled.webp);
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
	margin-bottom:50px;
}
.mv:after {
	position: absolute;
    content: '';
    width: 50%;
    max-width: 600px;
    height: 30vh;
    max-height: 300px;
    bottom: -50px;
    right: -94px;
	background:linear-gradient(90deg, rgba(255, 145, 74, 1), rgba(235, 119, 43, 1) 60%, rgba(255, 101, 0, 1) 90%);
	z-index:-1;
}
.mv_w {
	background:#fff;
	opacity:0.8;
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}
.mv h1 {
	width: 90%;
    margin: 0 0 0 auto;
	padding-top:180px;
	padding-bottom:250px;
	position:relative;
	z-index:1;
}
.ttl1 {
	font-size:clamp(70px, 7vw, 100px);
	font-weight:500;
	line-height:1;
	font-family: "Montserrat", sans-serif;
}
.ttl1 span.orange {
	display:block;
	font-size:clamp(28px, 2.8vw, 32px);
	font-weight:bold;
	background: linear-gradient(90deg, rgba(255, 101, 0, 1), rgba(253, 126, 43, 1) 50%, rgba(255, 101, 0, 1));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.ttl1 span.catch {
	display:block;
	text-align:end;
	font-family: "Montserrat", sans-serif;
	font-weight:500;
}
.ttl1 span.orange>br {
	display:none;
}
.top_ceo {
	background:#333;
}
.top_ceo p {
	margin-bottom:0;
}
.ttl2 {
	font-size:64px;
	color:#ccc;
	letter-spacing:0.8px;
	font-weight:500;
	position:relative;
	line-height:1;
	margin: 0 0 3%;
}
.ttl2 span.jp {
	position:absolute;
	top:40px;
	left:230px;
	font-size:24px;
	color:#ccc;
	letter-spacing:0.8px;
	font-weight:500;
}
.ttl2 span.en {
	display:block;
	font-size:64px;
	color:#ccc;
	letter-spacing:0.8px;
	font-weight:500;
	margin-left:60px;
}
.ttl2.black,
.ttl2.black span.jp,
.ttl2.black span.en {
	color:#333;
}
.ttl2.orange,
.ttl2.orange span.jp,
.ttl2.orange span.en {
	color:#FD7E2B;
}
.flex {
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.top_ceo div.flex {
	width:90%;
	max-width:1200px;
	margin:auto;
}
.top_ceo_img {
	width:50%;
	max-height:600px;
	box-shadow:rgba(0,0,0,.5)0 0 5px;
}
.top_ceo_img img {
	width:100%;
	height:100%;
	object-fit:cover;
}
.top_ceo_txt {
	width:45%;
	display:flex;
	flex-direction:column;
	justify-content:space-evenly;
}
.top_ceo_txt>div>p {
	font-size:16px;
	color:#fff;
}
.top_ceo_txt>p.top_ceo_name_txt {
	font-size:48px;
	font-family: "Yuji Boku", serif;
	color:#fff;
	letter-spacing:0.1em;
	width:fit-content;
	margin-left:auto;
}
.top_ceo_name_txt>span {
	font-size:20px;
	font-family: "Yuji Boku", serif;
	color:#fff;
	display:block;
}
.link1 a {
	display:block;
	width:100%;
	color:#fff;
	font-size:18px;
	font-weight:bold;
	letter-spacing:0.1em;
	padding: 8px 20px;
	border-bottom:#fff 1px solid;
	transition:all .3s;
}
.link1 a:hover {
	padding-left:40px;
	border-bottom-color:#FD7E2B;
}
.link1.orange a {
	color:#FD7E2B;
	border-bottom:#FD7E2B 1px solid;
}
.top_value {
	position:relative;
}
.top_value:after {
	content: '';
    display: block;
    width: 100%;
    height: 250px;
    background-image: linear-gradient(90deg, rgba(80, 80, 80, 1), rgba(182, 182, 182, 1));
    position: absolute;
    left: 0;
    top: calc(64% - 175px);
	z-index:-1;
}
.top_value_content {
	max-width:1200px;
	margin:0 auto;
}
.top_value_content li {
	width:24%;
	position:relative;
	padding-top:200px;
}
.top_value_content li:hover .value_img:after {
	opacity:0;
}
.value_img {
	width:100%;
	max-width:200px;
	position:absolute;
	margin-bottom:0;
	top:0;
}
.value_img img {
	width:100%;
	object-fit:cover;
	border-radius:10px;
}
.value_img:after {
	content:'';
	width:100%;
	height:100%;
	background:rgba(0,0,0,.5);
	position:absolute;
	top:0;
	left:0;
	border-radius:10px;
	transition:all .3s;
}
.top_value_content .bg_w {
	background: #fff;
    border-radius: 10px;
    padding: 10px;
    box-shadow: rgba(0, 0, 0, .5) 0 0 5px;
    position: absolute;
    left: 10px;
    bottom: 25px;
    max-width: 400px;
	width:110%;
}
.ttl3 {
	font-size:20px;
	font-weight:bold;
	color:#fd7e2b;
	letter-spacing:0.8px;
	margin-bottom:10px;
	line-height:1.2;
}
.top_value_content li p {
	font-size:16px;
	letter-spacing:0.8px;
}
.content2 .value_img {
	position: relative;
	top:unset;
	margin-left:auto;
}
.top_value_content .content2 .bg_w {
	left: unset;
    bottom: unset;
    top: 25px;
    right: 10px;
}
@media screen and (max-width:1200px) {
	.top_value_content li {
		width:50%;
	}
	.value_img {
		width:95%;
		max-width:unset;
	}
	.top_value_content .bg_w {
		bottom:80px;
	}
	.top_value_content .content2 .bg_w {
		top:80px;
	}
}
.top_business_list li {
	width:80%;
	margin-right:auto;
	margin-bottom:5%;
	position:relative;
	padding:20px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.top_business_list li.list_right {
	margin-left:auto;
	margin-right:unset;
}
.top_business_list li:before {
	background:rgba(0,0,0,.2);
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	content:'';
}
.top_business_list li:nth-of-type(1) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business1.webp);
}
.top_business_list li:nth-of-type(3) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business2.webp);
}
.top_business_list li:nth-of-type(4) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business3.webp);
}
.top_business_list li:nth-of-type(2) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business4.webp);
}
.top_business_txt {
	padding:20px 20px 0;
	width:360px;
	height:360px;
	background-image: linear-gradient(180deg, rgba(255, 101, 0, 0.9), rgba(190, 95, 32, 0.9));
	margin-left:auto;
	position:relative;
	z-index:1;
}
.top_business_list li.list_right .top_business_txt {
	margin-left:unset;
	margin-right:auto;
}
.ttl4 {
	font-size:20px;
	font-weight:bold;
	color:#fff;
}
.top_business_txt p {
	color:#fff;
}
.btn1 {
	width:150px;
	background:#333;
	position:absolute;
	bottom:0;
	right:0;
}
.btn1 p {
	margin-bottom:0;
}
.btn1 a {
	display:block;
	width:100%;
	height:100%;
	color:#fff;
	padding:8px 0;
	font-size:18px;
	letter-spacing:0.8px;
	font-weight:bold;
	text-align:center;
	position:relative;
	transition:all .3s;
}
.btn1 a:after {
	content:'';
	display:block;
	width:30px;
	height:1px;
	background:#fff;
	position:absolute;
	bottom:7px;
	right:calc(50% - 30px);
	transition:all .3s;
}
.btn1 a:hover {
	color:#FD7E2B;
}
.btn1 a:hover:after {
	right:calc(50% - 45px);
	background:#FD7E2B;
}
.ttl2.top_about_ttl span.jp,
.ttl2.top_news_ttl span.jp {
	left:355px;
}
.ttl2.top_news_ttl span.en {
	margin-left:240px;
}
.bg1 {
	padding: 60px 30px 30px 10%;
    max-width: 873px;
    margin: 0;
    position: relative;
}
.bg1:after {
	content:'';
	position:absolute;
	top:0;
	left:0;
	z-index:-1;
	display:block;
	width:100%;
	height:100%;
	background-color:#fff;
}
.top_about_img {
	width:40%;
	margin:0;
}
.top_map {
	width:60%;
}
.list1 {
	width:90%;
	max-width:1200px;
	margin:3% auto;
}
.list1 li {
	padding: 10px 40px;
	border-top:#999 1px solid;
	border-bottom:#999 1px solid;
}
.list1 li:first-of-type {
	border-bottom: none;
}
.list1 li:last-of-type {
	border-bottom:#999 1px solid;
}
.list1 li a {
	color:#333;
	font-weight:400;
	letter-spacing:0.8px;
	transition:all .3s;
	white-space: nowrap; /* 折り返し無しにする */
    overflow: hidden; /* はみ出た部分を非表示 */
    text-overflow: ellipsis; /* 語尾を3点リーダーに */
	display:block;
	width:100%;
}
.list1 li a span {
	color:#333;
	font-weight:400;
	letter-spacing:0.8px;
	margin-right:20px;
}
.list1 li a:hover {
	color:#FD7E2B;
}
.btn2 {
	width:250px;
	margin:3% auto;
}
.btn2 a {
	display:block;
	width:100%;
	color:#fff;
	font-size:20px;
	font-weight:400;
	padding:5px 0;
	text-align:center;
	background:#FD7E2B;
	border:#FD7E2B 1px solid;
	border-radius:50px;
	transition:all .3s;
}
.btn2 a:hover {
	color:#FD7E2B;
	background:#fff;
}
.cta_list li {
	width:80%;
	margin-right:auto;
	margin-bottom:3%;
	position:relative;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
}
.cta_list li.list_right {
	margin-left:auto;
	margin-right:unset;
}
.cta_list li:before {
	background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 1));
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	content:'';
}
.cta_list li.list_right:before {
	background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5) 60%, rgba(0, 0, 0, 1));
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	content:'';
}
.cta_list li:nth-of-type(1) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/cta1.webp);
}
.cta_list li:nth-of-type(2) {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/cta2.webp);
}
.cta_txt {
	display:block;
	width:100%;
	padding:40px 0;
	position:relative;
	z-index:1;
}
.cta_txt .ttl2,
.cta_txt .ttl2 span.jp,
.cta_txt .ttl2 span.en {
	color:#fff;
	margin-bottom:0;
}
.cta_txt .ttl2 {
	width: 85%;
    margin-left: auto;
}
.cta_txt .ttl2 span.jp {
	top:calc(50% - 12px);
	left:350px;
}
.cta_list li:after {
	content:'';
	width:50px;
	height:100%;
	display:block;
	background-color:rgba(253,126,43,0.8);
	position:absolute;
	top:0;
	left:0;
	transition:all .3s;
}
.cta_list li.list_right:after {
	content:'';
	width:50px;
	height:100%;
	display:block;
	background-color:rgba(80,108,160,0.8);
	position:absolute;
	top:0;
	right:0;
	left:unset;
	transition:all .3s;
}
.list_right .cta_txt .ttl2 {
	text-align: right;
    margin-left: unset;
    margin-right: auto;
}
.list_right .cta_txt .ttl2 span.jp {
	top:calc(50% - 12px);
	right:330px;
	left:unset;
}
.list_right .cta_txt .ttl2 span.en {
	margin-left:unset;
	margin-right:60px;
}
.cta_list li:hover:after,
.cta_list li.list_right:hover:after{
	width:100%;
}

.form {
    border-spacing: unset;
}
.form tr {
    border-bottom: 2px #fff solid;
}
.form th {
    padding: 10px;
    background: linear-gradient(90deg, rgba(255, 145, 74, 1), rgba(235, 119, 43, 1) 60%, rgba(255, 101, 0, 1) 90%);
    font-weight: 500;
    vertical-align: middle;
}
.form th p {
    color: #fff;
}
.form td {
    padding: 10px;
    background: #dddddd;
}
/* 必須・任意ラベル */
.required {
    color: #fd7e2b;
    border: #fd7e2b 2px solid;
    background: #fff;
    padding: 2px 6px;
    font-size: 0.8em;
    border-radius: 3px;
    margin-left: 5px;
    font-weight: 500;
    text-shadow: unset;
}
.optional {
    color: #fff;
    background: #999;
    padding: 2px 6px;
    font-size: 0.8em;
    border-radius: 3px;
    margin-left: 5px;
}

/* 入力フォームの幅調整 */
.form input[type="text"],
.form input[type="tel"],
.form input[type="email"],
.form textarea {
    width: 100%;
    padding: 8px;
    box-sizing: border-box;
    border: 1px solid #ddd;
}

/* 送信ボタン */
.form-submit {
    text-align: center;
    width: fit-content;
    margin: 5% auto;
}
.form-submit input {
    padding: 10px 15px;
    width: 200px;
    height: 50px;
    background-color: #FD7E2B;
    color: #fff;
    border: #fd7e2b 1px solid;
    cursor: pointer;
    transition: all .3s;
}
.form-submit input:hover {
    background-color: #333;
    color: #fff;
    opacity: 0.8;
}
.wpcf7-spinner {
    visibility: hidden;
    display: block;
    background-color: #23282d;
    opacity: 0.75;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: 100%;
    padding: 0;
    margin: 0 0 0 auto;
    position: relative;
}

/* スマホ対応（レスポンシブ） */
@media screen and (max-width: 700px) {
    .form th, 
    .form td {
        display: block;
        width: 100%;
        border-bottom: none;
    }
    .form td {
        border-bottom: 2px solid #fff;
    }
    .form tr {
        border: none;
    }
}






/*------------------------------------*\
    アーカイブ00
\*------------------------------------*/
/* お知らせリスト全体のスタイル */
.news-list-items {
    list-style: none;
    padding: 0;
    margin: 40px auto;
}

.news-item {
    border-bottom: 1px solid #FD7E2B;
	border-top: 1px solid #FD7E2B;
}

.news-item:first-of-type {
    border-bottom: none;
}
.news-item:last-of-type {
    border-bottom: 1px solid #FD7E2B;
}

.news-link {
    display: flex;
    align-items: center;
    padding: 20px 10px;
    text-decoration: none;
    color: #333;
    transition: background 0.3s;
}

.news-link:hover {
    background: #fffaf7;
}

.news-link:hover span {
    color: #FD7E2B;
}

.news-date {
    font-family: 'Arial', sans-serif;
    font-size: 14px;
    color: #707070;
    width: 120px;
    flex-shrink: 0;
}

.news-item-title {
    flex-grow: 1;
    font-weight: bold;
    padding-right: 20px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

/* 右側の矢印アイコン */
.news-arrow {
    width: 10px;
    height: 10px;
    border-top: 2px solid #FD7E2B;
    border-right: 2px solid #FD7E2B;
    transform: rotate(45deg);
}

/* ページネーション全体のコンテナ */
.pagination {
    margin: 50px auto;
    text-align: center;
}

.nav-links {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px; /* 数字同士の隙間 */
    list-style: none;
}

/* 各リンク（数字・矢印）の共通スタイル */
.nav-links .page-numbers {
    display: inline-block;
    padding: 8px 16px;
    font-size: 16px;
    font-weight: bold;
    text-decoration: none;
    color: #333;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: all 0.3s ease;
}

/* ホバー時と現在のページ（current）のスタイル */
.nav-links .page-numbers:hover,
.nav-links .page-numbers.current {
    color: #fff;
    background: #FD7E2B; /* コーポレートカラー */
    border-color: #FD7E2B;
}

/* 「...（点々）」のスタイル */
.nav-links .dots {
    border: none;
    background: transparent;
    color: #999;
}

/* 「前へ」「次へ」のスタイル調整 */
.nav-links .prev,
.nav-links .next {
    background: #f8f8f8;
}
/* AIOSEO的にも「今何ページ目か」のテキスト自体はソースに必要ですが、画面上は不要な場合 */
.screen-reader-text {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/* スマホ対応：少しボタンを大きくしてタップしやすく */
@media screen and (max-width: 480px) {
    .nav-links {
        gap: 5px;
    }
    .nav-links .page-numbers {
        padding: 10px 14px;
        font-size: 14px;
    }
}

/*---------------
 * 投稿ページ
 * --------------*/
/*テンプレ*/
/* 詳細ページ本文（.single）内の見出し共通設定 */
.single-content h2,
.single-content h3,
.single-content h4,
.single-content h5,
.single-content h6 {
    color: #333;
    line-height: 1.4;
    margin: 40px 0 20px;
    font-weight: bold;
}

/* H2: メインの見出し（左側に太いライン） */
.single-content h2 {
    font-size: 24px;
    padding: 15px 20px;
    background: #f8f8f8;
    border-left: 8px solid #FD7E2B; /* NOVA RIFIX オレンジ */
    border-bottom: 1px solid #ddd;
}

/* H3: 中見出し（下線アクセント） */
.single-content h3 {
    font-size: 20px;
    padding: 10px 0;
    border-bottom: 2px solid #eee;
    position: relative;
}

.single-content h3::after {
    content: "";
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 60px;
    height: 2px;
    background: #FD7E2B;
}

/* H4: 小見出し（左ライン） */
.single-content h4 {
    font-size: 18px;
    padding-left: 15px;
    border-left: 4px solid #FD7E2B;
}

/* H5: ドット見出し */
.single-content h5 {
    font-size: 16px;
    display: flex;
    align-items: center;
}

.single-content h5::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    background: #FD7E2B;
    border-radius: 50%;
    margin-right: 10px;
}

/* H6: 補足的見出し */
.single-content h6 {
    font-size: 15px;
    color: #666;
    border-bottom: 1px dashed #ccc;
    padding-bottom: 5px;
}

/* 本文テキストの調整（読みやすさ重視） */
.single-content p {
    line-height: 1.8;
    margin-bottom: 25px;
    color: #444;
    font-size: 16px;
}

/* スマホ対応 */
@media screen and (max-width: 768px) {
    .single-content h2 { font-size: 20px; padding: 12px 15px; }
    .single-content h3 { font-size: 18px; }
    .single-content p { font-size: 15px; }
}
/* --- 1. 箇条書き（リスト） --- */
.single-content ul, .single-content ol {
    margin: 20px 0 30px 20px;
    padding: 0;
}

.single-content ul li {
    list-style: none;
    position: relative;
    padding-left: 1.5em;
    margin-bottom: 10px;
    line-height: 1.6;
}

/* チェックマーク風のドット */
.single-content ul li::before {
    content: "Check!"; /* または空にして背景画像 */
    position: absolute;
    left: 0;
	top: -15px;
    color: #FD7E2B;
    font-weight: bold;
    font-size: 0.8em;
}

.single-content ol {
    counter-reset: number;
}

.single-content ol li {
    list-style: none;
    position: relative;
    padding-left: 2em;
    margin-bottom: 10px;
}

/* 数字付きリストの装飾 */
.single-content ol li::before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    left: 0;
    top: 2px;
    width: 20px;
    height: 20px;
    background: #FD7E2B;
    color: #fff;
    font-size: 12px;
    text-align: center;
    line-height: 20px;
    border-radius: 50%;
}

/* --- 2. 引用（Blockquote） --- */
.single-content blockquote {
    position: relative;
    padding: 30px 20px;
    margin: 30px 0;
    background: #f9f9f9;
    border-left: 4px solid #FD7E2B;
    color: #555;
    font-style: italic;
}

.single-content blockquote::before {
    content: "“";
    position: absolute;
    top: 5px;
    left: 10px;
    font-size: 60px;
    color: #eee;
    font-family: serif;
    line-height: 1;
}

/* --- 3. テーブル（表） --- */
.single-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 30px 0;
    font-size: 15px;
}

.single-content th, .single-content td {
    border: 1px solid #ddd;
    padding: 12px;
}

.single-content th {
    background: #f2f2f2;
    font-weight: bold;
    text-align: left;
    width: 30%;
}

/* --- 4. 強調・マーカー --- */
.single-content strong, .single-content b {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #fff2e6 60%); /* 薄いオレンジのマーカー */
    padding: 0 2px;
}

.single-content em {
    font-style: italic;
    color: #FD7E2B;
}

/* --- 5. 画像とキャプション --- */
.single-content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 20px auto;
}

.single-content .wp-caption {
    background: #fefefe;
    border: 1px solid #eee;
    max-width: 100%;
    padding: 10px;
    text-align: center;
}

.single-content .wp-caption-text {
    font-size: 13px;
    color: #777;
    margin: 5px 0 0;
}

/* --- 6. 区切り線（hr） --- */
.single-content hr {
    border: none;
    border-top: 1px dashed #FD7E2B;
    margin: 40px 0;
}

/* 詳細ページの前後リンク全体 */
.nav-single {
    display: flex;
    justify-content: space-between;
    align-items: center;
	border-top: 2px solid #FD7E2B;
    padding-top: 30px;
    margin-top: 50px;
    gap: 20px;
}

/* 共通のリンクスタイル */
.nav-single a {
    max-width: 45%; /* 幅が広がりすぎないように制限 */
    text-decoration: none;
    color: #333;
    transition: all 0.3s ease;
}

/* ホバー時の挙動 */
.nav-single a:hover {
    color: #FD7E2B;
}

/* 矢印部分（meta-nav）の装飾 */
.nav-single .meta-nav {
    font-size: 14px;
    color: #FD7E2B;
    font-weight: bold;
    margin-bottom: 5px;
}

/* 前の記事（左側） */
.nav-previous {
    text-align: left;
}

/* 次の記事（右側） */
.nav-next {
    text-align: right;
    margin-left: auto;
}

/* 記事タイトルが長い場合に「...」で省略、または2行までに制限 */
.nav-single a {
    font-size: 15px;
    line-height: 1.4;
    font-weight: bold;
}

/* スマホ対応 */
@media screen and (max-width: 640px) {
    .nav-single {
        flex-direction: column; /* 縦並びにする */
        gap: 30px;
    }
    .nav-single a {
        max-width: 100%;
        width: 100%;
    }
    .nav-next {
        text-align: left; /* スマホでは左寄せ */
        margin-left: 0;
    }
}



/*------------------------------------*\
    下層ページ00
\*------------------------------------*/
.page_width {
	margin:0 auto;
	width:90%;
	max-width:1000px;
}
.entry-header {
	margin-top:70px;
	padding:50px 0;
	background: linear-gradient(90deg, rgba(255, 145, 74, 1), rgba(235, 119, 43, 1) 60%, rgba(255, 101, 0, 1) 90%);
}
.entry-title {
	font-size:40px;
	position:relative;
	z-index:1;
	left:10px;
	top:10px;
	padding-bottom:10px;
	border-bottom:#fff solid 2px;
}
.entry-title .ja {
	color:#fff;
	font-weight:bold;
	font-size:40px;
	text-shadow:rgba(0,0,0,0.5)3px 3px 0px;
}
.entry-title .en {
	text-transform: uppercase;
	color:#fff;
	font-weight:bold;
	font-size:130%;
	opacity:0.6;
	position:absolute;
	left:-10px;
	top:-35px;
	z-index:-1;
}
.page_read {
	padding:10px;
	box-shadow:rgba(0,0,0,0.25)0 0 4px;
	position:relative;
	z-index:1;
}
.page_read:before {
	content:'';
	display:block;
	width:364px;
	height:111px;
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/logo_clear.png);
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	position:absolute;
	bottom:0;
	right:0;
	opacity:0.2;
	z-index:-1;
}
span.b {
	font-weight:bold;
	font-size:110%;
}
span.orange {
	color:#FD7E2B;
}
.ttl5 {
	font-size:28px;
	font-weight:bold;
	text-align:center;
	position: relative;
    color: #FD7E2B;
    -webkit-box-reflect: below -10px -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .5));
	margin-bottom:5%;
}
.ttl5a {
	font-size:28px;
	font-weight:bold;
	text-align:center;
	position: relative;
    color: #fff;
    -webkit-box-reflect: below -10px -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .5));
	margin-bottom:5%;
}
.ttl5b {
	font-size:28px;
	font-weight:bold;
	text-align:center;
	position: relative;
    color: #506ca0;
    -webkit-box-reflect: below -10px -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0) 10%, rgba(0, 0, 0, .5));
	margin-bottom:5%;
}
.list2 {
}
.list2 li {
	margin-bottom:140px;
	padding:20px;
	background:#fff;
	width:70%;
	margin-right:auto;
	margin-left:unset;
	position:relative;
}
.list2 li:nth-of-type(2) {
	margin-right:unset;
	margin-left:auto;
}
.list2 li:before {
	content: '';
    width: 95%;
    height: 95%;
    display: block;
    background: linear-gradient(90deg, #a0b5dd, #708dc2 60%, #506ca0 90%);
    position: absolute;
    top: -10px;
    left: -10px;
    z-index: -2;
}
.list2 li:nth-of-type(2):before {
	content: '';
    width: 95%;
    height: 95%;
    display: block;
    background: linear-gradient(90deg, #a0b5dd, #708dc2 60%, #506ca0 90%);
    position: absolute;
    top: -10px;
	left:unset;
    right: -10px;
    z-index: -2;
}
.list2 li:after {
	content:'';
	width: 350px;
	height:200px;
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business1.webp);
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
    position: absolute;
    bottom: -110px;
    right: -340px;
    z-index: -1;
    margin: 0;
	opacity: 0.3;
	transition:all .3s;
}
.list2 li:nth-of-type(2):after {
	content:'';
	width: 350px;
	height:200px;
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business1.webp);
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
    position: absolute;
    bottom: -110px;
	right:unset;
    left: -340px;
    z-index: -1;
    margin: 0;
	opacity: 0.3;
}
.list2 li:nth-of-type(3):after {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business1.webp);
}

.list2.staff li:nth-of-type(1):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/staff1.webp);
}
.list2.staff li:nth-of-type(2):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/staff2.webp);
}
.list2.staff li:nth-of-type(3):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/staff3.webp);
}

.list2.logistics li:nth-of-type(1):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/logistics1.webp);
}
.list2.logistics li:nth-of-type(2):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/logistics2.webp);
}
.list2.logistics li:nth-of-type(3):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/logistics3.webp);
}

.list2.event li:nth-of-type(1):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/event1.webp);
}
.list2.event li:nth-of-type(2):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/event2.webp);
}
.list2.event li:nth-of-type(3):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/event3.webp);
}

.list2.consulting li:nth-of-type(1):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/consulting1.webp);
}
.list2.consulting li:nth-of-type(2):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/consulting2.webp);
}
.list2.consulting li:nth-of-type(3):after {
    background-image:url(https://novarifix.net/wp-content/uploads/2026/01/consulting3.webp);
}

.list2 li:hover:after {
	opacity:1;
}
.ttl6 {
	font-size:18px;
	font-weight:bold;
    color: #506ca0;
	margin-bottom:10px;
}
.bg_b {
	background:#333;
	padding:3% 0;
}
.list3 {
    position: relative;
    margin: 0 auto;
    padding: 1em calc(1.5em + 9px);
    border-top: 2px solid #fff;
    border-bottom: 2px solid #fff;
    color: #525252;
}

.list3::before,
.list3::after {
    position: absolute;
    width: 2px;
    top: 50%;
    transform: translateY(-50%);
    height: calc(100% + 20px);
    background-color: #fff;
    content: '';
}

.list3::before {
    left: 9px;
}

.list3::after {
    right: 9px;
}
.list3 li {
	border-bottom:2px solid #fff;
	padding-bottom:10px;
	margin-bottom:10px;
}
.list3 li:last-of-type {
	border-bottom:none;
	padding-bottom:0px;
	margin-bottom:0px;
}
.list3 li i {
	margin-right:10px;
}
.list3 li p {
	color:#fff;
}
.flow_list li {
	margin-bottom:3%;
}
.flow_list li .ttl {
	font-size:20px;
	font-weight:bold;
	border-bottom:1px solid #FD7E2B;
	background:#fff;
}
.flow_list li .ttl .num {
	font-size: 120%;
    color: #fff;
    background: linear-gradient(90deg, rgba(255, 145, 74, 1), rgba(235, 119, 43, 1) 60%, rgba(255, 101, 0, 1) 90%);
    padding: 10px;
    line-height: 1;
    width: 40px;
    height: 40px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    margin-right: 10px;
}
.flow_list li p:last-of-type {
	margin-left:50px;
}



/*---------------------
 * 質問　アコーディオン
 * ----------------------*/
.qa-6 {
    margin-bottom: 5px;
    border-bottom: 2px solid #506ca0;
}

.qa-6 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #525252;
    font-weight: 600;
    cursor: pointer;
}

.qa-6 summary::before,
.qa-6 p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}

.qa-6 summary::before {
    color: #506ca0;
    content: "Q";
}

.qa-6 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #525252;
    border-right: 3px solid #525252;
    content: '';
    transition: transform .5s;
}

.qa-6[open] summary::after {
    transform: rotate(225deg);
}

.qa-6 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #525252;
    transition: transform .5s, opacity .5s;
}

.qa-6[open] p {
    transform: none;
    opacity: 1;
}

.qa-6 p::before {
    color: #FD7E2B;
    line-height: 1.2;
    content: "A";
}

.bg_w {
	padding: 10px;
    box-shadow: rgba(0, 0, 0, 0.25) 0 0 4px;
	background:rgba(255,255,255,0.6);
}
.txt_c {
	text-align:center;
}
.cta1 a {
	display:block;
	background: linear-gradient(90deg, rgba(255, 145, 74, 1), rgba(235, 119, 43, 1) 60%, rgba(255, 101, 0, 1) 90%);
	border:3px solid #FD7E2B;
	color:#fff;
	font-weight:bold;
	font-size:18px;
	padding:10px;
	margin:10px auto 0;
	transition:all .3s;
	position:relative;
}
.cta1 a:before {
	content:'';
	display:block;
	width:364px;
	height:111px;
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/logo_clear.png);
	background-position:center;
	background-repeat:no-repeat;
	background-size:contain;
	position:absolute;
	bottom:0;
	right:0;
	opacity:0.2;
	z-index:-1;
}
.cta1 a:hover:before {
	z-index:0;
}
.cta1 a p,
.cta1 a p span.b {
	color:#fff;
	transition:all .3s;
}
.cta1 a p span.ib {
	color:#fff;
	display:inline-block;
	transition:all .3s;
}
.cta1 a:hover {
	background:#fff;
	color:#FD7E2B;
}
.cta1 a:hover p,
.cta1 a:hover p span.b,
.cta1 a:hover p span.ib {
	color:#FD7E2B;
}
.entry-content .cta_list li.staff {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business1.webp);
}
.entry-content .cta_list li.event {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business2.webp);
}
.list_right.consult .cta_txt .ttl2 span.jp {
	top: calc(50% - -10px);
}
.entry-content .cta_list li.consult {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business3.webp);
}
.entry-content .cta_list li.logistics {
	background-image:url(https://novarifix.net/wp-content/uploads/2025/12/business4.webp);
}
.table1 {
	border-spacing: 7px;
	border-collapse: unset;
}
.table1 th {
	padding:10px 10px;
	padding-right:0;
	width:25%;
	min-width:200px;
	background: linear-gradient(90deg,rgba(255, 101, 0, 1),rgba(255,255,255,0));
	font-size:18px;
	color:#fff;
	font-weight:bold;
	text-shadow:rgba(0,0,0,.25)0 0 3px;
	box-shadow: rgba(0, 0, 0, .25) 2px 2px 2px;
}
.table1 td {
	padding:10px 10px;
	padding-right:0;
	box-shadow: rgba(0, 0, 0, .25) 2px 2px 2px;
}
.list_sitemap {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.list_sitemap li {
	width:48%;
}
.list_sitemap li a {
	display:block;
	padding:10px;
	font-size:18px;
	font-weight:bold;
	border-bottom:solid 2px #FD7E2B;
	transition: all .3s;
}
.list_sitemap li a span {
	margin-right:10px;
	font-size:24px;
	font-weight:bold;
	transition: all .3s;
	display:inline-block;
	line-height:1;
}
.list_sitemap li a:hover {
	color: #FD7E2B;
}
.list_sitemap li a:hover span {
	transform:rotate(90deg);
	color: #FD7E2B;
}




@media screen and (max-width: 1000px) {
.width {
	width:90%;
}
p {
	font-size:15.5px;
	margin-bottom:8px;
}

/*------------------------------------*\
    ヘッダー＆フッダー100
\*------------------------------------*/
	.g_nav {
		display:none;
	}
    header div a.logo {
        width: 180px;
    }
	/*============
	nav
	=============*/
	.toggle_btn,
	#mask {
		display:block;
	}
	.sp_nav {
	  display: block;
	  position: fixed;
	  top: 0;
	  right: -300px;
	  bottom: 0;
	  width: 300px;
	  background: #ffffff;
	  overflow-x: hidden;
	  overflow-y: auto;
	  -webkit-overflow-scrolling: touch;
	  transition: all .5s;
	  z-index: 3;
	  opacity: 0;
	}
	.open .sp_nav {
	  right: 0;
	  opacity: 1;
	}
	.sp_nav .inner {
	  padding: 25px;
	}
	.sp_nav .inner ul {
	  list-style: none;
	  margin: 0;
	  padding: 0;
	}
	.sp_nav .inner ul li {
	  position: relative;
	  margin: 0;
	  border-bottom: 1px solid #333;
	}
	.sp_nav .inner ul li a {
	  display: block;
	  color: #333;
	  font-size: 14px;
	  padding: 1em;
	  text-decoration: none;
	  transition-duration: 0.2s;
	}
	.sp_nav .inner ul li:hover {
	  color:#fd7e2b;
		border-bottom-color:#fd7e2b;
	}
	.sp_nav .inner ul li:hover a {
	  color:#fd7e2b;
	}
	.sp_nav .inner ul li:last-of-type {
		background:#fd7e2b;
		border:#fd7e2b 1px solid;
	}
	.sp_nav .inner ul li:last-of-type a {
		color:#fff;
	}
	.sp_nav .inner ul li:hover:last-of-type {
		background:#fff;
	}
	.sp_nav .inner ul li:hover:last-of-type a {
		color:#fd7e2b;
	}
    .sp_nav .inner ul li a span {
        display: block;
        font-size: 80%;
    }
    .sp_nav .inner ul li:hover a span {
        color:#fd7e2b;
    }
    .sp_nav .inner ul li:last-of-type a span {
        color: #fff;
    }
    .sp_nav .inner ul li:last-of-type:hover a span {
        color: #fd7e2b;
    }
	/*============
	.toggle_btn
	=============*/
	.toggle_btn {
	  display: block;
	  position: fixed;
	  top: 10px;
	  right: 10px;
	  width: 50px;
	  height: 50px;
	  transition: all .5s;
	  cursor: pointer;
	  z-index: 3;
		background:#fd7e2b;
	}
	.open .toggle_btn {
	  right: 310px;
	}
	.toggle_btn span {
	  display: block;
	  position: absolute;
	  left: calc(50% - 15px);
	  width: 30px;
	  height: 2px;
	  background-color: #fff;
	  border-radius: 4px;
	  transition: all .5s;
	}
	.toggle_btn span:nth-child(1) {
	  top: calc(50% - 11px);
	}
	.toggle_btn span:nth-child(2) {
	  top: calc(50% - 1px);
	}
	.toggle_btn span:nth-child(3) {
	  top: calc(50% - -11px);
	}
	.open .toggle_btn span {
	  background-color: #fff;
	}
	.open .toggle_btn {
	  -webkit-transform: rotate(180deg);
	  transform: rotate(180deg);
	}
	.open .toggle_btn span:nth-child(1), .open .toggle_btn span:nth-child(3) {
	  width: 16px;
	}
	.open .toggle_btn span:nth-child(1) {
	  -webkit-transform: translate(-1px,4px) rotate(-45deg);
	  transform: translate(-1px,4px) rotate(-45deg);
	}
	.open .toggle_btn span:nth-child(3) {
	  -webkit-transform: translate(-1px,-6px) rotate(45deg);
	  transform: translate(-1px,-6px) rotate(45deg);
	}
	/*============
	#mask
	=============*/
	#mask {
	  display: none;
	  transition: all .5s;
	}
	.open #mask {
	  display: block;
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: #000;
	  opacity: .8;
	  z-index: 2;
	  cursor: pointer;
	}
	
	.f_nav {
		flex-wrap:wrap;
	}
	.f_nav li {
		margin-bottom:5px;
	}
	.f_nav li a {
		margin-left:unset;
		display:block;
		padding:5px;
	}




/*------------------------------------*\
    トップページ1000
\*------------------------------------*/
	.mv {
		width: calc(100% - 45px);
		margin-bottom: 45px;
	}
	.mv h1 {
		padding:150px 0 180px;
	}
	.ttl1 {
		font-size:50px;
	}
	.ttl1 span.orange {
		font-size:20px;
	}
	.ttl2,
	.ttl2 span.en {
		font-size:42px;
	}
	.ttl2 span.jp {
		font-size:20px;
		top:20px;
	}
	.top_ceo div.flex {
		flex-direction:column;
		position:relative;
		padding-top:60px;
		width:100%;
	}
	.top_ceo_img {
		position:absolute;
		top:0;
		left:0;
		z-index:0;
		opacity:0.5;
	}
	.top_ceo_txt {
		width:70%;
		margin-left:auto;
		position:relative;
		z-index:2;
	}
	.top_ceo_txt>div>p {
		text-shadow: rgba(255, 255, 255, 1) 0px 0px 2px;
	}
	.top_value_content li {
		width:100%;
		padding-top:0;
		margin-bottom:5%;
	}
	.top_value_content .bg_w,
	.top_value_content .content2 .bg_w {
		position:absolute;
		max-width:unset;
		width:100%;
		top:calc(50% - 25%);
		left:0;
		bottom:unset;
		border-radius:0;
		box-shadow:unset;
		padding:15px;
	}
	.value_img {
		width:100%;
		height:300px;
		position:relative;
	}
	.value_img img {
		width:100%;
		height:100%;
		object-fit:cover;
		object-position:center;
	}
	.top_business_list li {
		width:95%;
		padding:10px;
	}
	.top_business_txt {
		padding: 10px 10px 0;
		width:320px;
		height:280px;
	}
	.bg1 {
		padding:40px 15px 15px 5%;
	}
	.ttl2.top_about_ttl span.jp, .ttl2.top_news_ttl span.jp {
		left:230px;
	}
	.ttl2.top_news_ttl span.en {
		margin-left:110px;
	}
	.cta_txt .ttl2,
	.cta_txt .ttl2 span.en {
		font-size:32px;
	}
	.cta_txt .ttl2 span.jp {
		left:220px;
	}
	.list_right .cta_txt .ttl2 span.jp {
		right:250px;
	}
	
	
	




/*------------------------------------*\
    アーカイブ1000
\*------------------------------------*/





/*------------------------------------*\
    下層ページ1000
\*------------------------------------*/
	.list2 li {
		width:80%;
        margin-bottom: 200px;
	}
	.list2 li:after {
		bottom: -180px;
		right: -150px;
	}
	.list2 li:nth-of-type(2):after {
		bottom: -180px;
		left: -150px;
	}

}





@media screen and (max-width: 700px) {

.width {
	width:96%;
}
p {
	font-size:15px;
	letter-spacing:0.5px;
	margin-bottom:5px;
}
.float p.floatr,.float p.floatl {
	float:unset;
	width:100%;
	margin:0 auto 10px;
}



/*------------------------------------*\
    ヘッダー＆フッダー700
\*------------------------------------*/
	.open .toggle_btn {
		right: 310px;
	  }





/*------------------------------------*\
    トップページ700
\*------------------------------------*/
	.mv {
		width: calc(100% - 25px);
		margin-bottom:25px;
		background-image:url(https://novarifix.net/wp-content/uploads/2026/01/mv2_sp-scaled.webp);
	}
	.mv h1 {
		padding:100px 0 140px;
	}
	.ttl1 span.orange>br {
		display:block;
	}
	.ttl1 span.catch {
		text-align:left;
	}
	.ttl2 span.jp {
		position:unset;
		margin-bottom:10px;
		font-size:14px;
		display:block;
	}
	.ttl2, .ttl2 span.en {
        font-size: 32px;
    }
	.ttl2 span.en {
		margin-left:30px;
	}
	.top_ceo div.flex {
		padding-top:200px;
	}
	.top_ceo_img {
		width:80%;
		opacity:0.8;
	}
	.top_ceo_txt {
        width: 90%;
        margin: 0 auto;
    }
	.top_ceo_txt>p.top_ceo_name_txt {
		font-size:32px;
	}
	.top_ceo_name_txt>span {
		font-size:16px;
	}
	.bg1 {
		width:100%;
		padding:20px 10px;
	}
	.top_about_img,
	.top_map {
		width:100%;
		height:350px;
	}
	.top_about_img img {
		height:100%;
		object-fit:cover;
	}
	.list1 li {
		padding:10px;
	}
	.list1 li a span {
		display:block;
	}
	.cta_txt {
		padding:20px 0;
	}
	.cta_txt .ttl2,
	.cta_txt .ttl2 span.en {
        font-size: 20px;
    }
	.cta_list li:after,
	.cta_list li.list_right:after {
		width:35px;
	}
	.cta_txt .ttl2 span.jp {
		margin-bottom:5px;
	}
	.list_right .cta_txt .ttl2 span.en {
		margin-right:40px;
	}





/*------------------------------------*\
    アーカイブ700
\*------------------------------------*/





/*------------------------------------*\
    下層ページ700
\*------------------------------------*/
	.entry-title,
	.entry-title .ja {
		font-size:28px;
	}
	.page_read:before {
		width:100%;
		height:100%;
	}
	.ttl5,
	.ttl5a,
	.ttl5b {
		font-size:22px;
		margin-bottom:40px !important;
	}
	.list2 li {
        width: 100%;
		margin-bottom:40px;
    }
	.list2 li:after {
		margin-top:10px;
		display:block;
		width:100%;
		height:250px;
		position:relative;
		bottom:unset;
		left:unset;
		right:unset;
		z-index:0;
		opacity:1;
	}
	.list2 li:nth-of-type(2):after {
		margin-top:10px;
		display:block;
		width:100%;
		height:250px;
		position:relative;
		bottom:unset;
		left:unset;
		right:unset;
		z-index:0;
		opacity:1;
	}
	.list3 li p>span.b {
		display:block;
	}
	.bg_b {
		padding:5% 0;
	}
	.flow_list li .ttl {
		font-size:18px;
	}
	.cta1 a p,
	.cta1 a p span.b {
		font-size:15px;
	}
	.cta1 a p.ttl5a {
		margin-bottom: 15px!important;
	}
	.cta1 a:before {
		width:100%;
		height:100%;
	}
	.table1 th {
		padding:10px 10px;
		padding-right:0;
		width:100%;
		display:block;
		box-shadow: unset;
	}
	.table1 td {
		box-shadow: unset;
		width:100%;
		display:block;
	}
 

}

