@charset "UTF-8";
/*-----------------------------------------------------------------------------
basic
-----------------------------------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	list-style: none;
}

html {
	overflow-y: scroll;
	overflow-x: hidden;
	background-color: #fff;
	scroll-behavior: smooth;
}
nav ul {list-style:none;}

blockquote, q {quotes:none;}

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

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
	text-decoration: none;
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {text-decoration: line-through;}

abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

table {border-collapse:collapse;}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #d1d1d1;
    margin: 50px 0;
    padding:0;
}

input, select {vertical-align:middle;}


/* NotoSansJP */
@font-face {
    font-family: ' NotoSansJP ';
    src: url('../fonts/NotoSansJP-Regular.woff2') format('woff2'),
             url('../fonts/NotoSansJP-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

/* NotoSansJP-Medium */
@font-face {
    font-family: ' NotoSansJP ';
    src: url('../fonts/NotoSansJP-Medium.woff2') format('woff2'),
             url('../fonts/NotoSansJP-Medium.otf') format('opentype');
    font-weight: 500;
    font-style: normal;
}

/* NotoSansJP-Bold */
@font-face {
    font-family: ' NotoSansJP ';
    src: url('../fonts/NotoSansJP-Bold.woff2') format('woff2'),
             url('../fonts/NotoSansJP-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}


@font-face {
    font-family: ' RedHatDisplay ';
    src: url('../fonts/RedHatDisplay-Regular.woff2') format('woff2'),
             url('../fonts/RedHatDisplay-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: ' RedHatDisplay ';
    src: url('../fonts/RedHatDisplay-Bold.woff2') format('woff2'),
             url('../fonts/RedHatDisplay-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: ' Italianno ';
    src: url('../fonts/Italianno-Regular.woff2') format('woff2'),
             url('../fonts/Italianno-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}






body {
color: #333;
font-size: 93%;
line-height: 1.6;
font-weight:400;
font-family: ' NotoSansJP ';
letter-spacing: 0.05rem;
padding-top:60px;
position: relative;
overflow: hidden;
background:white;}


@media (min-width: 768px) {
body {
letter-spacing: 0.05rem;

}
}

@media (min-width: 992px) {

body {
font-size: 95%;
line-height: 1.7;
letter-spacing: 0.05rem;
padding-top: 0px;}

}
@media (min-width: 1200px) {
body {
font-size: 100%;
letter-spacing: 0.08rem;
}


}


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

/* 共通
---------------------------------------------------- */

.fluid {position: relative;
	max-width: 1140px;
	margin: 0 auto;
}
.clearfix:after {
  content: "";
  clear: both;
	display: table;
}
.clear {clear: both;}
.t-justify{text-align: justify;}
.f-right {float: right;padding: 0 0 1em 1em;}
.f-left {float: left;}
.pointer {cursor: pointer;}
ul.decimal li{list-style: decimal;margin-left: 2em;line-height: 1.7;}
ul.dot li{list-style:disc;margin-left: 25px;line-height: 1.7;text-align: left;}
ul.square {margin-left: 30px;}
ul.square li{list-style:disc;line-height: 1.7;}
ol.dot li{list-style:disc;margin-left: 25px;line-height: 1.5;text-align: left;font-size: .9em;}

.mb0  { margin-bottom: 0 !important; }
.mb5  { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mt10 { margin-top: 10px !important; }
.mt20 { margin-top: 20px !important; }
.pad10 { padding: 10px; }
.pad20 { padding: 20px; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pl10 { padding-left: 10px !important; }
.pt5 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt20 { padding-top: 20px !important; }
.pt30 { padding-top: 30px !important; }
.pt40 { padding-top: 40px !important; }
.pt50 { padding-top: 50px !important; }
.pb5 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb30 { padding-bottom: 30px !important; }
.pb40 { padding-bottom: 40px !important; }
.pb50 { padding-bottom: 50px !important; }
.w20 { width: 20%; }
.w25 { width: 25%; }
.w33 { width: 33.33333333%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w70 { width: 70%; }
.w80 { width: 80%; }
.mb150mb100{margin-bottom: 150px;}
.mb120mb80{margin-bottom: 120px;}
.mb100mb80{margin-bottom: 100px;}
.mb80mb50{margin-bottom: 80px;}
.mb50mb30{margin-bottom: 50px;}
.mb30mb10{margin-bottom: 30px;}

@media (max-width: 1140px) {
.mb120mb80{margin-bottom: 80px;}
.mb150mb100{margin-bottom: 100px;}
.mb50mb30{margin-bottom: 40px;}

}


@media (max-width: 991px) {
.mb100mb80{margin-bottom: 80px;}
.mb120mb80{margin-bottom: 60px;}
.mb150mb100{margin-bottom: 90px;}
.mb30-md{margin-bottom: 30px;}
.mb50mb30{margin-bottom: 30px;}
.mb10-md{margin-bottom: 10px;}

}

@media (max-width: 767px) {
.space15{margin-bottom: 15px;}
.mb150mb100{margin-bottom: 80px;}
.mb120mb80{margin-bottom: 50px;}
.mb80mb50{margin-bottom: 50px;}
.mb100mb80{margin-bottom: 50px;}

.mb50mb30{margin-bottom: 30px;}
.mb20-xs{margin-bottom: 20px;}
.mb30-xs{margin-bottom: 30px;}
.mb10-xs2{margin-bottom: 10px;}

}
@media (max-width: 666px) {
.mb30-xs2{margin-bottom: 30px;}
.mb10-xs{margin-bottom: 10px;}
.mb30mb10{margin-bottom: 10px;}
.mb20-xs2{margin-bottom: 20px;}

}


@media (min-width: 1200px) {

.mb30-xl { margin-bottom: 30px !important; }
}

.indent {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.5;
}

.indent2 {
  padding-left: 1.8em;
  text-indent: -1.8em;
}

.flexbox{display: flex;align-items: center;}
.flexbox-center{display: flex;align-items: center;justify-content: center;}
.flexbox-center-top{display: flex;justify-content: center;}

.flexbox-between{display: flex;align-items: center;justify-content: space-between;}
.flexbox2{display: flex;align-items: stretch;}

.flexbox3{display: flex;align-items: flex-end;}
.flexbox4{display: flex;justify-content: flex-end;}


@media (max-width: 767px) {
.flexbox4{display:block;}


}


.bg-gray{background:rgba(152,133,95,.06);}
.bg-blue{background:rgba(0,156,255,0.05);}
.bg-border-top{border-top: 1px solid #ddd;}




/*btn
------------------------------ */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img{vertical-align: bottom;}




/* アニメーション
---------------------------------------------------- */
.delayed-image {
	/* じわっと画像が表示される */
 	animation: fadeIn 3s ease 0s 1 normal;
    -webkit-animation: fadeIn 3s ease 0s 1 normal;
}

/* じわっと画像が表示される ---------　一度追加していたら不要*/
@keyframes fadeIn { /*上のbody内で呼び出しているアニメーションと名前をそろえる*/
    0% {opacity: 0} /* 始め */
    100% {opacity: 1} /* 終わり */
}

/*古いブラウザ用　---------　一度追加していたら不要*/
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

.vertical {
  animation: vertical_6392 2.44s ease infinite;
  transform-origin: 50% 50%;
}

@keyframes vertical_6392 {
  0% { transform:translate(0,-3px) }
  3.27869% { transform:translate(0,3px) }
  6.55738% { transform:translate(0,-3px) }
  9.83606% { transform:translate(0,3px) }
  13.11475% { transform:translate(0,-3px) }
  16.39344% { transform:translate(0,3px) }
  18.03279% { transform:translate(0,0) }
  100% { transform:translate(0,0) }
}



.horizontal {
  animation: horizontal_5801 5s ease infinite;
  transform-origin: 50% 50%;
}

@keyframes horizontal_5801 {
  0% { transform:translate(0,0) }
  4.41177% { transform:translate(5px,0) }
  8.82353% { transform:translate(0,0) }
  13.23529% { transform:translate(5px,0) }
  17.64706% { transform:translate(0,0) }
  22.05882% { transform:translate(5px,0) }
  26.47059% { transform:translate(0,0) }
  100% { transform:translate(0,0) }
}

.passing-reverse {
  animation: passing-reverse_1059 4s linear infinite;
  transform-origin: 50% 50%;
}

@keyframes passing-reverse_1059 {
  0% { transform:translateX(50%); opacity:0 }
  50% { transform:translateX(35%); opacity:.5 }
  100% { transform:translateX(0%); opacity:1 }
}

.float {
  animation: float_1 4s linear infinite;
  transform-origin: 50% 50%;
}
@keyframes float_1 {
  0% { transform: translateY(0) }
  50% { transform: translateY(-10px) }
  100% { transform: translateY(0) }
}

.float2 {
  animation: float_2 2s linear infinite;
  transform-origin: 50% 50%;
}
@keyframes float_2 {
  0% { transform: translateY(0) }
  60% { transform: translateY(-5px) }
  100% { transform: translateY(0) }
}

.fuwafuwa {
-webkit-animation:fuwafuwa 3s infinite linear alternate;
animation:fuwafuwa 3s infinite linear alternate;
}

@-webkit-keyframes fuwafuwa {
0% {-webkit-transform:translate(0, 0) rotate(-5deg);}
50% {-webkit-transform:translate(0, -5px) rotate(0deg);}
100% {-webkit-transform:translate(0, 0)rotate(5deg);}
}

@keyframes fuwafuwa {
0% {transform:translate(0, 0) rotate(-5deg);}
50% {transform:translate(0, -5px) rotate(0deg);}
100% {transform:translate(0, 0)rotate(5deg);}
}

@keyframes floating-y {
  0% {
    transform: translateY(-10%);
  }
  100% {
    transform: translateY(10%);
  }
}

@keyframes rotate-z {
  from { transform: rotateZ(0deg); }
  to { transform: rotateZ(360deg); }
}

.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 1.5s;
}

.swing {
animation: swing 2s ease-in-out infinite;
}
/* swing */
@keyframes swing {
    20% {
        transform: rotate(15deg)
    }
    40% {
        transform: rotate(-10deg)
    }
    60% {
        transform: rotate(5deg)
    }
    80% {
        transform: rotate(-5deg)
    }
    100% {
        transform: rotate(0deg)
    }
}

/* link
---------------------------------------------------- */
a:link,a:visited{text-decoration:none;}
a:hover,a:active{text-decoration:none;}
a.opacity {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
a.opacity:hover {
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}

.linkbtn{
    font-size:1em;
    color: #fff;
    position: relative;
	letter-spacing: 0;
    text-decoration:none;width: 250px;
    display: flex;
    overflow: hidden;
    height: 55px;
    border-radius: 30px;
    transition: opacity .45s ease, background .35s ease;
    background:#008EEF;
    box-shadow: 5px 5px 12px #d8d8d8, -6px -6px 10px #fff;
    justify-content: center;
    align-items: center;
}

.linkbtn__circle{
    position: absolute;
    top: 50%;
    right: 1.5rem;
    width: .5rem;
    height: .5rem;
    transform: translateY(-50%);
    border-radius: 50%;
    background: #fff;
}

.linkbtn__circle::before{
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    content: '';
    transition: width .45s cubic-bezier(.87, .24, .36, 1), height .45s cubic-bezier(.87, .24, .36, 1);
    transform: translate3d(-50%, -50%, 0);
    border-radius: 50%;
    background: #fff;
}

.linkbtn__text{
    line-height: 1;
    position: relative;
    z-index: 2;
    padding-top: .2em;
    transition: color .45s cubic-bezier(.87, .24, .36, 1);
}

.linkbtn:hover .linkbtn__circle::before{
    width: 50rem;
    height: 50rem;
	background:#FF0328;
}

.linkbtn:hover .linkbtn__text{color: #fff;}


.yoyakubtn-group{text-align: center;width: 250px;margin: 0 auto;}
.yoyakubtn{
    font-size:1em;
    color: #fff;
    position: relative;
	letter-spacing: 0;
    text-decoration:none;width: 250px;
    display: flex;
    overflow: hidden;
	padding: .5em 0;
    border-radius: 35px;
	text-align: center;
	line-height: 1.8;
    transition: opacity .45s ease, background .35s ease;
    background:#f23636;
    box-shadow: 5px 5px 12px #d8d8d8, -6px -6px 10px #fff;
    justify-content: center;
    align-items: center;
}

.yoyakubtn__text{
    line-height: 1.3;
    position: relative;
    z-index: 2;
    transition: color .45s cubic-bezier(.87, .24, .36, 1);
}

.yoyakubtn:hover{
	background:#008EEF;
}

.yoyakubtn:hover .yoyakubtn__text{color: #fff;}

.yoyakubtn-group .yoyakubtn{margin-bottom: 18px;}
.yoyakubtn-group .yoyakubtn:last-child{margin-bottom:0;}

@media (min-width: 667px) {

.yoyakubtn-group{text-align: center;width: 90%;margin: 0 auto;display: flex;justify-content: space-between;}
.yoyakubtn{
    font-size:1em;
    color: #fff;
    position: relative;
	letter-spacing: 0;
    text-decoration:none;width: 32%;
    display: flex;
    overflow: hidden;
	padding: .5em 0;
    border-radius: 35px;
	text-align: center;
	line-height: 1.8;
    transition: opacity .45s ease, background .35s ease;
    background:#f23636;
    box-shadow: 5px 5px 12px #d8d8d8, -6px -6px 10px #fff;
    justify-content: center;
    align-items: center;
}
.yoyakubtn-group .yoyakubtn{margin-bottom: 0;}

}

@media (min-width: 1199px) {

.linkbtn{
    font-size:1em;
    color: #fff;
    position: relative;
    text-decoration:none;width: 300px;
    display: flex;
    overflow: hidden;
    height: 70px;
    border-radius: 40px;
    transition: opacity .45s ease, background .35s ease;
    background:#008EEF;
    box-shadow: 5px 5px 12px #d8d8d8, -6px -6px 10px #fff;
    justify-content: center;
    align-items: center;
}



}

@media (min-width: 1200px) {
.yoyakubtn-group{text-align: center;width: 95%;margin: 0 auto;display: flex;justify-content: space-between;}
.yoyakubtn{
    font-size:1.08em;
    color: #fff;
    position: relative;
	letter-spacing: 0;
    text-decoration:none;width: 32%;
    display: flex;
    overflow: hidden;
	padding: .8em 0;
    border-radius: 40px;
	text-align: center;
	line-height: 1.8;
    transition: opacity .45s ease, background .35s ease;
    background:#f23636;
    box-shadow: 5px 5px 12px #d8d8d8, -6px -6px 10px #fff;
    justify-content: center;
    align-items: center;
}
}

@media (min-width: 1440px) {

.linkbtn{
letter-spacing: .08rem;
font-size: 1.08em;
    width: 350px;
    height: 75px;
    border-radius: 40px;
}

.yoyakubtn-group{text-align: center;width: 90%;margin: 0 auto;display: flex;justify-content: space-between;}
.yoyakubtn{
    font-size:1.2em;
    color: #fff;
    position: relative;
	letter-spacing: 0;
    text-decoration:none;width: 32%;
    display: flex;
    overflow: hidden;
	padding: 1em 0;
    border-radius: 50px;
	text-align: center;
	line-height: 1.8;
}

}


.txt-justify{text-align:justify;}

[data-action="call"]  {text-decoration: none;}

/* font-size color
---------------------------------------------------- */
.x-small { font-size: .7em; letter-spacing: 0;}
.small { font-size: .9em; line-height: 1.5; letter-spacing: 0;}
.middle { font-size: 14px; letter-spacing: 0;}
.large { font-size: 1.2em; }
.x-large { font-size: 1.35em; }
.x2-large { font-size: 20px; }
.x3-large { font-size: 22px; }
.x4-large { font-size: 24px; }
.max-large { font-size: 32px; }
.italic {font-style: italic;}
.bold{font-family: ' NotoSansJP ';font-weight: 700;}

.white { color: #ffffff; }
.red { color:#FF0328; }
.blue{color:#008EEF;}
.green { color: forestgreen; }
.navy { color:#0034A0; }
.orange { color: #f60; }
.kiiro { color: yellow!important; }
.brown{color: #8b6f57;}

/* スクロールでナビ表示
---------------------------------------------------- */
.cb-header {
    position: fixed;
    top: 0;
    left: 0;
	right:0;
    display: none;
    background: #fff;
}
.cb-header .inner {width: 96%;margin: 0px auto; margin-top: 20px;}




@media (max-width: 767px) {
.cb-header {display: none!important;}

}



/* header mobile pad
---------------------------------------------------- */
#header{display: none;}
.cb-header2 {
    position: fixed;
    /* 固定 */
    top: 0;
    /* 上から0の位置に固定 */
    left: 0;
    /* 左から0の位置に固定 */
    display: block;
    /* 表示 */
	z-index: 200;
	width: 100%;
	box-sizing: border-box;
}

.sc {
display: flex;
align-items: center;
    width: 100%;
    margin: 0 auto;
	height: 60px;
	background:none;
	background: white;}
.sc .logo{padding-left: 15px;width: 180px;}



header{display: none;}



/*header pc
------------------------------------------------------------------*/
@media (min-width: 992px) {

header{display: block;}
.cb-header2 {display: none;}


.header {
  position: fixed;
  top: 20px;
  width: 100%;
  z-index: 500;
  height: 80px;
}
.header .wrap{
  background: white;
  border-radius: 1em;
  width: 95%;
  margin: 0 auto;
  height: 80px;
  display: flex;
  align-items: center;justify-content: space-between;
  filter: drop-shadow(5px 5px 5px rgba(0,0,0,.07));
}

.header .logo {position: relative;margin-left: 15px;width:200px;}
.header .logo a img{transition: .4s;}
.header .logo a:hover img{opacity: .7;}


.header .navi{padding-right: 20px;}


/* ナビゲーションメニュー */
.nav-menu {display: flex;align-items: center;justify-content: flex-end;}
.menu-list {
  display: flex;
  justify-content: center;
  margin-right: 1.5em;
}
.menu-item {position: relative;padding: 0 .4em;line-height: 1;}
.menu-item:first-child {padding: 0 .4em 0 0;}
.menu-item:last-child {padding: 0 0 0 .4em;}

/* メニューアイテムのホバースタイル */
.menu-item a {
font-size: 15px;
font-weight: 500;
letter-spacing: 0;
padding: 0;
  text-align: center;
  color: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: .3;line-height: 1;
}
.menu-item a:hover {color: #03a6fb;}
.menu-item a.active {color:#03a6fb;position: relative;}

.header .wrap .recruit{margin-right: 1.5em;}

}





@media (min-width: 1200px){
.header .logo {position: relative;margin-left: 20px;width: 240px;}
.menu-item {position: relative;padding: 0 .7em;}
.menu-item:first-child {padding: 0 .7em 0 0;}
.menu-item:last-child {padding: 0 0 0 .7em;}

.menu-item a {font-size: 16px;}

.header .navi{padding-right:20px;}

}


@media (min-width: 1680px){
.header {
  position: fixed;
  top: 50px;
  width: 100%;
  z-index: 500;
  height: 80px;
}
.header .wrap{
  background: white;
  border-radius: 1em;
  width: 1400px;
  margin: 0 auto;
  height: 90px;
}

.header .logo {position: relative;margin-left: 50px;}

.header .navi{margin-right: 50px;}
.menu-list {
  display: flex;
  justify-content: center;
  margin-right: 2em;
}

.menu-item {position: relative;padding: 0 1em;}
.menu-item:first-child {padding: 0 1em 0 0;}
.menu-item:last-child {padding: 0 0 0 1em;}
.menu-item a {font-size: 16px;}
.header .wrap .recruit{margin-right: 2em;}
}

@media (min-width: 1920px){

}










/*main
------------------------------------------------------------------*/

#main{position: relative;background:url("../images/bg-mv.jpg");background-position: center;background-size: cover;height: 1120px;}
.mv_slide {
  position: absolute;z-index: 30;
  top: 12vw;
  right: 7vw;
}

.mv_slide {
  margin-left: auto;
  margin-right: auto;
  width: 900px;
}
.mv-car{position: absolute;left:0;top:42%;z-index: 20;width: 40%;}
.main-h2{position: relative;z-index: 50;top: 28%;left: 10%;width: 40%;}
.main-h2 h2.mv-h2{color: white;font-size: 58px;font-weight: 700;line-height: 1.8;letter-spacing: .2rem;margin-bottom: .5em;}
.main-h2 h2.mv-h2 span{font-size: 42px;color: #1f7aa0;background: white;padding: 0 .6em;border-radius: .8em;display: inline-block; margin-right: .3em;line-height: 1.6;}
.main-h2 .sub{color: #fff;font-weight: 700; font-family: ' RedHatDisplay ';font-size: 22px;line-height: 1.5; letter-spacing: .1rem;}

.text-loop{
  overflow: hidden;
  width: 100%;
position: absolute;
  display: flex;
  gap: 20px; 
  bottom:50px;left:0;
  z-index: 30;
}
.loop {
  animation: loop 20s linear infinite;white-space: nowrap;
  font-size: 140px;padding-right: .5em;letter-spacing: .5rem;
font-family: ' RedHatDisplay ';font-weight: 400;line-height: 1.5;color: #c1d9eb;}
@keyframes loop {
  0%{
    transform: translateX(0%);
  }
  100%{
    transform: translateX(-50%);
  }
}




@media (max-width: 1680px){
#main{height: 1000px;}
.mv_slide {width: 800px;}

.mv-car{top:35%;width: 35%;}
.main-h2{top: 25%;left: 6%;width: 40%;}
.main-h2 h2.mv-h2{font-size: 50px;margin-bottom: .5em;}
.main-h2 h2.mv-h2 span{font-size: 36px;color: #1f7aa0;padding: 0 .6em;border-radius: .8em;display: inline-block; margin-right: .3em;line-height: 1.6;}
.main-h2 .sub{font-size: 20px;line-height: 1.5; letter-spacing: .1rem;}

.loop {
  animation: loop 20s linear infinite;white-space: nowrap;
  font-size: 130px;padding-right: .5em;letter-spacing: .5rem;
}


}



@media (max-width: 1440px){
#main{height: 850px;}

.mv_slide {width: 700px;}

.mv-car{top:32%;width: 35%;}
.main-h2{top: 25%;left: 6%;width: 40%;}
.main-h2 h2.mv-h2{font-size: 50px;margin-bottom: .5em;line-height: 1.7;}
.main-h2 h2.mv-h2 span{font-size: 35px;color: #1f7aa0;padding: 0 .6em;border-radius: .9em;display: inline-block; margin-right: .3em;line-height: 1.6;}
.main-h2 .sub{font-size: 20px;line-height: 1.5; letter-spacing: .1rem;}
.text-loop{
  overflow: hidden;
  width: 100%;
position: absolute;
  display: flex;
  gap: 20px; 
  bottom:20px;left:0;
  z-index: 30;
}

.loop {
  animation: loop 20s linear infinite;white-space: nowrap;
  font-size: 110px;padding-right: .5em;letter-spacing: .5rem;
}





}


@media (max-width: 1366px){
#main{height: 750px;}

.mv_slide {width: 600px;}

.mv-car{top:32%;width: 35%;}
.main-h2{top: 24%;left: 5%;width: 40%;}
.main-h2 h2.mv-h2{font-size: 48px;margin-bottom: .5em;line-height: 1.6;}
.main-h2 h2.mv-h2 span{font-size: 32px;padding: 0 .6em;border-radius: .9em;line-height: 1.6;}
.main-h2 .sub{font-size: 18px;line-height: 1.5; letter-spacing: .1rem;}


}

@media (max-width: 1199px){
#main{height: 650px;}

.mv_slide {
  position: absolute;z-index: 30;
  top: 13vw;
  right: 4vw;
}

.mv_slide {width: 500px;}

.mv-car{top:35%;width: 40%;}
.main-h2{top: 25%;left: 5%;width: 40%;}
.main-h2 h2.mv-h2{font-size: 36px;margin-bottom: .5em;line-height: 1.6;}
.main-h2 h2.mv-h2 span{font-size: 26px;padding: 0 .6em;border-radius: .9em;line-height: 1.6;}
.main-h2 .sub{font-size: 16px;line-height: 1.5; letter-spacing: .08rem;}

.loop {
  animation: loop 20s linear infinite;white-space: nowrap;
  font-size: 90px;padding-right: .5em;letter-spacing: .5rem;
}


}




@media only screen and (max-width: 991px) {
#main{position: relative;height:500px;}
.mv_slide {
  position: absolute;
  top: 5vw;
  right: 3vw;
}
.mv_slide {width: 48vw;}

.mv-car{top:25%;width: 55%;}

.main-h2{top: 18%;left: 20px;width: auto;}
.main-h2 h2.mv-h2{font-size: 32px;letter-spacing: .1rem;line-height: 1.8; margin-bottom: .9em;}
.main-h2 h2.mv-h2 span{font-size: 25px;padding: 0 .6em;border-radius: .9em;line-height: 1.6;}

.main-h2 .sub{font-size: 18px;}
.text-loop{bottom:20px;left:0;}
.loop {font-size: 90px;padding-right: .5em;letter-spacing: .2rem;line-height: 1.5;}



}

@media only screen and (max-width: 767px) {
#main{position: relative;height:580px;}
.mv_slide {
  position: absolute;
  top: 5vw;
  right: 3vw;
}
.mv_slide {
  margin-left: auto;
  margin-right: auto;
  width: 57vw;
}
.mv-car{top:20%;width: 55%;}
.main-h2{top: 42vw;left: 20px;width: auto;}
.main-h2 h2.mv-h2{font-size: 30px;line-height: 1.7; letter-spacing: .05rem;margin-bottom: .6em;}
.main-h2 h2.mv-h2 span{font-size: 20px;padding: 0 .6em;border-radius: .9em;line-height: 1.6;}
.main-h2 .sub{font-size: 17px;letter-spacing: .08rem;}
.text-loop{bottom:10px;left:0;}
.loop {font-size: 70px;padding-right: .5em;letter-spacing: .2rem;line-height: 1.5;}


}



@media only screen and (max-width: 414px) {
#main{position: relative;height:500px;}
.mv_slide {
  position: absolute;
  top: 3vw;
  right: 3vw;
}
.mv_slide {
  margin-left: auto;
  margin-right: auto;
  width: 94vw;
}
.main-h2{top: 55vw;left: 20px;width: auto;}
.main-h2 h2.mv-h2{font-size: 28px;line-height: 1.6; letter-spacing: 0rem;margin-bottom: .5em;}
.main-h2 h2.mv-h2 span{font-size: .7em;}

.main-h2 .sub{font-size: 14px;letter-spacing: 0.05rem;}
.mv-car{top:50%;width:80%;}

.text-loop{bottom:20px;left:0;}
.loop {font-size: 50px;padding-right: .5em;letter-spacing: .2rem;line-height: 1.5;}

}


/* IMAGE BLUR EFFECT */
.pic-thumb img {
  max-width: 100%;
  -webkit-filter: blur(15px);
  filter: blur(15px);
}
.pic-thumb.non img {
  max-width: 100%;
  -webkit-filter: blur(0);
  filter: blur(0);
}

.img-blur {
  animation: imageBlur 1.5s both;
}
@keyframes imageBlur {
  100% {
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
.pic-thumb.non img {
  max-width: 100%;
  -webkit-filter: blur(0);
  filter: blur(0);
}




/* index.html 
---------------------------------------------------- */

.btn-posi-right{display: flex;justify-content: flex-end;}
.btn-posi-center{display: flex;justify-content:center;}
.pic-thumb{width: 260px;margin: 0 auto;overflow: hidden;}

.home #section01{position: relative;margin-top: -43px; padding: 50px 0 50px;background: white;border-radius: 2em 2em 0 0;z-index: 50;}
.home #section01 .deco{position: absolute;top:110px;left:0;z-index: 10;}
.home #section01 .container{z-index: 20;}
.home #section01 h3{color: #01a0e9;font-family: ' RedHatDisplay ';font-weight: 700;margin-bottom: 1.3em;line-height: 1.8;font-size: 18px;}
.home #section01 h3 span{display: block;font-family: ' NotoSansJP ';font-weight: 700;margin-top: .5em;font-size: 20px;line-height: 1.5;
background: linear-gradient(140deg, #1f6cac ,#1d9fd6 43%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;}
.home #section01 .txt{text-align: justify;}
.home #section01 .wrap{background: #f6f6f6;padding: 1.5em;border-radius: 2em; filter: drop-shadow(5px 5px 5px rgba(0,0,0,.08));}
.home #section01 .wrap h3{color: #01a0e9;font-family: ' NotoSansJP ';font-weight: 700;margin-bottom: 1.3em;line-height: 1.5;font-size: 15px;}
.home #section01 .wrap h3 span{display: block;font-family: ' RedHatDisplay ';font-weight: 700;margin-top: .2em;font-size: 28px;line-height: 1;background: none;color: #0d1c29;-webkit-text-fill-color:#0d1c29;}
.home #section01 .txt2{text-align: justify;margin-bottom: 1.5em;}



.home #section02{position: relative;padding: 30px 0;background: url("../images/bg-recruit.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;color: white;z-index: 50;border-radius: 1.5em;}
.home #section02 .deco-car{position: absolute;right:0;top:25%;width: 30%;z-index: 2;}
.home #section02 .container{max-width: 100%; z-index: 5;}
.home #section02 .wrap{width: 50%;margin-left: 49%;}
.home #section02 .wrap h3{color: white;font-family: ' NotoSansJP ';font-weight: 700;margin-bottom: 1.3em;line-height: 1.5;font-size: 15px;}
.home #section02 .wrap h3 span{display: block;font-family: ' RedHatDisplay ';font-weight: 700;margin-top: .2em;font-size: 28px;line-height: 1;color: white;}
.home #section02 .wrap .sub{font-weight: 700;line-height: 1.4; font-size: 16px;margin-bottom: 1.1em;}
.home #section02 .wrap .txt{line-height: 1.4;text-align: justify;margin-bottom: 1.1em;}

.content-wrapper {
  position: absolute;
  width: 55%;
  top:0;
  height: 100%;
  left: 5vw;
  bottom:0;
z-index: 2;}

.content-swiper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.vertical-swiper {
  height: 100%;
  width: 70%;
  position: absolute !important;
}

.vertical-swiper1 {
  left: 0;
  top: 0;
}

.vertical-swiper2 {display: none;
  left: calc(18vw + 10px);
  top: 0;
}

.vertical-swiper .swiper-wrapper {transition-timing-function: linear;}

.vertical-swiper1 img,
.vertical-swiper2 img {
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
}




.home #section03{position: relative;padding: 50px 0px 10px;}
.home #section03 h3{color: #01a0e9;font-family: ' NotoSansJP ';font-weight: 700;margin-bottom: 1.3em;line-height: 1.5;font-size: 15px;}
.home #section03 h3 span{display: block;font-family: ' RedHatDisplay ';font-weight: 700;margin-top: .2em;font-size: 28px;line-height: 1;background: none;color: #0d1c29;-webkit-text-fill-color:#0d1c29;}
.newsarea{position: relative;height: 400px;overflow-y: auto;}
.newsarea .set{padding: 15px;background: rgba(255,255,255,1);display: block;border-bottom: 1px solid #eee;}
.newsarea .set:first-child{border-top: 1px solid #eee;}
.newsarea .set .date{margin-bottom:.8em;line-height: 1.4;color: #222;font-family: ' RedHatDisplay ';}
.newsarea .set .date .day{margin-bottom: .3em;font-weight: 400;}
.newsarea .set .date .day span.new{color:#ff0000;margin-left: 10px;font-size: .9em; font-weight: 400;}
.newstext{line-height: 1.4;width: 100%;color: #333;}
.newstext .txt{text-align: justify;}
.newstext .pdf{width: 18px;margin-top: .4em;}
.newstext .pdf a{position: relative;}

/* SimpleBarのカスタムスタイル */
.newsarea .simplebar-scrollbar {
background-color: #01a0e9 !important;
border-radius: 2px;
}
.newsarea .simplebar-track {background-color: #ebebeb;}





.gmap{margin-bottom: 30px;}
.gmap:last-child{margin-bottom: 0px;}

.gmap iframe{width: 100%;height: 220px;border-radius:0;vertical-align: bottom;}




@media (min-width: 667px) {
.home #section01 .container{max-width: 1110px;}
.pic-thumb{width: 350px;}
.home #section01 .wrap{padding: 2.5em;border-radius: 2em;}
.home #section01 .wrap h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section01 .wrap h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.home #section01 .txt2{text-align: justify;margin-bottom: 1.5em;}

.home #section02 .deco-car{top:25%;width: 26%;}
.home #section02 .wrap{width: 46%;margin-left: 48%;}
.home #section02 .wrap h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section02 .wrap h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.home #section02 .wrap .txt{line-height: 1.4;margin-bottom: 1.5em;}
.vertical-swiper {
  height: 100%;
  width: 18vw;
  position: absolute !important;
}

.vertical-swiper2 {display: block;
  left: calc(18vw + 10px);
  top: 0;
}

.home #section03 h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section03 h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.newsarea{position: relative;height: 300px;}
.newsarea .set{padding: 20px 15px;}
.newsarea .set .date{margin-bottom:.8em;display: flex;align-items: center;}
.newsarea .set .date .day{margin-bottom: 0;margin-right: .6em;}
.newsarea .set .date .day span.new{color:#ff0000;margin-right: 10px;font-size: .9em; font-weight: 400;}

}




@media (min-width: 768px) {

.home #section01{margin-top: -55px;padding: 70px 0 70px;border-radius: 3em 3em 0 0;}
.home #section01 .container{max-width: 1110px;padding: 0 45px;}
.home #section01 h3{margin-bottom: 1.3em;line-height: 1.8;font-size: 24px;}
.home #section01 h3 span{margin-top: .3em;font-size: 30px;line-height: 1.5;}

.pic-thumb{width: 420px;}
.home #section01 .wrap{padding: 3.5em;border-radius: 2em;}
.home #section01 hr {margin: 70px 0;}


.home #section02{padding: 70px 0 70px;}
.home #section02 .wrap{width: 46%;margin-left: 48%;}
.home #section02 .wrap .sub{line-height: 1.4; font-size: 20px;margin-bottom: 1.1em;}
.home #section02 .wrap .txt{line-height: 1.5;margin-bottom: 1.5em;}



.home #section03 {padding: 70px 0 20px;}
.newsarea{position: relative;height: 350px;}




.gmap{margin-bottom: 30px;}

.roop-wrapper.info {width:88%;margin: 0 auto; margin-bottom: 70px;}





.gmap{}
.gmap iframe{height: 250px;}


}



@media (min-width: 992px) {
.pic-thumb{width:420px;margin-left: 0;}

.home #section01 .deco{top:340px;}
.home #section01 .wrap{padding: 2.5em;border-radius: 2em;}
.home #section01 .wrap h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section01 .wrap h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.home #section01 .txt2{text-align: justify;margin-bottom: 1.5em;}

.home #section02 .wrap{width: 42%;margin-left:52%;}
.home #section02 .wrap h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section02 .wrap h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.home #section02 .wrap .sub{line-height: 1.4; font-size: 22px;margin-bottom: 1.1em;}
.home #section02 .wrap .txt{line-height: 1.5;margin-bottom:2em;}

.content-wrapper {
  position: absolute;
  width: 50%;
  top:0;
  height: 100%;
  left: 10vw;
  bottom:0;
}
.vertical-swiper2 {
  left: calc(18vw + 15px);
  top: 0;
}

.home #section03 h3{margin-bottom: 1.3em;line-height: 1.5;font-size: 18px;}
.home #section03 h3 span{margin-top: .2em;font-size: 32px;line-height: 1;}
.newsarea .set{padding: 25px 15px;display: flex;align-items: flex-start; justify-content: space-between;}
.newsarea .set .date{margin-bottom:0;display: flex;align-items: center;width: 200px;}
.newstext{line-height: 1.4;width: calc(100% - 200px);}

.d-btwn{display: flex;flex-direction: column;justify-content: space-between;}
.gmap iframe{width: 100%;height: 250px;}

}




@media (min-width: 1200px) {
.pic-thumb{width:97%;}

.home #section01{margin-top: -70px;padding: 100px 0 100px;border-radius: 4em 4em 0 0;}
.home #section01 .container{max-width: 1110px;padding: 0 15px;}
.home #section01 h3{margin-bottom: 1.3em;line-height: 1.8;font-size: 28px;}
.home #section01 h3 span{margin-top: .3em;font-size: 40px;line-height: 1.5;}
.home #section01 .txt2{text-align: justify;margin-bottom: 1.5em;padding-right: 3em;}


.home #section02{padding: 100px 0;border-radius: 4em;}
.home #section02 .wrap .sub{line-height: 1.4; font-size: 24px;margin-bottom: 1.6em;}

.home #section03{padding: 100px 0px 20px;}


.roop-wrapper.info {width: 85%;margin: 0 auto; margin-bottom: 100px;}




}





@media (min-width: 1440px) {
.home #section02 .deco-car{top:18%;width: 22%;}
.newsarea .set{padding: 30px 15px;}
.newsarea .set .date{margin-bottom:1.5em;display: flex;align-items: center;}
.newstext .txt{font-size: 1.1em;line-height: 1.8;}

}

@media (min-width: 1680px) {
.pic-thumb{width:595px;}
.home #section01{padding: 120px 0 120px;}
.home #section01 .deco{top:400px;}

.home #section01 .container{max-width: 1400px;padding: 0;}
.home #section01 h3{margin-bottom: 1.6em;line-height: 1.8;font-size: 28px;}
.home #section01 h3 span{margin-top: .3em;font-size: 48px;line-height: 1.7;letter-spacing: .1rem;}
.home #section01 .txt{line-height: 2;}
.home #section01 .wrap{padding: 5em;border-radius: 3em;}
.home #section01 .wrap h3{margin-bottom: 2.5em;line-height: 1.5;font-size: 18px;}
.home #section01 .wrap h3 span{margin-top: .2em;font-size: 48px;line-height: 1;}
.home #section01 .txt2{text-align: justify;margin-bottom: 1.5em;padding-right:5em;}

.home #section02{padding: 150px 0;}
.home #section02 .deco-car{top:15%;width: 25%;}

.home #section02 .wrap{width: 480px;margin-left: 56%;}
.home #section02 .wrap h3{margin-bottom: 2.5em;line-height: 1.5;font-size: 18px;}
.home #section02 .wrap h3 span{margin-top: .2em;font-size: 48px;line-height: 1;}
.home #section02 .wrap .sub{line-height: 1.5; font-size: 30px;margin-bottom: 1.6em;}
.home #section02 .wrap .txt{line-height: 1.8;margin-bottom:2.6em;}

.home #section03 {padding: 120px 0 20px;}
.home #section03 .container{max-width: 1400px;padding: 0;}
.home #section03 h3{margin-bottom: 2.5em;line-height: 1.5;font-size: 18px;}
.home #section03 h3 span{margin-top: .2em;font-size: 48px;line-height: 1;}


.gmap iframe{width: 100%;height: 350px;}

}

@media (min-width: 1920px) {
.home #section01{margin-top: -120px;padding: 150px 0 150px;border-radius: 5em 5em 0 0;}
.home #section01 .txt2{margin-bottom: 1.5em;}
.home #section02{padding: 180px 0 180px;}
.home #section02{border-radius: 5em;}
.home #section02 .deco-car{top:10%;width: 28%;}

}



.maker{
  background: linear-gradient(
    transparent 60%,
    #fbeb64 60%
  );}

.btn-posi{position: relative;z-index: 10;}
.btn-center{display: flex;justify-content: center;position: relative;z-index: 50;}
.btn-right{display: flex;justify-content:flex-end;position: relative;z-index: 50;}

.circle-arrow-btn {}
.circle-arrow-btn a {
  display: flex;
  align-items: center;
  gap: 15px;
  width: fit-content;
  cursor: pointer;
  background: #01a0e9;
  color: white;
  padding: 5px 5px 5px 15px;
  border-radius: 35px;
}
.circle-arrow-btn a:hover .circle-arrow-btn__text::before {
  background: currentColor;
  animation: circle-arrow-btn-line 0.5s ease-out;
}
.circle-arrow-btn a:hover .circle-arrow-btn__circle {background-color: #000;}
.circle-arrow-btn a:hover .circle-arrow-btn__arrow::before {transform: translateX(240%);}
.circle-arrow-btn a:hover .circle-arrow-btn__arrow::after {transform: translate(-50%, -50%) translateX(0);}
.circle-arrow-btn__text {
  position: relative;
  font-size: 16px;
  line-height: 2;
  color: #fff;
}
.circle-arrow-btn__circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background-color: #fff;
  border-radius: 50%;
  transition: all 0.4s ease-out;
  flex-shrink: 0;
  overflow: hidden;
}
.circle-arrow-btn__arrow {
  position: relative;
  font-size: 14px;
  color: #01a0e9;
  transition: all 0.4s ease-out;
}
.circle-arrow-btn__arrow::before {
  position: relative;
  transition: all 0.4s ease-out;
  display: inline-block;
}
.circle-arrow-btn__arrow::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  color: #01a0e9;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translateX(-240%);
  transition: all 0.4s ease-out;
}

.circle-arrow-btn.siro {}
.circle-arrow-btn.siro a {
  display: flex;
  align-items: center;
  gap: 15px;
  width: fit-content;
  cursor: pointer;
  background: #fff;
  color: #0d1c29;
  padding: 5px 5px 5px 15px;
  border-radius: 35px;
  filter: drop-shadow(3px 3px 3px rgba(0,0,0,.05));
}

.circle-arrow-btn.siro a:hover .circle-arrow-btn__text::before {
  background: currentColor;
  animation: circle-arrow-btn-line 0.5s ease-out;
}
.circle-arrow-btn.siro a:hover .circle-arrow-btn__circle {background-color: #000;}
.circle-arrow-btn.siro a:hover .circle-arrow-btn__arrow::before {transform: translateX(240%);}
.circle-arrow-btn.siro a:hover .circle-arrow-btn__arrow::after {transform: translate(-50%, -50%) translateX(0);}
.circle-arrow-btn.siro .circle-arrow-btn__text {
  position: relative;
  font-size: 15px;
  font-family: ' RedHatDisplay ';
  line-height: 2;
  color: #0d1c29;
}
.circle-arrow-btn.siro .circle-arrow-btn__circle {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background-color: #01a0e9;
  border-radius: 50%;
  transition: all 0.4s ease-out;
  flex-shrink: 0;
  overflow: hidden;
}
.circle-arrow-btn.siro .circle-arrow-btn__arrow {
  position: relative;
  font-size: 14px;
  color: #fff;
  transition: all 0.4s ease-out;
}
.circle-arrow-btn__arrow::before {
  position: relative;
  transition: all 0.4s ease-out;
  display: inline-block;
}
.circle-arrow-btn.siro .circle-arrow-btn__arrow::after {
  content: "\f061";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) translateX(-240%);
  transition: all 0.4s ease-out;
}

@keyframes circle-arrow-btn-line {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}


a.btn-large{width: 100%;line-height: 55px; font-size: 17px; background: black;color: white;text-align: center;margin-top: 10px;display: block;
  padding: 0px;
  border:none;
  transition: .3s;
  padding-right: 0px!important;
  margin-right: 0!important;
}
a.btn-large:hover{background: #07a3d7;}

@media (min-width:667px) {


}



@media (min-width:768px) {

a.btn-large{width: 100%;line-height: 68px;font-size: 20px; background: black;color: white;text-align: center;margin-top: 40px;}


}

@media (min-width: 992px) {
.circle-arrow-btn a {padding: 6px 6px 6px 25px;gap: 25px;}
.circle-arrow-btn.siro a {padding: 6px 6px 6px 25px;gap: 25px;}
.circle-arrow-btn.siro a:hover {background:white;}


a.btn-large{width: 100%;font-size: 20px; background: black;color: white;text-align: center;margin-top: 40px;}


}


@media (min-width: 1440px) {
.circle-arrow-btn a {padding: 6px 6px 6px 30px;gap: 35px;}
.circle-arrow-btn.siro a {padding: 6px 6px 6px 30px;gap: 35px;}


a.btn-large{width: 100%;line-height: 80px;font-size: 24px;}


}



/* pagetop 
---------------------------------------------------- */
#pagetop {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 999;
	transition: .5s;
}
#pagetop:hover {opacity: .8;}


@media (max-width: 1280px) {
#pagetop {
  width: 60px;
  position: fixed;
    bottom: 25px;
    right: 25px;
}



}

@media (max-width: 992px) {
#pagetop {
width: 50px;
bottom: 15px;
right: 15px;
}

}

@media (max-width: 568px) {
#pagetop {
width: 40px;
bottom: 15px;
right: 10px;
}

}



/* -----  common / footer ------- */
.common{position: relative;background:rgba(255,255,255,.3);color: white;border-radius: 1.5em;padding: 2.5em;margin-bottom: 50px;}
.common h3{margin-bottom: 1em;font-weight: 700;}
.common h3 span{display: block;font-size: 35px;font-family: ' RedHatDisplay ';margin-top: 5px;}
.common .txt{margin-bottom: 1.5em;}
.common .circle-arrow-btn.siro a{width: 220px;margin: 0 auto;justify-content: space-between;padding: 5px 5px 5px 25px;font-weight: 700;}
.common .circle-arrow-btn.siro a:hover{background: white;}


footer{ margin-top: 50px; padding: 40px 0px 20px;position: relative;background:url("../images/bg-footer.jpg");background-position: center;background-size: cover; color:#fff;}
footer .container{max-width: 100%;padding: 0 15px;}
footer .logoblock{position: relative; width: 230px;margin: 0 auto; margin-bottom: 25px;}
footer .address{text-align: center;margin-bottom: 20px;}
footer .address a{color: #fff;transition: .4s;}
footer .address a:hover{color: #000;}


.footer-menu{width: 100%;margin: 0 auto; margin-bottom: 1em;}
.footer-menu ul{display: flex;flex-wrap: wrap; justify-content: space-between;}
.footer-menu li{width:48%;text-align: left;background:none;font-size: 14px;}
.footer-menu li.home{width:100%;}
.footer-menu li a{color: #fff;text-decoration: none; text-align: center; padding: .7em 0;display: block;transition: .3s;margin-bottom: 12px;border:1px solid #ddd;}
.footer-menu li a:hover{color:#000;background: rgba(255,255,255,.4);}



.copy{text-align: center;color: #f7f7f7; font-size: .8em;letter-spacing: 0;}

@media (min-width: 667px) {
.common .txt{margin-bottom: 0;}
.common .circle-arrow-btn.siro a{width: 220px;margin: 0 auto;justify-content: space-between;padding: 7px 7px 7px 25px;font-weight: 700;}


footer{ padding: 40px 0px 20px;}

.footer-menu{width: 100%;border-top: none;padding: 0px;}
.footer-menu{border-top: none;margin: 0 auto; margin-bottom:1.5em;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0;display: flex;justify-content: center;}
.footer-menu li.home{width:auto;}
.footer-menu li {width: auto;padding-bottom: 0px;position: relative;background: none;text-align: left;font-size: 14px;}
.footer-menu li a{letter-spacing:0.05rem;border-right:none; padding: 0 1em;text-align:center;border-bottom: none;line-height: 1.4;background: none;border:none;margin-bottom: 0;}

.down{border-bottom: none;padding: 0;}

}



@media (min-width: 768px) {
.common{margin-bottom: 70px;}
.common .circle-arrow-btn.siro a{width: 100%;margin: 0 auto;justify-content: space-between;padding: 10px 10px 10px 35px;}

footer{margin-top: 70px; padding: 60px 0px 25px;}
footer .logoblock{position: relative; width: 230px;margin: 0 auto;margin-bottom: 25px;}

.page-top{position: absolute;right:15px;bottom:25px;width: 20px;}



.copy{font-size: 12px;}


}


@media (min-width: 992px) {

.common h3{margin-bottom: 1em;font-weight: 700;}
.common h3 span{display: block;font-size: 40px;margin-top: 5px;}


footer{ padding: 80px 0px 50px;}
footer .container{max-width: 100%;padding: 0 15px;}
footer .logoblock{margin-bottom: 20px;margin-left: 0;width: 280px;}
footer .address{text-align: left;}


.page-top{position: absolute;right:15px;bottom:5px;width: 20px;}

.footer-menu{width: auto;border-top: none;padding-top: 0;margin-bottom: 30px;margin-right: 0;display: flex;justify-content: flex-end;}
.footer-menu ul{border-top: none;border-left:none;}
.footer-menu li {padding-bottom: 0px;text-align: left;}
.footer-menu li a{text-decoration: none;padding: 0 .7em;letter-spacing: .07rem;margin-bottom: 0em!important;display: block;font-size: 14px;text-align: left;}
.footer-menu li:first-child a{padding: 0 .7em 0 0;}
.footer-menu li:last-child a{padding: 0 0 0 .7em;}

.btwn{display: flex;flex-direction: column;justify-content: space-between;}
.btwn2{display: flex;flex-direction: column;justify-content: center;}


}




@media (min-width: 1200px) {
.common{padding:100px;margin-bottom: 100px;}
.common .circle-arrow-btn.siro a{width: 100%;margin: 0 auto;justify-content: space-between;padding: 15px 15px 15px 40px;}



footer{margin-top: 100px;padding: 100px 0 50px;}
footer .container{max-width: 1110px;}
footer .logoblock{position: relative; width:300px;margin-bottom: 35px;}
.footer-menu li a{text-decoration: none;padding: 0 .7em;letter-spacing: .07rem;margin-bottom: 0em!important;display: block;font-size: 16px;text-align: left;}
.footer-menu li:first-child a{padding: 0 .7em 0 0;}
.footer-menu li:last-child a{padding: 0 0 0 .7em;}


.copy{}



}

@media (min-width: 1680px) {
.common ul{width: 1000px;margin: 0 auto;}

.common h3{margin-bottom: 1em;font-weight: 700;}
.common h3 span{display: block;font-size: 48px;margin-top: 5px;}

footer .container{max-width: 1490px;}

footer .logoblock{position: relative;width: 320px;}
.footer-menu li a{letter-spacing: .08rem;font-size: 16px;}



}


/*------------------------------　　h2area 背景　　------------------------------------------*/

.h2area{
margin-top: 0px;
position: relative;
width:100%;
height: 480px;
display: flex;align-items:center;
}
.h2area::after {
  content: "";
  position: absolute;
  top: 0;  bottom: 0;
  left: 0;  right: 0;
  background: linear-gradient(0deg, #036, transparent);
}
.h2area.h2-service{background: url("../images/h2-service.jpg");background-position: center;background-size: cover;}
.h2area.h2-recruit{background: url("../images/h2-recruit.jpg");background-position: center;background-size: cover;}
.h2area.h2-company{background: url("../images/h2-company.jpg");background-position: center;background-size: cover;}
.h2area.h2-contact{background: url("../images/h2-contact.jpg");background-position: center;background-size: cover;}
.h2-txt{position:relative;font-weight: 700;font-family: ' RedHatDisplay ';font-size: 66px;letter-spacing: .3rem;color: #fff;z-index: 10;padding-left: 15%;padding-top: 90px; line-height: 1;
background: linear-gradient(90deg, #9ff, #3cf, #fff 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;}
.h2-txt span { display: block;font-size: 26px;letter-spacing: .1rem;margin-top:10px;font-weight: 500;font-family: ' NotoSansJP ';}


@media (max-width: 1440px){
.h2area{height: 380px;}
.h2-txt{position:relative;font-weight: 700;font-size: 50px;letter-spacing: .3rem;color: #fff;z-index: 10;padding-left: 15%;}
.h2-txt span { display: block;font-size: 24px;letter-spacing: .1rem;margin-bottom:15px;}


}


@media (max-width: 1199px){
.h2area{height: 280px;}
.h2-txt{font-size: 45px;letter-spacing: .3rem;padding-left: 10%;line-height: 1;}
.h2-txt span {font-size: 22px;letter-spacing: .1rem;margin-bottom:15px;}




}

@media only screen and (max-width: 991px) {
.h2area{height: 250px;margin-top: 0;}
.h2-txt{font-size: 38px;letter-spacing: .2rem;padding-left: 10%;line-height: 1;padding-top: 0px;}
.h2-txt span {font-size: 20px;letter-spacing: .1rem;margin-bottom:10px;}



}


@media only screen and (max-width: 767px) {
.h2area{height: 180px;}
.h2-txt{font-size: 32px;letter-spacing: .2rem;padding-left: 10%;line-height: 1;}



}

 @media only screen and (max-width: 666px) {
.h2area{height: 150px;}
.h2-txt{font-size: 27px;letter-spacing: .2rem;padding-left: 5%;line-height: 1;}
.h2-txt span {font-size:20px;letter-spacing: .1rem;margin-bottom:10px;}


}

/*------------------------------　　下層ページ style　　------------------------------------------*/

.headline-h3 {
  position: relative;
  margin-bottom: 1.8em;
  font-size: 23px;
  letter-spacing: .1rem;
  line-height: 1.4;
  border-left: 5px solid #00A3EF;padding-left: .5em; font-weight: 700;text-align:left;}


.headline-h4 {
  font-weight: 700;
  font-size: 1.15em;
 position: relative;
  margin-bottom: 1.5em;
  text-align: left;
  color: black;
  border-left:6px solid #318de8;padding-left: .5em;
}

.headline {
 position: relative;
 font-weight: 700;
 font-size: 34px;
  margin-bottom: 25px;
  line-height: 1;
}
.headline span{display: block;font-size:15px;margin-top: .5em;font-family: ' NotoSansJP ';font-weight: 400;letter-spacing: .08rem;}

.headline.white{color: white;}

.h5-about{ font-family: ' BIZUDPGothic ';font-weight: 700;border-bottom: 1px dashed #BCA46E;padding-bottom: .5em;margin-bottom: 1em;font-size: 1.1em;}
.h6-about{ font-family: ' BIZUDPGothic ';font-weight: 700;color: forestgreen;margin-bottom: .6em;}

@media (min-width: 667px) {
.headline { position: relative; font-size: 45px;letter-spacing: .2rem;
}




}



@media (min-width: 768px) {

.headline-h3 {
  position: relative;
  margin-bottom: 2em;
  font-size: 22px;
  letter-spacing: .1rem;
  line-height: 1.4;
}



.headline-h4 {font-size: 20px;margin-bottom: 35px;}



.h5-about{ padding-bottom: .5em;margin-bottom: 1em;font-size: 20px;}
.h6-about{margin-bottom: .6em;font-size: 17px;}

}


@media (min-width: 992px) {
.headline {
font-size: 60px;letter-spacing: .3rem;
  margin-bottom: 40px;
}
.headline span{display: block;font-size:20px;margin-top: .5em;letter-spacing: .2rem;}



 .headline-h4{font-size: 22px; }


}


@media (min-width: 1200px) {

.headline-h3 {
  position: relative;
  margin-bottom: 2em;
  font-size: 28px;
  letter-spacing: .1rem;
  line-height: 1.4;}


.headline {
font-size: 75px;letter-spacing: .5rem;
  margin-bottom: 50px;
}


.headline-h4 { font-size: 24px;letter-spacing: .1rem;margin-bottom:40px;}



}


@media (min-width: 1440px) {

.headline {font-size: 90px;  margin-bottom: 60px;}
.headline span{font-size:22px;margin-top: .5em;letter-spacing: .2rem;}




}

@media (min-width: 1920px) {

.headline {font-size: 110px;  margin-bottom: 60px;}
}


#pankuzu{}





.marker {background: linear-gradient(transparent 60%, #ccff66 60%);padding-bottom: 3px;}
.marker2 {background: linear-gradient(transparent 80%, rgba(255,102,0,.5) 0%);}
.marker-ao {padding-bottom: 0.4em;background: linear-gradient(transparent 40%, #b5fbfb 60%);}
.marker-pink {padding-bottom: 0.4em; background: linear-gradient(transparent 40%, #fcaacb 60%);}
.marker-green {padding-bottom: 0.4em;background: linear-gradient(transparent 40%, #a8f099 60%);}



.btn-back {
  display: inline-block;
  padding:10px 5px;
  text-align: center;
  width:200px;
  text-decoration: none;
  border-radius: 6px;
  background:rgba(0,142,239,1.00);
  color: #fff;/*文字色*/
  font-size: 15px;
  letter-spacing: 0;
  transition: .3s;
}
.btn-back:hover{
  color: #fff;/*文字色*/
  background:#555;

}

.btn-pdf {
  text-align:center;
  text-decoration: none;
}
.btn-pdf a{display: flex;align-items: center;justify-content: space-between;padding: 10px 10px;background: #99CC66;color: #111;transition: .5s;border-radius: 4px;width: 260px;margin: 0 auto;}
.btn-pdf a .fas{}
.btn-pdf a:hover{
  color: #222;
  background:#f90;
}


@media (min-width: 768px) {
.btn-read{width: 325px;}
.btn-pdf a{width: 320px;padding: 20px 40px;font-size: 1.2em;}


.btn-back {
  padding:18px 5px;
  width:300px;
  font-size: 16px;
}

}


@media (min-width:1200px) {
.btn-pdf {margin-bottom: 0px;}

.btn-read{line-height: 70px;padding: 0;}

}



.photo-ofi {
  height: 0;
  display: block;
  background: none;
  overflow: hidden;
  position: relative;
  padding-bottom: 65%;
  /* 高さを指定（ボックスの横幅を基準） */
}
.photo-ofi img {
  max-width: inherit;
  max-height: inherit;
  width: 100%;
  height: 100%;
  object-fit: scale-down;
  font-family: 'object-fit: scale-down;';
  position: absolute;
  left: 0;
  top: 0;
}



/* paging */
.paging {
	padding:0em 10px 0;
	line-height: 1.4;
	font-size: 15px;
	font-family: Century Gothic,CenturyGothic,AppleGothic,sans-serif;
}
.paging .page{text-align: center;margin-bottom: 5px;font-size: 13px;}
.paging span.current,
.paging  span.paging-text a{
	padding:5px 10px;
	color:#333;
	display:inline-block;
	margin:3px 0;
	background: #fff;
	border: 1px solid #ddd;
	text-decoration: none;
	border-radius: 50%;
}
.paging span.current {
	background:#f23636;
	color:#fff;
}
.paging span.paging-text a:hover {
	background:#f23636;
	color:#fff;
}



/* shadow */
.box-shadow {box-shadow: 4px 4px #cdeaf8;}
.box-shadow2 {box-shadow: 2px 2px 10px rgba(0,0,0,.5)}
.drop-shadow { -webkit-filter: drop-shadow(0px 2px 1px rgba(0,0,0,.2));
        filter: drop-shadow(0px 2px 1px rgba(0,0,0,.2)); }
.drop-shadow2 { -webkit-filter: drop-shadow(0px 0px 10px rgba(0,0,0,.08));
        filter: drop-shadow(0px 0px 10px rgba(0,0,0,.08));}


.table-responsive {position: relative;z-index: 10;
border:none;
}


@media screen and (max-width: 767px) {
.table-responsive {
border:none;margin-bottom: 1.5em;
}
.table-responsive::-webkit-scrollbar {
height: 5px;
}

.table-responsive::-webkit-scrollbar-track {
border-radius: 2px;
background: #eee;
}

.table-responsive::-webkit-scrollbar-thumb {
border-radius: 2px;
background:#a5c7e8;
}
}



/*サムネ付きスライダー start*/
.slickwrap {
max-width: auto;
width: 93%;
margin: 0px auto;
margin-left: 0;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.slider {
border:1px solid #eee;
  width: 100%;
  margin: 0 0 10px 0;
  overflow:hidden;
  background: white;
  padding: 0;
}
.slide-item img {width: 100%;}


.thumbnail-list {
  width: 100%;
  margin: 0;
  padding:0 0px;
}
.thumbnail-list .slick-track {
  transform: unset !important;
  width: 100% !important;
  display: flex!important;
  flex-flow:wrap;
}
.thumbnail-item {
  transition: .3s;
  padding: 1px;
  width:33.3%!important;
  box-sizing: border-box;
  position: relative;
  list-style:none;
  cursor: pointer;
}
.thumbnail-item .photo-ofi img {
  max-width: inherit;
  max-height: inherit;
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;';
  position: absolute;
  left: 0;
  top: 0;
}
.thumbnail-item img{opacity: .5;}
.thumbnail-item.slick-current img{
border: 2px solid darkorange;
opacity: 1;
}
.thumbnail-item:hover img{opacity: 1;}
.thumbnail-item img {
  width: 100%;
  margin: 0 auto;
}

@media screen and (max-width:991px) {
.slickwrap{width: 400px;margin: 0 auto;}
}

@media only screen and (max-width:767px){
.slider {margin: 0 0 10px 0;}

}

@media only screen and (max-width:500px){
.slickwrap{width:100%;margin: 0 auto;}

}
/*サムネ付きスライダー end*/










.gmap2{}
.gmap2 iframe{width: 100%;height: 200px;}









/* service.html
--------------------------------------------------------- */

.service #section01{padding: 50px 0px 50px;position: relative;}
.service #section01 .deco{position: absolute;top:110px;left:0;z-index: 10;}
.service #section01 .container{z-index: 20;}
.service #section01 h3{margin-bottom: 30px;border-left: 5px solid #00A5EE;line-height: 1.5;font-weight: 700;font-size: 1.5em;padding-left: .5em;}
.service #section01 p{text-align: justify;}
.service #section01 dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 25px;
}
.service #section01  dt, .service #section01  dd {box-sizing: border-box;}
.service #section01  dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 10px 0;
}
.service #section01  dt span{display: block;text-align: center;border-radius: 1.6em;padding: .5em 0; width: 100%; font-weight: 700;color: white; background: linear-gradient(140deg, #3cf, #0c1c4d 90%);}
.service #section01  dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 10px;
  line-height: 1.4;
  text-align: justify;
}

.service #section02{padding:50px 0px 50px;position: relative;background: #E8F9F6;}
.service #section02 h3{margin-bottom: 30px;border-left: 5px solid #00A5EE;line-height: 1.5;font-weight: 700;font-size: 1.5em;padding-left: .5em;}
.service #section02 .txt{margin-bottom: 25px;text-align: justify;}
.service #section02 .box{border:4px double rgba(0,163,239,.5);background: white; padding: 1em;border-radius: 1em;}
.service #section02 .box .index{margin-bottom: 20px;}
.service #section02 .box .index h4{font-size:17px;font-weight: 600;display: flex;align-items: center;margin-bottom: 10px;}
.service #section02 .box .index h4:last-child{margin-bottom: 0px;}
.service #section02 .box .index h4 span.num{background: #00A4EF;background: linear-gradient(140deg, #3cf, #069 90%);width: 36px;height: 36px;border-radius: 50%;display: flex;align-items: center;justify-content: center;color: white;font-family: ' RedHatDisplay ';font-weight: 700; font-size: 20px;margin-right: 5px;}
.service #section02 .box .index h4 span.title{width: calc(100% - 41px);}

.service #section02 .wrapper {
  text-align: center;
  width: 100%;
  position: relative;
  padding: 1.2em 1em;
  z-index: 2;
  border: solid 2px #00A4EF;
  background-color:#E8F9F6;
}
.service #section02 .wrapper::before,
.service #section02 .wrapper::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #E8F9F6;
}
.service #section02 .wrapper::before {
  top: -2px;
  bottom: -2px;
  left: 10px;
  right: 10px;
}
.service #section02 .wrapper::after {
  top: 10px;
  bottom: 10px;
  left: -2px;
  right: -2px;
}

.service #section02 .txt2{position: relative;z-index: 5; font-weight: 700; text-align: justify;background: linear-gradient(100deg, #3cf ,#036 ,#3cf 90%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;}

.service #section03{padding: 50px 0px 50px;position: relative;}



#target1{position: absolute;left:0;top:-60px;}
#target2{position: absolute;left:0;top:-60px;}
#target3{position: absolute;left:0;top:-60px;}
#target4{position: absolute;left:0;top:-60px;}
#target5{position: absolute;left:0;top:-60px;}
#target6{position: absolute;left:0;top:-60px;}
#target7{position: absolute;left:0;top:-60px;}
#target8{position: absolute;left:0;top:-60px;}

@media (min-width: 667px) {
.service #section02 .box .index{display: flex;align-items: center;margin-bottom: 20px;}
.service #section02 .box .index h4{font-size:17px;font-weight: 600;display: flex;align-items: center;margin-bottom: 0px;margin-right: 10px;}
.service #section02 .box .index h4:last-child{margin-right: 0px;}
.service #section02 .txt2{ text-align: center;}


}



@media (min-width: 768px) {

.service #section01{padding: 70px 0px 70px;}
.service #section01 .deco{position: absolute;top:150px;left:0;z-index: 10;}
.service #section01 h3{margin-bottom: 30px;border-left: 5px solid #00A5EE;line-height: 1.5;font-weight: 700;font-size: 1.5em;padding-left: .5em;}



.service #section02{padding: 70px 0px 70px;}
.service #section02 .txt{margin-bottom: 35px;}
.service #section02 .txt2{font-size: 18px;}
.service #section02 .wrapper {
  text-align: center;
  width: 650px;
  margin: 0 auto;
  position: relative;
  padding: 1.5em 1.2em;
  z-index: 2;
  border: solid 2px #00A4EF;
  background-color:#E8F9F6;
}
.service #section02 .wrapper::before,
.service #section02 .wrapper::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #E8F9F6;
}
.service #section02 .wrapper::before {
  top: -2px;
  bottom: -2px;
  left: 15px;
  right: 15px;
}
.service #section02 .wrapper::after {
  top: 15px;
  bottom: 15px;
  left: -2px;
  right: -2px;
}


.service #section03{padding: 70px 0px 70px;}

}



@media (min-width: 992px) {
.service #section01 .deco{position: absolute;top:150px;left:0;z-index: 10;}
.service #section01 h3{margin-bottom: 40px;border-left: 5px solid #00A5EE;line-height: 1.5;font-weight: 700;font-size: 1.4em;padding-left: .5em;}
.service #section01 p{padding-right: 2em;}

.service #section02 h3{margin-bottom: 40px;border-left: 5px solid #00A5EE;line-height: 1.5;font-weight: 700;font-size: 1.4em;padding-left: .5em;}



#target1{position: absolute;left:0;top:-100px;}
#target2{position: absolute;left:0;top:-100px;}
#target3{position: absolute;left:0;top:-100px;}
#target4{position: absolute;left:0;top:-100px;}
#target5{position: absolute;left:0;top:-100px;}
#target6{position: absolute;left:0;top:-100px;}
#target7{position: absolute;left:0;top:-100px;}
#target8{position: absolute;left:0;top:-100px;}

}



@media (min-width: 1200px) {
.service #section01{padding:100px 0px 100px;}
.service #section01 .deco{position: absolute;top:150px;left:0;z-index: 10;}
.service #section01 h3{margin-bottom: 40px;line-height: 1.5;font-size: 1.6em;padding-left: .5em;}
.service #section01 p{padding-right: 2em;line-height: 2;}

.service #section01 dl {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 25px;
}
.service #section01  dt, .service #section01  dd {box-sizing: border-box;}
.service #section01  dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 10px 0;
}
.service #section01  dt span{display: block;text-align: center;border-radius: 1.6em;padding: .5em 0; width: 100%; font-weight: 700;color: white; background: linear-gradient(140deg, #3cf, #0c1c4d 90%);}
.service #section01  dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 10px 15px;
  line-height: 1.4;
  text-align: justify;
}

.service #section02{padding:100px 0px 100px;}
.service #section02 h3{margin-bottom: 40px;line-height: 1.5;font-size: 1.6em;padding-left: .5em;}
.service #section02 .txt{margin-bottom: 45px;}
.service #section02 .box{padding: 1.6em;}
.service #section02 .box .index h4{font-size:20px;font-weight: 600;display: flex;align-items: center;margin-right: 20px;}
.service #section02 .box .index h4 span.num{width: 40px;height: 40px; font-size: 25px;margin-right: 5px;}
.service #section02 .box .index h4 span.title{width: calc(100% - 45px);}
.service #section02 .txt2{font-size: 22px;line-height: 2;}
.service #section02 .wrapper {
  text-align: center;
  width: 780px;
  margin: 0 auto;
  position: relative;
  padding: 1.5em 1.2em;
  z-index: 2;
  border: solid 3px #00A4EF;
  background-color:#E8F9F6;
}
.service #section02 .wrapper::before,
.service #section02 .wrapper::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #E8F9F6;
}
.service #section02 .wrapper::before {
  top: -3px;
  bottom: -3px;
  left: 25px;
  right: 25px;
}
.service #section02 .wrapper::after {
  top: 25px;
  bottom: 25px;
  left: -3px;
  right: -3px;
}



}


@media (min-width: 1680px) {
.service #section01 .deco{top:180px;}
.service #section01 .container{max-width: 1400px;}
.service #section01 h3{margin-bottom: 50px;line-height: 1.5;font-size: 1.7em;padding-left: .5em;}
.service #section01 p{font-size: 1.1em;}

.service #section02 .container{max-width: 1400px;}
.service #section02 h3{margin-bottom: 50px;line-height: 1.5;font-size: 1.7em;padding-left: .5em;}
.service #section02 .box{padding: 2em;}
.service #section02 .box .index h4 span.num{width: 50px;height: 50px; font-size: 25px;margin-right: 5px;}
.service #section02 .box .index h4 span.title{width: calc(100% - 55px);}

.service #section02 .txt2{font-size:24px;line-height: 2;}
.service #section02 .wrapper {
  text-align: center;
  width: 820px;
  margin: 0 auto;
  position: relative;
  padding: 1.5em 1.2em;
  z-index: 2;
  border: solid 3px #00A4EF;
  background-color:#E8F9F6;
}

}




/* company.html
--------------------------------------------------------- */

.company #section01{padding:50px 0px;position: relative;}
.company #section01 .table{margin-bottom: 0;border-top: 1px solid #ddd;}
.company #section01 .table th{width: 100%;display: block;font-weight: 700;padding: 15px 5px 5px 5px;background: none!important;border-top: none;}
.company #section01 .table td{width: 100%;display: block;padding: 5px 5px 15px 5px;background: none!important;border-top: none;border-bottom: 1px solid #ddd;}
.company #section01 .table td a{color: #222;border-bottom: 1px solid #555;transition: .4s;}
.company #section01 .table td a:hover{color:#0070FF;border-bottom: 1px solid #0070FF;}
.company #section01 .table td .call{color: #222;}

.company #section02{padding:50px 0px;position: relative;background: url("../images/bg-mv.jpg");background-position: center;background-size: cover;color: white;}
.company #section02 .deco-car{position: absolute;left:0;top:10px;z-index: 20;width: 85%;}
.company #section02 .container{z-index: 30;}
.company #section02 .sub{font-weight: 700;font-size: 19px;margin-bottom: 20px;text-align: justify;}
.company #section02 .txt{text-align: justify;margin-bottom: 30px;}

.company #section03{padding:50px 0px;position: relative;}



#target1{position: absolute;left:0;top:-60px;}
#target2{position: absolute;left:0;top:-60px;}
#target3{position: absolute;left:0;top:-60px;}


@media (min-width: 667px) {
.company #section02 .deco-car{top:80px;z-index: 20;width: 65%;}


}


@media (min-width: 768px) {

.company #section01{padding:70px 0px;}
.company #section01 .table{border-top: none;}
.company #section01 .table th{width: 200px;display: table-cell;padding: 15px;border-bottom: 1px solid #00A4EF;}
.company #section01 .table td{width: auto;display:table-cell;padding: 15px;}

.company #section02{padding:70px 0px;}

.company #section03{padding:70px 0px;}


}

@media (min-width: 992px) {
.company #section02 .deco-car{top:250px;z-index: 20;width: 55%;}

.company #section02 .sub{font-size: 22px;margin-bottom: 20px;}
.company #section02 .txt{margin-bottom: 0px;}

#target1{position: absolute;left:0;top:-80px;}
#target2{position: absolute;left:0;top:-80px;}
#target3{position: absolute;left:0;top:-80px;}

}


@media (min-width: 1200px) {
.company #section01{padding:100px 0px;}
.company #section01 .table th{width: 250px;padding: 20px 15px;border-bottom: 1px solid #00A4EF;}
.company #section01 .table td{width: auto;display:table-cell;padding:20px 15px;}

.company #section02{padding:100px 0px;}
.company #section02 .sub{font-size: 24px;margin-bottom: 40px;}
.company #section02 .txt{margin-bottom: 0px;padding-right: 3em;}

.company #section03{padding:100px 0px;}

}


@media (min-width: 1680px) {
.company #section01 .table th{width: 250px;padding: 25px 15px;border-bottom: 1px solid #00A4EF;}
.company #section01 .table td{width: auto;display:table-cell;padding:25px 15px;}


}


/* recruit.html
--------------------------------------------------------- */

.recruit #section01{padding:50px 0px;position: relative;}
.recruit #section01 .deco{position: absolute;top:210px;left:0;z-index: 2;}
.recruit #section01 .container{z-index: 10;}
.recruit #section01 h3{background: linear-gradient(100deg, #3cf, #2a445d 65%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;font-weight: 700;font-family: ' RedHatDisplay ';font-size: 25px;}
.recruit #section01 .recruit-nav li{margin-bottom: 10px;}
.recruit #section01 .recruit-nav li:last-child{margin-bottom: 0px;}
.recruit #section01 .recruit-nav a{display: block;background: #f7f7f7;color: #111;border:1px solid rgba(103,200,244,.5);padding: .5em 1em;margin-bottom: 10px;position: relative;transition: .4s;border-radius: 30px;font-weight: 500;}
.recruit #section01 .recruit-nav a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
font-weight: 900;
 position: absolute;
 right:1em;
 top:50%;
 transform: translateY(-50%);
  line-height: 1;
  font-size: .6em;
}
.recruit #section01 .recruit-nav a:last-child{margin-bottom:0;}
.recruit #section01 .index{position: relative;top:-30px;width: 90%;margin: 0 auto;background: white;padding: 1.5em 1.5em 0;border-radius: 1.5em;}
.recruit #section01 p{background: linear-gradient(120deg, #4079ce 20%, #3cf, #0955c6 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;font-weight: 700;font-size:20px;text-align: center;margin-bottom: 20px;}

.recruit .h3-recruit{color: #01a0e9;font-family: ' NotoSansJP ';font-weight: 700;margin-bottom: 1.3em;line-height: 1.5;font-size: 15px;}
.recruit .h3-recruit span{display: block;font-family: ' RedHatDisplay ';font-weight: 700;margin-top: .2em;font-size: 28px;line-height: 1;background: none;color: #0d1c29;-webkit-text-fill-color:#0d1c29;}

.recruit #section02{padding:50px 0px;position: relative;background: linear-gradient(120deg, #fafafa 5%, #d6e2e9, #eee 85%);}
.recruit #section02 p{text-align: justify;margin-bottom: 1.5em;}
.recruit #section02 .pic{position: relative;}
.recruit #section02 .pic .t-script{position: absolute;z-index: 5;top:-15px;left:30px;color:white;font-size: 40px;font-family: ' Italianno ';font-weight: 400; letter-spacing: .2rem; transform: rotate(-14deg);}

.recruit #section03{padding:50px 0px;position: relative;}
.recruit #section03 .pic{position: relative;}
.recruit #section03 .pic .t-script{position: absolute;z-index: 5;top:-10px;right:10px;color:#ccc;font-size: 38px;font-family: ' Italianno ';font-weight: 400;transform: rotate(14deg);}

.recruit #section04{padding:50px 0px;position: relative;background: linear-gradient(120deg, #d6e2e9 5%, #fafafa, #f6f6f6 85%);}
.recruit #section04 .deco-car{position: absolute;right:0;top:200px;width: 70%;z-index: 2;opacity: .3;}
.recruit #section04 .container{z-index: 5;}
.topic{font-weight: 700;font-family: ' RedHatDisplay ';font-size: 48px;line-height: 1;margin-bottom: 10px;}
.topic span{display: block;font-size: 12px;color: #00A3EF;}
.recruit #section04 h4{font-weight: 700;margin-bottom: 1.4em;font-size: 20px;line-height: 2.55;}
.recruit #section04 h4 span{padding: .5em;border: 1px solid #666;}
.recruit #section04 .picbox{position: relative;}
.recruit #section04 .picbox .pic1{position: relative;width: 90%;padding-bottom: 30px;}
.recruit #section04 .picbox .pic2{position: absolute;bottom:0px;right:0;width: 55%;box-shadow: 3px 3px 6px #ccc;}
.recruit #section04 .pic{position: relative;}
.recruit #section04 .pic .t-script{position: absolute;z-index: 5;top:-15px;left:-10px;color:white;font-size: 40px;font-family: ' Italianno ';font-weight: 400; letter-spacing: .2rem; transform: rotate(-12deg);}


.recruit #section05{padding:50px 0px;position: relative;}

.recruit #section06{padding:50px 0px;position: relative;background: linear-gradient(120deg, #fafafa 5%, #d6e2e9, #eee 85%);}
.recruit #section06 .box{background: white;background-image: repeating-linear-gradient(318deg, #f0f9ff, #f0f9ff 10px, transparent 10px, transparent 20px);border:2px solid #00A4EF;border-radius: .5em;padding:2.6em 1em 2.2em;box-shadow: 3px 3px 3px #ccc;margin-bottom: 20px;}
.recruit #section06 .box h4{margin-bottom: 2.5em;text-align: center;}
.recruit #section06 .box h4 span{background: #111;color: white;line-height: 1;padding: .3em .6em;border-radius: 1em;font-size: 19px;}
.recruit #section06 .box .wrap{width: 100%; display: flex;align-items: center;justify-content: center;}
.recruit #section06 .box .wrap .ico{width: 60px;margin-right: 20px;}
.recruit #section06 .box .wrap .num{width: auto;}
.recruit #section06 .box .wrap .num span{font-weight: 700;font-size: 28px;}
.recruit #section06 .box .graf{width: 95%;margin: 0 auto;}


.recruit #section07{padding:50px 0px;position: relative;}
.recruit #section07 .txt{text-align: center;font-weight: 700;margin-bottom: 2em;font-size: 19px;background: linear-gradient(120deg, #4079ce 20%, #3cf, #0955c6 75%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;}
.staffbox{padding: 1.5em;background: white;border:1px solid #eee;border-radius: 1em; box-shadow: 5px 5px 10px #eee;margin-bottom: 35px;}
.staffbox:last-child{margin-bottom: 0;}

.staffbox .pic{text-align: center; margin: 0 auto;margin-bottom: 1em;}
.staffbox .name{margin-bottom: .6em;font-weight: 700;font-size: 20px;line-height: 1;text-align: center;}
.staffbox .name span{display: block;font-weight: 400;font-size: 13px;margin-top: .6em;}
.staffbox .beforejob{margin-top: .8em;}
.staffbox .beforejob span{background: #999;color: white; padding: .5em .6em;margin-right: .6em;border-radius: .3em;}
.t-q{font-weight: 700;color:#00A3F0;margin-bottom: .6em;}
.t-a{margin-bottom: 1.8em;}
.t-a:last-child{margin-bottom:0;}

.recruit #section08{padding:50px 0px;position: relative;background: linear-gradient(120deg, #d6e2e9 5%, #fafafa, #f6f6f6 85%);}
/* 要素本体 */
.recruit #section08 .content{width: 100%;}
.recruit #section08 .step{width: 100%;}
.recruit #section08 .step li{
  background: white;
  border-radius: .8em;
  padding: 1.8em;border:2px solid #00A3EE;
  margin-bottom: 20px;
}

.recruit #section08 .step li .icon{width: 90px;height: 90px;border-radius: 50%;padding: 1.4em;margin: 0 auto;border:2px solid #00A3EE;margin-bottom: .7em;}
.recruit #section08 .step li .step-num{font-weight: 700;text-align: center;font-size: 1.7em;margin-bottom: .4em;color: #00A3EE;}
.recruit #section08 .step li h4{line-height: 1.3;text-align: center;font-weight: 700;font-size: 1.3em;}

.recruit #section09{padding:50px 0px;position: relative;}
.recruit #section09 .yoko{margin-bottom: 30px;border-bottom: 1px solid #dee2e6;}
.recruit #section09 .yoko th{padding: 15px 10px 5px;display: block;font-weight: 700;color: #00A3EF;vertical-align: middle;}
.recruit #section09 .yoko td{padding: 5px 10px 15px;display: block;border-top: none;line-height: 1.4;vertical-align: middle;}
.entry{}
.entry a{display: flex;align-items: center;justify-content: center;position: relative;background: linear-gradient(120deg, #4079ce 10%, #00A4EF, #0955c6 80%);height: 60px;color: white;font-weight: 700;font-family: ' RedHatDisplay ';font-size: 1.6em;transition: .4s;}
.entry a:before{
  content:'';
  width:100%;
  height:100%;
  background: linear-gradient(120deg, #4079ce 10%, #00A4EF, #0955c6 80%);
  position:absolute;
  top:0;
  left:0;
  z-index:2;             /* その下のボタン */
  transition:all 0.5s;   /* 徐々に変化 */
}
.entry a:after{
  content:'';
  width:100%;
  height:100%;
  background: linear-gradient(45deg, #333 10%, #0358f5 70%, #4079ce 90%);
  position:absolute;
  top:0;
  left:0;
  z-index:1;
}
.entry a span{position: relative;z-index: 5;}
.entry a:hover:before{ opacity:0;}
.entry a .fas{font-size: 15px;margin-left: 1.5em;}

@media (min-width: 667px) {
.recruit .h3-recruit{margin-bottom: 1.6em;line-height: 1.5;font-size: 18px;}
.recruit .h3-recruit span{margin-top: .2em;font-size: 32px;line-height: 1;}


.recruit #section01 .recruit-nav a{padding: .5em 1.5em;}
.recruit #section01 .recruit-nav a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
font-weight: 900;
 position: absolute;
 right:1em;
 top:50%;
 transform: translateY(-50%);
  line-height: 1;
  font-size: .6em;
}
.recruit #section04 .deco-car{top:200px;width: 55%;}
.topic{font-weight: 700;font-family: ' RedHatDisplay ';font-size: 48px;line-height: 1;margin-bottom: 20px;}
.topic span{display: block;font-size: 12px;color: #00A3EF;}
.recruit #section04 h4{font-weight: 700;margin-bottom: 1.4em;font-size: 20px;line-height: 2.55;}
.recruit #section04 h4 span{padding: .5em;border: 1px solid #666;}
.recruit #section04 .picbox{position: relative;}
.recruit #section04 .picbox .pic1{position: relative;width: 80%;padding-bottom: 50px;}
.recruit #section04 .picbox .pic2{position: absolute;bottom:0px;right:0;width: 55%;box-shadow: 3px 3px 6px #ccc;}

.recruit #section06 .box{padding:2.6em .6em 2.2em;box-shadow: 3px 3px 3px #ccc;margin-bottom: 30px;}
.recruit #section06 .box h4 span{color: white;line-height: 1;padding: .3em .6em;border-radius: 1em;font-size: 18px;}

.recruit #section07 .txt{margin-bottom: 2em;font-size: 22px;}
.staffbox{padding: 1.5em;background: white;border:1px solid #eee;border-radius: 1em; box-shadow: 5px 5px 10px #eee;}
.staffbox .pic{text-align: left; margin: 0 auto;margin-bottom: 0em;}
.staffbox .name{margin-bottom: 1em;font-weight: 700;font-size: 20px;line-height: 1;text-align: left;}
.staffbox .name span{display: block;font-weight: 400;font-size: 13px;margin-top: .6em;}
.staffbox .beforejob{margin-top: .8em;}
.staffbox .beforejob span{background: #999;color: white; padding: .5em .6em;margin-right: .6em;}

.recruit #section09 .yoko th{padding: 15px 0px;display: table-cell;width: 120px;}
.recruit #section09 .yoko td{padding: 15px 10px;display: table-cell;border-top: 1px solid #dee2e6;width: auto;}

}


@media (min-width: 768px) {
.recruit #section01{padding:70px 0px;}
.recruit #section01 .deco{position: absolute;top:40%;left:0;z-index: 2;}

.recruit #section01 .index{position: relative;top:-30px;width: 90%;margin: 0 auto;background: white;padding: 2em 1.5em 0;border-radius: 2em;}

.recruit #section01 p{line-height: 1.8;margin-bottom: 50px;}

.recruit #section02{padding:70px 0px;}

.recruit #section03{padding:70px 0px;}

.recruit #section04{padding:70px 0px;}
.recruit #section04 .picbox{width: 500px;margin: 0 auto; position: relative;}
.recruit #section04 .picbox .pic1{position: relative;width: 80%;padding-bottom: 50px;}
.recruit #section04 .picbox .pic2{position: absolute;bottom:0px;right:0;width: 50%;box-shadow: 3px 3px 6px #ccc;}

.recruit #section05{padding:70px 0px;}

.recruit #section06{padding:70px 0px;}
.recruit #section06 .box h4 span{color: white;line-height: 1;padding: .3em .6em;border-radius: 1em;font-size: 20px;}
.recruit #section06 .box .wrap .ico{width: 70px;margin-right: 20px;}

.recruit #section06 .box .graf{width: 85%;margin: 0 auto;}

.recruit #section07{padding:70px 0px;}
.staffbox{padding: 2em;}
.staffbox .pic{text-align: left; margin: 0 auto;margin-bottom: 0em;}
.staffbox .name{margin-bottom: 1em;font-weight: 700;font-size: 20px;line-height: 1;text-align: left;}
.staffbox .name span{display: block;font-weight: 400;font-size: 13px;margin-top: .6em;}
.staffbox .beforejob{margin-top: .8em;}
.staffbox .beforejob span{background: #999;color: white; padding: .5em .6em;margin-right: .6em;}

.recruit #section08{padding:70px 0px;}
.recruit #section08 .step li{display: flex;align-items: center;justify-content: space-around;}
.recruit #section08 .step li .icon{width: 90px;height: 90px;border-radius: 50%;padding: 1.4em;margin: 0 auto;border:2px solid #00A3EE;margin-bottom: 0;}
.recruit #section08 .step li .step-num{font-weight: 700;text-align: center;font-size: 1.7em;margin-bottom:0;color: #00A3EE;width: 150px;}
.recruit #section08 .step li h4{line-height: 1.3;text-align:left;font-weight: 700;font-size: 1.3em;width: calc(100% - 250px);}


.recruit #section09{padding:70px 0px;}
.entry a{;height: 80px;font-size: 1.8em;}

}


@media (min-width: 992px) {
.recruit #section01 p{font-size: 26px;}
.recruit .h3-recruit{margin-bottom: 1.9em;line-height: 1.5;font-size: 18px;}
.recruit .h3-recruit span{margin-top: .2em;font-size: 32px;line-height: 1;}

.recruit #section01 .index{position: relative;top:-40px;width: 87%;margin: 0 auto; padding: 3em 1.5em 0;border-radius: 3em;}
.recruit #section01 .recruit-nav a:hover{background: linear-gradient(100deg, #3cf, #2a445d 65%);color: white;}

.recruit #section02 p{padding-right: 1.5em;margin-bottom: 0;}
.recruit #section02 .pic .t-script{top:-45px;left:30px;font-size: 56px;transform: rotate(-14deg);}
.recruit #section03 .pic{position: relative;}
.recruit #section03 .pic .t-script{top:-10px;right:10px;color:#ccc;font-size: 56px;transform: rotate(14deg);}

.recruit #section04 .deco-car{top:150px;width: 40%;}
.recruit #section04 .pic{width: 95%;}
.recruit #section04 .pic{position: relative;}
.recruit #section04 .pic .t-script{top:-25px;left:-20px;font-size: 56px;transform: rotate(-12deg);}

.topic{font-size: 55px;line-height: 1;margin-bottom: 30px;}
.topic span{display: block;font-size: 14px;}
.recruit #section04 h4{font-weight: 700;margin-bottom: 1.4em;font-size: 20px;line-height: 2.5;}
.recruit #section04 h4 span{padding: .5em;border: 1px solid #666;}

.recruit #section04 .picbox{width: 95%;margin-left: 0; position: relative;}
.recruit #section04 .picbox .pic1{position: relative;width: 80%;padding-bottom: 70px;}
.recruit #section04 .picbox .pic2{position: absolute;bottom:0px;right:-15px;width: 50%;box-shadow: 3px 3px 6px #ccc;}
.recruit #section04 .picbox.re{width: 95%;margin-left: 5%; position: relative;}
.recruit #section04 .picbox.re .pic1{position: relative;width: 80%;margin-left: 20%; padding-bottom: 70px;}
.recruit #section04 .picbox.re .pic2{position: absolute;bottom:0px;right:auto;left:-15px;width: 50%;box-shadow: 3px 3px 6px #ccc;}
.recruit #section06 .box .wrap .num{width: auto;font-size: 18px;}
.recruit #section06 .box .wrap .num span{font-weight: 700;font-size: 34px;}
.recruit #section06 .box .graf{width: 75%;margin: 0 auto;}

.recruit #section07 .txt{margin-bottom: 2em;font-size: 26px;}
.staffbox{padding: 4em;}
.staffbox .pic{text-align: left; margin: 0 auto;margin-bottom: 0em;}
.staffbox .name{margin-bottom: 1em;font-weight: 700;font-size:24px;line-height: 1;text-align: left;}
.staffbox .name span{display: block;font-weight: 400;font-size: 13px;margin-top: .6em;}
.staffbox .beforejob{margin-top: 1em;}
.staffbox .beforejob span{background: #999;color: white; padding: .5em .6em;margin-right: .6em;}

.recruit #section08 .content{width: 100%;}
.recruit #section08 .step{
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  width: 100%;
}
.recruit #section08 .step li{
  position: relative;
  width: 17.7%;
  padding: 1.5em 0;
  margin: 0 25px 0px 0;
  background: white;
  display: block;
}
.recruit #section08 .step li:last-child{
  position: relative;
  padding: 1.5em 0;
  margin: 0;
  background: white;
  display: block;
}

/* 先端部分 */
.recruit #section08 .step li::after{
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: -30px;
  border-width: 25px 15px;
  border-color: transparent transparent transparent #00A3EE ;
  border-style: solid;
}
.recruit #section08 .step li:last-child::after{
  content: "";
  display: none;
}

.recruit #section08 .step li .icon{width: 90px;height: 90px;border-radius: 50%;padding: 1.4em;margin: 0 auto;border:2px solid #00A3EE;margin-bottom:15px;}
.recruit #section08 .step li .step-num{font-weight: 700;text-align: center;font-size: 1.5em;margin-bottom:10px;color: #00A3EE;width: auto;}
.recruit #section08 .step li h4{line-height: 1.3;text-align:center;font-weight: 700;font-size: 1.1em;width:auto;}

.recruit #section09 .yoko th{padding: 15px 0px;display: table-cell;width: 150px;}
.recruit #section09 .yoko td{padding: 15px 15px;display: table-cell;}

}


@media (min-width: 1200px) {
.recruit #section01{padding:100px 0px;}
.recruit #section01 h3{font-size: 30px;}
.recruit #section01 .recruit-nav a{padding: .9em 1.5em;}
.recruit #section01 .recruit-nav a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f054";
font-weight: 900;
 position: absolute;
 right:1.5em;
 top:50%;
 transform: translateY(-50%);
  line-height: 1;
  font-size: .6em;
}
.recruit #section01 p{font-size: 30px;margin-bottom: 60px;}

.recruit #section02{padding:100px 0px;}
.recruit #section02 p{padding-right: 3.2em;margin-bottom: 0;line-height: 2.1;}
.recruit #section02 .pic .t-script{top:-70px;left:30px;font-size: 65px;transform: rotate(-14deg);}

.recruit #section03{padding:100px 0px;}
.recruit #section03 .pic .t-script{top:-25px;right:-30px;color:#ccc;font-size: 65px;transform: rotate(14deg);}

.recruit #section04{padding:100px 0px;}
.recruit #section04 .pic .t-script{top:-20px;left:-40px;font-size: 65px;transform: rotate(-12deg);}

.recruit #section04 .deco-car{top:150px;width: 500px;}

.topic{font-size: 65px;line-height: 1;margin-bottom: 30px;}
.topic span{display: block;font-size: 14px;}
.recruit #section04 h4{font-weight: 700;margin-bottom: 1.4em;font-size: 23px;line-height: 2.48;}
.recruit #section04 h4 span{padding: .5em .8em;border: 1px solid #666;}
.recruit #section04 .picbox .pic1{position: relative;width: 85%;padding-bottom: 100px;}
.recruit #section04 .picbox .pic2{position: absolute;bottom:0px;right:-5px;width: 55%;}
.recruit #section04 .picbox.re .pic1{position: relative;width: 85%;margin-left: 15%; padding-bottom: 100px;}
.recruit #section04 .picbox.re .pic2{position: absolute;right:auto;left:-5px;width: 55%;}

.recruit #section05{padding:100px 0px;}

.recruit #section06{padding:100px 0px;}
.recruit #section06 .box{padding:3.6em .6em 3.2em;box-shadow: 3px 3px 3px #ccc;margin-bottom: 30px;}
.recruit #section06 .box h4{margin-bottom: 3.5em;text-align: center;}
.recruit #section06 .box .wrap .num{width: auto;font-size: 20px;}
.recruit #section06 .box .wrap .num span{font-size: 46px;}
.recruit #section06 .box .wrap .ico{width: 90px;margin-right: 40px;}

.recruit #section06 .box .graf{width: 65%;margin: 0 auto;}

.recruit #section07{padding:100px 0px;}

.recruit #section08{padding:100px 0px;}
.recruit #section08 .step li{
  position: relative;
  width: 18%;
  padding: 1.5em 0;
  margin: 0 25px 0px 0;
  background: white;
  display: block;
}

.recruit #section09{padding:100px 0px;}
.recruit #section09 .yoko{margin-bottom: 50px;}
.recruit #section09 .yoko th{padding: 20px 0px;display: table-cell;width: 180px;}
.recruit #section09 .yoko td{padding: 20px 15px;}

.entry a{;height: 100px;font-size: 2em;}

}

@media (min-width: 1680px) {
.recruit .h3-recruit{margin-bottom: 2.5em;line-height: 1.5;font-size: 18px;}
.recruit .h3-recruit span{margin-top: .2em;font-size: 48px;line-height: 1;}
.recruit #section02 .pic .t-script{top:-110px;left:-30px;font-size: 75px;transform: rotate(-14deg);}
.recruit #section03 .pic .t-script{top:-25px;right:-50px;color:#ccc;font-size: 75px;transform: rotate(14deg);}
.recruit #section04 .pic .t-script{top:-20px;left:-60px;font-size: 75px;transform: rotate(-10deg);}


}


@media (min-width: 1920px) {
.recruit #section04 .deco-car{top:180px;width: 580px;}

}




/* privacy.html
--------------------------------------------------------- */

.contact #section02{padding: 50px 0px;position: relative;background: rgba(3,0,0,.05);}

.contact #section02 .pre-scrollable{max-height: 300px;padding: 15px;background: white; word-break: break-all;border:1px solid rgba(0,0,0,.09);box-shadow: inset 0 0 20px rgba(0, 0, 0, .02);border-radius: 5px;}
.privacybox{position: relative;color: #333;}
.privacybox #privacy{position: absolute;left:0;top:-100px;}
/* SimpleBarのカスタムスタイル */
.privacybox .simplebar-scrollbar {
background-color: #01a0e9 !important;
border-radius: 2px;
}
.privacybox .simplebar-track {background-color: #ebebeb;}

span.hissu{color: white;background:#333; padding: 3px 5px;border-radius: 2px;font-size: 12px;line-height: 1.5;}
.contact .table {margin-bottom: 50px;}
.contact .table th{background:#00A4EF!important;vertical-align: middle;font-weight: 700;position: relative;display: block;color: white;}
.contact .table td{background: white!important;vertical-align: middle;display: block;}
.table th span.hissu{color: white;background: #333; padding: 3px 5px;border-radius: 2px;position: absolute;right:15px;top:50%;transform: translateY(-50%);font-size: 12px;line-height: 1.5;}

.contact #section02 .posi{display: flex;align-items: center;justify-content: center;}
.contact h4{font-weight: 700;border-bottom: 1px solid #555;padding-bottom: 10px; margin-bottom: 15px;font-size:1.2em;}

.auto{background: #eee;margin-left: 1em;padding: .5em .5em;border-radius: .4em;font-size: .9em;}

@media (min-width: 667px) {

}


@media (min-width: 768px) {
.contact #section02{padding: 70px 0px;}
.contact .table {margin-bottom: 70px;}

.contact .table th{display: table-cell;width: 200px;}
.contact .table td{display: table-cell;width: auto;}

.contact #section02 .pre-scrollable{max-height: 400px;padding: 15px;}

}


@media (min-width: 992px) {

.contact .table th{display: table-cell;width: 240px;}

.contact h4{padding-bottom: 15px; margin-bottom: 20px;font-size:1.2em;}

}




@media (min-width: 1200px) {
.contact #section02{padding: 100px 0px 100px;}
.contact .table {margin-bottom: 80px;}

.contact .table th{display: table-cell;width: 250px;}

.contact #section02 .pre-scrollable{max-height: 500px;padding: 50px;}

}

@media (min-width: 1680px) {

}



.doi-box{padding: 30px 15px;background: white;border:1px solid #ddd;}
.doi-box label{font-size: 13px;margin-bottom: 15px;width: auto;display:inline-block;}
.doi-box p a{color: #F46A02;font-size: 15px;transition: .3s;font-weight: bold;}
.doi-box p a:hover{color: #333;}
.doi-box .btn-lg{font-size: 13px;padding: 10px 10px;margin: 0 .3em;}

@media (min-width: 768px) {
.doi-box label{font-size: 14px;margin-bottom: 20px;}
.doi-box .btn-lg{font-size: 14px;padding: 10px 10px;}
}

@media (min-width: 1140px) {
.doi-box{padding: 50px 15px;}

.doi-box .btn-lg{font-size: 16px;padding: 20px 50px;}
}








.form-s{width:70px}
.form-m{width:150px}
.form-post{width: 9.5em;}
.form-name{width:99%;}
.form100{width:90%}
.form-h{ height:15em;}
input ,select {
    position:relative;
	color: #111;
}
input[type="checkbox"], input[type="radio"] {vertical-align:middle;position: relative;top:-2px;display: inline-block;}
input{font-size:100%;vertical-align:middle; padding:12px;width: auto;}
input[type="text"], select{border:1px solid #ddd;}
input,textarea,select { outline:0; padding:12px;border-radius: 7px; }
textarea{border:1px solid #ccc;color: #111;width: 90%;}
.needinput{background-color:rgba(255,255,255,1)!important;border:1px solid #00A4EF!important;}
.selectbox {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.selectbox::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: #535353;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.selectbox select {
    appearance: none;
    min-width: 180px;
    height: 2.8em;
    padding: .4em calc(.8em + 30px) .4em .8em;
    border: 1px solid #d0d0d0;
    border-radius: 7px;
    background-color: #fff;
	background: white;
    color: #333333;
    font-size: 1em;
    cursor: pointer;
}

input::placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
input::-webkit-input-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
input:-ms-input-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
input::-moz-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::-webkit-input-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
textarea:-ms-input-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}
textarea::-moz-placeholder {
	color: #999;font-size: 14px;letter-spacing: 0.03rem;
}


@media (min-width: 768px) {
.form-name{width:350px;}

}



/*-----------------------------------------------------------------------------
print css
-----------------------------------------------------------------------------*/
@media print {
body {padding-top:0px;}
.aos-init { opacity: 1 !important; transform: none !important; }
.wow { opacity: 1 !important; transform: none !important; }
.cb-header2 {display: none!important;}
header{display: block;}
.cb-header2 {display: none;}
.header {
  position:absolute;
  top: 20px;
  width: 100%;
  z-index: 500;
  height: 80px;
}
.header .wrap{
  background: white;
  border-radius: 1em;
  width: 95%;
  margin: 0 auto;
  height: 80px;
  display: flex;
  align-items: center;justify-content: space-between;
  filter: drop-shadow(5px 5px 5px rgba(0,0,0,.07));
}

.header .logo {position: relative;margin-left: 15px;width:200px;}
.header .navi{padding-right: 20px;}

.nav-menu {display: flex;align-items: center;justify-content: flex-end;}
.menu-list {
  display: flex;
  justify-content: center;
  margin-right: 1.5em;
}
.menu-item {position: relative;padding: 0 .4em;line-height: 1;}
.menu-item:first-child {padding: 0 .4em 0 0;}
.menu-item:last-child {padding: 0 0 0 .4em;}

.menu-item a {
font-size: 14px;
font-weight: 500;
letter-spacing: 0;
padding: 0;
  text-align: center;
  color: #111;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: .3;line-height: 1;
}
.menu-item a.active {color:#03a6fb;position: relative;}

.header .wrap .recruit{margin-right: 1.5em;}

#main{position: relative;height:900px;}





.thumb-xs{display: none;}


footer .logoblock{margin-bottom: 0px;margin-left: 0;width: 230px;}
footer .address{text-align: left;} 

.footer-menu{width: 100%; display: flex!important;justify-content: flex-end!important;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 2em;display:flex;}
.footer-menu li {padding-bottom: 0px;text-align: left;}
.footer-menu li a{text-decoration: none;text-align: left;padding: 0 .5em;letter-spacing:0;margin-bottom: 0em!important;display: block;font-size: 14px!important;}
.footer-menu li:first-child a{padding: 0 .5em 0 0;}
.footer-menu li:last-child a{padding: 0 0 0 .5em;}

.page-top{display: none;}


.drawer_menu{display: none!important;}

.no-print{display: none!important;}
.do-print{display: block!important;}
.pic-thumb img {
width: 100%;
height: auto;
  -webkit-filter: blur(0);
  filter: blur(0);
}
.img-blur {animation:none;}

.gmap iframe{width: 100%;height: 360px;}
#pagetop {display: none!important;}

}
