@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:4px;
    border:0;
    border-top:4px solid #e1edf6;
    margin: 0;
    padding:0;
}

input, select {vertical-align:middle;}


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

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


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


body {
color: #111;
font-size: 93%;
line-height: 1.6;
font-weight:400;
font-family: ' IBMPlexSansJP ';
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: 94%;
line-height: 1.7;
letter-spacing: 0.05rem;
padding-top: 0px;}

}
@media (min-width: 1200px) {
body {
font-size: 99%;
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.4;text-align: justify;}
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;
}

.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.4em; }
.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:#c00; }
.blue{color:#008EEF;}
.green { color: forestgreen; }
.navy { color:#0034A0; }
.orange { color: #f60; }
.kiiro { color: yellow!important; }
.brown{color: #8b6f57;}


.wrapper {
  max-width: 2000px;
  overflow: hidden;
}





/* 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%;
height: 60px;
border-radius:0;
background: white;}
.sc .logo{padding-left: 15px;width: 140px;}
.header-xs{position: fixed;z-index: 50; top:0;left:0;height: 60px;display: flex;
align-items: center;background: white;width: 100%;}
.header-xs a{width: 200px;margin-left: 15px;display: inline-block;}



/*header
------------------------------------------------------------------*/
header{display: none;}
.header {display: none;}

.header .navi{display: none;}

@media (min-width: 666px) {

}


@media (min-width: 992px) {
.header-xs{display: none;}

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


.header {
  position: fixed;
  width: 95%;
  z-index: 500;
  height:80px;
  top:15px;
  left:2.5%;
  padding: 0 15px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content:space-between;
  background: white;
  margin-top: -8%;
  transition: margin-top 0.4s;
}
.header.show {margin-top: 0;}

.head-logo { position: relative;width: 230px;}
.head-logo a{transition: .4s;}
.head-logo a:hover{opacity: .7;}

.header .navi{display: flex; align-items: center;justify-content: flex-end;margin-right: 20px;}


/* ナビゲーションメニュー */
.nav-menu {display: flex; align-items: center;margin-right: 1em;}
.menu-list {
  display: flex;
  justify-content: flex-end; /* メニューアイテムを中央揃えに */
}
.menu-list li {position: relative;padding: 0 .8em;line-height: 1;}
.menu-list li:first-child {padding: 0 .8em 0 0;}
.menu-list li:last-child {padding: 0 0 0 .8em;}

/* メニューアイテムのホバースタイル */
.menu-list li a {
font-family: ' IBMPlexSansJP ';
font-weight: 400;
letter-spacing: .05rem;
  text-align: center;
  color: #000;
  display: block;
  position: relative;
  transition: .3s;line-height: 1;
}
.menu-list li a:hover {}
.menu-list li a:hover::after {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
font-weight: 900;
color: #0068de;
font-size: 5px;
position: absolute;
top:-15px;
left:50%;
transform: translateX(-50%);
}

.menu-list li a.active {position: relative;}
.menu-list li a.active::after {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
font-weight: 900;
color: #0068de;
font-size: 5px;
position: absolute;
top:-15px;
left:50%;
transform: translateX(-50%);
}

.head-contact{}
.head-contact a{background: #0068de;color: white;width: 200px;height: 50px;line-height: 50px;border-radius: 5px;display: flex;align-items: center;justify-content: center;position: relative;transition: .4s;}
.head-contact a .icon{width: 34px;height: 34px;border-radius: 50%;background: white;color:#0068de;  display: flex;align-items: center;justify-content: center;position: absolute;right:6px;top:50%;transform: translateY(-50%);}
.head-contact a:hover{background: #000;color: white;}
.head-contact a:hover .icon{color:#000; }

}

@media (min-width: 1200px){
.head-logo {}

.menu-list li {position: relative;padding: 0 .5em;}
.menu-list li:first-child {padding: 0 .5em 0 0;}
.menu-list li:last-child {padding: 0 0 0 .5em;}

.menu-list li a {font-size: 15px;letter-spacing: .1rem;}

.header .navi{margin-right:0px;}
.nav-menu {margin-right: 1.5em;}

.head-contact{}

}

@media (min-width: 1440px){
.head-logo {width: 260px;}
.head-contact a{width: 230px;}


}



@media (min-width: 1680px){
.header {}


.menu-list li {position: relative;padding: 0 .7em;}
.menu-list li:first-child {padding: 0 .7em 0 0;}
.menu-list li:last-child {padding: 0 0 0 .7em;}
.menu-list li a {font-size: 16px;letter-spacing: .12rem;}

}

@media (min-width: 1920px){

}










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

#main{position: relative;width: 100%;}
.main-h2{position:absolute;z-index: 50; left:3%;top:50%;transform: translateY(-50%);}
.main-h2 h2.mv-h2{color: white;font-weight: 400;font-size: 67px;line-height: 1.7;letter-spacing: .2rem;text-shadow: 2px 2px 5px rgba(0,0,0,.2);}

.bottom_loop {
  position: relative;
  overflow: hidden; /* はみ出し隠す */
  z-index: 50;
}

/* 帯全体 */
.loop-ticker {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  z-index: 60;
}

/* 流れるトラック */
.loop-ticker__track {
  display: flex;
  align-items: center;
  gap: 40px;
  width: -moz-max-content;
  width: max-content;
  animation: ticker-scroll 135s linear infinite;
}

/* 画像1枚ずつ */
.loop-ticker__track img {
  height: clamp(40px, 6vw, 100px);
  width: auto;
  flex-shrink: 0;
  display: block;
}

@keyframes ticker-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@media (max-width: 1680px){



}



@media (max-width: 1440px){
.main-h2 h2.mv-h2{font-size: 57px;}

.loop-ticker__track {gap: 25px;}

}


@media (max-width: 1199px){
.main-h2 h2.mv-h2{font-size: 47px;line-height: 1.5;}



}




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

.main-h2 h2.mv-h2{font-size: 42px;line-height: 1.5;}

.loop-ticker__track {gap: 15px;}


}

@media only screen and (max-width: 767px) {
  .loop-ticker__track img {height: 4vw;  }


}


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

.main-h2 h2.mv-h2{font-size: 36px;line-height: 1.5;}


}

@media only screen and (max-width: 430px) {
.main-h2 h2.mv-h2{font-size: 25px;line-height: 1.5;}
}


/* IMAGE BLUR EFFECT 
.thumb img {
  max-width: 100%;
  -webkit-filter: blur(15px);
  filter: blur(15px);
}
.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);
  }
}
.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;}

.home #section01{position: relative; padding:50px 0 0;background: url("../images/bg-top-about.jpg");background-position: center top;background-repeat: no-repeat;background-size: cover;}
.home #section01 h4{font-weight: 300;font-size: 1.5em;line-height: 1.5;margin-bottom: 1em;}
.home #section01 p{text-align: justify;margin-bottom: 1.5em;}

.home #section01 .product{padding: 50px 0;border-radius: 1.5em;background-image: linear-gradient(90deg, #0068de, #30afe9);margin-top: 70px;}
.home #section01 .product .titlebox{border-bottom: 1px solid white;padding-bottom: 1.5em;margin-bottom: 1.5em;}
.home #section01 .product .titlebox .headline{}
.home #section01 .product .titlebox .btn-more{display: flex;justify-content: flex-end;}
.home #section01 .product .titlebox .btn-more a{background: #fff;color: #0068de;}
.home #section01 .product .titlebox .btn-more a .icon{background: #0068de;color:white;}
.home #section01 .product .titlebox .btn-more a:hover{background: #000;color: white;}
.home #section01 .product .titlebox .btn-more a:hover .icon{background: #fff;color:#000; }
.search-category{background: rgba(255,255,255,.6);padding: 1.5em;border-radius: .8em;margin-bottom: 1.5em;}
.search-category:last-child{margin-bottom:0;}
.search-category .title{font-weight: 300;text-align: center;margin-bottom: 15px!important;font-size: 1.4em;}
.search-category .box{background: rgba(255,255,255,.6);padding: 1.5em 1.5em 1em;border-radius: .6em;margin-bottom: 1.5em;}
.search-category .box:last-child{margin-bottom: 0;}
.search-category .sub{text-align: center!important;margin-bottom: 15px!important;}

.search-category .box h5{font-weight: 400;border-left: 3px solid #006AE6;line-height: 1;padding-left: 5px;padding-bottom: 0;font-size: 1.2em;margin-bottom: 1em;}
.btn-category-group{display: flex;flex-wrap: wrap;}
.btn-category-group a{display: flex;align-items: center;justify-content: center;background: white;border-radius: 30px;padding: .2em 1em;font-size: .9em;letter-spacing: 0;margin: 0 .25em .5em;color: #0068de;transition: .4s;}
.btn-category-group a:hover{background:#0068de;color: #fff;}

.search-form {
    display: flex;
    align-items: center;
	justify-content: center;
    gap: 0 10px;
}

.search-form label {width: 270px;}

.search-form input {
    width: 100%;
    height: 34px;
    padding: 1px 5px 1px 8px;
    border: none;
	background: white;
    box-sizing: border-box;
    color: #000;
	border-radius: 0;
    outline: none;
}

.search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 100px;
    height: 34px;
    border: none;
    background-color: #0068de;
    color: #fff;
    cursor: pointer;
}

.search-form button::before {
    width: 14px;
    height: 14px;
    margin-right: 5px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}



.news-item{display: flex;justify-content: space-between;color: #111;}
.news-item .thumb{width: 110px;background: #fafafa;transition: .4s;}
.news-item .thumb .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;
}

.news-item .box{width: calc(100% - 125px);}
.news-item .box .datebox{display: flex;align-items: center;justify-content: space-between;margin-bottom: 10px;}
.news-item .box .date{font-size: .9em;letter-spacing: 0;}
.news-item .box .date span.new{color: red;margin-left: .3em;}
.news-item .box .cate{font-size: .9em;letter-spacing: 0;line-height: 1;}
.news-item .box .cate span{border-radius: .5em;padding: .2em .5em;}
.news-item .box .txt{line-height: 1.4;font-size: .9em;text-align: justify;}

a.news-item{transition: .4s;}
a.news-item:hover{color: #00A75D;}
a.news-item:hover .thumb{opacity: .8;filter: grayscale(100%);}



.home #section02{position: relative;padding: 50px 0;}
.home #section02 p{text-align: justify;margin-bottom: 1.5em;}
.home #section02 .thumb-pic{display: flex;justify-content: space-around;}
.home #section02 .thumb-pic div{width: 47.5%;}
.home #section02 .thumb-pic div:last-child{margin-top: 50px;}

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


.home #section04{position: relative;padding: 50px 0;}

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

.home #section06{position: relative;padding: 50px 0px 50px;}

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




@media (min-width: 667px) {
.home #section01 .product .titlebox{border-bottom: 1px solid white;padding-bottom: 1.5em;display: flex;justify-content: space-between;}
.home #section01 .product .titlebox .headline{margin-bottom: 0;}

.home #section02 .thumb-pic{width: 80%;margin-left: 10%; display: flex;justify-content: space-around;}

}




@media (min-width: 768px) {

.home #section01{padding: 100px 0 0;}
.home #section01 h4{font-size: 1.8em;line-height: 1.5;margin-bottom: 1em;}
.home #section01 p{text-align: justify;margin-bottom: 2em;}
.home #section01 .product .titlebox{border-bottom: 1px solid white;padding-bottom: 2em;display: flex;align-items: center;justify-content: space-between;margin-bottom: 3em;}
.search-category .title{margin-bottom: 15px!important;font-size: 1.4em;}
.search-category .box h5{padding-left: 5px;font-size: 1.4em;margin-bottom: 1em;}
.search-category .box{padding: 1.5em 1.5em .5em;}

.btn-category-group {}
.btn-category-group a{width: 31%; display: flex;align-items: center;justify-content: center;background: white;border-radius: 30px;padding: .2em 1em;font-size: .9em;letter-spacing: 0;margin: 0 1.1% 15px;}

.home #section02{padding: 100px 0 100px;}


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



.home #section04{padding: 100px 0px 100px;}



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


.home #section06{padding: 70px 0px 70px;}


.gmap{margin-bottom: 30px;}

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





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


}



@media (min-width: 992px) {
.home #section01 h4{font-size: 42px;line-height: 1.7;margin-bottom: 1em;}
.home #section01 p{margin-bottom: 4em;}

.home #section01 .product{padding: 70px 0;border-radius: 1.5em;margin-top: 70px;}
.search-category .title{margin-bottom: 15px!important;font-size: 36px!important;}
.search-category .box{}
.search-category .box h5{padding-left: 5px;font-size: 1.4em;margin-bottom: 1em;}

.search-form label {width: 450px;}
.search-form input {
    width: 100%;
    height: 40px;
    padding: 1px 5px 1px 8px;
    border: none;
	background: white;
    box-sizing: border-box;
    color: #000;
	border-radius: 0;
    outline: none;
}
.search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 100px;
    height: 40px;
}
.search-form button::before {
    width: 14px;
    height: 14px;
    margin-right: 5px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}

.home #section02 p{text-align: justify;margin-bottom: 2.5em;}

.home #section02 .thumb-pic{width: 90%;margin-left: 10%; display: flex;justify-content: space-around;}
.home #section02 .thumb-pic div{width: 46%;}
.home #section02 .thumb-pic div:last-child{margin-top: 50px;}


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


}




@media (min-width: 1200px) {

.home #section01{padding: 150px 0 0;}
.home #section01 h4{font-size: 47px;line-height: 1.7;margin-bottom: 1em;}
.home #section01 p{margin-bottom: 4em;font-size: 1.05em;}
.home #section01 .product{padding: 100px 0;border-radius: 1.5em;margin-top: 100px;}


.btn-category-group a{width: 18.9%; display: flex;align-items: center;justify-content: center;background: white;border-radius: 30px;padding: .4em 1em;font-size: 1em;letter-spacing: 0;margin: 0 .5% 15px;}




.home #section02{padding: 150px 0;}
.home #section02 p{text-align: justify;margin-bottom: 3.5em;}


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


.home #section04{padding: 100px 0px;}


.gmap iframe{height: 450px;}

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

.home #section06{padding: 100px 0px 100px;}

}





@media (min-width: 1440px) {
.home #section01 .container{max-width: 1290px;padding: 0;}
.home #section01 h4{font-size: 56px;line-height: 1.7;margin-bottom: 1em;}
.home #section01 p{margin-bottom: 4em;font-size: 1.18em;line-height: 2;letter-spacing: .11rem;}

.search-category .title{margin-bottom: 15px!important;font-size: 42px!important;}
.search-category .box{}
.search-category .box h5{padding-left: 10px;font-size: 28px;margin-bottom: 1em;}
.search-form label {width: 600px;}

.home #section02 .container{max-width: 1290px;padding: 0;}
.home #section02 p{text-align: justify;margin-bottom: 4em;font-size: 1.2em;line-height: 2.2;}


}

@media (min-width: 1680px) {
.home #section01{padding: 200px 0 0;}
.home #section01 .product{padding: 150px 0;border-radius: 1.5em;margin-top: 150px;}

.home #section02{padding: 200px 0;}

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

}

@media (min-width: 1920px) {


}



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


.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;}

.btn-more{}
.btn-more a{background: #0068de;color: white;width: 200px;height: 50px;line-height: 50px;border-radius: 5px;display: flex;align-items: center;justify-content: center;position: relative;transition: .4s;}
.btn-more a .icon{width: 34px;height: 34px;border-radius: 50%;background: white;color:#0068de;  display: flex;align-items: center;justify-content: center;position: absolute;right:6px;top:50%;transform: translateY(-50%);}
.btn-more a:hover{background: #000;color: white;}
.btn-more a:hover .icon{color:#000; }





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) {


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


}


@media (min-width: 1200px) {
.btn-more{}
.btn-more a{width: 240px;height: 58px;}
.btn-more a .icon{width: 34px;height: 34px;border-radius: 50%;background: white;color:#0068de;  display: flex;align-items: center;justify-content: center;position: absolute;right:10px;top:50%;transform: translateY(-50%);}


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


}

@media (min-width: 1680px) {

.btn-more a{width: 270px;height: 58px;}

}


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


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



}

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

}

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

}



/* -----  common / footer ------- */

footer{ padding: 0px 0px 50px;position: relative;background: #f4f4f4;}
footer .common{padding: 40px 0;}
footer .common .bg{background: url("../images/common-contact.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;height: 180px;position: absolute;left:0;top:0;width: 100%;z-index: 5;}
footer .common .headline{text-align: center;position: relative;z-index: 10;}
footer .common .box{border-radius: .9em;padding: 1em;width: 90%;margin: 0 auto;background-image: linear-gradient(90deg, #0068de, #30afe9);position: relative;z-index: 5;}
footer .common .txt{margin-bottom: 1.5em;text-align: justify;color: white;}
footer .common .box .btn-more{display: flex;justify-content: center;}
footer .common .box .btn-more a{background: #fff;color: #0068de;}
footer .common .box .btn-more a .icon{background: #0068de;color:white;}
footer .common .box .btn-more a:hover{background: #000;color: white;}
footer .common .box .btn-more a:hover .icon{background: #fff;color:#000; }



.footer{padding-bottom: 30px;}
.footer-logo {text-align: center; position: relative;margin-bottom: 30px;}
.footer-logo a{transition:.3s;}
.footer-logo a:hover img{opacity: .7;}

footer .address{text-align: center;margin-bottom: 5px;}
footer .address a{color:#0068de;transition: .4s;}
footer .address a:hover{color:#000;}


.page-top{position: absolute;right:10px;bottom:15px;width: 15px;}
.footer-menu{width: 100%;margin: 0 auto; margin-bottom: 1em;}
.footer-menu ul{}
.footer-menu li{text-align: left;background:none;}
.footer-menu li a{color: #111;text-decoration: none; text-align: center; font-size: 16px;font-weight: 400; padding: .7em 0;display: block;transition: .3s;margin-bottom: 12px;border:1px solid #ddd;}
.footer-sns{display:none;}


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

@media (min-width: 667px) {
footer .common .box{width: 82%;}

footer .common .txt{margin-bottom: 1em;text-align:center;}

.footer-logo {text-align: center; position: relative;margin-bottom: 30px;}


.footer-menu{width: 100%;border-top: none;padding: 0px;}
.footer-menu{border-top: none;margin: 0 auto; margin-bottom:2em;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0;display: flex;justify-content: center;}

.footer-menu li {width: auto;padding-bottom: 0px;position: relative;background: none;text-align: left;}
.footer-menu li a{letter-spacing:0.1rem;border-right:none;  font-size: 14px;padding: 0 .5em;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) {

footer .common{margin-bottom: 70px;}
footer .common .box{width: 80%;padding: 2em 1.5em;}

footer .common .txt{margin-bottom: 1em;}

.footer{padding-bottom: 50px;}


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



.copy{font-size: 12px;}


}


@media (min-width: 992px) {
footer .common{padding: 80px 0;}

footer .common .bg{background: url("../images/common-contact.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;height: 260px;position: absolute;left:0;top:0;width: 100%;z-index: 5;}
footer .common .txt{margin-bottom: 1.5em;}


.footer{padding-bottom: 100px;}

.footer-logo {text-align: left; position: relative;margin-bottom: 30px;}


footer .address{text-align: left;margin-bottom: 5px;}
footer .tel{text-align: left;margin-bottom: 0;}


.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:block;}
.footer-menu ul{border-top: none;border-left:none;margin-left: 0em;justify-content: flex-end;margin-bottom: 1em;}
.footer-menu li {padding-bottom: 0px;text-align: left;}
.footer-menu li a{text-decoration: none;padding: 0 .5em;letter-spacing: .05rem;margin-bottom: 0em!important;display: block;font-size: 14px;text-align: left;}
.footer-menu li a:hover {color: #0068de;}
.footer-menu li:first-child a{margin-bottom: 0;padding: 0 .5em 0 0;}
.footer-menu li:last-child a{margin-bottom: 0;padding: 0 0 0 .5em;}

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

.copy{font-size: 14px;text-align:right;}

}




@media (min-width: 1200px) {

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

.footer{padding-bottom:130px;}

.footer-logo a{}

.footer-menu ul{}
.footer-menu li a{text-decoration: none;padding: 0 .8em;letter-spacing: .05rem;margin-bottom: 0em!important;display: block;font-size: 15px;text-align: left;}
.footer-menu li:first-child a{margin-bottom: 0;padding: 0 .8em 0 0;}
.footer-menu li:last-child a{margin-bottom: 0;padding: 0 0 0 .8em;}


.copy{}



}

@media (min-width: 1440px) {
footer .common{padding: 100px 0;}
footer .common .box{width: 1290px;padding: 3em 1.5em;}

footer .common .bg{background: url("../images/common-contact.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;height: 320px;position: absolute;left:0;top:0;width: 100%;z-index: 5;}
footer .common .txt{margin-bottom: 1.5em;font-size: 1.1em;}




footer .logoblock{margin-bottom: 30px;margin-left: 0;}
.footer-menu ul{margin-bottom: 2em;}

}


@media (min-width: 1680px) {
footer .common .bg{background: url("../images/common-contact.jpg");background-position: center;background-repeat: no-repeat;background-size: cover;height: 380px;position: absolute;left:0;top:0;width: 100%;z-index: 5;}
.footer{padding-bottom: 180px;}

.footer-menu li a{text-decoration: none;padding: 0 .8em;letter-spacing: .08rem;margin-bottom: 0em!important;display: block;}
.footer-menu li:first-child a{margin-bottom: 0;padding: 0 .8em 0 0;}
.footer-menu li:last-child a{margin-bottom: 0;padding: 0 0 0 .8em;}

.page-top{position: absolute;right:35px;bottom:100px;}

}





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

.h2area{
position: relative;
z-index: 5;
width:100%;
display: flex;
align-items: center;
justify-content: space-between;
overflow: hidden;
height: 500px;
}
.h2area:after{content: '';
background: rgba(0,0,0,.3);
width: 100%;
height: 100%;
left:0;top:0;right:0;bottom:0;
}

.h2-product{background: url("../images/h2-product.jpg");background-position: center top;background-size: cover;}
.h2-business{background: url("../images/h2-business.jpg");background-position: center;background-size: cover;}
.h2-company{background: url("../images/h2-company.jpg");background-position: center;background-size: cover;}
.h2-contact{background: url("../images/h2-contact.jpg");background-position: center;background-size: cover;}

.h2-txt{position:absolute;z-index: 10; left:10%;top:50%;
      font-size: 80px;
      font-weight: 700;
	  font-family: ' Syne ';
	  text-transform: uppercase;
	  letter-spacing: .1rem;
	  color: white;
}
.h2-txt span{display: block;font-size: 18px;font-weight: 400;font-family: ' IBMPlexSansJP ';}
.h2-txt.long{font-size:48px;letter-spacing: .2rem;}


@media (max-width: 1366px){
.h2area{height: 400px;}
.h2-txt{left:10%;
      font-size: 60px;
}

.h2-txt.long{font-size:42px;letter-spacing: .2rem;}



}


@media (max-width: 1199px){
.h2area{height: 350px;}

.h2-txt{left:80px;
      font-size:56px;
	  letter-spacing:.08rem;
}



}

@media only screen and (max-width: 991px) {
.h2area{height: 260px;}

.h2-txt{left:60px;top:40%;
      font-size:46px;
	  letter-spacing: .08rem;
}



}


@media only screen and (max-width: 767px) {
.h2area{height: 220px;}

.h2-txt{left:40px;
      font-size:40px;
}

}

 @media only screen and (max-width: 666px) {
.h2area{height: 180px;}

.h2-txt{left:20px;
      font-size:25px;
	  letter-spacing: .05rem;
}

}




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

.headline-h3 {
color:#000;
  position: relative;
  margin-bottom: 35px;
  font-size: 23px;
  letter-spacing: .1rem;
  line-height: 1.4;font-weight: 400;}

.headline-h4 {
  font-weight: 500;
  font-size: 1.15em;
 position: relative;
  margin-bottom: 1.5em;
  text-align: left;
  color: #222;
  border-left:6px solid #39c;padding-left: .5em;
}

.headline {
 position: relative;
 font-size:30px;
 letter-spacing: .1rem;
  margin-bottom: 30px;
  line-height: 1;
  color: #0068de;
  display: block;  font-family: ' Syne ';
 font-weight: 700;
 text-transform: uppercase;
}
.headline span{display: block; font-family: ' IBMPlexSansJP ';font-weight: 400;font-size: 15px;letter-spacing: .1rem;color: #111;margin-top: 10px;}

.headline.white {color: white;}
.headline.white span{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) {




}



@media (min-width: 768px) {

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

.headline {
 font-size:36px;
  margin-bottom: 40px;
}
.headline span{font-size: 18px;letter-spacing: .1rem;}


.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-h3::after {
  content: '';
  width:60px;
  height: 4px;
  bottom: -10px;
  left: calc(50% - 30px)
}

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


}


@media (min-width: 1200px) {

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


.headline {
 font-size:48px;
  margin-bottom: 50px;
}
.headline span{font-size:20px;letter-spacing: .1rem;}


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



}


@media (min-width: 1440px) {

.headline {margin-bottom: 60px;}


.headline-h3{font-size: 36px; letter-spacing: .2rem;}
.headline-h3::after {
  content: '';
  width:70px;
  height: 4px;
  bottom: -10px;
  left: calc(50% - 35px)
}


}

@media (min-width: 1680px) {
.headline { font-size:80px;margin-bottom: 60px;}
.headline span{ font-size: 22px; letter-spacing: .1rem;}

}


@media (min-width: 1920px) {


}


#pankuzu{position: absolute;left:0px;bottom:0;z-index: 10;width: 100%;}





.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:13px 5px;
  text-align: center;
  width:200px;
  text-decoration: none;
  border-radius: 6px;
  background:#999;
  color: #fff;/*文字色*/
  font-size: 17px;
  letter-spacing: 0.3rem;
  transition: .3s;
}
.btn-back:hover{
  color: #fff;/*文字色*/
  background:#006BE6;

}

.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-pdf a{width: 320px;padding: 20px 40px;font-size: 1.2em;}


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

}


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



}



.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:1em 0px 0;
	line-height: 1.4;
	font-size: 15px;
	display: flex;align-items: center;justify-content: center;
}
.paging .page{text-align: center;margin-bottom: 5px;font-size: 13px;}
.paging span.current,
.paging span.paging-text a{
	color:#333;
	display:flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin:0px 3px;
	background: #fff;
	border: 1px solid #ddd;
	text-decoration: none;
	border-radius: .3em;
}
.paging span.current {
	background:#39c;
	color:#fff;
}
.paging span.paging-text a:hover {
	background:#39c;
	color:#fff;
}

@media screen and (max-width: 991px) {
.paging span.current,
.paging span.paging-text a{
	color:#333;
	display:flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	margin:0px 3px;
	background: #fff;
	border: 1px solid #ddd;
	text-decoration: none;
	border-radius: .3em;
	font-size: 13px;
}
.paging span.current {
	background:#00A27B;
	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 {
width: 600px;
margin: 0px auto;
margin-bottom: 80px;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.slickwrap .slider {
border:1px solid #eee;
  width: 100%;
  margin: 0 0 10px 0;
  overflow:hidden;
  background: white;
  padding: 0;
}
.slickwrap .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:20%!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 #00A6F4;
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;margin-bottom: 30px;}
}

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

}

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

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










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









/* product.html
--------------------------------------------------------- */
.product #section01{padding:50px 0px;position: relative;}
.product-wrap{}
.product-wrap .left-nav{margin-bottom: 0px;}
.product-wrap .item-wrapper{}

.h3-product{font-weight: 500;margin-bottom: 25px;font-size: 20px;padding-left: 10px;color: #00A3ED;position: relative;}
.h3-product:before {
    content:"";
    display:inline-block;
    width: 3px;
    height: 100%;
    background-color: #00A3ED;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;}
.h3-product span{color: black;display: block;margin-top: 5px;}

.product-wrap .left-nav .h4-index{background: #006AE6;color: white;margin-bottom: 15px;text-align: center;padding: .5em;font-weight: 400;font-size: 1.2em;border-radius: 5px;}
.product-wrap .left-nav .search-form {
    display: flex;
    align-items: center;
	justify-content: center;
    gap: 0 10px;
	margin-bottom: 30px;
}
.product-wrap .left-nav .search-form label {width: 250px;}
.product-wrap .left-nav .search-form input {
    width: 100%;
    height: 34px;
    padding: 1px 5px 1px 8px;
	background: white;
    box-sizing: border-box;
    color: #000;
	border:1px solid #ddd;
	border-radius: 5px;
    outline: none;
}
.product-wrap .left-nav .search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 80px;
    height: 34px;
    border: none;
    background-color: #0068de;
	border-radius: 5px;
    color: #fff;
	font-size: 14px;
    cursor: pointer;
}
.product-wrap .left-nav .search-form button::before {
    width: 14px;
    height: 14px;
    margin-right: 5px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}
.sidelink{position: relative;padding-bottom: 1.5em;}

.genre{font-weight: 500;font-size: 1.2em;margin-bottom: 10px;color:#006AE6;position: relative;padding-left: 35px;}
.genre::before{background-color: #006AE6;
position: absolute;
left:0;
top:50%;
  content: "";
  height: 1px;
  width: 20px;
  }
.js-scrollable{}
.product-wrap .item-wrapper .table{}
.product-wrap .item-wrapper .table th{text-align: center;font-weight: 400;background: #00A7F3!important;color: white;}
.product-wrap .item-wrapper .table th:last-child{width: 60px;}

.maru-button {
  display: block;
  width: 30px;
  height: 30px;
  margin: 0px auto;
  border-radius: 50%;
  background: #b2b2b2;
  position: relative;
  transition: .4s;
}
.maru-button:hover {background: #00AAFA;}

.maru-button:before,
.maru-button:after {
  position: absolute;
  content: '';
}
.maru-button:before {
  top: 15px;
  left: 7px;
  width: 14px;
  height: 1px;
  background: #fff;
}
.maru-button:after {
  top: 10px;
  left: 17px;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-right: 0 solid transparent;
  border-bottom: 0 solid transparent;
  border-left: 8px solid #fff;
}

.product-wrap .item-wrapper dl.detail-list{margin-bottom: 30px;}
.product-wrap .item-wrapper dl.detail-list dt{font-weight: 500;color: #00A7F3;margin-bottom: .3em;}
.product-wrap .item-wrapper dl.detail-list dd{border:1px solid #ddd;border-radius: 5px; padding: .5em;margin-bottom: 1.5em;}

.download_file{margin-bottom: 50px;}
.download_file ul li{margin-bottom: .5em;}
.download_file ul li:last-child{margin-bottom: 0;}
.download_file a{background:#fff;border:1px solid #ddd;color:#111;letter-spacing: 0;display: block;line-height: 1.4;padding: .5em .5em;border-radius:5px;font-size: .9em;transition: .4s;}
.download_file a:hover{background:rgba(25,25,51,.05);color:#111;}
.fa-file-pdf{color: #E11317;font-size: 1.1em;}
.fa-file-excel{color:#22960D;font-size: 1.1em;}
.fa-file-word{color:#1945CA;font-size: 1.1em;}

  
.product #section02{padding:50px 0px;position: relative;background: rgba(0,106,230,.06);}


@media (min-width: 667px) {
.h3-product{margin-bottom: 30px;font-size: 20px;padding-left: 10px;}
.h3-product:before {
    content:"";
    display:inline-block;
    width: 3px;
    height: 100%;
    background-color: #00A3ED;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;}
	
.h3-product span{color: black;display:inline;margin-top: 0px;margin-left: 10px;}

}


@media (min-width: 768px) {
.product #section01{padding:70px 0px;}


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


}


@media (min-width: 992px) {
.product #section01 .container{max-width: 100%;}

.product-wrap{display: flex;justify-content: space-between;flex-direction: row-reverse;}
.product-wrap .left-nav{margin-bottom: 0px;width: 250px;}
.product-wrap .item-wrapper{width: calc(100% - 300px);}
.product-wrap .left-nav .search-form {
    display: flex;
    align-items: center;
	justify-content: space-between;
    gap: 0 10px;
}

.product-wrap .left-nav .search-form label {width: 160px;}
.product-wrap .left-nav .search-form input {
    width: 100%;
    height: 34px;
    padding: 1px 5px 1px 8px;
	background: white;
    box-sizing: border-box;
    color: #000;
	border:1px solid #ddd;
	border-radius: 5px;
    outline: none;
}
.product-wrap .left-nav .search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 75px;
    height: 34px;
    border: none;
    background-color: #0068de;
	border-radius: 5px;
    color: #fff;
	font-size: 14px;
    cursor: pointer;
}

.h3-product{margin-bottom: 40px;font-size: 24px;padding-left: 15px;padding-top: 5px;padding-bottom: 5px;}
.h3-product:before {
    content:"";
    display:inline-block;
    width: 3px;
    height: 100%;
    background-color: #00A3ED;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;}
.h3-product span{margin-left: 10px;}

.product-wrap .item-wrapper dl.detail-list{display: flex;justify-content: space-between;flex-wrap: wrap;margin-bottom: 50px;}
.product-wrap .item-wrapper dl.detail-list dt{width: 150px;margin-bottom: .3em;padding-top: .9em;}
.product-wrap .item-wrapper dl.detail-list dd{width: calc(100% - 160px);padding: .8em; margin-bottom: 1.5em;}


}


@media (min-width: 1200px) {
.product #section01{padding:100px 0px;}
.product-wrap .left-nav .h4-index{margin-bottom: 20px;padding: .7em .5em;}
.product-wrap .item-wrapper dl.detail-list dd{width: calc(100% - 160px);padding: .8em 1.2em; margin-bottom: 1.5em;}

.product #section02{padding:100px 0px;}


}

@media (min-width: 1440px) {
.product #section01{padding:130px 0px;}
.product #section01 .container{max-width: 1410px;}
.product-wrap .left-nav{margin-bottom: 0px;width: 320px;}
.product-wrap .item-wrapper{width: calc(100% - 400px);}

.product-wrap .left-nav .search-form {
    display: flex;
    align-items: center;
	justify-content: space-between;
    gap: 0 10px;
}
.product-wrap .left-nav .search-form label {width: 230px;}
.product-wrap .left-nav .search-form input {
    width: 100%;
    height: 40px;
    padding: 1px 5px 1px 8px;
	background: white;
    box-sizing: border-box;
    color: #000;
	border:1px solid #ddd;
	border-radius: 5px;
    outline: none;
}
.product-wrap .left-nav .search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 75px;
    height: 40px;
    border: none;
    background-color: #0068de;
    color: #fff;
    cursor: pointer;
}
.product-wrap .left-nav .search-form button::before {
    width: 14px;
    height: 14px;
    margin-right: 5px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23fff'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}

.sidelink{padding-bottom: 2.5em;}


.product #section02{padding:130px 0px;}


}


.accordion02 dt {
	display: inline-block;
	padding:7px 10px;
	width: 100%;
	font-weight: normal;
	color: #fff;
	text-align: center;
	font-size: 1.2em;
	background:#006AE6;
	border-radius: 5px;
	cursor:pointer;
	margin-bottom: 15px;
}
.accordion02 dd{ display:none}
.accordion02 dd ul {
	list-style: none;
	padding: 0px;
	margin:0px;
}
.accordion02 dd li {
	margin-bottom: .2em;
}
.accordion02 dd li a {
position: relative;
	display: block;
	padding: 10px 10px 10px 20px;
	text-align: left;
	background-color: #f7f7f7;
	color: black;
}
.accordion02 dd li a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
font-weight: 900;
font-size: 6px;
position: absolute;
left:5px;
top:50%;
transform: translateY(-50%);
color: #006AE6;
}
.accordion02 dd li a:link,
.accordion02 dd li a:visited,
.accordion02 dd li a:hover,
.accordion02 dd li a:active{color:#333;}

/* product.html　左カラムのカテゴリ オンマウス
--------------------------------------------  */
.accordion02 dd li a:hover{
	background:#eee !important;
	color:#333 !important;
}

.accordionIcon02,
.accordionIcon02 span{display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}
.accordionIcon02 {
	position: relative;
	width: 24px;
	height: 24px;
	float: right;
	display: block;
}
.accordionIcon02 span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}

.accordionIcon02 span:nth-of-type(1) {top: 4px;}
.accordionIcon02 span:nth-of-type(2) {top: 13px;}
.accordionIcon02 span:nth-of-type(3) {bottom: 0px;}
.active .accordionIcon02 span:nth-of-type(1) {
	-webkit-transform: translateY(9.5px) rotate(-314deg);
	transform: translateY(9.5px) rotate(-314deg);
}
.active .accordionIcon02 span:nth-of-type(2) {
	opacity: 0;
}
.active .accordionIcon02 span:nth-of-type(3) {
	-webkit-transform: translateY(-9.5px) rotate(314deg);
	transform: translateY(-9.5px) rotate(314deg);
}

@media print, screen and (min-width: 992px){
.accordion02 dt {background-image:none; cursor:default;}
.accordion02 dt.active { background-image:none;}
.accordion02 dd{ display: block}
.accordionIcon02 { display: none;}
.accordion02 dd ul {
	list-style: none;
	padding: 0px;
	margin:0px;
	margin-bottom: .2em;
}

.accordion02 dd li a {
	padding:10px 10px 10px 25px;
	background: #f7f7f7;
	border-bottom: none;
}	
.accordion02 dd li a::before {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
font-weight: 900;
font-size: 6px;
position: absolute;
left:10px;
top:50%;
transform: translateY(-50%);
color: #006AE6;
}

.accordion02 dd li a:hover{
	background:#555 !important;
	color:#fff !important
	}
.accordion02 dd li a:hover::before {color: #fff;}

.accordion02 dd li {background-color: #fff;	}
}

/* product.html　左カラムのカテゴリ 選択中
--------------------------------------------  */
.accordion02 .navon02 {
	background:#333 !important;
	color:#fff !important;
	border:0px !important;
}

.accordion_area02 .accordion_one02 .ac_header02 {
	background-color: #ffffff;
	padding: 1.5rem 4rem 1.5rem 2rem;
	position: relative;
	z-index: +1;
	cursor: pointer;
	transition: .2s;
}

.accordion_area02 .accordion_one1_02:nth-child(odd) .ac_header02 {background-color: #ddd;}

.accordion_area02 .accordion_one02 .ac_header02 .i_box02 {
	position: absolute;
	top: 50%;
	right: 2rem;
	width: 20px;
	height: 20px;
	margin-top: -10px;
}

.accordion_area02 .accordion_one02 .ac_header02 .i_box02:before, .accordion_area02 .accordion_one02 .ac_header02 .i_box02:after {
	position: absolute;
	content: "";
	margin: auto;
	box-sizing: border-box;
	vertical-align: middle;
}

.accordion_area02 .accordion_one02 .ac_header02 .i_box02:before {
	border-top: 2px solid #333;
	width: 20px;
	height: 0;
	top: 0;
	bottom: 0;
	right: 0;
}

.accordion_area02 .accordion_one02 .ac_header02 .i_box02:after {
	border-left: 2px solid #333;
	width: 0;
	height: 20px;
	top: 0;
	bottom: 0;
	right: 9px;
	transition: .3s;
}

.accordion_area02 .accordion_one02 .ac_header.open02 .i_box02:after {
	height: 0;
}

.accordion_area02 .accordion_one02 .ac_inner02 {
	display: none;
	padding: 1.5rem 2rem 1.5rem 2rem;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
	background: #fff;
}






/* business.html
--------------------------------------------------------- */
.business #section01{padding:50px 0px;position: relative;}
.business #section01 h4{font-weight:300;font-size: 1.7em;margin-bottom:15px;line-height: 1.5;}
.business #section01 p{text-align: justify;letter-spacing: .1rem;margin-bottom: 15px;}
.business #section01 .pic{}

.business #section02{padding:50px 0px;position: relative;background: rgba(0,106,230,.06);}
.business #section02 .headline{text-align: center;}
.business #section02 .titlebox{margin-bottom: 20px;}
.business #section02 .titlebox .sub{margin-bottom: 5px;line-height: 1;}
.business #section02 .titlebox .sub span{font-size: 11px;background: #006AE6;color: white; padding: .3em .7em;letter-spacing: 0;}
.business #section02 .titlebox h4{padding-bottom: .5em;font-size: 1.2em; border-bottom: 1px solid #ccc;margin-bottom: 1em;font-weight: 500;}
.business #section02 .titlebox h4 span{display: block;margin-bottom: .2em;color: #006AE6;font-size: 1.4em;font-family: ' Syne ';font-weight: 400;}
.business #section02 .titlebox .txt{text-align: justify;margin-bottom: 1.5em;}

@media (min-width: 667px) {
.business #section01 .pic{width: 350px;margin: 0 auto;}
.business #section02 .pic{width: 350px;margin: 0 auto;}
.business #section02 .titlebox .sub span{font-size: 12px; padding: .3em .7em;letter-spacing: 0;}
.business #section02 .titlebox h4{padding-bottom: .3em;font-size: 1.2em; border-bottom: 1px solid #ccc;margin-bottom: 1em;font-weight: 500;display: flex;align-items: center;}
.business #section02 .titlebox h4 span{display: inline;margin-bottom:3px;color: #006AE6;font-size: 34px;margin-right: 5px;}

}


@media (min-width: 768px) {
.business #section01{padding:70px 0px;}
.business #section01 p{text-align: justify;letter-spacing: .1rem;margin-bottom: 0;}
.business #section01 .pic{width: 98%;margin-left: 0;}


.business #section02{padding:70px 0px;}
.business #section02 .titlebox{margin-bottom: 0px;}
.business #section02 .titlebox .sub{margin-bottom: 10px;line-height: 1;}
.business #section02 .titlebox h4 span{display: inline;margin-bottom:3px;color: #006AE6;font-size:34px;margin-right: 5px;}
.business #section02 .titlebox .txt{text-align: justify;margin-bottom: 0;line-height: 1.8;}

.business #section02 .pic{width: 100%;margin: 0 auto;}


}


@media (min-width: 992px) {
.business #section01 h4{font-size:35px;margin-bottom:15px;line-height: 1.4;}

.business #section02 .titlebox{margin-bottom: 0px;padding-right: 2em;}
.business #section02 .titlebox.re{padding-right: 0em;padding-left: 2em;}
.business #section02 .titlebox .sub{margin-bottom: 8px;line-height: 1;}
.business #section02 .titlebox h4{padding-bottom: .3em;font-size: 1.2em; border-bottom: 1px solid #ccc;margin-bottom: 1em;font-weight: 500;display: flex;align-items: center;}
.business #section02 .titlebox h4 span{display: inline;margin-bottom:3px;color: #006AE6;font-size: 34px;margin-right: 5px;}
.business #section02 .titlebox .txt{text-align: justify;margin-bottom: 0;line-height: 1.9;}


}


@media (min-width: 1200px) {
.business #section01{padding:100px 0px;}
.business #section01 p{line-height:2;font-size: 1.1em;}
.business #section01 .pic{width: 95%;margin-left: 0;}

.business #section02{padding:100px 0px;}
.business #section02 .titlebox{margin-bottom: 0px;padding-right: 4em;}
.business #section02 .titlebox.re{padding-right: 0em;padding-left: 4em;}
.business #section02 .titlebox .sub{margin-bottom: 8px;line-height: 1;}
.business #section02 .titlebox h4{padding-bottom: .2em;font-size: 1.4em; border-bottom: 1px solid #ccc;margin-bottom: 1.5em;}
.business #section02 .titlebox h4 span{display: inline;margin-bottom:7px;color: #006AE6;font-size: 43px;margin-right: 5px;}
.business #section02 .titlebox .txt{text-align: justify;margin-bottom: 0;line-height: 2;}


}

@media (min-width: 1440px) {
.business #section01{padding:130px 0px;}
.business #section01 .container{max-width: 1290px;}

.business #section01 h4{font-size:40px;margin-bottom:45px;line-height: 1.5;}

.business #section02{padding:130px 0px;}
.business #section02 .container{max-width: 1290px;}


}






/* works.html
--------------------------------------------------------- */
.works #section01{padding: 50px 0;position: relative;}
.works #section01 a{display: flex;align-items: center;justify-content: center;position: relative;color: #39c;font-weight: 500;background: #f7f7f7;border:2px solid #39c;border-radius: .5em;height: 50px;font-size: 1.1em;transition: .4s;}
.works #section01 a::after {
  font-family: "Font Awesome 5 Free";
  content: "\f35a";
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  margin-left: 5px;
}
.works #section01 a:hover{color: #fff;background: #39c;}
.works #section01 a.active{color: #fff;background: #39c;}

.works #section02{padding: 70px 0;position: relative;background: url("../images/wavy1.png"), url("../images/wavy2.png"),url("../images/bg-stripe2.png");background-position: center top,center bottom,left top;background-repeat: repeat-x,repeat-x,repeat;}
.works #section02 .itembox{background: white;border-radius: 1em;padding: 1em;}
.works #section02 .itembox .thumb-group{display: flex;align-items: center;justify-content: space-between;margin-bottom: 1em;}
.works #section02 .itembox .thumb-group .thumb{width: 48%;position: relative;border-radius: 10px;overflow: hidden;}
.works #section02 .itembox .thumb-group .thumb .tag{position:absolute;left:0;top:5px;background: white;color: black;font-weight: 400;z-index: 10;font-family: ' BebasNeue ';line-height: 1;padding: .4em;}
.works #section02 .itembox .thumb-group .thumb a .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;
}
.works #section02 .itembox .title{font-weight: 500;font-size: 1.1em;text-align: justify;line-height: 1.4;border-bottom: 1px solid #ddd;padding-bottom: 5px;margin-bottom: .7em;}
.works #section02 .itembox .txt{text-align: justify;line-height: 1.5;}


.download_file{margin-bottom: 50px;}
.download_file ul li{margin-bottom: .5em;}
.download_file ul li:last-child{margin-bottom: 0;}
.download_file a{background:#fff;border:1px solid #ddd;color:#111;letter-spacing: 0;font-weight: 400;display: block;line-height: 1.4;padding: .5em .5em;border-radius: .3em;font-size: .9em;transition: .4s;}
.download_file a:hover{background:#eee;color:#111;}
.fa-file-pdf{color: #E11317;font-size: 1.1em;}
.fa-file-excel{color:#22960D;font-size: 1.1em;}
.fa-file-word{color:#1945CA;font-size: 1.1em;}


@media (min-width: 667px) {

}


@media (min-width: 768px) {

.works #section01 a{height: 60px;font-size: 1.1em;transition: .4s;}


.works #section02{padding: 100px 0;}

.download_file a{line-height: 1.4;padding: .7em;font-size:1em;}




}


@media (min-width: 992px) {
.works #section01 ul{width: 800px;margin: 0 auto;}
.works #section02 .itembox{padding: 1.8em;}
.works #section02 .itembox .thumb-group{display: flex;align-items: center;justify-content: space-between;margin-bottom: 1em;}
.works #section02 .itembox .thumb-group .thumb{width: 48%;position: relative;border-radius: 10px;overflow: hidden;}
.works #section02 .itembox .thumb-group .thumb .tag{position:absolute;left:0;top:5px;background: white;color: black;font-weight: 400;z-index: 10;padding: .4em .6em;}
.works #section02 .itembox .title{font-weight: 500;font-size: 1.1em;text-align: justify;line-height: 1.4;border-bottom: 1px solid #ddd;padding-bottom: 5px;margin-bottom: .7em;}
.works #section02 .itembox .txt{text-align: justify;line-height: 1.5;}


}


@media (min-width: 1200px) {
.works #section01{padding: 80px 0;}
.works #section01 a{height: 60px;font-size: 1.3em;transition: .4s;}

.works #section02{padding: 120px 0 120px;}


}




@media (min-width: 1440px) {

.works #section01 a{height: 70px;font-size: 1.5em;transition: .4s;}
.works #section02 .itembox{padding: 2.3em;}
.works #section02 .itembox .thumb-group{display: flex;align-items: center;justify-content: space-between;margin-bottom: 1.5em;}
.works #section02 .itembox .thumb-group .thumb{width: 47.5%;position: relative;border-radius: 10px;overflow: hidden;}
.works #section02 .itembox .thumb-group .thumb .tag{position:absolute;left:0;top:5px;background: white;color: black;font-weight: 400;z-index: 10;padding: .4em .6em;}
.works #section02 .itembox .title{font-weight: 500;font-size: 1.1em;text-align: justify;line-height: 1.4;border-bottom: 1px solid #ddd;padding-bottom: 5px;margin-bottom: .7em;}

}







/* company.html
--------------------------------------------------------- */
.company #section01{padding:50px 0px;position: relative;z-index: 5;}
.company #section01 .txt{margin-bottom:.5em;text-align: justify;}
.company #section01 .name{text-align: right;margin-bottom: 20px;}
.company #section01 .name span{font-size: 1.2em;font-weight: 500;margin-left:1em;}
.company #section01 .pic{position: relative;}
.company #section01 .pic1{position: relative;width: 80%;}
.company #section01 .pic2{position: relative;width: 80%;margin-left: 20%;margin-top: -40px;}

.company #section02{padding:50px 0px;position: relative;background: url("../images/bg-top-about.jpg");background-position: center top;}
.company #section02 .table{margin-bottom: 0;border-bottom: 1px solid #ddd;}
.company #section02 .table th,
.company #section02 .table td {background: white;
  vertical-align: middle;
  border-top: 1px solid #ddd;
}
.company #section02 .table th{width: 100%;display: block;font-weight: 400;padding: 15px 15px;background: #f7f7f7!important;color: #39c;}
.company #section02 .table td{width: 100%;display: block;padding: 15px 15px;background: white!important;font-weight: 400;}
.company #section02 .table td .call{color: #222;}
.yakuin{display: flex;justify-content: space-between;flex-wrap: wrap;}
.yakuin dt{width: 100px;margin-bottom: .3em;font-weight: 400;}
.yakuin dd{width: calc(100% - 100px);margin-bottom: .3em;}
.yakuin dt:last-child{margin-bottom: 0;}
.yakuin dd:last-child{margin-bottom:0;}

.company #section03{padding:50px 0px;position: relative;}
.company #section03 h4{font-weight: 500;margin-bottom: 1em;font-size: 1.2em;}

@media (min-width: 667px) {

.company #section01 .pic1{position: relative;width: 60%;}
.company #section01 .pic2{position: relative;width: 60%;margin-left: 40%;margin-top: -60px;}


}


@media (min-width: 768px) {

.company #section01{padding:70px 0px;}
.company #section01 .txt{}
.company #section01 .pic1{position: relative;width: 90%;}
.company #section01 .pic2{position: relative;width: 90%;margin-left:10%;margin-top:30px;}



.company #section02{padding:70px 0px;}
.company #section02 .table th{width: 200px;display: table-cell;}
.company #section02 .table td{width: auto;display:table-cell;}

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



}

@media (min-width: 992px) {
.company #section01 .txt{text-align: justify;line-height: 1.9; margin-bottom: 1em;padding-left: 2em;}
.company #section01 .pic1{position: relative;width: 90%;}
.company #section01 .pic2{position: relative;width: 90%;margin-left:10%;margin-top:50px;}





}


@media (min-width: 1200px) {
.company #section01{padding:100px 0px;}
.company #section01 .txt{text-align: justify;font-size: 1.1em; line-height: 1.8;}

.company #section02{padding:100px 0px 100px;}
.company #section02 .table th{width: 220px;padding: 24px 15px;}
.company #section02 .table td{padding: 24px 15px;}

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




}

@media (min-width: 1440px) {
.company #section01 .container{max-width: 1290px;}
.company #section01 .txt{margin-bottom: 1.5em;line-height: 2;}

.company #section02 .container{max-width: 1290px;}
.company #section02 .table th{width: 250px;}

.company #section03 .container{max-width: 1290px;}


}





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

.contact #section01{padding: 50px 0px 50px;position: relative;z-index: 5;}


.contact #section02{padding: 50px 0px;position: relative;z-index: 5;}
.contact #section02 .txt{margin-bottom: 15px;text-align: justify;}
.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: 1.2em;}
.privacybox{position: relative;color: #333;}
.privacybox #privacy{position: absolute;left:0;top:-100px;}

span.hissu{color:white;background:red; padding: 3px 5px;border-radius: 5px;font-size: 12px;line-height: 1;letter-spacing: 0;}
.contact .table {margin-bottom: 50px;border-bottom:1px solid #ddd;}
.contact .table th{background:#e7eef3!important;vertical-align: middle;font-weight: 400;position: relative;display: block;color: #111;padding: 15px 10px;border-top:1px solid #ddd;}
.contact .table td{background: white!important;vertical-align: middle;display: block;border-top:1px solid #ddd;}
.table th span.hissu{color: white;background: red; padding: 3px 5px;border-radius: 5px;position: absolute;right:15px;top:50%;transform: translateY(-50%);font-size: 12px;line-height: 1;letter-spacing: 0;}


.contact h5{font-weight: 700;border-bottom: 1px solid #555;padding-bottom: 10px; margin-bottom: 15px;font-size:1.2em;}
.tenpu{ margin: 0;font-size: 13px;}
 input.tenpu {
width: 90%!important;
 display: block;
 position: relative;
 letter-spacing: 0;
 padding: .3em 0!important;
 border-radius: 4px;
 color: #999;
 cursor: pointer!important;
 margin: 0px 0px 5px;
 font-size: 13px;
}
.tenpu input:last-child{margin: 0;}
.tenpufile{display: flex;align-items: center;padding-top: .5em;line-height: 1;}
.tenpufile .pdf{color: #b30b00;margin-right: .4em;}
.tenpufile .exl{color: #128046;}



@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 #section02 .txt{letter-spacing: .15em;line-height: 1.8;}

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

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


}




@media (min-width: 1200px) {

.contact #section01{padding: 100px 0px;}



.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) {
.contact #section02 .txt{margin-bottom: 20px;letter-spacing: .15em;line-height:2;}

.contact .table th{padding: 25px 15px;}
.contact .table td{padding: 25px 15px;}

}



.doi-box{padding: 30px 15px;border-top:1px solid #ccc;border-bottom: 1px solid #ccc;}
.doi-box label{font-size: 13px;margin-bottom: 15px;width: auto;display:inline-block;}
.doi-box p a{color: #111;font-size: 15px;transition: .3s;font-weight: 500;}
.doi-box p a:hover{color: #333;}
.contact .btn-lg{font-size: 13px;padding: 10px 10px;}

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

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

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








.form-s{width:70px}
.form-m{width:150px}
.form-name{width:99%;}
.form-post{width:9em;}
.form100{width:100%}
.form-h{ height:15em;}
input ,select {
    position:relative;
}
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;background: none;}
input[type="text"], select{border:1px solid #eee;}
input,textarea,select { outline:0; padding:12px;border-radius: 7px;background: none; }
textarea{border:1px solid #eee;color: #333;width: 100%;}
.needinput{background-color:rgba(255,255,255,0)!important;border:1px solid red!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;
}
.auto{border: 1px solid #ddd;color: #555; margin-left: 1em;padding: .5em .5em;border-radius: .4em;font-size: .9em;}

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; }

.header-xs{display: none;}

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


.header {
  position:absolute;
  width: 96%;
  z-index: 500;
  height:80px;
  top:15px;
  left:2%;
  padding: 0 15px;
  border-radius: 5px;
  display: flex;
  align-items: center;
  justify-content:space-between;
  background: white;
  margin-top: -8%;
  transition:none;
}
.header.show {margin-top: 0;}

.head-logo { position: relative;width: 230px;}
.header .navi{display: flex; align-items: center;justify-content: flex-end;margin-right: 10px;}


/* ナビゲーションメニュー */
.nav-menu {display: flex; align-items: center;margin-right: 1em;}
.menu-list {
  display: flex;
  justify-content: flex-end; /* メニューアイテムを中央揃えに */
}
.menu-list li {position: relative;padding: 0 .8em;line-height: 1;}
.menu-list li:first-child {padding: 0 .8em 0 0;}
.menu-list li:last-child {padding: 0 0 0 .8em;}

/* メニューアイテムのホバースタイル */
.menu-list li a {
font-family: ' IBMPlexSansJP ';
font-weight: 400;
letter-spacing: .05rem;
  text-align: center;
  color: #000;
  display: block;
  position: relative;
  transition: .3s;line-height: 1;
}
.menu-list li a.active {position: relative;}
.menu-list li a.active::after {
  font-family: "Font Awesome 5 Free";
  content: "\f111";
font-weight: 900;
color: #0068de;
font-size: 5px;
position: absolute;
top:-15px;
left:50%;
transform: translateX(-50%);
}

.head-contact{}
.head-contact a{background: #0068de;color: white;width: 180px;height: 50px;line-height: 50px;border-radius: 5px;display: flex;align-items: center;justify-content: flex-start;padding-left: 1.5em;position: relative;transition: .4s;}
.head-contact a .icon{width: 34px;height: 34px;border-radius: 50%;background: white;color:#0068de;  display: flex;align-items: center;justify-content: center;position: absolute;right:6px;top:50%;transform: translateY(-50%);}

.product-wrap{display: flex;justify-content: space-between;flex-direction: row-reverse;}
.product-wrap .left-nav{margin-bottom: 0px;width: 250px;}
.product-wrap .item-wrapper{width: calc(100% - 270px);}
.product-wrap .left-nav .search-form {
    display: flex;
    align-items: center;
	justify-content: space-between;
    gap: 0 10px;
}

.product-wrap .left-nav .search-form label {width: 160px;}
.product-wrap .left-nav .search-form input {
    width: 100%;
    height: 34px;
    padding: 1px 5px 1px 8px;
	background: white;
    box-sizing: border-box;
    color: #000;
	border:1px solid #ddd;
	border-radius: 5px;
    outline: none;
}
.product-wrap .left-nav .search-form button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%;
    max-width: 75px;
    height: 34px;
    border: none;
    background-color: #0068de;
	border-radius: 5px;
    color: #fff;
	font-size: 14px;
    cursor: pointer;
}

.h3-product{margin-bottom: 40px;font-size: 24px;padding-left: 15px;padding-top: 5px;padding-bottom: 5px;}
.h3-product:before {
    content:"";
    display:inline-block;
    width: 3px;
    height: 100%;
    background-color: #00A3ED;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;}
.h3-product span{margin-left: 10px;}








.company #section02 .table th{width: 200px;display: table-cell;}
.company #section02 .table td{width: auto;display:table-cell;}




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

.thumb-xs{display: none;}

footer .common .tel{width: 400px; margin-bottom: 0px;}
.footer-logo {text-align: left; position: relative;margin-bottom: 30px;}
.footer-logo a{color: black;font-weight: 500;font-size: 20px;transition:.3s;line-height: 1;}
.footer-logo a .top{display: block;font-size: 14px;font-weight: 400;margin-bottom: 5px;}
.footer-logo a .sub{font-size: 14px;font-weight: 400;letter-spacing: 0;display:inline;margin-top: 0;}


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


.copy{font-size: 14px;text-align:right;}
.page-top{display: none;}

.in_fixed_bottom {display: none;}

.drawer_menu{display: none!important;}

.no-print{display: none!important;}
.do-print{display: block!important;}

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