@charset "utf-8";

/*
Theme Name: Yamaguchi Yaita.
Description: Yamaguchi Original theme.
Theme URI: https://saitasaita.co.jp/
Author: Saita corp.
Author URI: https://saitasaita.co.jp/
Description: Original Wordpress theme for Yamaguchi.
Version: 1.0.0
*/

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&family=LINE+Seed+JP:wght@400;700&family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/*
font-family: "LINE Seed JP", sans-serif; 400,700
font-family: "Noto Sans JP", sans-serif; 100-900
font-family: "Jost", sans-serif; 100-900
font-family: "Roboto", sans-serif; 100-900
*/

li { list-style: none;}
img { border: 0; -webkit-backface-visibility: hidden; width: 100%;image-rendering: -webkit-optimize-contrast;height: auto;}
a {color: #333; outline: none; text-decoration: none;}
h1, h2, h3, h4, p,figure { margin: 0; padding: 0;}
ul { margin: 0; padding: 0;}
html { height:100%;	overflow-y: scroll;}
.orik { display: inline-block;}
.clearfix:after { content: ""; clear: both; display: block;}

body {
  margin: 0;
  padding: 0;
  color: #333;
  line-height: 180%;
  font-family: 'Roboto',"Noto Sans JP", "游ゴシック", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", MS UI Gothic, Osaka, sans-serif;
  font-size: 16px;
  overflow-x: hidden;
  font-smoothing: antialiased;
  -webkit-font-smoothing: antialiased;
  font-weight: 400;
	position: relative;
	max-width: 100%;
}

@media screen and (max-width: 660px) {
body { font-size: 14px;}	
}

/*----------------loading------------------*/
#white {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 1000000;
  position: fixed;
  left: 0;
  top: 0;
}
#white.mb { height: calc(100vh + 65px);}

span {display: inline-block;}
/*----LUXYプリンタ対応----*/
#luxy {position: fixed !important;}	
@media print {#luxy {position: static !important;}}

/*----Ios初期化-----*/
input, textarea {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -webkit-appearance: none;
  max-width: 100%;
}

/*----tel イベント-------------*/
a.tel { cursor: default; pointer-events: none; text-decoration: none;}
@media screen and (max-width: 855px) {
  a.tel { pointer-events: auto;}
}


/*-----------------------------------------------------
ヘッダー
--------------------------------------------------------*/
.header {
  	width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 40px 40px 20px 40px;
	display: flex;
	justify-content: space-between;
}

/*--段組み---*/
.header .left {
margin: 0;
padding: 0;
width: 390px;
}
.header .right {
width: calc(100% - 390px);
padding: 0 75px 0 0;
box-sizing: border-box;
font-family: "LINE Seed JP", sans-serif;
font-weight: 700;
display: flex;
justify-content: flex-end;
}

/* ナビゲーションメニュー */
.header .right a {
	display: block;
	padding:33px 20px 25px 25px;
	position: relative;
	transition: 0.5s;
	overflow: hidden;
	white-space: nowrap;
	line-height: 100%;
	margin: 0 5px;
}

.header .right a::before {
	content: "";
	width: 24px;
	height: 19px;
	background: url("images/ck.png") no-repeat;
	background-size: contain;
	position: absolute;
	top: -50px;
	left: 50%;
	margin-left: -12px;
	transition: 0.5s;
}

.header .right a:hover::before {top: 0;}
.header .right a.current::before {top: 0;}

.header .right .hover-box a.mm {
	background: url("images/ul.jpg") no-repeat bottom center;
	background-size: 100%;
}

.hover-box {position: relative;}

.fade-content {
	opacity: 0;
	visibility: hidden;
	transition: all 0.8s ease;
	position: absolute;
	left: -30px;
	top: 80px;
	padding: 20px 30px 30px 30px;
	margin-top: 0px;
	background-color: #e26a12;
	width: auto;
	border-radius: 8px;
	z-index: 9999;
}
.fade-content a {
	display: block;
	color: #fff;
	padding: 15px 0 !important;
	font-size: 14px;
	font-weight: 400;
	border-bottom: 1px solid rgba(255,255,255,0.5);
	transition: 0.5s;
}
.fade-content a:hover {color: yellow;}


.hover-box:hover .fade-content {
  opacity: 1;
  visibility: visible;
}
.header .right .hover-box:hover .fade-content a::before {content: none;}

@media screen and (max-width: 1560px) {
.header .right a {
	margin: 0;
}
}
@media screen and (max-width: 1490px) {
.header .right a {
	padding:33px 10px 25px 10px;
}
.header .right {
padding: 0 50px 0 0;
}
}
@media screen and (max-width: 1290px) {
.header .left {
width: 300px;
}
.header .right {
width: calc(100% - 300px);
}
}
@media screen and (max-width: 1192px) {
.header .right a {font-size: 14px;}
}
@media screen and (max-width: 1112px) {
.header .right a.hm {display: none;}
.header .right a span {display: none;}
}
@media screen and (max-width: 995px) {
.header .right {display: none;}
.header {padding: 20px 100px 0px 30px;}
}
@media screen and (max-width: 450px) {
.header {padding: 20px 100px 0px 20px;}
}

/*--------------------------------------------------------
ハンバーガーメニュー
----------------------------------------------------------*/

/*----------ハンバーガー-----------*/
/*Media Queries*/

#nav-drawer {
  display: block;
  z-index: 100;
  width: 63px;
  height: 57px;
  position: fixed;
right: 20px;
top: 20px;
}
	
/*チェックボックス等は非表示に*/
#nav-drawer .nav-unshown {
  display: none;
}
/*アイコンのスペースハンバーガー*/
#nav-open {
display: inline-block;
width: 63px;
height: 57px;
box-sizing: border-box;
position: fixed;
padding: 0;
right: 20px;
top: 20px;
cursor: pointer;
z-index: 100;
transition: 0.5s;
background-color: #323232;
	border-radius: 6px;
}

/*ハンバーガー*/
#nav-open span {
  display: block;
  transition: all .2s;
  box-sizing: border-box;
}
#nav-open span {
position: absolute;
width: 25px;
height: 1px;
border-bottom: 2px solid #fff;
background-color: transparent;
left:18px;
}
#nav-open span:nth-of-type(1) {top: 20px;}
#nav-open span:nth-of-type(2) {top: 28px;}
#nav-open span:nth-of-type(3) {top: 36px;}

#nav-input:checked ~ #nav-open span:nth-of-type(1) {
-webkit-transform: translateX(0px) translateY(8px) rotate(-45deg);
transform: translateX(0px) translateY(8px) rotate(-45deg);
border-bottom: 2px solid #000;
}
#nav-input:checked ~ #nav-open span:nth-of-type(2) {display: none;}
#nav-input:checked ~ #nav-open span:nth-of-type(3) {
-webkit-transform: translateX(0px) translateY(-8px) rotate(45deg);
transform: translateX(0px) translateY(-8px) rotate(45deg);
border-bottom: 2px solid #000;
}
#nav-input:checked ~ #nav-open {
background-color: #fff;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none; /*はじめは隠しておく*/
  position: fixed;
  z-index: 2;
  top: 0; /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  /*background-color: rgba(0,0,0,0.3);*/
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block; /*カバーを表示*/
}

#nav-input:checked ~ #nav-content {
  -webkit-animation: ham 1s;
  -o-animation: ham 1s;
  -ms-animation: ham 1s;
  -moz-animation: ham 1s;
}
@keyframes ham {
0% {transform: translateY(0); opacity: 0; filter: alpha(opacity=0);}
100% {transform: translateY(0); opacity: 1.0; filter: alpha(opacity=100);}
}

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

#nav-drawer {
/*  right: 20px;*/
}
}
/*------PC版・スマホ版共通　ハンバーガーの中身----------*/

/*中身*/
#nav-content {
overflow: auto;
position: fixed;
top: 0;
left: 0;
width: 100%; /*右側に隙間を作る（閉じるカバーを表示）*/
height: 100%;
transition: 0.3s; /*滑らかに表示*/
text-align: left;
background-color: #323232;
display: none;
z-index: -10; /*最背面に隠しておく*/
padding: 0;
}
#nav-input:checked ~ #nav-content {	display: block;	z-index: 99;}
#nav-content .inner {
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}

#nav-content .inner a {color: #fff;}

.ham {
	display: flex;
	padding: 60px;
	box-sizing: border-box;
}

.ham .hhbox {
	width: 280px;
	padding: 0 30px 0 0;
}

.ham .hbox p.ttl {
	font-size: 18px;
	font-family: "Jost", sans-serif;
	margin-bottom: 10px;
	font-weight: 700;	
	color: #e1060b;
}

.ham .hbox {
	padding: 10px 30px;
	box-sizing: border-box;
}

.ham .hbox a {
	display: block;
	color: #fff;
	font-size: 14px;
	padding: 10px 20px;
	position: relative;
	transition: 0.5s;
	border: 1px solid rgba(255,255,255,0.3);
	margin-bottom: 10px;
}

@media screen and (max-width: 1050px) {
.ham {
	display: block;
	padding: 60px;
}
.ham .hhbox {
	width: 100%;
	padding: 0;
}
.ham .hhbox img {max-width: 280px;}	
.ham .hbox {float: left;}	
}
@media screen and (max-width: 740px) {
#nav-content .inner {
	height: auto;
	display: block;
}
.ham {
	padding: 60px 30px;
	max-width: 500px;
	box-sizing: border-box;
	margin: 0 auto;
}

.ham .hhbox {
	width: 100%;
	padding: 0;
}
.ham .hbox {
	width: 100%;
	padding: 0;
	padding-bottom: 50px;
}	
}
@media screen and (max-width:420px) {
.ham {
	display: block;
	padding: 30px;
	padding-top: 80px;
}	

}



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

}

/*--メインスライド---*/
#topplan {
	width: 100%;
	text-align: center;
	background-color: #d1161b;
	position: relative;
}
#topplan span {
	width: 100%;
	height: 106px;
	background-color: #e26a12;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 0;
}

#topplan p.cp {position: absolute; right: 30px; top: 40px;
font-size: 94px; color: #fff;font-family: "Jost", sans-serif;
font-weight: 900; z-index: 2;}


#slide04 {margin:0; width: 100%; height: 570px;padding: 37px 0 57px 0;}
#slide04 .slick-slide {	margin-right: 0;}
#slide04 .slider-item {
	background-color: transparent;
	overflow: hidden;
	position: relative;
	width: 333px;
	height: 476px;
	margin: 0 19px;
	z-index: 1;
}
#slide04 .slider-item:nth-child(2n) {border-top: 20px solid transparent;}

#slide04 .slider-item figure {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	border-radius: 16px;
}
#slide04 .slider-item figure img {
  	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.5s;
}

@media screen and (max-width: 920px) {
#topplan p.cp { top: 30px;font-size: 60px;}
}
@media screen and (max-width: 600px) {
#topplan p.cp {right: 20px; top: 20px;font-size: 40px;}
#slide04 {margin:0; width: 100%; height: 490px;padding: 37px 0 0 10px;}
#slide04 .slider-item {width: 280px;height: 400px;margin: 0 10px;}
}
@media screen and (max-width: 405px) {
#topplan p.cp {font-size: 30px;}
}

/*--news---*/
.topinner {
	max-width: 1600px;
	margin: 0 auto;
	padding: 0 0 0 60px;
}

.topinner p.ttlp {
	font-family: "Jost", sans-serif;
	font-size: 16px;
	font-weight: 700;
	margin: 30px 0 20px 0;
	position: relative;
}
.topinner p.ttlp::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #ccc;
	position: absolute;
	left: 0;
	top: 12px;
	z-index: 0;
}
.topinner p.ttlp span {
	position: relative;
	z-index: 1;
	background-color: #fff;
	padding: 0 20px 0 0;
}

#slide05 {width: 100%; height: auto;}	
#slide05 .slick-slide {margin: 0 36px 30px 0;}
#slide05 .slider-item figure {
	width: 100%;
	height: 18vw;
	max-height: 239px;
}

#slide05 .slider-item figure img {
	width: 100%; 
	height: 100%;
	object-fit: cover;
}

#slide05 .slider-item .txt {padding: 10px;}
#slide05 .slider-item .txt h3 {
	font-weight: 600;
	font-size: 16px;
	margin: 5px 0;
	padding: 0;
}
#slide05 .slider-item .txt p {font-size: 15px;line-height: 160%;}
#slide05 .slider-item .txt p.dt {
	font-family: "Jost", sans-serif;
	font-size: 14px;
	font-weight: 500;
	margin-top: 5px;
	color: #7b7b7b;
}

@media screen and (max-width: 760px) {
#slide05 .slider-item figure {
	width: 100%;
	height: 36vw;
	max-height: 239px;
}
}
@media screen and (max-width: 600px) {
.topinner {padding: 0 0 0 30px;}
#slide05 .slider-item .txt {padding: 10px 0;}
}

/*---番号の区切り------*/
.num_top {
	padding: 0 60px;
	position: relative;
}
.num_top::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #ccc;
	position: absolute;
	left: 0;
	top: 34px;
	z-index: 0;
}
.num_top p {
	display: inline-block;
	width: 80px;
	height: 67px;
	background-color: #e1060b;
	color: #fff;
	font-family: "Jost", sans-serif;
	font-weight: 700;
	font-size: 35px;
	line-height: 67px;
	text-align: center;
	position: relative;
	z-index: 1;
}
@media screen and (max-width: 660px) {
.num_top {padding: 0 30px;}
}



/*//////////トップの共通のもの//////////*/

.top_cont {
	max-width: 930px;
	margin: 0 auto;
	padding: 80px 60px;
}
p.big_en {
	font-size: 54px;
	font-family: "Jost", sans-serif;
	font-weight: 700;
	margin: 0 0 20px 0;
	line-height: 120%;
}
h3.ttl_jp {
	font-size: 18px;
	font-weight: 600;
	margin: 0 0 20px 0;
}

p.cyaji {
	margin: 30px 0 0 0;
	position: relative;
	transition: 0.5s;
	display: inline-block;
}
p.cyaji::after {
	content: "";
	width: 74px;
	height: 13px;
	background: url("images/yaji.png") no-repeat;
	background-size: contain;
	position: absolute;
	right: -85px;
	top: 8px;
	transition: 0.5s;
}
p.cyaji:hover::after {
	right: -105px;
}

@media screen and (max-width: 1000px) {
.top_cont {padding: 60px 60px;}	
p.big_en {font-size: 40px;margin: 0 0 15px 0;}
}
@media screen and (max-width: 660px) {
.top_cont {padding: 40px 30px;}	
p.big_en {font-size: 30px;margin: 0 0 15px 0;}
}

/*---ロゴ部----*/
.rogo {
	display: flex;
	justify-content: space-between;
	column-gap: 50px;
}
.rogo figure {width: 234px; order: 2;}
.rogo .txt {width: calc(100% - 234px - 50px); order: 1;}
@media screen and (max-width: 858px) {
.rogo {display: block;}
.rogo figure {width: 30%; float: right; margin: 0 0 5px 20px;}
.rogo .txt {width: 100%;}	
}

/*---サービス一覧----*/
.sv_block {
	display: flex;
	flex-wrap: wrap;
	margin: 50px 0 0 0;
	border-top: 1px solid #7b7b7b;
}
.sv_block .box {
	width: 25%;
	border: 1px solid #7b7b7b;
	background-color: #fff;
	text-align: center;
	padding: 30px;
	box-sizing: border-box;
	border-top: none;
	border-right: none;
}
.sv_block .box:nth-child(4n),
.sv_block .box:last-child {border-right:1px solid #7b7b7b; }

.sv_block .box img {
	width: 98px;
	height: 98px;
	object-fit: contain;
}
@media screen and (max-width: 800px) {
.sv_block .box {width: 50%;}	
.sv_block .box:nth-child(2n) {border-right:1px solid #7b7b7b; 
}
}
@media screen and (max-width: 440px) {
.sv_block .box {padding: 20px 10px;}	
.sv_block .box img {width: 60%;	height: auto;}
}


/*--SS一覧---*/
.svs {
	max-width: 1362px;
	padding: 80px 60px;
	margin: 0 auto;
}
.svs.acv {padding-top: 40px;}
.svs_inner {
	max-width: 930px;
	margin: 0 auto;
}
.svs_block {
	display: flex;
	flex-wrap: wrap;
	margin: 50px 0 0 0;
	border-top: 1px solid #7b7b7b;
}
.svs_block .box {
	width: 33.333%;
	border: 1px solid #7b7b7b;
	background-color: #fff;
	text-align: center;
	padding: 40px;
	box-sizing: border-box;
	border-top: none;
	border-right: none;
	font-family: "LINE Seed JP", sans-serif;
}
.svs_block .box:nth-child(3n),
.svs_block .box:last-child {border-right:1px solid #7b7b7b; }

@media screen and (max-width: 1306px) {
.svs_block .box {padding: 30px;}	
}
@media screen and (max-width: 1154px) {
.svs_block .box {width: 50%;}	
.svs_block .box:nth-child(3n) {border-right: none;}
.svs_block .box:nth-child(2n) {border-right:1px solid #7b7b7b; }
.svs_block .box:last-child {border-right:1px solid #7b7b7b; }
}
@media screen and (max-width: 1000px) {
.svs {padding: 60px 60px;}	
}
@media screen and (max-width: 820px) {
.svs_block .box {width: 100%;border-right:1px solid #7b7b7b;}	
.svs_block .box:nth-child(3n) {border-right:1px solid #7b7b7b;}
}

@media screen and (max-width: 660px) {
.svs.acv {padding-top: 20px;}
.svs {padding: 40px 30px;}	
}
@media screen and (max-width: 500px) {
.svs_block .box {padding: 20px 0; border-left: none; border-right: none !important;}
.svs_block .box {border-right:none}	
.svs_block .box:nth-child(3n) {border-right:none}
}

/*--SS箱の中---*/
.ssimg {display: flex;}
.ssimg figure {width: 50%; height: 12vw; max-height: 180px; overflow: hidden;}
.ssimg figure img {width: 100%; height: 100%;object-fit: cover; transition: 0.5s;}
.ssimg figure img:hover {transform: scale(1.1);}

.svs_block .box .txt {padding: 15px;text-align: left;}
.svs_block .box .txt h3 {font-weight: 600; font-size: 16px;}

/*--ボタン類--*/
.svs_block .box .icon {display: flex; column-gap: 5px;}
.svs_block .box .icon a {color: #fff; font-size: 14px; padding: 3px;}
.svs_block .box .icon a.ene {
	background-color: #d1161b;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}
.svs_block .box .icon a.tim {
	background-color: #004097;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}
.svs_block .box .icon a.abo {
	background-color: #32b74f;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}

.svs_block .box .icon a.ene:hover {background-color: #7b1d20;}
.svs_block .box .icon a.tim:hover {background-color: #0a2851;}
.svs_block .box .icon a.abo:hover {background-color: #333;}

@media screen and (max-width: 1154px) {
.ssimg figure {height: 18vw; max-height: inherit;}
}

@media screen and (max-width: 1306px) {
.svs_block .box .txt {padding: 15px 0;}	
}
@media screen and (max-width: 820px) {
.ssimg figure {height: 37vw;}	
}

@media screen and (max-width: 500px) {
.ssimg figure {height: 42vw;}	
}

/*--バナー部分---*/

.cu_bnr {border-top: 1px solid #ccc;}
.cu_bnr .inner {
	max-width: 1181px;
	display: flex;
	margin: 80px auto;
	column-gap: 50px;
	padding: 0 50px;
	}

.cu_bnr .inner .box {
	width: 50%;
	height: 20vw;
	position: relative;
	overflow: hidden;
	max-height: 253px;
}

.cu_bnr .inner .box:hover img {transform: scale(1.1);}

.cu_bnr .inner .box img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	z-index: 0;
	transition: 0.5s;
}

.cu_bnr .inner .box .fil {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.2);
	object-fit: cover;
	z-index: 0;
}
.cu_bnr .inner .box .txt {
	position: relative;
	z-index: 2;
	color: #fff;
	padding: 100px 0 0 30px;
}

.cu_bnr .inner .box .txt p.big {
	font-family: "Jost", sans-serif; font-weight: 700;
	font-size: 42px;
	margin-bottom: 10px;
}


@media screen and (max-width: 1270px) {
.cu_bnr .inner {
	margin: 50px auto;
	padding: 0 50px;
	}
}
@media screen and (max-width: 942px) {
.cu_bnr .inner .box .txt {
	padding: 60px 0 0 30px;
}
}


@media screen and (max-width: 820px) {
.cu_bnr .inner {margin: 50px auto;padding: 0 50px;}
.cu_bnr .inner .box .txt p.big {font-size: 36px;}
}
@media screen and (max-width: 660px) {
.cu_bnr .inner {
	margin: 30px auto;
	padding: 0 30px;
	column-gap: 30px;
	}
.cu_bnr .inner .box .txt {
	padding: 30px 0 0 15px;
}
}
@media screen and (max-width: 600px) {
.cu_bnr .inner .box .txt p.big {font-size: 28px;}
}

@media screen and (max-width: 500px) {
.cu_bnr .inner {column-gap: 10px;}
.cu_bnr .inner .box .txt p.big {margin-bottom: 0px;font-size: 18px;}
.cu_bnr .inner .box .txt {padding: 25px 0 0 15px;}
}
@media screen and (max-width: 520px) {
.cu_bnr .inner .box .txt {padding: 25px 0 0 10px;}
	
.cu_bnr .inner {
	display: block;
	}

.cu_bnr .inner .box {
	width: 100%;
	height: 30vw;
	margin-top: 5px;
}
}



/*-----------------------------------------------------
フッタ
--------------------------------------------------------*/
.totop {text-align: right;padding: 0 20px 15px 20px;}
.totop a {
	display: inline-block;
	width: 30px;
	height: auto;
	border-bottom: 4px solid #000;
	transition: 0.5s;
	padding-bottom: 0;
}
.totop a img {position: relative; top:0; transition: 0.5s;}
.totop a:hover img {top: -10px;}

@media screen and (max-width: 800px) {
.totop {text-align: center;	}
}


.footer {
  	width: 100%;
	box-sizing: border-box;
	margin: 0 auto;
	padding: 40px 80px;	
	position: relative;
	background-color: #323232;
	color: #fff;
}

.footer .comp {
  	width: 286px;
	float: left;
}
.footer .comp p a {color: #fff; border-bottom: 1px solid rgba(255,255,255,0.6);}


.footer .right {
  	float: right;
  	width: auto;
	display: flex;
	column-gap: 30px;
}

.footer .right .fbox {
	padding: 10px 30px;
}

.footer .right .fbox p.ttl {
	font-size: 18px;
	font-family: "Jost", sans-serif;
	margin-bottom: 10px;
	font-weight: 700;
}



.footer .right a {
	display: block;
	color: #fff;
	font-size: 14px;
	padding: 5px 0 0 15px;
	position: relative;
	transition: 0.5s;
}

.footer .right a::before {
	content: "";
	width: 12px;
	height: 6px;
	background: url("images/migi.png") no-repeat center;
	background-size: contain;
	position: absolute;
	left: 0;
	top: 15px;
}
.footer .right a:hover {color: #e1060b;}


@media screen and (max-width: 998px) {
.footer {padding: 40px 40px;}
.footer .right {display: none;}
}
@media screen and (max-width: 660px) {
.footer {padding: 30px 30px 40px 30px;}
}
@media screen and (max-width: 500px) {
}

.cpr {
	width: 100%;
	padding: 20px 60px;
	font-size: 14px;
	box-sizing: border-box;
	text-align: left;
	font-family: "Jost", sans-serif;
}
@media screen and (max-width: 660px) {
.cpr {padding: 20px 30px;}	
}

/*--------------------------------------------------------
コンテンツヘッダ
----------------------------------------------------------*/
.chead {
	width: 100%;
	background-color: #d1161b;
	position: relative;
	padding: 32px;
	box-sizing: border-box;
	height: 35vw;
	max-height: 510px;
}
.chead.u20 {margin-bottom: 20px;}

.chead span {width: 100%;height: 106px;	background-color: #e26a12;
	position: absolute;	left: 0;bottom: 0;	z-index: 0;}

.chead .inner {
	max-width: 1500px;
	margin: 0 auto;
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}

.chead .inner img {
	position: absolute;
	border-radius: 25px;
	width: 70%;
	right: 0;
	top: 0;
	height: 100%;
	object-fit: cover;
}
.chead .inner .txt {
	position: relative;
	z-index: 1;
	color: #fff;
	padding-left: 35px;
}
.chead .inner .txt h1 {
	font-size: 25px;
}

.chead .inner .txt p {
	font-size: 75px;
	font-family: "Jost", sans-serif;
	font-weight: 700;
	line-height: 120%;
}

@media screen and (max-width: 1100px) {
.chead .inner .txt {padding-left: 5px;}
.chead .inner img {border-radius: 20px;}
.chead .inner .txt h1 {font-size: 22px;}
.chead .inner .txt p {font-size: 50px;}
}
@media screen and (max-width: 890px) {
.chead span {height: 70px;}
}

@media screen and (max-width: 750px) {
.chead {
	padding: 20px 20px 10px 20px;
	height: auto;
	max-height: inherit;
}
.chead .inner {display: block;}
.chead .inner img {
	position: static;
	width: 100%;
}
.chead .inner .txt {margin-bottom: 20px;}
}
@media screen and (max-width: 660px) {
.chead .inner .txt h1 {font-size: 18px;}
.chead .inner .txt p {font-size: 30px;}
.chead .inner img {border-radius: 15px;}
}


.chead.mini {max-height: inherit; height: 230px;}
.chead.mini span {height: 35px;}
@media screen and (max-width: 750px) {
.chead.mini {height: 150px;}
.chead.mini span {height: 25px;}
}
@media screen and (max-width: 660px) {
.chead.mini {height: 130px;}
.chead.mini span {height: 20px;}
}

/*---------------------------------------
会社概要
----------------------------------------*/
#company .top_cont {
	max-width: 930px;
	margin: 0 auto;
	padding: 80px 60px;
}
　
#company .rogo {
	display: flex;
	justify-content: space-between;
	column-gap: 50px;
}
#company .rogo figure {width: 324px; order: 2;}
#company .rogo figcaption {font-size: 14px;}
#company .rogo .txt {width: calc(100% - 324px - 50px); order: 1;}
#company .rogo .txt p strong {
	display: block;
	margin: 0;
	font-size: 18px;
}
@media screen and (max-width: 858px) {
#company .rogo {display: block;}
#company .rogo figure {width: 30%; float: right; margin: 0 0 5px 30px;}
#company .rogo .txt {width: 100%;}	
}
@media screen and (max-width: 660px) {
#company .top_cont {
	padding: 40px 30px;
}
}

#company .top_cont h3 {
	font-size: 20px;
	margin: 0 0 30px 0;
}

.comph table {border-top: 1px solid #7b7b7b; border-left: 1px solid #7b7b7b;width: 100%; border-spacing: 0;}
.comph table td,
.comph table th {padding: 20px;border-right: 1px solid #7b7b7b;border-bottom: 1px solid #7b7b7b; text-align: left; vertical-align: top;}
.comph table th {padding: 20px; font-weight: 500;}

.comph table img.his {width: 150px;
height: auto; float: right; margin: 0 0 0 20px;}

@media screen and (max-width: 500px) {
.comph table {border: none;}
.comph table td,
.comph table th {padding: 10px 0; border: none;}
.comph table th {border-top: 1px solid #7b7b7b; padding-bottom: 0;}
	
.comph table tr,
.comph table td,
.comph table th {display: block; width: 100% !important;}
.comph table img.his {width: 30%;height: auto; }
}

/*---------------------------------------
サービスステーション詳細
----------------------------------------*/
/*--アイコン部---*/
.ss_iconsp {
	border-bottom: 1px solid #727272;
	padding: 0 15px 15px 15px;
	text-align: center;
	font-family: "LINE Seed JP", sans-serif;
	margin-bottom: 110px;
}

@media screen and (max-width: 1060px) {
.ss_iconsp {margin-bottom: 60px;}	
}
@media screen and (max-width: 680px) {
.ss_iconsp {margin-bottom: 30px;}		
}

.ss_iconsp .inner {
	max-width: 1020px;
	column-gap: 5px;
	margin: 0 auto;
	display: flex;
}
.ss_iconsp a {display: block; flex-grow: 1; color: #fff; padding: 15px;}
.ss_iconsp a img {width: 30px; height: auto; margin-right: 10px; position: relative; top: 5px;}
.ss_iconsp a.ene {
	background-color: #d1161b;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}
.ss_iconsp a.tim {
	background-color: #004097;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}
.ss_iconsp a.map {
	background-color: #66817e;
	border-radius: 3px;
	text-align: center;
	flex-grow: 1;
	transition: 0.5s;
}

/*--段組み---*/

.ss_prof {
	max-width: 1020px;
	padding: 0 60px;
	display: flex;
	column-gap: 45px;
	margin: 0 auto 30px auto;
}
.ss_prof .boss {width:250px;}
.ss_prof .txt {width: calc(100% - 250px - 45px);}

.ss_prof .boss p {
	background-color: #e26a12;
	color: #fff;
	margin: 0;
	padding: 10px;
	text-align: center;
	font-weight: 600;
	position: relative;
	top: -8px;
}
.ss_prof .boss img {margin: 0; bottom: 0;}

@media screen and (max-width: 1060px) {
.ss_prof {padding: 0 30px;}	
}

@media screen and (max-width: 680px) {
.ss_prof {flex-wrap: wrap;}
.ss_prof .boss {width:100%; order: 2; max-width: 300px; margin: 20px auto 0;
}
.ss_prof .txt {width: 100%; order: 1;}	
}

/*--表の中---*/

.ss_prof table {
	border-spacing: 0;
	width: 100%;
	font-family: "LINE Seed JP", sans-serif;
	font-size: 15px;
}

.ss_prof table td {border-bottom: 1px dashed #666; padding: 8px 0 8px 20px; vertical-align: top;}
.ss_prof table td:first-child {padding: 8px 0;}
.ss_prof table td:first-child span {
	color: #fff;
	background-color: #666;
	border-radius: 3px;
	font-family: "Jost","Noto Sans JP", sans-serif;
	display: block;
	padding: 0 10px;
}
.ss_prof table td h3 {
	font-size: 25px;
	line-height: 140%;
	font-weight: 600;
}
.ss_prof table td h3 span {margin-right: 10px;}
.ss_prof table td h3 span.red {
	display: inline-block;
	font-size: 16px;
	background-color: #d1161b;
	padding: 0 10px;
	border-radius: 6px;
	color: #fff;
}
.ss_prof table td a.map {
	border: 1px solid #666;
	border-radius: 5px;
	padding: 0 5px;
	margin-left: 5px;
	font-family: "Jost", sans-serif;
	transition: 0.5s;
}
.ss_prof table td a.map:hover {
	background-color: #999;
}

.ss_prof table td h3 span.sm {display: none;}
@media screen and (max-width: 920px) {
.ss_prof table,
.ss_prof table tr,
.ss_prof table td {display: block;}
.ss_prof table td:first-child span {display: inline-block; font-size: 14px; margin-top: 5px;}
.ss_prof table td {padding: 8px 0;}
.ss_prof table td:first-child {border: none; padding: 0;}
.ss_prof table td:first-child span.smnone {display: none;}
.ss_prof table td h3 span.sm {display: inline-block;}
}
@media screen and (max-width: 510px) {
.ss_prof table td h3 {font-size: 20px;}	
}

/*--サービスのブロック---*/
.sv_blocks {
	max-width: 1020px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	column-gap: 2px;
	padding: 0 30px;
}
.sv_blocks .box {
	width: calc((100% - 6px)/4);
	box-sizing: border-box;
	text-align: center;
	height: 23vw;
	max-height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #f6f6f6;
	margin-bottom: 2px;
}

.sv_blocks .box img {width: auto; height: 98px; object-fit: contain;}

@media screen and (max-width: 722px) {
	
.sv_blocks .box {
	width: calc((100% - 6px)/2);
	height: 40vw;
	max-height: inherit;
}	
.sv_blocks .box img {width: 60%; max-width: 98px; height: auto;}
}

/*---MAP---*/
.ssl_map {
	max-width: 1020px;
	margin: 0 auto;
	padding: 30px;
}
.ssl_map iframe {
	width: 100%;
	height: 80vw;
	max-height: 400px;
}
.ssl_map p {
	color: #d1161b;
	font-size: 22px;
	font-family: "Jost", sans-serif;
	font-weight: 600;
	padding: 5px;
}


/*--GALLERY NEW---*/
#gallerytop {
	padding: 10px 0 30px 0;
}
#gallerytop .topinner {
	margin: 0 auto;
	padding: 0;
}
#slide02 {width: 100%; height: auto;}	
#slide02 .slick-slide {margin: 0 18px;}
#slide02 .slider-item p {
	font-family: "LINE Seed JP", sans-serif;
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	margin-top: 10px;
}

#slide02 .slider-item img {
	width: 14vw;
	height: 14vw;
	max-width: 200px;
	max-height: 200px;
	border-radius: 50%;
	object-fit: cover;
	background-color: #f6f6f6;
	display: block;
	margin: 0 auto;
}
@media screen and (max-width: 1100px) {
#slide02 .slider-item img {
	width: 20vw;
	height: 20vw;
}	
}
@media screen and (max-width: 770px) {
#slide02 .slider-item img {
	width: 25vw;
	height: 25vw;
	max-width: inherit;
	max-height: inherit;
}	
}
@media screen and (max-width: 530px) {
#gallerytop {
	padding: 0 10px;
}
#gallerytop.ssll {padding-bottom: 30px;}
#slide02 .slick-slide {margin: 0 9px;}
#slide02 .slider-item img {
	width: 37vw;
	height: 37vw;
}	
}


/*--------------------------------------------------
採用案内
-------------------------------------------------*/

.balloon2-top {
  position: relative;
  display: inline-block;
  margin: 1.5em 0;
  padding: 7px 10px;
  min-width: 120px;
  max-width: 100%;
  color: #000;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #d1161b;
  box-sizing: border-box;
	border-radius: 10px;
}

.balloon2-top:before {
  content: "";
  position: absolute;
  top: -24px;
  left: 50%;
  margin-left: -15px;
  border: 12px solid transparent;
  border-bottom: 12px solid #FFF;
  z-index: 2;
}

.balloon2-top:after {
  content: "";
  position: absolute;
  top: -30px;
  left: 50%;
  margin-left: -17px;
  border: 14px solid transparent;
  border-bottom: 14px solid #d1161b;
  z-index: 1;
}

.balloon2-top p {
  margin: 0 0 10px 0;
  padding: 0;
	line-height: 150%;
}

/*---区切り------*/
.num_rec {
	padding: 0 30px;
	position: relative;
	margin: 50px 0;
}
.num_rec::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #ccc;
	position: absolute;
	left: 0;
	top: 34px;
	z-index: 0;
}
.num_rec p {
	max-width: 1120px;
	margin: 0 auto;
}
.num_rec p span {
	display: inline-block;
	width: auto;
	height: 67px;
	background-color: #e1060b;
	color: #fff;
	font-family: "LINE Seed JP", sans-serif;
	font-weight: 700;
	font-size: 24px;
	line-height: 67px;
	text-align: center;
	position: relative;
	z-index: 1;
	padding: 0 20px;
	transform: rotate(-10deg);
}
@media screen and (max-width: 750px) {
.num_rec {
	padding: 0 20px;
	position: relative;
	margin: 30px 0;
}
.num_rec p span {
	height: 40px;
	font-size: 18px;
	line-height: 40px;
	padding: 0 20px;
}
}

.jinji_msg {
	max-width: 1120px;
	margin: 0 auto;
	display: flex;
	column-gap: 50px;
	padding: 0 60px;
}

.jinji_msg figure {	width: 40%;}
.jinji_msg .txt {width: calc(60% - 50px);}

.jinji_msg .txt h2 {
	font-size: 17px;
	font-weight: 600;
	margin-bottom: 20px;
}

.jinji_msg .txt p.name {
	margin: 10px 0 0 0;
	text-align: right;
}
@media screen and (max-width: 750px) {
.jinji_msg {display: block;	padding: 0 30px;}
.jinji_msg figure {
	width: 40%;
	float: right;
	margin: 0 0 5px 20px;
}
.jinji_msg .txt {width: 100%;}
}

/*--一覧---*/

.reclist {
	max-width: 1080px;
	padding: 0 60px;
	margin: 0 auto 50px; 
}

@media screen and (max-width: 820px) {
.reclist {padding: 0 30px;}	
}

.reclist .inner a {
	display: flex;
	justify-content: space-between;
	background-color: #eeeded;
	margin-bottom: 13px;
	transition: 0.5s;
}
.reclist .inner a:hover {background-color: #d7d4d4;}
.reclist .inner p {padding: 10px;}
.reclist .inner .btn {
	width: 167px;
	background-color: #d1161b;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.reclist .inner a .btn p span {
	display: inline-block;
	margin-left: 10px;
	transition: 0.5s;
}
.reclist .inner a:hover .btn p span {margin-left: 20px;}
.reclist .inner .txt {
	width: calc(100% - 167px);
	display: flex;
	align-items: center;
}
.reclist .inner .txt p:nth-child(1) {width: 25%; font-size:1.1em; font-weight: 700; text-align: center;}
.reclist .inner .txt p:nth-child(2) {width: 30%;}
.reclist .inner .txt p:nth-child(3) {width: 45%;}
@media screen and (max-width: 660px) {
.reclist .inner .btn {width: 130px;}
.reclist .inner .txt {width: calc(100% - 130px);}
}
@media screen and (max-width: 600px) {
.reclist .inner .txt {
	display: block;
	padding: 10px 15px;
}
.reclist .inner .txt p:nth-child(1),
.reclist .inner .txt p:nth-child(2),
.reclist .inner .txt p:nth-child(3) {width: 100%; text-align: left;}
.reclist .inner p {padding: 0px;}
}
@media screen and (max-width: 400px) {
.reclist .inner a .btn p span {display: none;}
}

/*---採用案内詳細------------------*/

.rec_ol {
	max-width: 876px;
	margin: 0 auto;
	padding: 30px 30px;
	text-align: center;
}
.rec_ol p.htxt {display: inline-block;	text-align: left;}
.rec_ol h2 {
	font-size: 21px;
	margin: 30px 0 20px 0;
	font-weight: 500;
}
.rec_ol h2.ov {margin-top: 60px;}
.rec_ol table {
	border: 1px solid #7d7c7c;
	border-bottom: none;
	text-align: left;
	border-spacing: 0;
	width: 100%;
}
.rec_ol table td,
.rec_ol table th {
	border-bottom: 1px solid #7d7c7c;
	text-align: left;
	font-weight: normal;
	padding: 10px;
}
.rec_ol table th {
	background-color: #eeeded; 
	width: 120px; 
	font-weight: normal;
	vertical-align: top;
}

@media screen and (max-width: 500px) {
.rec_ol table,
.rec_ol table tr,
.rec_ol table th,
.rec_ol table td {
	display: block;
	width: 100%;
	box-sizing: border-box;
}
.rec_ol table th {border-bottom: none;}	
}

/*---------------------------------------
お問合せ
----------------------------------------*/
.contact {
	max-width: 876px;
	margin: 0 auto;
	padding: 50px 30px;
	text-align: center;
}

.contact p.htxt {display: inline-block;	text-align: left;
margin-bottom: 30px;}

.contact h2 {
	font-size: 20px;
	font-weight: 600;
	margin: 0 0 20px 0;
	text-align: center;
}
.contact .btn a {
	display: block;
	max-width: 392px;
	padding: 20px;
	text-align: center;
	border: 1px solid #333;
	border-radius: 6px;
	font-size: 17px;
	font-weight: 600;
	margin: 0 auto;
	transition: 0.5s;
}
.contact .btn a:hover {background-color: #f38d00; color: #fff;}
.contact .btn {margin-bottom: 50px;}

/*-----------------------------
お知らせ
-------------------------------*/
#news .inners {
	max-width: 1186px;
	padding: 0 40px;
	display: flex;
	column-gap: 40px;
	flex-wrap: wrap;
	margin: 80px auto;
}
#news .inners .box {
	width: calc((100% - 80px)/3);
	margin-bottom: 70px;
}
#news .inners .box p.dt {
	font-size: 14px;
	color: #d1161b;
	font-family: "Jost", sans-serif;
	font-weight: 500;
	padding: 5px 10px;
}
#news .inners .box figure {
	width: 100%;
	height: 20vw;
	max-height: 239px;
	overflow: hidden;
}
#news .inners .box figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#news .inners .box .txt {padding: 10px;}
#news .inners .box h3 {
	font-size: 15px;
	font-weight: 500;
	margin: 10px 0 15px 0;
	line-height: 160%;
}
#news .inners .box p {
	font-size: 15px;
	font-weight: 400;
	line-height: 140%;
}
@media screen and (max-width: 1000px) {
#news .inners {
	padding: 0 30px;
	column-gap: 30px;
	margin: 40px auto;
}	
#news .inners .box {width: calc((100% - 60px)/3);}
}
@media screen and (max-width: 840px) {
#news .inners .box {width: calc((100% - 30px)/2); margin-bottom: 40px;}
#news .inners .box figure {	height: 30vw;max-height: inherit;}
}
@media screen and (max-width:500px) {
#news .inners {
	padding: 0 30px;
	column-gap: 30px;
	margin: 40px auto;
}	
#news .inners .box {
	width: 100%;
	display: flex;
	position: relative;
	justify-content: space-between;
	border-top: 2px solid #d1161b;
}
#news .inners .box p.dt {
	position: absolute;
	left: 0;
	top: 0;
	background-color: #d1161b;
	color: #fff;
}
#news .inners .box figure {
	order: 2;
	width: 35%;
	height: 30vw;
	margin-top: 2px;
	}
#news .inners .box .txt {
	order: 1;
	width: 60%;
	padding: 40px 0 0 0;
	}
}

/*---お知らせ詳細----*/

.kiji_head {text-align: center;	padding: 50px 0;}
.kiji_head h1 {font-size: 20px;}
.kiji_head p {
	font-size:60px;
	font-family: "Jost", sans-serif;
	font-weight: 700;
	line-height: 140%;
}

@media screen and (max-width: 580px) {
.kiji_head {padding: 50px 0 20px 0;}
.kiji_head h1 {font-size: 20px;}
.kiji_head p {font-size:40px;}
}


/*--段組み---*/
.kiji {
	max-width: 1200px;
	margin: 80px auto;
	display: flex;
	justify-content: space-between;
	padding: 0 60px;
}

.kiji .side {width: 280px;}
.kiji .main {width: calc(100% - 280px - 80px);}

.kiji .side .box {
	width: 100%;
	justify-content: space-between;
	margin-bottom: 10px;

}
.kiji .side .box a {
	display: block;
	line-height: 140%;
	padding: 15px;
	background-color: #f6f6f6;
	border-radius: 10px;
}


.kiji .side .box p.dt {
	color: #d1161b;
	font-family: "Jost", sans-serif;
	font-size: 13px;
	font-weight: 500;
}

.kiji .side .box figure {
	width: 35%;
	height: 90px;
	float: right;
	margin: 2px 0 2px 15px;
	overflow: hidden;
	}
.kiji .side .box figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.kiji .side .box h3 {
	font-weight: 500;
	font-size: 14px;
	margin:5px 0;
}
.kiji .side .box p {
	font-size: 14px;
}



/*--記事部分---*/
.kiji .main p.dt {
	font-size: 14px;
	color: #d1161b;
	font-family: "Jost", sans-serif;
	font-weight: 500;
	padding: 5px 0;
}
.kiji .main h1 {
	font-size: 22px;
	margin: 0 0 10px 0;
	border-top: 1px solid #d1161b;
	padding: 20px 0;
	line-height: 160%;
}

@media screen and (max-width: 1100px) {
.kiji {	margin: 50px auto;	padding: 0 40px;}
.kiji .main {width: calc(100% - 280px - 40px);}	
}
@media screen and (max-width: 950px) {
.kiji {
	margin: 50px auto;
	padding: 0 40px;
	display: block;
}
.kiji .side {width: 100%;}
.kiji .main {width: 100%; margin-bottom: 30px;}
.kiji .side .box figure {
	width: 35%;
	height: 20vw;
	}
}
@media screen and (max-width: 580px) {
.kiji {
	margin: 30px auto;
	padding: 0 30px;
}
}
@media screen and (max-width: 450px) {
.kiji .main h1 {
	font-size: 19px;
	margin: 0 0 10px 0;
	padding: 15px 0;
}	
}

/*---news edi ----*/
.news_edi p,
.news_edi figure {margin: 10px 0;}

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

.news_edi h2,
.news_edi h3,
.news_edi h4 {
	font-size: 19px;
	margin: 30px 0 20px 0;
	padding: 0;
}	

.news_edi a {
	background-color: #283B70;
	color: #fff;
	display: inline-block;
	padding: 0 10px;
	margin: 0 4px 2px 4px;
	border-radius: 50px;
	transition: 0.5s;
}

.news_edi a:hover {background-color: #C01417;}

.news_edi iframe {
	width: 100%;
	height: 80vw;
	max-height: 400px;
	margin: 20px 0;
}



@media screen and (max-width: 580px) {
	
	
}
/*------------------------------------------------------
ページングのスタイル
-----------------------------------------------------------*/
.newer-older {
	margin: 30px auto 0px auto;
	letter-spacing: -0.4em;
	display:flex;
	-js-display: flex;
	flex-direction:row;
	flex-wrap:wrap;
	width: 100%;
	max-width: 1200px;
	font-size: 14px;
	font-weight: 500;
	border-top: 1px solid #d6d6d6;
}
.newer-older p {margin: 0; padding: 0;}

.newer-older p.newer {text-align: right; border-left: 1px solid #d6d6d6;}
.newer-older p.older {text-align: left; }
.newer-older p.blog {
	text-align: center; 
	background-color: #f6f6f6;
}

.newer-older p.older,
.newer-older p.newer {
	letter-spacing: normal;
	box-sizing: border-box;
	vertical-align: middle;
}

.newer-older p.older{width: calc(50%)}
.newer-older p.newer{width: calc(50%)}


.newer-older p.older a,
.newer-older p.newer a {
	height: 100%;
	display: block;
	text-decoration: none;
	transition: 0.5s;
	box-sizing: border-box;
	position: relative;
}

.newer-older p.newer a::after {
	content: "→";
	position: absolute;
	right: 5px;
	top: calc(50% - 16px);
	font-family: "Figtree", sans-serif;
}
.newer-older p.older a::after {
	content: "←";
	position: absolute;
	left: 5px;
	top: calc(50% - 16px);
	font-family: "Figtree", sans-serif;
}


.newer-older p.older a {padding: 20px 20px 20px 30px;}
.newer-older p.newer a {padding: 20px 30px 20px 20px;}

@media screen and (max-width: 710px) {
.newer-older p.newer {text-align: left;}
}
@media screen and (max-width: 550px) {

.newer-older p.older a {padding: 20px 10px;}
.newer-older p.newer a {padding: 20px 10px;}

	
.newer-older p.older{width: 50%}
.newer-older p.newer{width: 50%; }
.newer-older p.blog { display: none;}
	
.newer-older p.newer a::after,
.newer-older p.older a::after {display: none;}	
}

.bgred{
    background-color: #e60012;
    color: white;
    text-align: center;
    margin: 0 0% 10px 0%;
    padding: 2px 15px;
    display: inline-block;
}

/*------------------------------------**/

/*---------------------------------------------------
ページングカスタマイズ
---------------------------------------------------------*/
nav.pagination {
	letter-spacing: normal; 
	text-align: center;
	font-size: 16px;
	color:#000;
	margin: 60px 0 ;
	position: relative;
	z-index: 999;
}

nav.pagination h2 {display: none;}
nav.pagination a{
	display: inline-block;
	color:#000;
	margin: 0 2px;
	text-decoration: none;
	width: 30px;
	height: 30px;
	border-radius: 30px;
	transition: 0.5s;
}

nav.pagination a:hover {background-color: #d6d6d6;}

nav.pagination span.page-numbers {
	background-color: #d1161b;
	display: inline-block;
	padding: 0;
	width: 30px;
	height: 30px;
	color: #fff;
	text-decoration: none;
	border-radius: 30px;
}

nav.pagination span.dots{
	background: none;
	color:#000;
}
/*--nav.pagination span.page-numbers {background-color: #d6d6d6;}--*/


/*----------------------
サービス一覧
----------------------*/
.svinner {
	max-width: 990px;
	margin: 80px auto; 
	padding: 0 60px;
}
.svinner p.htxt {margin-bottom: 50px;}
.svinner .box {
	padding: 15px;
	display: flex;
	align-items: center;
	background-color: #fff;
	box-shadow: 1px 1px 25px 10px rgba(0,0,0,0.05);
	margin-bottom: 20px;
}

/*---段組み---*/
.svinner .box .icon {width: 190px;	text-align: center;}
.svinner .box .img {width: 30%;	position: relative;}
.svinner .box .txt {
	width: calc(100% - 190px - 30%);
	padding: 20px 40px 20px 20px;
	box-sizing: border-box;
}
.svinner .box .txt h3 {
	font-size: 20px;
	font-weight: 600;
	margin: 0 0 10px;
}
.svinner .box .txt p.mini {
	font-size: 15px;
	font-weight: 600;
	margin: 0;
}
.svinner .box .txt p.mini a { border-bottom: 2px dotted #333; padding-bottom: 2px;transition: 0.5s;}
.svinner .box .txt p.mini a:hover {color: #e26a12;border-bottom: 2px dotted #e26a12}

.svinner .box .txt h4 {
	font-size: 14px;
	font-weight: 600;
	margin: 15px 0 0 0;
	color: #e26a12;
	border-top: 2px dotted #e26a12;
	padding: 5px 0 0 0;
}
.svinner .box .icon figure {
	width: 120px;
	height: 120px;
	margin: 0 auto;
	border-radius: 50%;
	overflow: hidden;
	background-color: #fff;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #d6d6d6;
}

.svinner .box .icon  figure a img {
	margin: 0 auto;
	display: block;
}

.svinner .box .icon figure img {
	width: 70%;
	height: 70%;
	object-fit: contain;
	display: block;
}
.svinner .box .img figure {width: 100%;	height: 100%;}
.svinner .box .img figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
@media screen and (max-width: 940px) {
.svinner {margin: 40px auto; padding: 0 40px;}	
.svinner .box .icon {width: 130px;	text-align: center;}
.svinner .box .txt {width: calc(100% - 130px - 30%);}
.svinner .box .icon figure {width: 90px;height: 90px;}
}
@media screen and (max-width: 760px) {
.svinner {margin: 30px auto; padding: 0 30px;}	
.svinner p.htxt {margin-bottom: 30px;}
.svinner .box .icon {width: 90px;}
.svinner .box .txt {width: calc(100% - 90px - 30%);	padding: 20px;}
}
@media screen and (max-width: 560px) {
.svinner .box{display: block;}
.svinner .box .txt,
.svinner .box .icon,
.svinner .box .img {width: 100%;}
.svinner .box .txt {padding: 10px;}
}

/*--------------------------------------------------------------
フォーム用のボタン・入力
-----------------------------------------------------------------*/
/*-------------お問合せ---------------------*/

.entry_form {
	max-width: 774px;
	padding: 0px 30px 30px 30px;
	box-sizing: border-box;
	margin: 0 auto 50px auto;
}

.entry_form .inner {
	background-color:#eeeded;
	padding: 10px;
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}
.entry_form .inner p {padding: 0 15px; text-align: left;}
.entry_form .inner p.ttl {width: 140px;}
.entry_form .inner p.ran {width: calc(100% - 140px);}

.entry_form .nin {
	background-color: #ccc;
	color: #fff;
	font-size: 12px;
	line-height: 100%;
	padding: 3px 5px;
	border-radius: 3px;
	display: inline-block;
	margin: 0 5px 0 0;
}
.entry_form .need {
	background-color: #666;
	color: #fff;
	font-size: 12px;
	line-height: 100%;
	padding: 3px 5px;
	border-radius: 3px;
	display: inline-block;
	margin: 0 5px 0 0;
}

@media screen and (max-width: 550px) {
.entry_form {padding: 0px 0px 30px 0px;}
}

@media screen and (max-width: 500px) {
.entry_form .inner {padding: 10px; display: block; margin-bottom: 0;}
	.entry_form .inner:first-child {padding-top: 20px;}
	.entry_form .inner:last-child {padding-bottom: 20px;}
.entry_form .inner p {padding: 0 10px;}
.entry_form .inner p.ttl {width: 100%; margin-bottom: 5px;}
.entry_form .inner p.ran {width: 100%; box-sizing: border-box;}
}




	.a1 {
		height: auto;
		padding:15px 20px;
		font-size:16px;
		border: none;
		font-family: "LINE Seed JP", sans-serif;
		background:#fff;
		width:100%;
		box-sizing:border-box;
		outline: none;
		margin: 0;
	}

.a1t {
		height: 200px;
		padding:15px 20px;
		border:1px solid #b8b8b8;
		font-size:16px;
		border: none;
		font-family: "LINE Seed JP", sans-serif;
		background:#fff;
		width:100%;
		box-sizing:border-box;
		outline: none;
		margin: 0;
	}

	.a2 {
		padding:10px 20px;
		border:1px solid #acacaa;
		font-size:15px;
		font-family: "LINE Seed JP", sans-serif;
		background:#fff;
		width:60%;
		box-sizing:border-box;
		outline: none;
		margin-top: 2px;
	}

	.a3 {
		padding:10px 20px;
		border:1px solid #acacaa;
		font-size:15px;
		font-family: "LINE Seed JP", sans-serif;
		background:#fff;
		width:100px;
		box-sizing:border-box;
		outline: none;
		margin-top: 2px;
	}

	
.a1:focus,
.a2:focus{
	border-color:#333;
	outline: none;
}

/*送信ボタン*/
	.sendb,
	.sendb:focus {
		width: 251px;
		height: 57px;
		margin: 40px auto 0 auto;
		background-color: #981315;
		color:#fff;
		border: none;
		border-radius: 7px;
		font-size: 19px;
		font-weight: 400;
		cursor:pointer;
		display: grid;
		place-items:center;
		position: relative;
		transition: 0.3s;
		font-family: "LINE Seed JP", sans-serif;
}
	
	.sendb:hover {
		top: 2px;
		left: 2px;
		background-color:#333;
		cursor:pointer;
		transition: 0.3s;
	}

.entry_form input[type="checkbox"]:focus {
  outline: none;
}
/* チェックボックス 
.entry_form input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    appearance: none;
    position: relative;
    top: 3px;
    margin: 3px 0 0 -16px;
    width: 18px;
    height: 18px;
    cursor: pointer;
    background-color: #fff;
    border: 1px solid #acacaa;
    outline: none;
    transition: background-color 0.2s, border-color 0.2s;
}*/

.entry_form input[type=checkbox]:checked {
    background-color: #2d6ab3;
    border-color: #2d6ab3;
}

/* チェックマーク 
.entry_form input[type=checkbox]:checked::before {
    content: '';
    position: absolute;
    top: 1px;
    left: 6px;
    width: 3px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.entry_form input[type=checkbox]:hover {
    border-color: #2d6ab3;
}*/
	
.entry_form  input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
}
.entry_form input[type=checkbox] {
	margin-left: 0px;
	margin-right: 20px;
	line-height: 0;
	width:0px;
	height: 0px;
	border: 0;
}


.entry_form  label {
	padding: 0 10px !important;
}
.entry_form  label input {
	position: relative;
	margin: 0 1rem 0 0;
	cursor: pointer;
}
.entry_form label input:before {
	position: absolute;
	z-index: 1;
    top: -12px;
    left: -12px;
    width: 0.75rem;
	height: 0.375rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	border: 2px solid #da3c41;
	border-top-style: none;
	border-right-style: none;
	
}
.entry_form  label input:checked:before {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}
.entry_form  label input:after {
	position: absolute;
	top: -15px;
	left: -15px;
	width: 1rem;
	height: 1rem;
	content: '';
	cursor: pointer;
	border: 1px solid #0e5684;
	background:#f6f6f6;

}

.entry_form  input[type="checkbox"]:focus {
  outline: none;
  border: 0;
}

.wpcf7-response-output {
    border: 2px solid #981315 !important;
    background-color: #981315 !important;
    color: #fff !important;
    padding: 15px !important;
    border-radius: 10px !important;
    text-align: center;
	font-weight: 600;
}

.entry_form td strong.redb {
	font-size: 1.1em;
	color: #981315;
}

/*----------------------
個人情報保護方針
-----------------------*/

.pp {
	margin: 50px auto;
	padding: 0 30px;
	max-width: 800px;
}
